public GameObjectNameGroupNameBinder FromPrefab(UnityEngine.Object prefab) { BindingUtil.AssertIsValidPrefab(prefab); var gameObjectInfo = new GameObjectBindInfo(); if (ContractType == typeof(GameObject)) { SubFinalizer = CreateFinalizer( (container) => new PrefabGameObjectProvider( new PrefabInstantiator( container, gameObjectInfo.Name, gameObjectInfo.GroupName, new List <TypeValuePair>(), new PrefabProvider(prefab)))); } else { BindingUtil.AssertIsAbstractOrComponent(ContractType); SubFinalizer = CreateFinalizer( (container) => new GetFromPrefabComponentProvider( ContractType, new PrefabInstantiator( container, gameObjectInfo.Name, gameObjectInfo.GroupName, new List <TypeValuePair>(), new PrefabProvider(prefab)))); } return(new GameObjectNameGroupNameBinder(BindInfo, gameObjectInfo)); }
public GameObjectNameGroupNameScopeBinder ByPrefab(UnityEngine.Object prefab) { BindingUtil.AssertIsValidPrefab(prefab); var gameObjectInfo = new GameObjectCreationParameters(); SubFinalizer = new SubContainerPrefabBindingFinalizer( _bindInfo, gameObjectInfo, prefab, _subIdentifier); return(new GameObjectNameGroupNameScopeBinder(_bindInfo, gameObjectInfo)); }
public NameTransformScopeConditionCopyNonLazyBinder ByNewPrefab(UnityEngine.Object prefab) { BindingUtil.AssertIsValidPrefab(prefab); var gameObjectInfo = new GameObjectCreationParameters(); SubFinalizer = new SubContainerPrefabBindingFinalizer( _bindInfo, gameObjectInfo, prefab, _subIdentifier); return(new NameTransformScopeConditionCopyNonLazyBinder(_bindInfo, gameObjectInfo)); }
public NameTransformScopeArgConditionCopyNonLazyBinder FromComponentInNewPrefab( UnityEngine.Object prefab, GameObjectCreationParameters gameObjectInfo) { BindingUtil.AssertIsValidPrefab(prefab); BindingUtil.AssertIsInterfaceOrComponent(AllParentTypes); BindInfo.RequireExplicitScope = true; SubFinalizer = new PrefabBindingFinalizer( BindInfo, gameObjectInfo, prefab); return(new NameTransformScopeArgConditionCopyNonLazyBinder(BindInfo, gameObjectInfo)); }
public GameObjectNameGroupNameScopeArgBinder FromPrefab(UnityEngine.Object prefab) { BindingUtil.AssertIsValidPrefab(prefab); BindingUtil.AssertIsAbstractOrComponentOrGameObject(AllParentTypes); var gameObjectInfo = new GameObjectCreationParameters(); SubFinalizer = new PrefabBindingFinalizer( BindInfo, gameObjectInfo, prefab); return(new GameObjectNameGroupNameScopeArgBinder(BindInfo, gameObjectInfo)); }
public NameTransformScopeConcreteIdArgConditionCopyNonLazyBinder ByNewContextPrefab(UnityEngine.Object prefab) { BindingUtil.AssertIsValidPrefab(prefab); var gameObjectInfo = new GameObjectCreationParameters(); SubFinalizer = new SubContainerPrefabBindingFinalizer( _bindInfo, _subIdentifier, _resolveAll, (container) => new SubContainerCreatorByNewPrefab( container, new PrefabProvider(prefab), gameObjectInfo)); return(new NameTransformScopeConcreteIdArgConditionCopyNonLazyBinder(_bindInfo, gameObjectInfo)); }
internal NameTransformScopeConcreteIdArgConditionCopyNonLazyBinder FromComponentsInNewPrefab( UnityEngine.Object prefab, GameObjectCreationParameters gameObjectInfo) { BindingUtil.AssertIsValidPrefab(prefab); BindingUtil.AssertIsInterfaceOrComponent(AllParentTypes); BindInfo.RequireExplicitScope = true; SubFinalizer = new PrefabBindingFinalizer( BindInfo, gameObjectInfo, prefab, (contractType, instantiator) => new GetFromPrefabComponentProvider(contractType, instantiator, false)); return(new NameTransformScopeConcreteIdArgConditionCopyNonLazyBinder(BindInfo, gameObjectInfo)); }
internal NameTransformScopeConcreteIdArgConditionCopyNonLazyBinder FromNewComponentOnNewPrefab( UnityEngine.Object prefab, GameObjectCreationParameters gameObjectInfo) { BindingUtil.AssertIsValidPrefab(prefab); BindingUtil.AssertIsComponent(ConcreteTypes); BindingUtil.AssertTypesAreNotAbstract(ConcreteTypes); BindInfo.RequireExplicitScope = true; SubFinalizer = new PrefabBindingFinalizer( BindInfo, gameObjectInfo, prefab, (contractType, instantiator) => new InstantiateOnPrefabComponentProvider(contractType, instantiator)); return(new NameTransformScopeConcreteIdArgConditionCopyNonLazyBinder(BindInfo, gameObjectInfo)); }
public NameTransformConditionCopyNonLazyBinder FromComponentInNewPrefab(UnityEngine.Object prefab) { BindingUtil.AssertIsValidPrefab(prefab); BindingUtil.AssertIsInterfaceOrComponent(ContractType); var gameObjectInfo = new GameObjectCreationParameters(); ProviderFunc = (container) => new GetFromPrefabComponentProvider( ContractType, new PrefabInstantiator( container, gameObjectInfo, ContractType, new List <TypeValuePair>(), new PrefabProvider(prefab))); return(new NameTransformConditionCopyNonLazyBinder(BindInfo, gameObjectInfo)); }
public GameObjectNameGroupNameBinder ByPrefab(UnityEngine.Object prefab) { BindingUtil.AssertIsValidPrefab(prefab); var gameObjectInfo = new GameObjectCreationParameters(); SubFinalizer = CreateFinalizer( (container) => new SubContainerDependencyProvider( ContractType, SubIdentifier, new SubContainerCreatorByPrefab( container, new PrefabProvider(prefab), gameObjectInfo))); return(new GameObjectNameGroupNameBinder(BindInfo, gameObjectInfo)); }
public NameTransformScopeConditionCopyNonLazyBinder ByNewPrefabMethod( UnityEngine.Object prefab, Action <DiContainer> installerMethod) { BindingUtil.AssertIsValidPrefab(prefab); GameObjectCreationParameters gameObjectInfo = new GameObjectCreationParameters(); SubFinalizer = new SubContainerPrefabBindingFinalizer( _bindInfo, _subIdentifier, _resolveAll, (container) => new SubContainerCreatorByNewPrefabMethod( container, new PrefabProvider(prefab), gameObjectInfo, installerMethod)); return(new NameTransformScopeConditionCopyNonLazyBinder(_bindInfo, gameObjectInfo)); }
public NameTransformScopeConcreteIdArgConditionCopyNonLazyBinder ByNewContextPrefab(UnityEngine.Object prefab) { BindingUtil.AssertIsValidPrefab(prefab); var gameObjectInfo = new GameObjectCreationParameters(); ProviderFunc = (container) => new SubContainerDependencyProvider( ContractType, SubIdentifier, new SubContainerCreatorByNewPrefab( container, new PrefabProvider(prefab), gameObjectInfo), false); return(new NameTransformScopeConcreteIdArgConditionCopyNonLazyBinder(BindInfo, gameObjectInfo)); }
public NameTransformConditionCopyNonLazyBinder ByNewPrefabMethod( UnityEngine.Object prefab, Action <DiContainer, TParam1, TParam2, TParam3> installerMethod) { BindingUtil.AssertIsValidPrefab(prefab); var gameObjectInfo = new GameObjectCreationParameters(); ProviderFunc = (container) => new SubContainerDependencyProvider( ContractType, SubIdentifier, new SubContainerCreatorByNewPrefabMethod <TParam1, TParam2, TParam3>( container, new PrefabProvider(prefab), gameObjectInfo, installerMethod), false); return(new NameTransformConditionCopyNonLazyBinder(BindInfo, gameObjectInfo)); }
public NameTransformScopeConcreteIdArgConditionCopyNonLazyBinder FromNewComponentOnNewPrefab(UnityEngine.Object prefab) { BindingUtil.AssertIsValidPrefab(prefab); BindingUtil.AssertIsComponent(ContractType); BindingUtil.AssertIsNotAbstract(ContractType); var gameObjectInfo = new GameObjectCreationParameters(); ProviderFunc = (container) => new InstantiateOnPrefabComponentProvider( ContractType, new PrefabInstantiator( container, gameObjectInfo, ContractType, new List <TypeValuePair>(), new PrefabProvider(prefab), BindInfo.InstantiatedCallback)); return(new NameTransformScopeConcreteIdArgConditionCopyNonLazyBinder(BindInfo, gameObjectInfo)); }
public NameTransformScopeConcreteIdArgConditionCopyNonLazyBinder FromComponentInNewPrefab(UnityEngine.Object prefab) { BindingUtil.AssertIsValidPrefab(prefab); BindingUtil.AssertIsInterfaceOrComponent(ContractType); var gameObjectInfo = new GameObjectCreationParameters(); ProviderFunc = (container) => new GetFromPrefabComponentProvider( ContractType, new PrefabInstantiator( container, gameObjectInfo, ContractType, new [] { ContractType }, BindInfo.Arguments, new PrefabProvider(prefab), BindInfo.InstantiatedCallback), true); return(new NameTransformScopeConcreteIdArgConditionCopyNonLazyBinder(BindInfo, gameObjectInfo)); }
public GameObjectNameGroupNameBinder ByPrefab(Type installerType, UnityEngine.Object prefab) { BindingUtil.AssertIsValidPrefab(prefab); BindingUtil.AssertIsIInstallerType(installerType); var gameObjectInfo = new GameObjectBindInfo(); SubFinalizer = CreateFinalizer( (container) => new SubContainerDependencyProvider( ContractType, SubIdentifier, new SubContainerCreatorByPrefabWithParams( installerType, container, new PrefabProvider(prefab), gameObjectInfo.Name, gameObjectInfo.GroupName))); return(new GameObjectNameGroupNameBinder(BindInfo, gameObjectInfo)); }
public NameTransformConditionCopyNonLazyBinder ByPrefab(Type installerType, UnityEngine.Object prefab) { BindingUtil.AssertIsValidPrefab(prefab); Assert.That(installerType.DerivesFrom <MonoInstaller>(), "Invalid installer type given during bind command. Expected type '{0}' to derive from 'MonoInstaller'", installerType); var gameObjectInfo = new GameObjectCreationParameters(); ProviderFunc = (container) => new SubContainerDependencyProvider( ContractType, SubIdentifier, new SubContainerCreatorByPrefabWithParams( installerType, container, new PrefabProvider(prefab), gameObjectInfo)); return(new NameTransformConditionCopyNonLazyBinder(BindInfo, gameObjectInfo)); }
public NameTransformScopeConcreteIdArgConditionCopyNonLazyBinder ByNewPrefabMethod( UnityEngine.Object prefab, #if !NET_4_6 ModestTree.Util. #endif Action <DiContainer, TParam1, TParam2, TParam3, TParam4, TParam5, TParam6, TParam7, TParam8, TParam9, TParam10> installerMethod) { BindingUtil.AssertIsValidPrefab(prefab); var gameObjectInfo = new GameObjectCreationParameters(); ProviderFunc = (container) => new SubContainerDependencyProvider( ContractType, SubIdentifier, new SubContainerCreatorByNewPrefabMethod <TParam1, TParam2, TParam3, TParam4, TParam5, TParam6, TParam7, TParam8, TParam9, TParam10>(container, new PrefabProvider(prefab), gameObjectInfo, installerMethod), false); return(new NameTransformScopeConcreteIdArgConditionCopyNonLazyBinder(BindInfo, gameObjectInfo)); }
public GameObjectNameGroupNameBinder ByPrefab(Type installerType, UnityEngine.Object prefab) { BindingUtil.AssertIsValidPrefab(prefab); Assert.That(installerType.DerivesFrom <MonoInstaller>(), "Invalid installer type given during bind command. Expected type '{0}' to derive from 'MonoInstaller'", installerType.Name()); var gameObjectInfo = new GameObjectCreationParameters(); SubFinalizer = CreateFinalizer( (container) => new SubContainerDependencyProvider( ContractType, SubIdentifier, new SubContainerCreatorByPrefabWithParams( installerType, container, new PrefabProvider(prefab), gameObjectInfo))); return(new GameObjectNameGroupNameBinder(BindInfo, gameObjectInfo)); }