package
0.0.0-20180325151459-ed3cc772bb2f
Repository: https://github.com/adirelle/go-libs.git
Documentation: pkg.go.dev

# README

Reflection-absed Dependency-Injection Container

GoDoc

# Functions

Constant creates a ConstantProvider for the given value.
Func builds a FuncProvider for the given function.
New initializes new, empty Container, that logs to nothing.

# Variables

ErrInvalidTarget is returned when the target passed to Fetch is not a pointer.

# Structs

BaseContainer is the container implementation of this package.
BuildError is the error returned when the provider returns an invalid reflect.Value.
BuildPanicError is the error returned when the provider panics.
ConstantProvider holds a value to return as is.
CycleError is the error returned when the container detects a cycle.
FuncArgumentError is returned by FuncProvider.Provider when an argument cannot be pulled from the container.
FuncCallError is returned when the func returned an actual error as its second return value.
FuncProvider wraps a function to build the wanted value from arguments pulled from the container.
NoProviderError is the error returned when there is no provider for a given key in the container.
Singleton wraps another provider to guarantee it is used only once.

# Interfaces

Container is the generic container interface.
Provider defines an interface for building values out of a Container.