internal override AbstractBinding getBinding(TypeDefinition typeDefinition) { //First we try to resolve it on our own, without own AbstractBinding AbstractBinding abstractBinding = binder.getBinding(typeDefinition); //if we do not have a specific AbstractBinding for it, we need to check to see if our parent injector has a specific AbstractBinding for it before we just go building stuff if (abstractBinding == null) { abstractBinding = parentInjector.getBinding(typeDefinition); } return(abstractBinding); }
object resolveDependency(TypeDefinition typeDefinition) { AbstractBinding abstractBinding = null; if (!typeDefinition.builtIn) { abstractBinding = getBinding(typeDefinition); } object instance; if (abstractBinding != null) { instance = abstractBinding.provide(this); } else { instance = buildClass(typeDefinition); } return(instance); }
public SingletonDecorator(AbstractBinding abstractBinding) : base(abstractBinding) { }
public ContextDecorator(AbstractBinding abstractBinding) { sourceAbstractBinding = abstractBinding; }
internal Validator(object @this, AbstractBinding binding = null) { This = @this; Binding = binding ?? throw new ArgumentNullException(nameof(binding)); }