Main entry point for this framework to operate.

  • Depin
    • Basic
      • Identifiable
      • Object
        • Anything

no subtypes hierarchy

Depinshared Depin({ClassDeclaration|FunctionOrValueDeclaration*} declarations = ...)

Transforms given declarations into dependencies allowing for further injection.

  • declarations = {}

    Declarations transformed into Tree

readyshared static ready ready

Depin is ready

Inherited Attributes
Attributes inherited from: Object
hash, string
extractshared Result extract<Result>(FunctionOrValueDeclaration declaration)

Support entry point, for retreiving results of dependency resolution. Usable in frameworks like Android SDK or libgdx, where there is no possiblity to nicely create, new instance of given model but late attributes, needs to be provided manually in onCreate, see examples

injectshared Result inject<Result>(Injectable<Result> model)

Main functionality of this framework allowing to instantaite or call given Injectable using it's model. Be aware that for ceylon.language.meta.model:ValueModel, inject() always create new instance of given model. For ceylon.language.meta.model:FunctionModel result depends on implementation of function.

  • model
    • is Result result= factory.create(model).inject
notifyshared void notify<Event>(Event event)

Allows notification of Dependency.Decorator Handlers, with given event. This method honors type hierarchies so subtype events, will notify supertype Handlers, this also includes interfaces.

Inherited Methods
Methods inherited from: Object
Nested Classes
Stateshared static abstract State

Notification state used by Handlers to allocate resources whenver Depin finishes initialization

readyshared static ready

Depin is ready