Documentation
¶
Overview ¶
Package ioc provides a simple generics based registry which allows registering instance providers for a name and then instantiating instances, returning instances of the requested type.
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
Types ¶
type Provider ¶
type Provider interface {
Get() any
}
Provider instances return instances of a given type. They may return singletons or a new instance each time
type ProviderF ¶
type ProviderF func() any
ProviderF is a function implemenation of the Provider interface
type Registry ¶
type Registry interface {
// Register adds a Provider for the given name
Register(name string, provider Provider)
// RegisterSingleton adds a Provider which always returns the given instance
RegisterSingleton(name string, val interface{})
// GetProvider returns the Provider for the given name, or nil if no Provider has been
// registered for the given name
GetProvider(name string) Provider
}
Registry instances store Providers keyed by name
Click to show internal directories.
Click to hide internal directories.