di

package
v0.0.5 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: May 8, 2020 License: MIT Imports: 5 Imported by: 15

Documentation

Index

Constants

View Source
const ServicePineLogger = "pine.logger"
View Source
const ServicePineRender = "pine.render"
View Source
const ServicePineSessions = "pine.sessions"

Variables

View Source
var ServiceSingletonErr = errors.New("service is singleton, cannot use it with GetWithParams")

Functions

func Exists

func Exists(serviceAny interface{}) bool

func Get

func Get(serviceAny interface{}) (interface{}, error)

func GetWithParams

func GetWithParams(serviceName string, params ...interface{}) (interface{}, error)

func List

func List() []string

get all registered services

func MustGet

func MustGet(serviceAny interface{}, params ...interface{}) interface{}

func ResolveServiceName

func ResolveServiceName(service interface{}) string

Types

type AbstractBuilder

type AbstractBuilder interface {
	Set(interface{}, BuildHandler, bool) *Definition
	SetWithParams(interface{}, BuildWithHandler) *Definition
	Add(*Definition)
	Get(interface{}) (interface{}, error)
	GetWithParams(interface{}, ...interface{}) (interface{}, error)
	MustGet(interface{}, ...interface{}) interface{}
	GetDefinition(interface{}) (*Definition, error)
	Exists(interface{}) bool
}

type BuildHandler

type BuildHandler func(builder AbstractBuilder) (interface{}, error)

type BuildWithHandler

type BuildWithHandler func(builder AbstractBuilder, params ...interface{}) (interface{}, error)

type Definition

type Definition struct {
	sync.Mutex
	// contains filtered or unexported fields
}

func NewDefinition

func NewDefinition(name string, factory BuildHandler, shared bool) *Definition

func NewParamsDefinition

func NewParamsDefinition(name string, factory BuildWithHandler) *Definition

func Set

func Set(serviceAny interface{}, handler BuildHandler, singleton bool) *Definition

func SetWithParams

func SetWithParams(serviceAny interface{}, handler BuildWithHandler) *Definition

func (*Definition) IsResolved

func (d *Definition) IsResolved() bool

func (*Definition) IsSingleton

func (d *Definition) IsSingleton() bool

func (*Definition) ServiceName

func (d *Definition) ServiceName() string

func (*Definition) SetShared

func (d *Definition) SetShared(shared bool)

func (*Definition) SetTypeName

func (d *Definition) SetTypeName(call func() string)

func (*Definition) TypeName

func (d *Definition) TypeName() string

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL