type PluginFactory … type PluginFactoryWithFts … // FactoryAdapter can be used to inject feature gates for a plugin that needs // them when the caller expects the older PluginFactory method. func FactoryAdapter(fts plfeature.Features, withFts PluginFactoryWithFts) PluginFactory { … } // DecodeInto decodes configuration whose type is *runtime.Unknown to the interface into. func DecodeInto(obj runtime.Object, into interface{ … } type Registry … // Register adds a new plugin to the registry. If a plugin with the same name // exists, it returns an error. func (r Registry) Register(name string, factory PluginFactory) error { … } // Unregister removes an existing plugin from the registry. If no plugin with // the provided name exists, it returns an error. func (r Registry) Unregister(name string) error { … } // Merge merges the provided registry to the current one. func (r Registry) Merge(in Registry) error { … }