Documentation
¶
Index ¶
- Variables
- func AddInstance(services ServiceCollector, ins any) error
- func AddInstanceFor[insType any, dstType any](services ServiceCollector, ins insType, toSelf ...bool) error
- func AddScope(services ServiceCollector, creator any) error
- func AddScopeFor[forT any](services ServiceCollector, creator any, toSelf ...bool) error
- func AddSingleton(services ServiceCollector, creator any) error
- func AddSingletonFor[forT any](services ServiceCollector, creator any, toSelf ...bool) error
- func GetService[ServiceType any](provider ServiceProvider) (ServiceType, error)
- func ResloveService[ServiceType any](provider ServiceProvider, creator any) (ServiceType, error)
- type Container
- type Scope
- type ServiceCollector
- type ServiceDescriptor
- type ServiceLifetime
- type ServiceProvider
Constants ¶
This section is empty.
Variables ¶
View Source
var (
ErrEmptyDescriptor = errors.New("empty descrptor")
)
Functions ¶
func AddInstance ¶
func AddInstance( services ServiceCollector, ins any, ) error
func AddInstanceFor ¶
func AddInstanceFor[insType any, dstType any]( services ServiceCollector, ins insType, toSelf ...bool, ) error
func AddScope ¶
func AddScope( services ServiceCollector, creator any, ) error
func AddScopeFor ¶
func AddScopeFor[forT any]( services ServiceCollector, creator any, toSelf ...bool, ) error
func AddSingleton ¶
func AddSingleton( services ServiceCollector, creator any, ) error
func AddSingletonFor ¶
func AddSingletonFor[forT any]( services ServiceCollector, creator any, toSelf ...bool, ) error
func GetService ¶
func GetService[ServiceType any](provider ServiceProvider) (ServiceType, error)
func ResloveService ¶
func ResloveService[ServiceType any](provider ServiceProvider, creator any) (ServiceType, error)
Types ¶
type Scope ¶
type Scope interface { ServiceProvider CreateSubScope(id string, options ...func(ServiceCollector)) (Scope, error) GetSubScope(id string) (Scope, bool) }
type ServiceCollector ¶
type ServiceCollector interface {
AddService(descriptor *ServiceDescriptor) error
}
type ServiceDescriptor ¶
type ServiceDescriptor struct { LifeTime ServiceLifetime Type reflect.Type DstType reflect.Type SupportTypes []reflect.Type Instance reflect.Value Creator reflect.Value // contains filtered or unexported fields }
func (*ServiceDescriptor) IsSuport ¶
func (descriptor *ServiceDescriptor) IsSuport(id string) bool
type ServiceLifetime ¶
type ServiceLifetime int
const ( SL_Unknown ServiceLifetime = iota SL_Singleton SL_Scoped SL_Transient )
Source Files
¶
Click to show internal directories.
Click to hide internal directories.