public IContainer WithGenericBindingBuilder(IGenericBindingBuilder genericBuilder) { if (genericBuilder == null) { throw new ArgumentNullException(nameof(genericBuilder)); } if (!_genericBuildersByType.TryGetValue(genericBuilder.ServiceType, out var bindingsSet)) { _genericBuildersByType[genericBuilder.ServiceType] = bindingsSet = new HashSet <IGenericBindingBuilder>(); } bindingsSet.Add(genericBuilder); return(this); }
private IBindingBuilder <TSpecificService> MakeSpecificBindingBuilder <TSpecificService>(IGenericBindingBuilder genericBuilder) { return(genericBuilder.MakeSpecific <TSpecificService>()); }
private IBindingBuilder <TSpecificService> MakeSpecificBindingBuilder <TService, TSpecificService>(IGenericBindingBuilder <TService> genericBindingBuilder) where TSpecificService : TService { return(genericBindingBuilder.MakeSpecific <TSpecificService>()); }