type managedFieldsUpdater … var _ … // NewManagedFieldsUpdater is responsible for updating the managedfields // in the object, updating the time of the operation as necessary. For // updates, it uses a hard-coded manager to detect if things have // changed, and swaps back the correct manager after the operation is // done. func NewManagedFieldsUpdater(fieldManager Manager) Manager { … } // Update implements Manager. func (f *managedFieldsUpdater) Update(liveObj, newObj runtime.Object, managed Managed, manager string) (runtime.Object, Managed, error) { … } // Apply implements Manager. func (f *managedFieldsUpdater) Apply(liveObj, appliedObj runtime.Object, managed Managed, fieldManager string, force bool) (runtime.Object, Managed, error) { … }