StrangeIoC
0.6.0
The IoC/Binding Framework for Unity3D and C#
|
A special version of InjectionBinder that allows shared injections across multiple Contexts. More...
Public Member Functions | |
override IInjectionBinding | GetBinding< T > () |
override IInjectionBinding | GetBinding< T > (object name) |
override IInjectionBinding | GetBinding (object key) |
override IInjectionBinding | GetBinding (object key, object name) |
override void | ResolveBinding (IBinding binding, object key) |
Places individual Bindings into the bindings Dictionary as part of the resolving process More... | |
Public Member Functions inherited from strange.extensions.injector.impl.InjectionBinder | |
object | GetInstance (Type key) |
Retrieve an Instance based on the key. More... | |
virtual object | GetInstance (Type key, object name) |
Retrieve an Instance based on a key/name combo. More... | |
T | GetInstance< T > () |
Retrieve an Instance based on the key. More... | |
T | GetInstance< T > (object name) |
Retrieve an Instance based on a key/name combo. More... | |
override IBinding | GetRawBinding () |
Generate an unpopulated IBinding in whatever concrete form the Binder dictates. | |
new IInjectionBinding | Bind< T > () |
IInjectionBinding | Bind (Type key) |
int | ReflectAll () |
Reflect all the types currently registered with InjectionBinder Return the number of types reflected, which should be equal to the number of concrete classes you've mapped. More... | |
int | Reflect (List< Type > list) |
Reflect all the types in the list Return the number of types in the list, which should be equal to the list length. | |
Public Member Functions inherited from strange.framework.impl.Binder | |
delegate void | BindingResolver (IBinding binding) |
A handler for resolving the nature of a binding during chained commands. | |
virtual IBinding | Bind (object key) |
Bind a Binding Key to a value. | |
virtual void | Unbind< T > () |
Remove a binding based on the provided Key (generic) | |
virtual void | Unbind (object key) |
Remove a binding based on the provided Key. | |
virtual void | Unbind< T > (object name) |
Remove a binding based on the provided Key (generic) / Name combo. | |
virtual void | Unbind (object key, object name) |
Remove a binding based on the provided Key / Name combo. | |
virtual void | Unbind (IBinding binding) |
Remove the provided binding from the Binder. | |
virtual void | RemoveValue (IBinding binding, object value) |
Remove a select value from the given binding. | |
virtual void | RemoveKey (IBinding binding, object key) |
Remove a select key from the given binding. | |
virtual void | RemoveName (IBinding binding, object name) |
Remove a select name from the given binding. | |
virtual void | OnRemove () |
The Binder is being removed Override this method to clean up remaining bindings. | |
Public Member Functions inherited from strange.extensions.injector.api.IInjectionBinder | |
IBinding | Bind (object key) |
void | Unbind< T > () |
void | Unbind< T > (object name) |
void | Unbind (object key) |
void | Unbind (object key, object name) |
void | Unbind (IBinding binding) |
Protected Member Functions | |
override IInjector | GetInjectorForBinding (IInjectionBinding binding) |
Properties | |
IInjectionBinder | CrossContextBinder [get, set] |
Properties inherited from strange.extensions.injector.impl.InjectionBinder | |
IInjector | injector [get, set] |
Properties inherited from strange.extensions.injector.api.IInjectionBinder | |
IInjector | injector [get, set] |
Get or set an Injector to use. By default, Injector instantiates it's own, but that can be overridden. | |
Properties inherited from strange.extensions.injector.api.ICrossContextInjectionBinder | |
IInjectionBinder | CrossContextBinder [get, set] |
Additional Inherited Members | |
Protected Attributes inherited from strange.framework.impl.Binder | |
Dictionary< object, Dictionary < object, IBinding > > | bindings |
Dictionary of all bindings Two-layer keys. More... | |
Dictionary< object, Dictionary < IBinding, object > > | conflicts |
A special version of InjectionBinder that allows shared injections across multiple Contexts.
|
inline |
Places individual Bindings into the bindings Dictionary as part of the resolving process
Note that while some Bindings may store multiple keys, each key takes a unique position in the bindings Dictionary.
Conflicts in the course of fluent binding are expected, but GetBinding will throw an error if there are any unresolved conflicts.
Implements strange.extensions.injector.api.IInjectionBinder.