public override IRegistration Build() { var injector = InjectorCache.GetOrBuild(ImplementationType); var destination = new ComponentDestination(prefab, parent, parentFinder, gameObjectName); return(new ComponentRegistration( ImplementationType, Lifetime, InterfaceTypes, Parameters, injector, destination)); }
internal ComponentRegistration( Type implementationType, Lifetime lifetime, IReadOnlyList <Type> interfaceTypes, IReadOnlyList <IInjectParameter> parameters, IInjector injector, ComponentDestination destination) { ImplementationType = implementationType; Lifetime = lifetime; InterfaceTypes = interfaceTypes; Parameters = parameters; this.injector = injector; this.destination = destination; }