コード例 #1
0
func DeepCopy_api_ResourceAccessReviewResponse(in ResourceAccessReviewResponse, out *ResourceAccessReviewResponse, c *conversion.Cloner) error {
	if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil {
		return err
	}
	out.Namespace = in.Namespace
	if in.Users != nil {
		in, out := in.Users, &out.Users
		*out = make(sets.String)
		for key, val := range in {
			newVal := new(sets.Empty)
			if err := sets.DeepCopy_sets_Empty(val, newVal, c); err != nil {
				return err
			}
			(*out)[key] = *newVal
		}
	} else {
		out.Users = nil
	}
	if in.Groups != nil {
		in, out := in.Groups, &out.Groups
		*out = make(sets.String)
		for key, val := range in {
			newVal := new(sets.Empty)
			if err := sets.DeepCopy_sets_Empty(val, newVal, c); err != nil {
				return err
			}
			(*out)[key] = *newVal
		}
	} else {
		out.Groups = nil
	}
	return nil
}
コード例 #2
0
func DeepCopy_api_SubjectAccessReview(in SubjectAccessReview, out *SubjectAccessReview, c *conversion.Cloner) error {
	if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil {
		return err
	}
	if err := DeepCopy_api_AuthorizationAttributes(in.Action, &out.Action, c); err != nil {
		return err
	}
	out.User = in.User
	if in.Groups != nil {
		in, out := in.Groups, &out.Groups
		*out = make(sets.String)
		for key, val := range in {
			newVal := new(sets.Empty)
			if err := sets.DeepCopy_sets_Empty(val, newVal, c); err != nil {
				return err
			}
			(*out)[key] = *newVal
		}
	} else {
		out.Groups = nil
	}
	if in.Scopes != nil {
		in, out := in.Scopes, &out.Scopes
		*out = make([]string, len(in))
		copy(*out, in)
	} else {
		out.Scopes = nil
	}
	return nil
}
コード例 #3
0
ファイル: deep_copy_generated.go プロジェクト: 40a/bootkube
func DeepCopy_labels_Requirement(in Requirement, out *Requirement, c *conversion.Cloner) error {
	out.key = in.key
	out.operator = in.operator
	if in.strValues != nil {
		in, out := in.strValues, &out.strValues
		*out = make(sets.String)
		for key, val := range in {
			newVal := new(sets.Empty)
			if err := sets.DeepCopy_sets_Empty(val, newVal, c); err != nil {
				return err
			}
			(*out)[key] = *newVal
		}
	} else {
		out.strValues = nil
	}
	return nil
}
コード例 #4
0
func DeepCopy_api_PolicyRule(in PolicyRule, out *PolicyRule, c *conversion.Cloner) error {
	if in.Verbs != nil {
		in, out := in.Verbs, &out.Verbs
		*out = make(sets.String)
		for key, val := range in {
			newVal := new(sets.Empty)
			if err := sets.DeepCopy_sets_Empty(val, newVal, c); err != nil {
				return err
			}
			(*out)[key] = *newVal
		}
	} else {
		out.Verbs = nil
	}
	if in.AttributeRestrictions == nil {
		out.AttributeRestrictions = nil
	} else if newVal, err := c.DeepCopy(in.AttributeRestrictions); err != nil {
		return err
	} else {
		out.AttributeRestrictions = newVal.(runtime.Object)
	}
	if in.APIGroups != nil {
		in, out := in.APIGroups, &out.APIGroups
		*out = make([]string, len(in))
		copy(*out, in)
	} else {
		out.APIGroups = nil
	}
	if in.Resources != nil {
		in, out := in.Resources, &out.Resources
		*out = make(sets.String)
		for key, val := range in {
			newVal := new(sets.Empty)
			if err := sets.DeepCopy_sets_Empty(val, newVal, c); err != nil {
				return err
			}
			(*out)[key] = *newVal
		}
	} else {
		out.Resources = nil
	}
	if in.ResourceNames != nil {
		in, out := in.ResourceNames, &out.ResourceNames
		*out = make(sets.String)
		for key, val := range in {
			newVal := new(sets.Empty)
			if err := sets.DeepCopy_sets_Empty(val, newVal, c); err != nil {
				return err
			}
			(*out)[key] = *newVal
		}
	} else {
		out.ResourceNames = nil
	}
	if in.NonResourceURLs != nil {
		in, out := in.NonResourceURLs, &out.NonResourceURLs
		*out = make(sets.String)
		for key, val := range in {
			newVal := new(sets.Empty)
			if err := sets.DeepCopy_sets_Empty(val, newVal, c); err != nil {
				return err
			}
			(*out)[key] = *newVal
		}
	} else {
		out.NonResourceURLs = nil
	}
	return nil
}