// Copyright Contributors to the Open Cluster Management project
// Code generated by client-gen. DO NOT EDIT.

package fake

import (
	gentype "k8s.io/client-go/gentype"
	clusterv1beta1 "open-cluster-management.io/api/client/cluster/clientset/versioned/typed/cluster/v1beta1"
	v1beta1 "open-cluster-management.io/api/cluster/v1beta1"
)

// fakePlacements implements PlacementInterface
type fakePlacements struct {
	*gentype.FakeClientWithList[*v1beta1.Placement, *v1beta1.PlacementList]
	Fake *FakeClusterV1beta1
}

func newFakePlacements(fake *FakeClusterV1beta1, namespace string) clusterv1beta1.PlacementInterface {
	return &fakePlacements{
		gentype.NewFakeClientWithList[*v1beta1.Placement, *v1beta1.PlacementList](
			fake.Fake,
			namespace,
			v1beta1.SchemeGroupVersion.WithResource("placements"),
			v1beta1.SchemeGroupVersion.WithKind("Placement"),
			func() *v1beta1.Placement { return &v1beta1.Placement{} },
			func() *v1beta1.PlacementList { return &v1beta1.PlacementList{} },
			func(dst, src *v1beta1.PlacementList) { dst.ListMeta = src.ListMeta },
			func(list *v1beta1.PlacementList) []*v1beta1.Placement { return gentype.ToPointerSlice(list.Items) },
			func(list *v1beta1.PlacementList, items []*v1beta1.Placement) {
				list.Items = gentype.FromPointerSlice(items)
			},
		),
		fake,
	}
}
