A lightweight IOC Container that is powerful enough to do all the things you need it to do.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

1934 lines
144 KiB

<?xml version="1.0"?>
<doc>
<assembly>
<name>LightweightIocContainer</name>
</assembly>
<members>
<member name="M:LightweightIocContainer.ActionExtension.Convert``2(System.Action{``1})">
<summary>
Convert an <see cref="T:System.Action`1"/> to an <see cref="T:System.Action`1"/> of an inherited <see cref="T:System.Type"/>
</summary>
<typeparam name="T1">The <see cref="T:System.Type"/> of the <see cref="T:System.Action`1"/> to convert to, has to be implemented by <typeparamref name="T2"/></typeparam>
<typeparam name="T2">The <see cref="T:System.Type"/> of the given <see cref="T:System.Action`1"/>, has to implement <typeparamref name="T1"/></typeparam>
<param name="action">The given <see cref="T:System.Action`1"/> to convert</param>
<returns>An <see cref="T:System.Action`1"/> converted from the given <see cref="T:System.Action`1"/></returns>
</member>
<member name="T:LightweightIocContainer.Creator">
<summary>
Helper for dynamic instance creation
</summary>
</member>
<member name="M:LightweightIocContainer.Creator.CreateInstance``1(System.Type,System.Object[])">
<summary>
Creates an instance of the given <see cref="T:System.Type"/> with the given arguments
</summary>
<param name="type">The given <see cref="T:System.Type"/></param>
<param name="arguments">The given arguments</param>
<typeparam name="T">The <see cref="T:System.Type"/> that is returned</typeparam>
<returns>A new instance of the given <see cref="T:System.Type"/></returns>
<exception cref="T:System.InvalidOperationException">The given type could not be created</exception>
</member>
<member name="T:LightweightIocContainer.DisposeStrategy">
<summary>
The dispose strategy that is used for a singleton or multiton that implements <see cref="T:System.IDisposable"/> and is created by the <see cref="T:LightweightIocContainer.IocContainer"/>
</summary>
</member>
<member name="F:LightweightIocContainer.DisposeStrategy.None">
<summary>
No dispose strategy
<remarks>Invalid for singletons or multitons that implement <see cref="T:System.IDisposable"/></remarks>
</summary>
</member>
<member name="F:LightweightIocContainer.DisposeStrategy.Application">
<summary>
The application is responsible for correctly disposing the instance. Nothing is done by the <see cref="T:LightweightIocContainer.IocContainer"/>
</summary>
</member>
<member name="F:LightweightIocContainer.DisposeStrategy.Container">
<summary>
The <see cref="T:LightweightIocContainer.IocContainer"/> is responsible for disposing the instance when itself is disposed
</summary>
</member>
<member name="M:LightweightIocContainer.EnumerableExtension.FirstOrGiven``2(System.Collections.Generic.IReadOnlyCollection{``0})">
<summary>
Returns the first element of a <see cref="T:System.Collections.Generic.IEnumerable`1"/>, or a new instance of a given <see cref="T:System.Type"/> if the <see cref="T:System.Collections.Generic.IEnumerable`1"/> contains no elements
</summary>
<typeparam name="TSource">The source <see cref="T:System.Type"/> of the <see cref="T:System.Collections.Generic.IEnumerable`1"/></typeparam>
<typeparam name="TGiven">The given <see cref="T:System.Type"/> to return if the <see cref="T:System.Collections.Generic.IEnumerable`1"/> contains no elements</typeparam>
<param name="source">The given <see cref="T:System.Collections.Generic.IEnumerable`1"/></param>
<returns>The first element of the <see cref="T:System.Collections.Generic.IEnumerable`1"/>, or a new instance of a given <see cref="T:System.Type"/> if the <see cref="T:System.Collections.Generic.IEnumerable`1"/> contains no elements</returns>
</member>
<member name="M:LightweightIocContainer.EnumerableExtension.FirstOrGiven``2(System.Collections.Generic.IReadOnlyCollection{``0},System.Func{``0,System.Boolean})">
<summary>
Returns the first element of a <see cref="T:System.Collections.Generic.IEnumerable`1"/> that satisfies a condition, or a new instance of a given <see cref="T:System.Type"/> if no such element is found
</summary>
<typeparam name="TSource">The source <see cref="T:System.Type"/> of the <see cref="T:System.Collections.Generic.IEnumerable`1"/></typeparam>
<typeparam name="TGiven">The given <see cref="T:System.Type"/> to return if the <see cref="T:System.Collections.Generic.IEnumerable`1"/> contains no element that satisfies the given condition</typeparam>
<param name="source">The given <see cref="T:System.Collections.Generic.IEnumerable`1"/></param>
<param name="predicate">A function to test each element for a condition</param>
<returns>The first element of the <see cref="T:System.Collections.Generic.IEnumerable`1"/> that satisfies a condition, or a new instance of the given <see cref="T:System.Type"/> if no such element is found</returns>
</member>
<member name="M:LightweightIocContainer.EnumerableExtension.TryGetFirst``2(System.Collections.Generic.IReadOnlyCollection{``0},System.Func{``0,System.Boolean})">
<summary>
Tries to get the first element of the given <see cref="T:System.Collections.Generic.IEnumerable`1"/> or creates a new element of a given <see cref="T:System.Type"/> when no element is found
</summary>
<typeparam name="TSource">The source <see cref="T:System.Type"/> of the <see cref="T:System.Collections.Generic.IEnumerable`1"/></typeparam>
<typeparam name="TGiven">The given <see cref="T:System.Type"/> to create a new element when no fitting element is found</typeparam>
<param name="source">The given <see cref="T:System.Collections.Generic.IEnumerable`1"/></param>
<param name="predicate">A function to test each element for a condition</param>
<returns>The first element of the <see cref="T:System.Collections.Generic.IEnumerable`1"/> or a new instance of the given <see cref="T:System.Type"/> when no element is found</returns>
</member>
<member name="M:LightweightIocContainer.EnumerableExtension.ForEach``1(System.Collections.Generic.IEnumerable{``0},System.Action{``0})">
<summary>
Executes an <see cref="T:System.Action`1"/> for each item in an <see cref="T:System.Collections.Generic.IEnumerable`1"/>
</summary>
<param name="enumerable">The <see cref="T:System.Collections.Generic.IEnumerable`1"/></param>
<param name="action">The <see cref="T:System.Action`1"/></param>
<typeparam name="T">The <see cref="T:System.Type"/> of the items in the <see cref="T:System.Collections.Generic.IEnumerable`1"/></typeparam>
</member>
<member name="T:LightweightIocContainer.Exceptions.CircularDependencyException">
<summary>
A circular dependency was detected during <see cref="M:LightweightIocContainer.IocContainer.Resolve``1"/>
</summary>
</member>
<member name="M:LightweightIocContainer.Exceptions.CircularDependencyException.#ctor(System.Type,System.Collections.Generic.List{System.Type})">
<summary>
A circular dependency was detected during <see cref="M:LightweightIocContainer.IocContainer.Resolve``1"/>
</summary>
<param name="resolvingType">The currently resolving <see cref="T:System.Type"/></param>
<param name="resolveStack">The resolve stack at the time the <see cref="T:LightweightIocContainer.Exceptions.CircularDependencyException"/> was thrown</param>
</member>
<member name="P:LightweightIocContainer.Exceptions.CircularDependencyException.ResolvingType">
<summary>
The currently resolving <see cref="T:System.Type"/>
</summary>
</member>
<member name="P:LightweightIocContainer.Exceptions.CircularDependencyException.ResolveStack">
<summary>
The resolve stack at the time the <see cref="T:LightweightIocContainer.Exceptions.CircularDependencyException"/> was thrown
</summary>
</member>
<member name="P:LightweightIocContainer.Exceptions.CircularDependencyException.Message">
<summary>
The exception message
</summary>
</member>
<member name="T:LightweightIocContainer.Exceptions.ConstructorNotMatchingException">
<summary>
The constructor does not match the given or resolvable arguments
</summary>
</member>
<member name="M:LightweightIocContainer.Exceptions.ConstructorNotMatchingException.#ctor(System.Reflection.ConstructorInfo,System.Exception)">
<summary>
The constructor does not match the given or resolvable arguments
</summary>
<param name="constructor">The constructor that does not match</param>
<param name="exception">The inner exception</param>
</member>
<member name="P:LightweightIocContainer.Exceptions.ConstructorNotMatchingException.Constructor">
<summary>
The constructor that does not match
</summary>
</member>
<member name="T:LightweightIocContainer.Exceptions.DirectResolveWithRegisteredFactoryNotAllowed">
<summary>
A direct resolve with a registered factory is not allowed
</summary>
</member>
<member name="M:LightweightIocContainer.Exceptions.DirectResolveWithRegisteredFactoryNotAllowed.#ctor(System.Type)">
<summary>
A direct resolve with a registered factory is not allowed
</summary>
<param name="type">The type that can't be resolved directly</param>
</member>
<member name="P:LightweightIocContainer.Exceptions.DirectResolveWithRegisteredFactoryNotAllowed.Type">
<summary>
The <see cref="P:LightweightIocContainer.Exceptions.DirectResolveWithRegisteredFactoryNotAllowed.Type"/> that can't be resolved directly
</summary>
</member>
<member name="T:LightweightIocContainer.Exceptions.GenericMethodNotFoundException">
<summary>
Could not find generic method
</summary>
</member>
<member name="M:LightweightIocContainer.Exceptions.GenericMethodNotFoundException.#ctor(System.String)">
<summary>
Could not find generic method
</summary>
<param name="functionName">The name of the generic method</param>
</member>
<member name="T:LightweightIocContainer.Exceptions.IllegalAbstractMethodCreationException">
<summary>
The creation of the abstract method is illegal in its current state
</summary>
</member>
<member name="M:LightweightIocContainer.Exceptions.IllegalAbstractMethodCreationException.#ctor(System.String,System.Reflection.MethodInfo)">
<summary>
The creation of the abstract method is illegal in its current state
</summary>
<param name="message">The exception message</param>
<param name="method">The method that is illegal to create</param>
</member>
<member name="P:LightweightIocContainer.Exceptions.IllegalAbstractMethodCreationException.Method">
<summary>
The Method whose creation is illegal
</summary>
</member>
<member name="T:LightweightIocContainer.Exceptions.InternalResolveException">
<summary>
An internal Error happened while the <see cref="T:LightweightIocContainer.Interfaces.IIocContainer"/> tried to resolve an instance
</summary>
</member>
<member name="M:LightweightIocContainer.Exceptions.InternalResolveException.#ctor(System.String)">
<summary>
An internal Error happened while the <see cref="T:LightweightIocContainer.Interfaces.IIocContainer"/> tried to resolve an instance
</summary>
<param name="message">The exception message</param>
</member>
<member name="T:LightweightIocContainer.Exceptions.InvalidDisposeStrategyException">
<summary>
Invalid <see cref="T:LightweightIocContainer.DisposeStrategy"/> is used
</summary>
</member>
<member name="M:LightweightIocContainer.Exceptions.InvalidDisposeStrategyException.#ctor(LightweightIocContainer.DisposeStrategy,System.Type,LightweightIocContainer.Lifestyle)">
<summary>
Invalid <see cref="T:LightweightIocContainer.DisposeStrategy"/> is used
</summary>
<param name="disposeStrategy">The <see cref="T:LightweightIocContainer.DisposeStrategy"/></param>
<param name="type">The <see cref="T:System.Type"/></param>
<param name="lifestyle">The <see cref="T:LightweightIocContainer.Lifestyle"/></param>
</member>
<member name="T:LightweightIocContainer.Exceptions.InvalidFactoryRegistrationException">
<summary>
The registration of a Factory is not valid
</summary>
</member>
<member name="M:LightweightIocContainer.Exceptions.InvalidFactoryRegistrationException.#ctor(System.String)">
<summary>
The registration of a Factory is not valid
</summary>
<param name="message">The exception message</param>
</member>
<member name="T:LightweightIocContainer.Exceptions.InvalidIgnoreConstructorAttributeException`1">
<summary>
The passed <see cref="T:System.Attribute"/> can't be used on a constructor
</summary>
<typeparam name="T">The used <see cref="T:System.Attribute"/></typeparam>
</member>
<member name="M:LightweightIocContainer.Exceptions.InvalidIgnoreConstructorAttributeException`1.#ctor">
<summary>
The passed <see cref="T:System.Attribute"/> can't be used on a constructor
</summary>
</member>
<member name="T:LightweightIocContainer.Exceptions.InvalidRegistrationException">
<summary>
The registration is not valid
</summary>
</member>
<member name="M:LightweightIocContainer.Exceptions.InvalidRegistrationException.#ctor(System.String)">
<summary>
The registration is not valid
</summary>
<param name="message">The exception message</param>
</member>
<member name="T:LightweightIocContainer.Exceptions.IocContainerException">
<summary>
A base <see cref="T:System.Exception"/> for the <see cref="N:LightweightIocContainer"/>
</summary>
</member>
<member name="M:LightweightIocContainer.Exceptions.IocContainerException.#ctor">
<summary>
A base <see cref="T:System.Exception"/> for the <see cref="N:LightweightIocContainer"/>
</summary>
</member>
<member name="M:LightweightIocContainer.Exceptions.IocContainerException.#ctor(System.String)">
<summary>
A base <see cref="T:System.Exception"/> for the <see cref="N:LightweightIocContainer"/>
</summary>
<param name="message">The message of the <see cref="T:System.Exception"/></param>
</member>
<member name="M:LightweightIocContainer.Exceptions.IocContainerException.#ctor(System.String,System.Exception)">
<summary>
A base <see cref="T:System.Exception"/> for the <see cref="N:LightweightIocContainer"/>
</summary>
<param name="message">The message of the <see cref="T:System.Exception"/></param>
<param name="innerException">The inner <see cref="T:System.Exception"/></param>
</member>
<member name="P:LightweightIocContainer.Exceptions.IocContainerException.InnerExceptions">
<summary>
The inner exceptions of the <see cref="T:LightweightIocContainer.Exceptions.IocContainerException"/>
</summary>
</member>
<member name="T:LightweightIocContainer.Exceptions.MultipleRegistrationException">
<summary>
The <see cref="T:System.Type"/> is already registered differently in this <see cref="T:LightweightIocContainer.Interfaces.IIocContainer"/>
</summary>
</member>
<member name="M:LightweightIocContainer.Exceptions.MultipleRegistrationException.#ctor(System.Type)">
<summary>
The <see cref="T:System.Type"/> is already registered differently in this <see cref="T:LightweightIocContainer.Interfaces.IIocContainer"/>
</summary>
<param name="type">The <see cref="T:System.Type"/> that is already registered in this <see cref="T:LightweightIocContainer.Interfaces.IIocContainer"/></param>
</member>
<member name="P:LightweightIocContainer.Exceptions.MultipleRegistrationException.Type">
<summary>
The registered <see cref="T:System.Type"/>
</summary>
</member>
<member name="T:LightweightIocContainer.Exceptions.MultitonResolveException">
<summary>
An error happened while trying to resolve a multiton
</summary>
</member>
<member name="M:LightweightIocContainer.Exceptions.MultitonResolveException.#ctor(System.String,System.Type)">
<summary>
An error happened while trying to resolve a multiton
</summary>
<param name="message">The exception message</param>
<param name="type">The <see cref="T:System.Type"/> of the multiton that's responsible for the exception</param>
</member>
<member name="P:LightweightIocContainer.Exceptions.MultitonResolveException.Type">
<summary>
The <see cref="T:System.Type"/> of the multiton that's responsible for the exception
</summary>
</member>
<member name="T:LightweightIocContainer.Exceptions.NoMatchingConstructorFoundException">
<summary>
No matching constructor was found for the given or resolvable arguments
</summary>
</member>
<member name="M:LightweightIocContainer.Exceptions.NoMatchingConstructorFoundException.#ctor(System.Type)">
<summary>
No matching constructor was found for the given or resolvable arguments
</summary>
<param name="type">The <see cref="P:LightweightIocContainer.Exceptions.NoMatchingConstructorFoundException.Type"/> with no matching constructor</param>
</member>
<member name="P:LightweightIocContainer.Exceptions.NoMatchingConstructorFoundException.Type">
<summary>
The <see cref="P:LightweightIocContainer.Exceptions.NoMatchingConstructorFoundException.Type"/> with no matching constructor
</summary>
</member>
<member name="M:LightweightIocContainer.Exceptions.NoMatchingConstructorFoundException.AddInnerException(LightweightIocContainer.Exceptions.ConstructorNotMatchingException)">
<summary>
Add an inner exception to the <see cref="P:LightweightIocContainer.Exceptions.IocContainerException.InnerExceptions"/>
</summary>
<param name="exception">The <see cref="T:LightweightIocContainer.Exceptions.ConstructorNotMatchingException"/></param>
</member>
<member name="T:LightweightIocContainer.Exceptions.NoPublicConstructorFoundException">
<summary>
No public constructor can be found for a <see cref="P:LightweightIocContainer.Exceptions.NoPublicConstructorFoundException.Type"/>
</summary>
</member>
<member name="M:LightweightIocContainer.Exceptions.NoPublicConstructorFoundException.#ctor(System.Type)">
<summary>
No public constructor can be found for a <see cref="P:LightweightIocContainer.Exceptions.NoPublicConstructorFoundException.Type"/>
</summary>
<param name="type">The <see cref="P:LightweightIocContainer.Exceptions.NoPublicConstructorFoundException.Type"/> with no public constructor</param>
</member>
<member name="P:LightweightIocContainer.Exceptions.NoPublicConstructorFoundException.Type">
<summary>
The <see cref="P:LightweightIocContainer.Exceptions.NoPublicConstructorFoundException.Type"/> with no public constructor
</summary>
</member>
<member name="T:LightweightIocContainer.Exceptions.TypeNotRegisteredException">
<summary>
The <see cref="T:System.Type"/> is not registered in this <see cref="T:LightweightIocContainer.Interfaces.IIocContainer"/>
</summary>
</member>
<member name="M:LightweightIocContainer.Exceptions.TypeNotRegisteredException.#ctor(System.Type)">
<summary>
The <see cref="T:System.Type"/> is not registered in this <see cref="T:LightweightIocContainer.Interfaces.IIocContainer"/>
</summary>
<param name="type">The unregistered <see cref="T:System.Type"/></param>
</member>
<member name="P:LightweightIocContainer.Exceptions.TypeNotRegisteredException.Type">
<summary>
The unregistered <see cref="T:System.Type"/>
</summary>
</member>
<member name="T:LightweightIocContainer.Exceptions.UnknownRegistrationException">
<summary>
An unknown <see cref="T:LightweightIocContainer.Interfaces.Registrations.IRegistration"/> was used
</summary>
</member>
<member name="M:LightweightIocContainer.Exceptions.UnknownRegistrationException.#ctor(System.String)">
<summary>
An unknown <see cref="T:LightweightIocContainer.Interfaces.Registrations.IRegistration"/> was used
</summary>
<param name="message">The exception message</param>
</member>
<member name="T:LightweightIocContainer.Factories.CustomTypedFactory`1">
<summary>
<see cref="T:LightweightIocContainer.Interfaces.Factories.ITypedFactory"/> implementation for custom implemented factories
</summary>
</member>
<member name="T:LightweightIocContainer.Factories.FactoryHelper">
<summary>
Helper class for the <see cref="T:LightweightIocContainer.Factories.TypedFactory`1"/>
</summary>
</member>
<member name="M:LightweightIocContainer.Factories.FactoryHelper.ConvertPassedNull(System.Reflection.MethodBase,System.Object[])">
<summary>
Convert `null` passed as argument to <see cref="T:LightweightIocContainer.NullParameter"/> to handle it correctly
</summary>
<param name="createMethod">The create method of the factory</param>
<param name="arguments">The arguments passed to the create method</param>
<returns>List of arguments with converted null</returns>
<exception cref="T:System.Exception">Wrong parameters passed</exception>
</member>
<member name="T:LightweightIocContainer.Factories.TypedFactory`1">
<summary>
Class to help implement an abstract typed factory
</summary>
<typeparam name="TFactory">The type of the abstract factory</typeparam>
</member>
<member name="M:LightweightIocContainer.Factories.TypedFactory`1.#ctor(LightweightIocContainer.IocContainer)">
<summary>
The
</summary>
<param name="container">The current instance of the <see cref="T:LightweightIocContainer.Interfaces.IIocContainer"/></param>
</member>
<member name="P:LightweightIocContainer.Factories.TypedFactory`1.Factory">
<summary>
The implemented abstract typed factory/>
</summary>
</member>
<member name="M:LightweightIocContainer.Factories.TypedFactory`1.CreateFactory(LightweightIocContainer.IocContainer)">
<summary>
Creates the factory from the given abstract factory type
</summary>
<exception cref="T:LightweightIocContainer.Exceptions.InvalidFactoryRegistrationException">Factory registration is invalid</exception>
<exception cref="T:LightweightIocContainer.Exceptions.IllegalAbstractMethodCreationException">Creation of abstract methods are illegal in their current state</exception>
</member>
<member name="T:LightweightIocContainer.Factories.TypedFactoryBase`1">
<summary>
Base class for the <see cref="T:LightweightIocContainer.Interfaces.Factories.ITypedFactory"/>
</summary>
</member>
<member name="P:LightweightIocContainer.Factories.TypedFactoryBase`1.CreateMethods">
<summary>
The create methods of this <see cref="T:LightweightIocContainer.Interfaces.Factories.ITypedFactory"/>
</summary>
</member>
<member name="T:LightweightIocContainer.GenericMethodCaller">
<summary>
Helper class to call a generic method without generic type parameters
</summary>
</member>
<member name="M:LightweightIocContainer.GenericMethodCaller.Call(System.Object,System.String,System.Type,System.Reflection.BindingFlags,System.Object[])">
<summary>
Call a generic method without generic type parameters
</summary>
<param name="caller">The caller of the method</param>
<param name="functionName">The name of the method to call</param>
<param name="genericParameter">The generic parameter as <see cref="T:System.Type"/> parameter</param>
<param name="bindingFlags">The <see cref="T:System.Reflection.BindingFlags"/> to find the method</param>
<param name="parameters">The parameters of the method</param>
<returns>The result of invoking the method</returns>
<exception cref="T:LightweightIocContainer.Exceptions.GenericMethodNotFoundException">Could not find the generic method</exception>
<exception cref="T:System.Exception">Any <see cref="T:System.Exception"/> thrown after invoking the generic method</exception>
</member>
<member name="M:LightweightIocContainer.GenericMethodCaller.CallPrivate(System.Object,System.String,System.Type,System.Object[])">
<summary>
Call a private generic method without generic type parameters
</summary>
<param name="caller">The caller of the method</param>
<param name="functionName">The name of the method to call</param>
<param name="genericParameter">The generic parameter as <see cref="T:System.Type"/> parameter</param>
<param name="parameters">The parameters of the method</param>
<returns>The result of invoking the method</returns>
<exception cref="T:LightweightIocContainer.Exceptions.GenericMethodNotFoundException">Could not find the generic method</exception>
<exception cref="T:System.Exception">Any <see cref="T:System.Exception"/> thrown after invoking the generic method</exception>
</member>
<member name="T:LightweightIocContainer.Installers.AssemblyInstaller">
<summary>
An <see cref="T:LightweightIocContainer.Interfaces.Installers.IIocInstaller"/> that installs all <see cref="T:LightweightIocContainer.Interfaces.Installers.IIocInstaller"/>s for its given <see cref="T:System.Reflection.Assembly"/>
</summary>
</member>
<member name="M:LightweightIocContainer.Installers.AssemblyInstaller.#ctor(System.Reflection.Assembly)">
<summary>
An <see cref="T:LightweightIocContainer.Interfaces.Installers.IIocInstaller"/> that installs all <see cref="T:LightweightIocContainer.Interfaces.Installers.IIocInstaller"/>s for its given <see cref="T:System.Reflection.Assembly"/>
</summary>
<param name="assembly">The <see cref="T:System.Reflection.Assembly"/> from where the <see cref="T:LightweightIocContainer.Interfaces.Installers.IIocInstaller"/>s will be installed</param>
</member>
<member name="P:LightweightIocContainer.Installers.AssemblyInstaller.Installers">
<summary>
The <see cref="T:LightweightIocContainer.Interfaces.Installers.IIocInstaller"/>s of the Assembly that this <see cref="T:LightweightIocContainer.Installers.AssemblyInstaller"/> is installing
</summary>
</member>
<member name="M:LightweightIocContainer.Installers.AssemblyInstaller.Install(LightweightIocContainer.Interfaces.Registrations.IRegistrationCollector)">
<summary>
Install the found <see cref="T:LightweightIocContainer.Interfaces.Installers.IIocInstaller"/>s in the given <see cref="T:LightweightIocContainer.Interfaces.IIocContainer"/>
</summary>
<param name="registration">The <see cref="T:LightweightIocContainer.Interfaces.Registrations.IRegistrationCollector"/> where <see cref="T:LightweightIocContainer.Interfaces.Registrations.IRegistration"/>s are added</param>
</member>
<member name="T:LightweightIocContainer.Installers.FromAssembly">
<summary>
Helper class that supplies methods to find the wanted <see cref="T:System.Reflection.Assembly"/>
</summary>
</member>
<member name="M:LightweightIocContainer.Installers.FromAssembly.This">
<summary>
Get an <see cref="T:LightweightIocContainer.Interfaces.Installers.IAssemblyInstaller"/> that installs from the <see cref="T:System.Reflection.Assembly"/> calling the method
</summary>
<returns>A new <see cref="T:LightweightIocContainer.Interfaces.Installers.IAssemblyInstaller"/> with the calling <see cref="T:System.Reflection.Assembly"/></returns>
</member>
<member name="M:LightweightIocContainer.Installers.FromAssembly.Instance(System.Reflection.Assembly)">
<summary>
Get an <see cref="T:LightweightIocContainer.Interfaces.Installers.IAssemblyInstaller"/> that installs from the given <see cref="T:System.Reflection.Assembly"/>
</summary>
<param name="assembly">The given <see cref="T:System.Reflection.Assembly"/></param>
<returns>A new <see cref="T:LightweightIocContainer.Interfaces.Installers.IAssemblyInstaller"/> with the given <see cref="T:System.Reflection.Assembly"/></returns>
</member>
<member name="T:LightweightIocContainer.Interfaces.Factories.ITypedFactory">
<summary>
Non-generic <see cref="T:LightweightIocContainer.Interfaces.Factories.ITypedFactory`1"/>
</summary>
</member>
<member name="P:LightweightIocContainer.Interfaces.Factories.ITypedFactory.CreateMethods">
<summary>
The create methods of this <see cref="T:LightweightIocContainer.Interfaces.Factories.ITypedFactory"/>
</summary>
</member>
<member name="T:LightweightIocContainer.Interfaces.Factories.ITypedFactory`1">
<summary>
Class to help implement an abstract typed factory
</summary>
<typeparam name="TFactory">The type of the abstract factory</typeparam>
</member>
<member name="P:LightweightIocContainer.Interfaces.Factories.ITypedFactory`1.Factory">
<summary>
The implemented abstract typed factory
</summary>
</member>
<member name="T:LightweightIocContainer.Interfaces.IIocContainer">
<summary>
The main container that carries all <see cref="T:LightweightIocContainer.Interfaces.Registrations.IRegistration"/>s
</summary>
</member>
<member name="M:LightweightIocContainer.Interfaces.IIocContainer.Install(LightweightIocContainer.Interfaces.Installers.IIocInstaller[])">
<summary>
Install the given installers for the current <see cref="T:LightweightIocContainer.Interfaces.IIocContainer"/>
</summary>
<param name="installers">The given <see cref="T:LightweightIocContainer.Interfaces.Installers.IIocInstaller"/>s</param>
<returns>An instance of the current <see cref="T:LightweightIocContainer.Interfaces.IIocContainer"/></returns>
</member>
<member name="M:LightweightIocContainer.Interfaces.IIocContainer.Register(System.Func{LightweightIocContainer.Interfaces.Registrations.IRegistrationCollector,LightweightIocContainer.Interfaces.Registrations.IRegistration})">
<summary>
Register an <see cref="T:LightweightIocContainer.Interfaces.Registrations.IRegistration"/> at this <see cref="T:LightweightIocContainer.IocContainer"/>
</summary>
<param name="addRegistration">The <see cref="T:System.Func`2"/> that creates an <see cref="T:LightweightIocContainer.Interfaces.Registrations.IRegistration"/></param>
</member>
<member name="M:LightweightIocContainer.Interfaces.IIocContainer.ClearMultitonInstances``1">
<summary>
Clear the multiton instances of the given <see cref="T:System.Type"/> from the registered multitons list
</summary>
<typeparam name="T">The <see cref="T:System.Type"/> to clear the multiton instances</typeparam>
</member>
<member name="M:LightweightIocContainer.Interfaces.IIocContainer.IsTypeRegistered``1">
<summary>
Is the given <see cref="T:System.Type"/> registered with this <see cref="T:LightweightIocContainer.Interfaces.IIocContainer"/>
</summary>
<typeparam name="T">The given <see cref="T:System.Type"/></typeparam>
<returns>True if the given <see cref="T:System.Type"/> is registered with this <see cref="T:LightweightIocContainer.Interfaces.IIocContainer"/>, false if not</returns>
</member>
<member name="M:LightweightIocContainer.Interfaces.IIocContainer.RegisterIgnoreConstructorAttribute``1">
<summary>
Register a custom <see cref="T:System.Attribute"/> that can annotate a constructor to be ignored
</summary>
<typeparam name="T">The custom <see cref="T:System.Attribute"/></typeparam>
<exception cref="T:LightweightIocContainer.Exceptions.InvalidIgnoreConstructorAttributeException`1">The passed <see cref="T:System.Attribute"/> can't be used on a constructor</exception>
</member>
<member name="T:LightweightIocContainer.Interfaces.IIocResolver">
<summary>
Provides <see cref="M:LightweightIocContainer.Interfaces.IIocResolver.Resolve``1"/> methods
</summary>
</member>
<member name="M:LightweightIocContainer.Interfaces.IIocResolver.Resolve``1">
<summary>
Gets an instance of the given <see cref="T:System.Type"/>
</summary>
<typeparam name="T">The given <see cref="T:System.Type"/></typeparam>
<returns>An instance of the given <see cref="T:System.Type"/></returns>
</member>
<member name="M:LightweightIocContainer.Interfaces.IIocResolver.Resolve``1(System.Object[])">
<summary>
Gets an instance of the given <see cref="T:System.Type"/>
</summary>
<typeparam name="T">The given <see cref="T:System.Type"/></typeparam>
<param name="arguments">The constructor arguments</param>
<returns>An instance of the given <see cref="T:System.Type"/></returns>
</member>
<member name="T:LightweightIocContainer.Interfaces.Installers.IAssemblyInstaller">
<summary>
An <see cref="T:LightweightIocContainer.Interfaces.Installers.IIocInstaller"/> that installs all <see cref="T:LightweightIocContainer.Interfaces.Installers.IIocInstaller"/>s for its given <see cref="T:System.Reflection.Assembly"/>
</summary>
</member>
<member name="P:LightweightIocContainer.Interfaces.Installers.IAssemblyInstaller.Installers">
<summary>
The <see cref="T:LightweightIocContainer.Interfaces.Installers.IIocInstaller"/>s of the <see cref="T:System.Reflection.Assembly"/> that this <see cref="T:LightweightIocContainer.Interfaces.Installers.IAssemblyInstaller"/> is installing
</summary>
</member>
<member name="T:LightweightIocContainer.Interfaces.Installers.IIocInstaller">
<summary>
The base class for <see cref="T:LightweightIocContainer.Interfaces.IIocContainer"/> installers
</summary>
</member>
<member name="M:LightweightIocContainer.Interfaces.Installers.IIocInstaller.Install(LightweightIocContainer.Interfaces.Registrations.IRegistrationCollector)">
<summary>
Install the needed <see cref="T:LightweightIocContainer.Interfaces.Registrations.IRegistration"/>s in the given <see cref="T:LightweightIocContainer.Interfaces.IIocContainer"/>
</summary>
<param name="registration">The <see cref="T:LightweightIocContainer.Interfaces.Registrations.IRegistrationCollector"/> where <see cref="T:LightweightIocContainer.Interfaces.Registrations.IRegistration"/>s are added</param>
</member>
<member name="T:LightweightIocContainer.Interfaces.Registrations.Fluent.IOnCreate">
<summary>
Provides an <see cref="P:LightweightIocContainer.Interfaces.Registrations.Fluent.IOnCreate.OnCreateAction"/> to the generic <see cref="T:LightweightIocContainer.Interfaces.Registrations.Fluent.IOnCreate`2"/>
</summary>
</member>
<member name="P:LightweightIocContainer.Interfaces.Registrations.Fluent.IOnCreate.OnCreateAction">
<summary>
This <see cref="T:System.Action"/> is invoked when an instance of this type is created.
<para>Can be set in the <see cref="T:LightweightIocContainer.Interfaces.Installers.IIocInstaller"/> by calling <see cref="M:LightweightIocContainer.Interfaces.Registrations.Fluent.IOnCreate`2.OnCreate(System.Action{`1})"/></para>
</summary>
</member>
<member name="T:LightweightIocContainer.Interfaces.Registrations.Fluent.IOnCreate`2">
<summary>
Provides an <see cref="M:LightweightIocContainer.Interfaces.Registrations.Fluent.IOnCreate`2.OnCreate(System.Action{`1})"/> method to an <see cref="T:LightweightIocContainer.Interfaces.Registrations.IRegistrationBase"/>
</summary>
<typeparam name="TInterface">The registered interface</typeparam>
<typeparam name="TImplementation">The registered implementation</typeparam>
</member>
<member name="M:LightweightIocContainer.Interfaces.Registrations.Fluent.IOnCreate`2.OnCreate(System.Action{`1})">
<summary>
Pass an <see cref="T:System.Action`1"/> that will be invoked when an instance of this type is created
</summary>
<param name="action">The <see cref="T:System.Action`1"/></param>
<returns>The current instance of this <see cref="T:LightweightIocContainer.Interfaces.Registrations.ITypedRegistration`2"/></returns>
</member>
<member name="T:LightweightIocContainer.Interfaces.Registrations.Fluent.IWithDisposeStrategy">
<summary>
Provides a <see cref="T:LightweightIocContainer.DisposeStrategy"/> to an <see cref="T:LightweightIocContainer.Interfaces.Registrations.IRegistration"/>
</summary>
</member>
<member name="M:LightweightIocContainer.Interfaces.Registrations.Fluent.IWithDisposeStrategy.WithDisposeStrategy(LightweightIocContainer.DisposeStrategy)">
<summary>
Add a <see cref="T:LightweightIocContainer.DisposeStrategy"/> for the <see cref="T:LightweightIocContainer.Interfaces.Registrations.IRegistrationBase"/>
</summary>
<param name="disposeStrategy">The <see cref="T:LightweightIocContainer.DisposeStrategy"/></param>
<returns>The current instance of this <see cref="T:LightweightIocContainer.Interfaces.Registrations.IRegistrationBase"/></returns>
</member>
<member name="P:LightweightIocContainer.Interfaces.Registrations.Fluent.IWithDisposeStrategyInternal.DisposeStrategy">
<summary>
The <see cref="T:LightweightIocContainer.DisposeStrategy"/> of singletons/multitons that implement <see cref="T:System.IDisposable"/> and are created with this <see cref="T:LightweightIocContainer.Interfaces.Registrations.IRegistration"/>
</summary>
</member>
<member name="T:LightweightIocContainer.Interfaces.Registrations.Fluent.IWithFactory">
<summary>
Provides a <see cref="M:LightweightIocContainer.Interfaces.Registrations.Fluent.IWithFactory.WithFactory``1"/> method to an <see cref="T:LightweightIocContainer.Interfaces.Registrations.IRegistrationBase"/>
</summary>
</member>
<member name="M:LightweightIocContainer.Interfaces.Registrations.Fluent.IWithFactory.WithFactory``1">
<summary>
Register an abstract typed factory for the <see cref="T:LightweightIocContainer.Interfaces.Registrations.IRegistrationBase"/>
</summary>
<typeparam name="TFactory">The type of the abstract typed factory</typeparam>
<returns>The current instance of this <see cref="T:LightweightIocContainer.Interfaces.Registrations.IRegistrationBase"/></returns>
</member>
<member name="M:LightweightIocContainer.Interfaces.Registrations.Fluent.IWithFactory.WithFactory``2">
<summary>
Register a custom implemented factory for the <see cref="T:LightweightIocContainer.Interfaces.Registrations.IRegistrationBase"/>
</summary>
<typeparam name="TFactoryInterface">The type of the interface for the custom factory</typeparam>
<typeparam name="TFactoryImplementation">The type of the implementation for the custom factory</typeparam>
<returns>The current instance of this <see cref="T:LightweightIocContainer.Interfaces.Registrations.IRegistrationBase"/></returns>
</member>
<member name="P:LightweightIocContainer.Interfaces.Registrations.Fluent.IWithFactoryInternal.Factory">
<summary>
The Factory added with the <see cref="M:LightweightIocContainer.Interfaces.Registrations.Fluent.IWithFactory.WithFactory``1"/> method
</summary>
</member>
<member name="T:LightweightIocContainer.Interfaces.Registrations.Fluent.IWithParameters">
<summary>
Provides a <see cref="M:LightweightIocContainer.Interfaces.Registrations.Fluent.IWithParameters.WithParameters(System.Object[])"/> method to an <see cref="T:LightweightIocContainer.Interfaces.Registrations.IRegistration"/>
</summary>
</member>
<member name="M:LightweightIocContainer.Interfaces.Registrations.Fluent.IWithParameters.WithParameters(System.Object[])">
<summary>
Pass parameters that will be used to<see cref="M:LightweightIocContainer.IocContainer.Resolve``1"/> an instance of this <see cref="P:LightweightIocContainer.Interfaces.Registrations.IRegistration.InterfaceType"/>
<para>Parameters set with this method are always inserted at the beginning of the argument list if more parameters are given when resolving</para>
</summary>
<param name="parameters">The parameters</param>
<returns>The current instance of this <see cref="T:LightweightIocContainer.Interfaces.Registrations.IRegistrationBase"/></returns>
<exception cref="T:LightweightIocContainer.Exceptions.InvalidRegistrationException"><see cref="P:LightweightIocContainer.Interfaces.Registrations.Fluent.IWithParametersInternal.Parameters"/> are already set or no parameters given</exception>
</member>
<member name="M:LightweightIocContainer.Interfaces.Registrations.Fluent.IWithParameters.WithParameters(System.ValueTuple{System.Int32,System.Object}[])">
<summary>
Pass parameters that will be used to<see cref="M:LightweightIocContainer.IocContainer.Resolve``1"/> an instance of this <see cref="P:LightweightIocContainer.Interfaces.Registrations.IRegistration.InterfaceType"/>
<para>Parameters set with this method are inserted at the position in the argument list that is passed with the parameter if more parameters are given when resolving</para>
</summary>
<param name="parameters">The parameters with their position</param>
<returns>The current instance of this <see cref="T:LightweightIocContainer.Interfaces.Registrations.IRegistrationBase"/></returns>
<exception cref="T:LightweightIocContainer.Exceptions.InvalidRegistrationException"><see cref="P:LightweightIocContainer.Interfaces.Registrations.Fluent.IWithParametersInternal.Parameters"/> are already set or no parameters given</exception>
</member>
<member name="P:LightweightIocContainer.Interfaces.Registrations.Fluent.IWithParametersInternal.Parameters">
<summary>
An <see cref="T:System.Array"/> of parameters that are used to <see cref="M:LightweightIocContainer.IocContainer.Resolve``1"/> an instance of this <see cref="P:LightweightIocContainer.Interfaces.Registrations.IRegistration.InterfaceType"/>
<para>Can be set in the <see cref="T:LightweightIocContainer.Interfaces.Installers.IIocInstaller"/> by calling <see cref="M:LightweightIocContainer.Interfaces.Registrations.Fluent.IWithParameters.WithParameters(System.Object[])"/></para>
</summary>
</member>
<member name="T:LightweightIocContainer.Interfaces.Registrations.IInternalValidationProvider">
<summary>
Provides an internal <see cref="M:LightweightIocContainer.Interfaces.Registrations.IInternalValidationProvider.Validate"/> method to an <see cref="T:LightweightIocContainer.Interfaces.Registrations.IRegistrationBase"/>
</summary>
</member>
<member name="M:LightweightIocContainer.Interfaces.Registrations.IInternalValidationProvider.Validate">
<summary>
Validate this <see cref="T:LightweightIocContainer.Interfaces.Registrations.IRegistrationBase"/>
</summary>
</member>
<member name="T:LightweightIocContainer.Interfaces.Registrations.ILifestyleProvider">
<summary>
Provides a <see cref="T:LightweightIocContainer.Lifestyle"/> to an <see cref="T:LightweightIocContainer.Interfaces.Registrations.IRegistration"/>
</summary>
</member>
<member name="P:LightweightIocContainer.Interfaces.Registrations.ILifestyleProvider.Lifestyle">
<summary>
The Lifestyle of Instances that are created with this <see cref="T:LightweightIocContainer.Interfaces.Registrations.IRegistration"/>
</summary>
</member>
<member name="T:LightweightIocContainer.Interfaces.Registrations.IMultipleMultitonRegistration`3">
<summary>
An <see cref="T:LightweightIocContainer.Interfaces.Registrations.IRegistration"/> to register multiple interfaces for on implementation type that implements them as a multiton
</summary>
<typeparam name="TInterface1">The first interface</typeparam>
<typeparam name="TInterface2">The second interface</typeparam>
<typeparam name="TImplementation">The implementation</typeparam>
</member>
<member name="T:LightweightIocContainer.Interfaces.Registrations.IMultipleRegistration`2">
<summary>
The base interface for every <see cref="T:LightweightIocContainer.Interfaces.Registrations.IMultipleRegistration`3"/> to register multiple interfaces
</summary>
<typeparam name="TInterface1">The first interface</typeparam>
<typeparam name="TImplementation">The implementation</typeparam>
</member>
<member name="P:LightweightIocContainer.Interfaces.Registrations.IMultipleRegistration`2.Registrations">
<summary>
A <see cref="T:System.Collections.Generic.List`1"/> of <see cref="T:LightweightIocContainer.Interfaces.Registrations.IRegistration"/>s that are registered within this <see cref="T:LightweightIocContainer.Interfaces.Registrations.IMultipleRegistration`2"/>
</summary>
</member>
<member name="T:LightweightIocContainer.Interfaces.Registrations.IMultipleRegistration`3">
<summary>
An <see cref="T:LightweightIocContainer.Interfaces.Registrations.IRegistration"/> to register multiple interfaces for on implementation type
</summary>
<typeparam name="TInterface1">The first interface</typeparam>
<typeparam name="TInterface2">The second interface</typeparam>
<typeparam name="TImplementation">The implementation</typeparam>
</member>
<member name="T:LightweightIocContainer.Interfaces.Registrations.IMultipleRegistration`4">
<summary>
An <see cref="T:LightweightIocContainer.Interfaces.Registrations.IRegistration"/> to register multiple interfaces for on implementation type
</summary>
<typeparam name="TInterface1">The first interface</typeparam>
<typeparam name="TInterface2">The second interface</typeparam>
<typeparam name="TInterface3">The third interface</typeparam>
<typeparam name="TImplementation">The implementation</typeparam>
</member>
<member name="T:LightweightIocContainer.Interfaces.Registrations.IMultipleRegistration`5">
<summary>
An <see cref="T:LightweightIocContainer.Interfaces.Registrations.IRegistration"/> to register multiple interfaces for on implementation type
</summary>
<typeparam name="TInterface1">The first interface</typeparam>
<typeparam name="TInterface2">The second interface</typeparam>
<typeparam name="TInterface3">The third interface</typeparam>
<typeparam name="TInterface4">The fourth interface</typeparam>
<typeparam name="TImplementation">The implementation</typeparam>
</member>
<member name="T:LightweightIocContainer.Interfaces.Registrations.IMultipleRegistration`6">
<summary>
An <see cref="T:LightweightIocContainer.Interfaces.Registrations.IRegistration"/> to register multiple interfaces for on implementation type
</summary>
<typeparam name="TInterface1">The first interface</typeparam>
<typeparam name="TInterface2">The second interface</typeparam>
<typeparam name="TInterface3">The third interface</typeparam>
<typeparam name="TInterface4">The fourth interface</typeparam>
<typeparam name="TInterface5">The fifth interface</typeparam>
<typeparam name="TImplementation">The implementation</typeparam>
</member>
<member name="T:LightweightIocContainer.Interfaces.Registrations.IMultitonRegistration">
<summary>
Non generic <see cref="T:LightweightIocContainer.Interfaces.Registrations.IMultipleRegistration`2"/>
</summary>
</member>
<member name="P:LightweightIocContainer.Interfaces.Registrations.IMultitonRegistration.Scope">
<summary>
The <see cref="T:System.Type"/> of the multiton scope
</summary>
</member>
<member name="T:LightweightIocContainer.Interfaces.Registrations.IMultitonRegistration`2">
<summary>
The registration that is used to register a multiton
</summary>
<typeparam name="TInterface">The registered interface</typeparam>
<typeparam name="TImplementation">The registered implementation</typeparam>
</member>
<member name="T:LightweightIocContainer.Interfaces.Registrations.IOpenGenericRegistration">
<summary>
<see cref="T:LightweightIocContainer.Interfaces.Registrations.IRegistration"/> for open generic types
</summary>
</member>
<member name="T:LightweightIocContainer.Interfaces.Registrations.IRegistration">
<summary>
The base registration that is used to register an Interface
</summary>
</member>
<member name="P:LightweightIocContainer.Interfaces.Registrations.IRegistration.InterfaceType">
<summary>
The <see cref="T:System.Type"/> of the Interface that is registered with this <see cref="T:LightweightIocContainer.Interfaces.Registrations.IRegistration"/>
</summary>
</member>
<member name="T:LightweightIocContainer.Interfaces.Registrations.IRegistrationBase">
<summary>
The <see cref="T:LightweightIocContainer.Interfaces.Registrations.IRegistrationBase"/> that is used to register an Interface and extends the <see cref="T:LightweightIocContainer.Interfaces.Registrations.IRegistration"/> with fluent options
</summary>
</member>
<member name="T:LightweightIocContainer.Interfaces.Registrations.IRegistrationCollector">
<summary>
Creates and collects the <see cref="T:LightweightIocContainer.Interfaces.Registrations.IRegistration"/>s
</summary>
</member>
<member name="M:LightweightIocContainer.Interfaces.Registrations.IRegistrationCollector.Add``2(LightweightIocContainer.Lifestyle)">
<summary>
Add an Interface with a Type that implements it
</summary>
<typeparam name="TInterface">The Interface to add</typeparam>
<typeparam name="TImplementation">The Type that implements the interface</typeparam>
<param name="lifestyle">The <see cref="T:LightweightIocContainer.Lifestyle"/> for this <see cref="T:LightweightIocContainer.Interfaces.Registrations.IRegistration"/></param>
<returns>The created <see cref="T:LightweightIocContainer.Interfaces.Registrations.IRegistration"/></returns>
</member>
<member name="M:LightweightIocContainer.Interfaces.Registrations.IRegistrationCollector.AddOpenGenerics(System.Type,System.Type,LightweightIocContainer.Lifestyle)">
<summary>
Add an open generic Interface with an open generic Type that implements it
</summary>
<param name="tInterface">The open generic Interface to add</param>
<param name="tImplementation">The open generic Type that implements the interface</param>
<param name="lifestyle">The <see cref="T:LightweightIocContainer.Lifestyle"/> for this <see cref="T:LightweightIocContainer.Interfaces.Registrations.IRegistration"/></param>
<returns>The created <see cref="T:LightweightIocContainer.Interfaces.Registrations.IRegistration"/></returns>
</member>
<member name="M:LightweightIocContainer.Interfaces.Registrations.IRegistrationCollector.Add``3(LightweightIocContainer.Lifestyle)">
<summary>
Add multiple interfaces for a <see cref="T:System.Type"/> that implements them
</summary>
<typeparam name="TInterface1">The base interface to add</typeparam>
<typeparam name="TInterface2">A second interface to add</typeparam>
<typeparam name="TImplementation">The <see cref="T:System.Type"/> that implements both interfaces</typeparam>
<param name="lifestyle">The <see cref="T:LightweightIocContainer.Lifestyle"/> for this <see cref="T:LightweightIocContainer.Interfaces.Registrations.IRegistration"/></param>
<returns>The created <see cref="T:LightweightIocContainer.Interfaces.Registrations.IMultipleRegistration`2"/></returns>
</member>
<member name="M:LightweightIocContainer.Interfaces.Registrations.IRegistrationCollector.Add``4(LightweightIocContainer.Lifestyle)">
<summary>
Add multiple interfaces for a <see cref="T:System.Type"/> that implements them
</summary>
<typeparam name="TInterface1">The base interface to add</typeparam>
<typeparam name="TInterface2">A second interface to add</typeparam>
<typeparam name="TInterface3">A third interface to add</typeparam>
<typeparam name="TImplementation">The <see cref="T:System.Type"/> that implements both interfaces</typeparam>
<param name="lifestyle">The <see cref="T:LightweightIocContainer.Lifestyle"/> for this <see cref="T:LightweightIocContainer.Interfaces.Registrations.IRegistration"/></param>
<returns>The created <see cref="T:LightweightIocContainer.Interfaces.Registrations.IMultipleRegistration`3"/></returns>
</member>
<member name="M:LightweightIocContainer.Interfaces.Registrations.IRegistrationCollector.Add``5(LightweightIocContainer.Lifestyle)">
<summary>
Add multiple interfaces for a <see cref="T:System.Type"/> that implements them
</summary>
<typeparam name="TInterface1">The base interface to add</typeparam>
<typeparam name="TInterface2">A second interface to add</typeparam>
<typeparam name="TInterface3">A third interface to add</typeparam>
<typeparam name="TInterface4">A fourth interface to add</typeparam>
<typeparam name="TImplementation">The <see cref="T:System.Type"/> that implements both interfaces</typeparam>
<param name="lifestyle">The <see cref="T:LightweightIocContainer.Lifestyle"/> for this <see cref="T:LightweightIocContainer.Interfaces.Registrations.IRegistration"/></param>
<returns>The created <see cref="T:LightweightIocContainer.Interfaces.Registrations.IMultipleRegistration`4"/></returns>
</member>
<member name="M:LightweightIocContainer.Interfaces.Registrations.IRegistrationCollector.Add``6(LightweightIocContainer.Lifestyle)">
<summary>
Add multiple interfaces for a <see cref="T:System.Type"/> that implements them
</summary>
<typeparam name="TInterface1">The base interface to add</typeparam>
<typeparam name="TInterface2">A second interface to add</typeparam>
<typeparam name="TInterface3">A third interface to add</typeparam>
<typeparam name="TInterface4">A fourth interface to add</typeparam>
<typeparam name="TInterface5">A fifth interface to add</typeparam>
<typeparam name="TImplementation">The <see cref="T:System.Type"/> that implements both interfaces</typeparam>
<param name="lifestyle">The <see cref="T:LightweightIocContainer.Lifestyle"/> for this <see cref="T:LightweightIocContainer.Interfaces.Registrations.IRegistration"/></param>
<returns>The created <see cref="T:LightweightIocContainer.Interfaces.Registrations.IMultipleRegistration`5"/></returns>
</member>
<member name="M:LightweightIocContainer.Interfaces.Registrations.IRegistrationCollector.Add``1(LightweightIocContainer.Lifestyle)">
<summary>
Add a <see cref="T:System.Type"/> without an interface
</summary>
<typeparam name="TImplementation">The <see cref="T:System.Type"/> to add</typeparam>
<param name="lifestyle">The <see cref="T:LightweightIocContainer.Lifestyle"/> for this <see cref="T:LightweightIocContainer.Interfaces.Registrations.IRegistration"/></param>
<returns>The created <see cref="T:LightweightIocContainer.Interfaces.Registrations.IRegistration"/></returns>
</member>
<member name="M:LightweightIocContainer.Interfaces.Registrations.IRegistrationCollector.AddMultiton``3">
<summary>
Add an Interface with a Type that implements it as a multiton
</summary>
<typeparam name="TInterface">The Interface to add</typeparam>
<typeparam name="TImplementation">The Type that implements the interface</typeparam>
<typeparam name="TScope">The Type of the multiton scope</typeparam>
<returns>The created <see cref="T:LightweightIocContainer.Interfaces.Registrations.IRegistration"/></returns>
</member>
<member name="M:LightweightIocContainer.Interfaces.Registrations.IRegistrationCollector.AddMultiton``4">
<summary>
Add multiple interfaces for a <see cref="T:System.Type"/> that implements them as a multiton
</summary>
<typeparam name="TInterface1">The base interface to add</typeparam>
<typeparam name="TInterface2">A second interface to add</typeparam>
<typeparam name="TImplementation">The Type that implements the interface</typeparam>
<typeparam name="TScope">The Type of the multiton scope</typeparam>
<returns>The created <see cref="T:LightweightIocContainer.Interfaces.Registrations.IRegistration"/></returns>
</member>
<member name="T:LightweightIocContainer.Interfaces.Registrations.ISingleTypeRegistration`1">
<summary>
The <see cref="T:LightweightIocContainer.Interfaces.Registrations.IRegistration"/> to register either only an interface or only a <see cref="T:System.Type"/>
</summary>
<typeparam name="T">The <see cref="T:System.Type"/> of the <see cref="T:LightweightIocContainer.Interfaces.Registrations.IRegistration"/></typeparam>
</member>
<member name="P:LightweightIocContainer.Interfaces.Registrations.ISingleTypeRegistration`1.FactoryMethod">
<summary>
<see cref="T:System.Func`2"/> that is invoked instead of creating an instance of this <see cref="T:System.Type"/> the default way
</summary>
</member>
<member name="M:LightweightIocContainer.Interfaces.Registrations.ISingleTypeRegistration`1.WithFactoryMethod(System.Func{LightweightIocContainer.Interfaces.IIocResolver,`0})">
<summary>
Pass a <see cref="T:System.Func`2"/> that will be invoked instead of creating an instance of this <see cref="T:System.Type"/> the default way
</summary>
<param name="factoryMethod">The <see cref="T:System.Func`2"/></param>
<returns>The current instance of this <see cref="T:LightweightIocContainer.Interfaces.Registrations.IRegistration"/></returns>
</member>
<member name="T:LightweightIocContainer.Interfaces.Registrations.ITypedFactoryRegistration`1">
<summary>
The registration that is used to register an abstract typed factory
</summary>
<typeparam name="TFactory">The type of the abstract typed factory</typeparam>
</member>
<member name="P:LightweightIocContainer.Interfaces.Registrations.ITypedFactoryRegistration`1.Factory">
<summary>
The class that contains the implemented abstract factory of this <see cref="T:LightweightIocContainer.Interfaces.Registrations.ITypedFactoryRegistration`1"/>
</summary>
</member>
<member name="T:LightweightIocContainer.Interfaces.Registrations.ITypedRegistration">
<summary>
A base <see cref="T:LightweightIocContainer.Interfaces.Registrations.ITypedRegistration"/> without generic interface and implementation
</summary>
</member>
<member name="P:LightweightIocContainer.Interfaces.Registrations.ITypedRegistration.ImplementationType">
<summary>
The <see cref="T:System.Type"/> that implements the <see cref="P:LightweightIocContainer.Interfaces.Registrations.IRegistration.InterfaceType"/> that is registered with this <see cref="T:LightweightIocContainer.Interfaces.Registrations.IRegistration"/>
</summary>
</member>
<member name="T:LightweightIocContainer.Interfaces.Registrations.ITypedRegistration`2">
<summary>
A <see cref="T:LightweightIocContainer.Interfaces.Registrations.IRegistration"/> that implements a <see cref="T:System.Type"/>
</summary>
</member>
<member name="T:LightweightIocContainer.IocContainer">
<summary>
The main container that carries all the <see cref="T:LightweightIocContainer.Interfaces.Registrations.IRegistration"/>s and can resolve all the types you'll ever want
</summary>
</member>
<member name="M:LightweightIocContainer.IocContainer.#ctor">
<summary>
The main container that carries all the <see cref="T:LightweightIocContainer.Interfaces.Registrations.IRegistration"/>s and can resolve all the types you'll ever want
</summary>
</member>
<member name="M:LightweightIocContainer.IocContainer.Install(LightweightIocContainer.Interfaces.Installers.IIocInstaller[])">
<summary>
Install the given installers for the current <see cref="T:LightweightIocContainer.IocContainer"/>
</summary>
<param name="installers">The given <see cref="T:LightweightIocContainer.Interfaces.Installers.IIocInstaller"/>s</param>
<returns>An instance of the current <see cref="T:LightweightIocContainer.IocContainer"/></returns>
</member>
<member name="M:LightweightIocContainer.IocContainer.Register(System.Func{LightweightIocContainer.Interfaces.Registrations.IRegistrationCollector,LightweightIocContainer.Interfaces.Registrations.IRegistration})">
<summary>
Register an <see cref="T:LightweightIocContainer.Interfaces.Registrations.IRegistration"/> at this <see cref="T:LightweightIocContainer.IocContainer"/>
</summary>
<param name="addRegistration">The <see cref="T:System.Func`2"/> that creates an <see cref="T:LightweightIocContainer.Interfaces.Registrations.IRegistration"/></param>
</member>
<member name="M:LightweightIocContainer.IocContainer.RegisterFactory``1(LightweightIocContainer.Interfaces.Factories.ITypedFactory{``0})">
<summary>
Register an Interface as an abstract typed factory
</summary>
<typeparam name="TFactory">The abstract typed factory to register</typeparam>
<returns>The created <see cref="T:LightweightIocContainer.Interfaces.Registrations.IRegistration"/></returns>
</member>
<member name="M:LightweightIocContainer.IocContainer.Register(LightweightIocContainer.Interfaces.Registrations.IRegistration)">
<summary>
Add the <see cref="T:LightweightIocContainer.Interfaces.Registrations.IRegistration"/> to the the <see cref="T:LightweightIocContainer.IocContainer"/>
</summary>
<param name="registration">The given <see cref="T:LightweightIocContainer.Interfaces.Registrations.IRegistration"/></param>
<exception cref="T:LightweightIocContainer.Exceptions.MultipleRegistrationException">The <see cref="T:System.Type"/> is already registered in this <see cref="T:LightweightIocContainer.IocContainer"/></exception>
</member>
<member name="M:LightweightIocContainer.IocContainer.Resolve``1">
<summary>
Gets an instance of the given <see cref="T:System.Type"/>
</summary>
<typeparam name="T">The given <see cref="T:System.Type"/></typeparam>
<returns>An instance of the given <see cref="T:System.Type"/></returns>
</member>
<member name="M:LightweightIocContainer.IocContainer.Resolve``1(System.Object[])">
<summary>
Gets an instance of the given <see cref="T:System.Type"/>
</summary>
<typeparam name="T">The given <see cref="T:System.Type"/></typeparam>
<param name="arguments">The constructor arguments</param>
<returns>An instance of the given <see cref="T:System.Type"/></returns>
</member>
<member name="M:LightweightIocContainer.IocContainer.FactoryResolve``1(System.Object[])">
<summary>
Gets an instance of the given <see cref="T:System.Type"/> for a factory
</summary>
<typeparam name="T">The given <see cref="T:System.Type"/></typeparam>
<param name="arguments">The constructor arguments</param>
<returns>An instance of the given <see cref="T:System.Type"/></returns>
</member>
<member name="M:LightweightIocContainer.IocContainer.ResolveInternal``1(System.Object[],System.Collections.Generic.List{System.Type},System.Boolean)">
<summary>
Gets an instance of a given registered <see cref="T:System.Type"/>
</summary>
<typeparam name="T">The registered <see cref="T:System.Type"/></typeparam>
<param name="arguments">The constructor arguments</param>
<param name="resolveStack">The current resolve stack</param>
<param name="isFactoryResolve">True if resolve is called from factory, false (default) if not</param>
<returns>An instance of the given registered <see cref="T:System.Type"/></returns>
</member>
<member name="M:LightweightIocContainer.IocContainer.TryResolve``1(System.Object[],System.Collections.Generic.List{System.Type},System.Boolean)">
<summary>
Tries to resolve the given <see cref="T:System.Type"/> with the given arguments
</summary>
<param name="arguments">The given arguments</param>
<param name="resolveStack">The current resolve stack</param>
<param name="isFactoryResolve">True if resolve is called from factory, false (default) if not</param>
<typeparam name="T">The registered <see cref="T:System.Type"/></typeparam>
<returns>An instance of the given registered <see cref="T:System.Type"/>, an <see cref="T:LightweightIocContainer.ResolvePlaceholders.InternalToBeResolvedPlaceholder"/> if parameters need to be resolved or an <see cref="T:LightweightIocContainer.ResolvePlaceholders.InternalFactoryMethodPlaceholder`1"/> if a factory method is used to create an instance</returns>
<exception cref="T:LightweightIocContainer.Exceptions.TypeNotRegisteredException">The given <see cref="T:System.Type"/> is not registered</exception>
<exception cref="T:LightweightIocContainer.Exceptions.DirectResolveWithRegisteredFactoryNotAllowed">A direct resolve with a registered factory is not allowed</exception>
<exception cref="T:LightweightIocContainer.Exceptions.InvalidRegistrationException">An interface was registered without an implementation or factory method</exception>
<exception cref="T:LightweightIocContainer.Exceptions.MultitonResolveException">Tried resolving a multiton without scope argument</exception>
<exception cref="T:LightweightIocContainer.Exceptions.NoMatchingConstructorFoundException">No matching constructor for the given <see cref="T:System.Type"/> found</exception>
<exception cref="T:LightweightIocContainer.Exceptions.InternalResolveException">Getting resolve stack failed without exception</exception>
</member>
<member name="M:LightweightIocContainer.IocContainer.TryResolveNonGeneric(System.Type,System.Object[],System.Collections.Generic.List{System.Type},System.Boolean)">
<summary>
Tries to resolve the given <see cref="T:System.Type"/> with the given arguments without generic arguments
</summary>
<param name="type">The registered <see cref="T:System.Type"/></param>
<param name="arguments">The given arguments</param>
<param name="resolveStack">The current resolve stack</param>
<param name="isFactoryResolve">True if resolve is called from factory, false (default) if not</param>
<returns>An instance of the given registered <see cref="T:System.Type"/>, an <see cref="T:LightweightIocContainer.ResolvePlaceholders.InternalToBeResolvedPlaceholder"/> if parameters need to be resolved or an <see cref="T:LightweightIocContainer.ResolvePlaceholders.InternalFactoryMethodPlaceholder`1"/> if a factory method is used to create an instance</returns>
<exception cref="T:LightweightIocContainer.Exceptions.TypeNotRegisteredException">The given <see cref="T:System.Type"/> is not registered</exception>
<exception cref="T:LightweightIocContainer.Exceptions.DirectResolveWithRegisteredFactoryNotAllowed">A direct resolve with a registered factory is not allowed</exception>
<exception cref="T:LightweightIocContainer.Exceptions.InvalidRegistrationException">An interface was registered without an implementation or factory method</exception>
<exception cref="T:LightweightIocContainer.Exceptions.MultitonResolveException">Tried resolving a multiton without scope argument</exception>
<exception cref="T:LightweightIocContainer.Exceptions.NoMatchingConstructorFoundException">No matching constructor for the given <see cref="T:System.Type"/> found</exception>
<exception cref="T:LightweightIocContainer.Exceptions.InternalResolveException">Getting resolve stack failed without exception</exception>
</member>
<member name="M:LightweightIocContainer.IocContainer.ResolvePlaceholder``1(LightweightIocContainer.ResolvePlaceholders.InternalToBeResolvedPlaceholder)">
<summary>
Recursively resolve a <see cref="T:System.Type"/> with the given parameters for an <see cref="T:LightweightIocContainer.ResolvePlaceholders.InternalToBeResolvedPlaceholder"/>
</summary>
<param name="toBeResolvedPlaceholder">The <see cref="T:LightweightIocContainer.ResolvePlaceholders.InternalToBeResolvedPlaceholder"/> that includes the type and resolve stack</param>
<returns>A recursively resolved instance of the given <see cref="T:System.Type"/></returns>
</member>
<member name="M:LightweightIocContainer.IocContainer.ResolveInstance``1(System.Object)">
<summary>
Resolve the given object instance
</summary>
<param name="resolvedObject">The given resolved object</param>
<typeparam name="T">The <see cref="T:System.Type"/> of the returned instance</typeparam>
<returns>An instance of the given resolved object</returns>
<exception cref="T:LightweightIocContainer.Exceptions.InternalResolveException">Resolve returned wrong type</exception>
</member>
<member name="M:LightweightIocContainer.IocContainer.ResolveInstanceNonGeneric(System.Type,System.Object)">
<summary>
Resolve the given object instance without generic arguments
</summary>
<param name="type">The <see cref="T:System.Type"/> of the returned instance</param>
<param name="resolvedObject">The given resolved object</param>
<returns>An instance of the given resolved object</returns>
<exception cref="T:LightweightIocContainer.Exceptions.InternalResolveException">Resolve returned wrong type</exception>
</member>
<member name="M:LightweightIocContainer.IocContainer.CreateInstance``1(LightweightIocContainer.Interfaces.Registrations.IRegistration,System.Object[])">
<summary>
Creates an instance of a given <see cref="T:System.Type"/>
</summary>
<typeparam name="T">The given <see cref="T:System.Type"/></typeparam>
<param name="registration">The registration of the given <see cref="T:System.Type"/></param>
<param name="arguments">The constructor arguments</param>
<returns>A newly created instance of the given <see cref="T:System.Type"/></returns>
</member>
<member name="M:LightweightIocContainer.IocContainer.TryGetExistingInstance``1(LightweightIocContainer.Interfaces.Registrations.IRegistration,System.Collections.Generic.IReadOnlyList{System.Object})">
<summary>
Try to get an already existing instance (factory, singleton, multiton)
</summary>
<param name="registration">The given <see cref="T:LightweightIocContainer.Interfaces.Registrations.IRegistration"/></param>
<param name="arguments">The given arguments</param>
<typeparam name="T">The <see cref="T:System.Type"/> of the instance</typeparam>
<returns>An already existing instance if possible, null if not</returns>
</member>
<member name="M:LightweightIocContainer.IocContainer.TryGetSingletonInstance``1(LightweightIocContainer.Interfaces.Registrations.IRegistration)">
<summary>
Try to get an existing singleton instance for a given <see cref="T:LightweightIocContainer.Interfaces.Registrations.IRegistration"/>
</summary>
<param name="registration">The <see cref="T:LightweightIocContainer.Interfaces.Registrations.IRegistration"/></param>
<returns>A singleton instance if existing for the given <see cref="T:LightweightIocContainer.Interfaces.Registrations.IRegistration"/>, null if not</returns>
</member>
<member name="M:LightweightIocContainer.IocContainer.TryGetMultitonInstance(LightweightIocContainer.Interfaces.Registrations.IMultitonRegistration,System.Collections.Generic.IReadOnlyList{System.Object})">
<summary>
Try to get an existing multiton instance for a given <see cref="T:LightweightIocContainer.Interfaces.Registrations.IMultitonRegistration"/>
</summary>
<param name="registration">The given <see cref="T:LightweightIocContainer.Interfaces.Registrations.IMultitonRegistration"/></param>
<param name="arguments">The given arguments</param>
<returns>A multiton instance if existing for the given <see cref="T:LightweightIocContainer.Interfaces.Registrations.IRegistration"/>, null if not</returns>
<exception cref="T:LightweightIocContainer.Exceptions.MultitonResolveException">Tried resolving a multiton without scope argument</exception>
</member>
<member name="M:LightweightIocContainer.IocContainer.TryGetMultitonScopeArgument(LightweightIocContainer.Interfaces.Registrations.IMultitonRegistration,System.Collections.Generic.IReadOnlyList{System.Object})">
<summary>
Try to get the multiton scope argument for a given <see cref="T:LightweightIocContainer.Interfaces.Registrations.IMultitonRegistration"/>
</summary>
<param name="registration">The given <see cref="T:LightweightIocContainer.Interfaces.Registrations.IMultitonRegistration"/></param>
<param name="arguments">The given arguments</param>
<returns>The multiton scope argument for the given <see cref="T:LightweightIocContainer.Interfaces.Registrations.IMultitonRegistration"/></returns>
<exception cref="T:LightweightIocContainer.Exceptions.MultitonResolveException">Tried resolving a multiton without correct scope argument</exception>
</member>
<member name="M:LightweightIocContainer.IocContainer.CreateMultitonInstance``1(LightweightIocContainer.Interfaces.Registrations.IMultitonRegistration,System.Object[])">
<summary>
Gets or creates a multiton instance of a given <see cref="T:System.Type"/>
</summary>
<typeparam name="T">The given <see cref="T:System.Type"/></typeparam>
<param name="registration">The registration of the given <see cref="T:System.Type"/></param>
<param name="arguments">The arguments to resolve</param>
<returns>An existing or newly created multiton instance of the given <see cref="T:System.Type"/></returns>
<exception cref="T:LightweightIocContainer.Exceptions.MultitonResolveException">No arguments given</exception>
<exception cref="T:LightweightIocContainer.Exceptions.MultitonResolveException">Scope argument not given</exception>
</member>
<member name="M:LightweightIocContainer.IocContainer.UpdateArgumentsWithRegistrationParameters(LightweightIocContainer.Interfaces.Registrations.Fluent.IWithParametersInternal,System.Object[])">
<summary>
Update the given arguments with the <see cref="P:LightweightIocContainer.Interfaces.Registrations.Fluent.IWithParametersInternal.Parameters"/> of the given <see cref="T:LightweightIocContainer.Interfaces.Registrations.IRegistrationBase"/>
</summary>
<param name="registration">The <see cref="T:LightweightIocContainer.Interfaces.Registrations.IRegistrationBase"/> of the given <see cref="T:System.Type"/></param>
<param name="arguments">The constructor arguments</param>
<returns>The argument list updated with the <see cref="P:LightweightIocContainer.Interfaces.Registrations.Fluent.IWithParametersInternal.Parameters"/></returns>
</member>
<member name="M:LightweightIocContainer.IocContainer.TryGetTypeResolveStack(System.Type,System.Collections.Generic.IReadOnlyCollection{System.Object},System.Collections.Generic.List{System.Type})">
<summary>
Try to get the resolve stack for a given <see cref="T:System.Type"/>
</summary>
<param name="type">The given <see cref="T:System.Type"/></param>
<param name="arguments">The given arguments</param>
<param name="resolveStack">The current resolve stack</param>
<returns>
<para>result: True if successful, false if not</para>
<para>parameters: The parameters needed to resolve the given <see cref="T:System.Type"/></para>
<para>exception: A <see cref="T:LightweightIocContainer.Exceptions.NoMatchingConstructorFoundException"/> if no matching constructor was found</para>
</returns>
</member>
<member name="M:LightweightIocContainer.IocContainer.TryGetConstructorResolveStack(System.Reflection.ConstructorInfo,System.Collections.Generic.IReadOnlyCollection{System.Object},System.Collections.Generic.List{System.Type})">
<summary>
Try to get the resolve stack for a given constructor
</summary>
<param name="constructor">The <see cref="T:System.Reflection.ConstructorInfo"/> for the given constructor</param>
<param name="arguments">The given arguments</param>
<param name="resolveStack">The current resolve stack</param>
<returns>
<para>result: True if successful, false if not</para>
<para>parameters: The parameters needed to resolve the given <see cref="T:System.Type"/></para>
<para>exception: A List of <see cref="T:LightweightIocContainer.Exceptions.ConstructorNotMatchingException"/>s if the constructor is not matching</para>
</returns>
</member>
<member name="M:LightweightIocContainer.IocContainer.FindRegistration``1">
<summary>
Find the <see cref="T:LightweightIocContainer.Interfaces.Registrations.IRegistration"/> for the given <see cref="T:System.Type"/>
</summary>
<typeparam name="T">The given <see cref="T:System.Type"/></typeparam>
<returns>The <see cref="T:LightweightIocContainer.Interfaces.Registrations.IRegistration"/> for the given <see cref="T:System.Type"/></returns>
</member>
<member name="M:LightweightIocContainer.IocContainer.FindRegistration(System.Type)">
<summary>
Find the <see cref="T:LightweightIocContainer.Interfaces.Registrations.IRegistration"/> for the given <see cref="T:System.Type"/>
</summary>
<param name="type">The given <see cref="T:System.Type"/></param>
<returns>The <see cref="T:LightweightIocContainer.Interfaces.Registrations.IRegistration"/> for the given <see cref="T:System.Type"/></returns>
</member>
<member name="M:LightweightIocContainer.IocContainer.TryGetSortedConstructors(System.Type)">
<summary>
Try to get the sorted constructors for the given <see cref="T:System.Type"/>
</summary>
<param name="type">The given <see cref="T:System.Type"/></param>
<returns>A list of sorted <see cref="T:System.Reflection.ConstructorInfo"/> for the given <see cref="T:System.Type"/></returns>
<exception cref="T:LightweightIocContainer.Exceptions.NoPublicConstructorFoundException">No public constructor was found for the given <see cref="T:System.Type"/></exception>
</member>
<member name="M:LightweightIocContainer.IocContainer.GetType``1(LightweightIocContainer.Interfaces.Registrations.IRegistration)">
<summary>
Get the implementation type for the given <see cref="T:LightweightIocContainer.Interfaces.Registrations.IRegistration"/>
</summary>
<param name="registration">The given <see cref="T:LightweightIocContainer.Interfaces.Registrations.IRegistration"/></param>
<typeparam name="T">The given <see cref="T:System.Type"/> of the interface</typeparam>
<returns>The implementation <see cref="T:System.Type"/> for the given <see cref="T:LightweightIocContainer.Interfaces.Registrations.IRegistration"/></returns>
<exception cref="T:LightweightIocContainer.Exceptions.UnknownRegistrationException">Unknown <see cref="T:LightweightIocContainer.Interfaces.Registrations.IRegistration"/> passed</exception>
</member>
<member name="M:LightweightIocContainer.IocContainer.CheckForCircularDependencies``1(System.Collections.Generic.List{System.Type})">
<summary>
Check the given resolve stack for circular dependencies
</summary>
<param name="resolveStack">The given resolve stack</param>
<typeparam name="T">The given <see cref="T:System.Type"/></typeparam>
<returns>The new resolve stack</returns>
<exception cref="T:LightweightIocContainer.Exceptions.CircularDependencyException">A circular dependency was detected</exception>
</member>
<member name="M:LightweightIocContainer.IocContainer.ClearMultitonInstances``1">
<summary>
Clear the multiton instances of the given <see cref="T:System.Type"/> from the registered multitons list
</summary>
<typeparam name="T">The <see cref="T:System.Type"/> to clear the multiton instances</typeparam>
</member>
<member name="M:LightweightIocContainer.IocContainer.IsTypeRegistered``1">
<summary>
Is the given <see cref="T:System.Type"/> registered with this <see cref="T:LightweightIocContainer.IocContainer"/>
</summary>
<typeparam name="T">The given <see cref="T:System.Type"/></typeparam>
<returns>True if the given <see cref="T:System.Type"/> is registered with this <see cref="T:LightweightIocContainer.IocContainer"/>, false if not</returns>
</member>
<member name="M:LightweightIocContainer.IocContainer.RegisterIgnoreConstructorAttribute``1">
<summary>
Register a custom <see cref="T:System.Attribute"/> that can annotate a constructor to be ignored
</summary>
<typeparam name="T">The custom <see cref="T:System.Attribute"/></typeparam>
<exception cref="T:LightweightIocContainer.Exceptions.InvalidIgnoreConstructorAttributeException`1">The passed <see cref="T:System.Attribute"/> can't be used on a constructor</exception>
</member>
<member name="M:LightweightIocContainer.IocContainer.Dispose">
<summary>
The <see cref="M:System.IDisposable.Dispose"/> method
</summary>
</member>
<member name="T:LightweightIocContainer.Lifestyle">
<summary>
The Lifestyles that can be used for a <see cref="T:LightweightIocContainer.Interfaces.Registrations.IRegistrationBase"/>
</summary>
</member>
<member name="F:LightweightIocContainer.Lifestyle.Transient">
<summary>
A new instance gets created every time an instance is resolved
</summary>
</member>
<member name="F:LightweightIocContainer.Lifestyle.Singleton">
<summary>
One instance is created that gets returned every time an instance is resolved
</summary>
</member>
<member name="F:LightweightIocContainer.Lifestyle.Multiton">
<summary>
A new instance gets created if the given scope has no created instance yet. Otherwise the already created instance is used.
</summary>
</member>
<member name="T:LightweightIocContainer.NullParameter">
<summary>
Wrapper class to handle null passed as an argument correctly
</summary>
</member>
<member name="M:LightweightIocContainer.NullParameter.#ctor(System.Type)">
<summary>
Wrapper class to handle null passed as an argument correctly
</summary>
<param name="parameterType">The <see cref="T:System.Type"/> of the parameter</param>
</member>
<member name="P:LightweightIocContainer.NullParameter.ParameterType">
<summary>
The <see cref="T:System.Type"/> of the parameter
</summary>
</member>
<member name="T:LightweightIocContainer.Registrations.MultipleMultitonRegistration`3">
<summary>
An <see cref="T:LightweightIocContainer.Interfaces.Registrations.IRegistrationBase"/> to register multiple interfaces for on implementation type that implements them as a multiton
</summary>
<typeparam name="TInterface1">The first interface</typeparam>
<typeparam name="TInterface2">The second interface</typeparam>
<typeparam name="TImplementation">The implementation</typeparam>
</member>
<member name="M:LightweightIocContainer.Registrations.MultipleMultitonRegistration`3.#ctor(System.Type,System.Type,System.Type,System.Type,LightweightIocContainer.IocContainer)">
<summary>
An <see cref="T:LightweightIocContainer.Interfaces.Registrations.IRegistrationBase"/> to register multiple interfaces for on implementation type that implements them as a multiton
</summary>
<param name="interfaceType1">The <see cref="T:System.Type"/> of the first interface</param>
<param name="interfaceType2">The <see cref="T:System.Type"/> of the second interface</param>
<param name="implementationType">The <see cref="T:System.Type"/> of the implementation</param>
<param name="scope">The <see cref="T:System.Type"/> of the multiton scope</param>
<param name="container">The current instance of the <see cref="T:LightweightIocContainer.Interfaces.IIocContainer"/></param>
</member>
<member name="P:LightweightIocContainer.Registrations.MultipleMultitonRegistration`3.Registrations">
<summary>
A <see cref="T:System.Collections.Generic.List`1"/> of <see cref="T:LightweightIocContainer.Interfaces.Registrations.IRegistration"/>s that are registered within this <see cref="T:LightweightIocContainer.Interfaces.Registrations.IMultipleRegistration`2"/>
</summary>
</member>
<member name="M:LightweightIocContainer.Registrations.MultipleMultitonRegistration`3.OnCreate(System.Action{`2})">
<summary>
Pass an <see cref="T:System.Action`1"/> that will be invoked when an instance of this type is created
</summary>
<param name="action">The <see cref="T:System.Action`1"/></param>
<returns>The current instance of this <see cref="T:LightweightIocContainer.Interfaces.Registrations.ITypedRegistration`2"/></returns>
</member>
<member name="T:LightweightIocContainer.Registrations.MultipleRegistration`2">
<summary>
The base class for every <see cref="T:LightweightIocContainer.Interfaces.Registrations.IMultipleRegistration`3"/> to register multiple interfaces
</summary>
<typeparam name="TInterface1">The first interface</typeparam>
<typeparam name="TImplementation">The implementation</typeparam>
</member>
<member name="M:LightweightIocContainer.Registrations.MultipleRegistration`2.#ctor(System.Type,System.Type,LightweightIocContainer.Lifestyle,LightweightIocContainer.IocContainer)">
<summary>
The base class for every <see cref="T:LightweightIocContainer.Interfaces.Registrations.IMultipleRegistration`2"/> to register multiple interfaces
</summary>
<param name="interfaceType1">The <see cref="T:System.Type"/> of the first interface</param>
<param name="implementationType">The <see cref="T:System.Type"/> of the implementation</param>
<param name="lifestyle">The <see cref="T:LightweightIocContainer.Lifestyle"/> of this <see cref="T:LightweightIocContainer.Registrations.MultipleRegistration`2"/></param>
<param name="container">The current instance of the <see cref="T:LightweightIocContainer.Interfaces.IIocContainer"/></param>
</member>
<member name="P:LightweightIocContainer.Registrations.MultipleRegistration`2.Registrations">
<summary>
A <see cref="T:System.Collections.Generic.List`1"/> of <see cref="T:LightweightIocContainer.Interfaces.Registrations.IRegistration"/>s that are registered within this <see cref="T:LightweightIocContainer.Registrations.MultipleRegistration`2"/>
</summary>
</member>
<member name="T:LightweightIocContainer.Registrations.MultipleRegistration`3">
<summary>
An <see cref="T:LightweightIocContainer.Interfaces.Registrations.IRegistration"/> to register multiple interfaces for on implementation type
</summary>
<typeparam name="TInterface1">The first interface</typeparam>
<typeparam name="TInterface2">The second interface</typeparam>
<typeparam name="TImplementation">The implementation</typeparam>
</member>
<member name="M:LightweightIocContainer.Registrations.MultipleRegistration`3.#ctor(System.Type,System.Type,System.Type,LightweightIocContainer.Lifestyle,LightweightIocContainer.IocContainer)">
<summary>
An <see cref="T:LightweightIocContainer.Interfaces.Registrations.IRegistration"/> to register multiple interfaces for on implementation type
</summary>
<param name="interfaceType1">The <see cref="T:System.Type"/> of the first interface</param>
<param name="interfaceType2">The <see cref="T:System.Type"/> of the second interface</param>
<param name="implementationType">The <see cref="T:System.Type"/> of the implementation</param>
<param name="lifestyle">The <see cref="T:LightweightIocContainer.Lifestyle"/> of this <see cref="T:LightweightIocContainer.Registrations.MultipleRegistration`2"/></param>
<param name="container">The current instance of the <see cref="T:LightweightIocContainer.Interfaces.IIocContainer"/></param>
</member>
<member name="M:LightweightIocContainer.Registrations.MultipleRegistration`3.OnCreate(System.Action{`2})">
<summary>
Pass an <see cref="T:System.Action`1"/> that will be invoked when an instance of this type is created
</summary>
<param name="action">The <see cref="T:System.Action`1"/></param>
<returns>The current instance of this <see cref="T:LightweightIocContainer.Interfaces.Registrations.ITypedRegistration`2"/></returns>
</member>
<member name="T:LightweightIocContainer.Registrations.MultipleRegistration`4">
<summary>
An <see cref="T:LightweightIocContainer.Interfaces.Registrations.IRegistration"/> to register multiple interfaces for on implementation type
</summary>
<typeparam name="TInterface1">The first interface</typeparam>
<typeparam name="TInterface2">The second interface</typeparam>
<typeparam name="TInterface3">The third interface</typeparam>
<typeparam name="TImplementation">The implementation</typeparam>
</member>
<member name="M:LightweightIocContainer.Registrations.MultipleRegistration`4.#ctor(System.Type,System.Type,System.Type,System.Type,LightweightIocContainer.Lifestyle,LightweightIocContainer.IocContainer)">
<summary>
An <see cref="T:LightweightIocContainer.Interfaces.Registrations.IRegistration"/> to register multiple interfaces for on implementation type
</summary>
<param name="interfaceType1">The <see cref="T:System.Type"/> of the first interface</param>
<param name="interfaceType2">The <see cref="T:System.Type"/> of the second interface</param>
<param name="interfaceType3">The <see cref="T:System.Type"/> of the third interface</param>
<param name="implementationType">The <see cref="T:System.Type"/> of the implementation</param>
<param name="lifestyle">The <see cref="T:LightweightIocContainer.Lifestyle"/> of this <see cref="T:LightweightIocContainer.Registrations.MultipleRegistration`2"/></param>
<param name="container">The current instance of the <see cref="T:LightweightIocContainer.Interfaces.IIocContainer"/></param>
</member>
<member name="M:LightweightIocContainer.Registrations.MultipleRegistration`4.OnCreate(System.Action{`3})">
<summary>
Pass an <see cref="T:System.Action`1"/> that will be invoked when an instance of this type is created
</summary>
<param name="action">The <see cref="T:System.Action`1"/></param>
<returns>The current instance of this <see cref="T:LightweightIocContainer.Interfaces.Registrations.ITypedRegistration`2"/></returns>
</member>
<member name="T:LightweightIocContainer.Registrations.MultipleRegistration`5">
<summary>
An <see cref="T:LightweightIocContainer.Interfaces.Registrations.IRegistration"/> to register multiple interfaces for on implementation type
</summary>
<typeparam name="TInterface1">The first interface</typeparam>
<typeparam name="TInterface2">The second interface</typeparam>
<typeparam name="TInterface3">The third interface</typeparam>
<typeparam name="TInterface4">The fourth interface</typeparam>
<typeparam name="TImplementation">The implementation</typeparam>
</member>
<member name="M:LightweightIocContainer.Registrations.MultipleRegistration`5.#ctor(System.Type,System.Type,System.Type,System.Type,System.Type,LightweightIocContainer.Lifestyle,LightweightIocContainer.IocContainer)">
<summary>
An <see cref="T:LightweightIocContainer.Interfaces.Registrations.IRegistration"/> to register multiple interfaces for on implementation type
</summary>
<param name="interfaceType1">The <see cref="T:System.Type"/> of the first interface</param>
<param name="interfaceType2">The <see cref="T:System.Type"/> of the second interface</param>
<param name="interfaceType3">The <see cref="T:System.Type"/> of the third interface</param>
<param name="interfaceType4">The <see cref="T:System.Type"/> of the fourth interface</param>
<param name="implementationType">The <see cref="T:System.Type"/> of the implementation</param>
<param name="lifestyle">The <see cref="T:LightweightIocContainer.Lifestyle"/> of this <see cref="T:LightweightIocContainer.Registrations.MultipleRegistration`2"/></param>
<param name="container">The current instance of the <see cref="T:LightweightIocContainer.Interfaces.IIocContainer"/></param>
</member>
<member name="M:LightweightIocContainer.Registrations.MultipleRegistration`5.OnCreate(System.Action{`4})">
<summary>
Pass an <see cref="T:System.Action`1"/> that will be invoked when an instance of this type is created
</summary>
<param name="action">The <see cref="T:System.Action`1"/></param>
<returns>The current instance of this <see cref="T:LightweightIocContainer.Interfaces.Registrations.ITypedRegistration`2"/></returns>
</member>
<member name="T:LightweightIocContainer.Registrations.MultipleRegistration`6">
<summary>
An <see cref="T:LightweightIocContainer.Interfaces.Registrations.IRegistration"/> to register multiple interfaces for on implementation type
</summary>
<typeparam name="TInterface1">The first interface</typeparam>
<typeparam name="TInterface2">The second interface</typeparam>
<typeparam name="TInterface3">The third interface</typeparam>
<typeparam name="TInterface4">The fourth interface</typeparam>
<typeparam name="TInterface5">The fifth interface</typeparam>
<typeparam name="TImplementation">The implementation</typeparam>
</member>
<member name="M:LightweightIocContainer.Registrations.MultipleRegistration`6.#ctor(System.Type,System.Type,System.Type,System.Type,System.Type,System.Type,LightweightIocContainer.Lifestyle,LightweightIocContainer.IocContainer)">
<summary>
An <see cref="T:LightweightIocContainer.Interfaces.Registrations.IRegistration"/> to register multiple interfaces for on implementation type
</summary>
<param name="interfaceType1">The <see cref="T:System.Type"/> of the first interface</param>
<param name="interfaceType2">The <see cref="T:System.Type"/> of the second interface</param>
<param name="interfaceType3">The <see cref="T:System.Type"/> of the third interface</param>
<param name="interfaceType4">The <see cref="T:System.Type"/> of the fourth interface</param>
<param name="interfaceType5">The <see cref="T:System.Type"/> of the fifth interface</param>
<param name="implementationType">The <see cref="T:System.Type"/> of the implementation</param>
<param name="lifestyle">The <see cref="T:LightweightIocContainer.Lifestyle"/> of this <see cref="T:LightweightIocContainer.Registrations.MultipleRegistration`2"/></param>
<param name="container">The current instance of the <see cref="T:LightweightIocContainer.Interfaces.IIocContainer"/></param>
</member>
<member name="M:LightweightIocContainer.Registrations.MultipleRegistration`6.OnCreate(System.Action{`5})">
<summary>
Pass an <see cref="T:System.Action`1"/> that will be invoked when an instance of this type is created
</summary>
<param name="action">The <see cref="T:System.Action`1"/></param>
<returns>The current instance of this <see cref="T:LightweightIocContainer.Interfaces.Registrations.ITypedRegistration`2"/></returns>
</member>
<member name="T:LightweightIocContainer.Registrations.MultitonRegistration`2">
<summary>
The registration that is used to register a multiton
</summary>
<typeparam name="TInterface">The registered interface</typeparam>
<typeparam name="TImplementation">The registered implementation</typeparam>
</member>
<member name="M:LightweightIocContainer.Registrations.MultitonRegistration`2.#ctor(System.Type,System.Type,System.Type,LightweightIocContainer.IocContainer)">
<summary>
The registration that is used to register a multiton
</summary>
<param name="interfaceType">The <see cref="T:System.Type"/> of the Interface</param>
<param name="implementationType">The <see cref="T:System.Type"/> of the Implementation</param>
<param name="scope">The <see cref="T:System.Type"/> of the Multiton Scope</param>
<param name="container">The current instance of the <see cref="T:LightweightIocContainer.Interfaces.IIocContainer"/></param>
</member>
<member name="P:LightweightIocContainer.Registrations.MultitonRegistration`2.Scope">
<summary>
The <see cref="T:System.Type"/> of the multiton scope
</summary>
</member>
<member name="M:LightweightIocContainer.Registrations.MultitonRegistration`2.ValidateFactory">
<summary>
Validate the <see cref="P:LightweightIocContainer.Registrations.RegistrationBase.Factory"/>
</summary>
</member>
<member name="T:LightweightIocContainer.Registrations.OpenGenericRegistration">
<summary>
<see cref="T:LightweightIocContainer.Interfaces.Registrations.IRegistration"/> for open generic types
</summary>
</member>
<member name="M:LightweightIocContainer.Registrations.OpenGenericRegistration.#ctor(System.Type,System.Type,LightweightIocContainer.Lifestyle,LightweightIocContainer.IocContainer)">
<summary>
<see cref="T:LightweightIocContainer.Interfaces.Registrations.IRegistration"/> for open generic types
</summary>
<param name="interfaceType">The <see cref="T:System.Type"/> of the interface</param>
<param name="implementationType">The <see cref="T:System.Type"/> of the implementation type</param>
<param name="lifestyle">The <see cref="T:LightweightIocContainer.Lifestyle"/> of this <see cref="T:LightweightIocContainer.Interfaces.Registrations.IOpenGenericRegistration"/></param>
<param name="iocContainer">The current instance of the <see cref="T:LightweightIocContainer.Interfaces.IIocContainer"/></param>
</member>
<member name="P:LightweightIocContainer.Registrations.OpenGenericRegistration.ImplementationType">
<summary>
The <see cref="T:System.Type"/> that implements the <see cref="P:LightweightIocContainer.Interfaces.Registrations.IRegistration.InterfaceType"/> that is registered with this <see cref="T:LightweightIocContainer.Interfaces.Registrations.IOpenGenericRegistration"/>
</summary>
</member>
<member name="M:LightweightIocContainer.Registrations.OpenGenericRegistration.Validate">
<summary>
Validate this <see cref="T:LightweightIocContainer.Registrations.OpenGenericRegistration"/>
</summary>
</member>
<member name="T:LightweightIocContainer.Registrations.RegistrationBase">
<summary>
The <see cref="T:LightweightIocContainer.Registrations.RegistrationBase"/> that is used to register an Interface
</summary>
</member>
<member name="M:LightweightIocContainer.Registrations.RegistrationBase.#ctor(System.Type,LightweightIocContainer.Lifestyle,LightweightIocContainer.IocContainer)">
<summary>
The <see cref="T:LightweightIocContainer.Registrations.RegistrationBase"/> that is used to register an Interface
</summary>
<param name="interfaceType">The <see cref="T:System.Type"/> of the Interface</param>
<param name="lifestyle">The <see cref="T:LightweightIocContainer.Lifestyle"/> of the registration</param>
<param name="container">The current instance of the <see cref="T:LightweightIocContainer.IocContainer"/></param>
</member>
<member name="P:LightweightIocContainer.Registrations.RegistrationBase.InterfaceType">
<summary>
The <see cref="T:System.Type"/> of the Interface that is registered with this <see cref="T:LightweightIocContainer.Registrations.RegistrationBase"/>
</summary>
</member>
<member name="P:LightweightIocContainer.Registrations.RegistrationBase.Lifestyle">
<summary>
The <see cref="T:LightweightIocContainer.Lifestyle"/> of Instances that are created with this <see cref="T:LightweightIocContainer.Registrations.RegistrationBase"/>
</summary>
</member>
<member name="P:LightweightIocContainer.Registrations.RegistrationBase.DisposeStrategy">
<summary>
The <see cref="T:LightweightIocContainer.DisposeStrategy"/> of singletons/multitons that implement <see cref="T:System.IDisposable"/> and are created with this <see cref="T:LightweightIocContainer.Registrations.RegistrationBase"/>
</summary>
</member>
<member name="P:LightweightIocContainer.Registrations.RegistrationBase.Parameters">
<summary>
An <see cref="T:System.Array"/> of parameters that are used to <see cref="M:LightweightIocContainer.IocContainer.Resolve``1"/> an instance of this <see cref="P:LightweightIocContainer.Interfaces.Registrations.IRegistration.InterfaceType"/>
<para>Can be set in the <see cref="T:LightweightIocContainer.Interfaces.Installers.IIocInstaller"/> by calling <see cref="M:LightweightIocContainer.Registrations.RegistrationBase.WithParameters(System.Object[])"/></para>
</summary>
</member>
<member name="P:LightweightIocContainer.Registrations.RegistrationBase.Factory">
<summary>
The Factory added with the <see cref="M:LightweightIocContainer.Registrations.RegistrationBase.WithFactory``1"/> method
</summary>
</member>
<member name="M:LightweightIocContainer.Registrations.RegistrationBase.WithParameters(System.Object[])">
<summary>
Pass parameters that will be used to <see cref="M:LightweightIocContainer.IocContainer.Resolve``1"/> an instance of this <see cref="P:LightweightIocContainer.Interfaces.Registrations.IRegistration.InterfaceType"/>
<para>Parameters set with this method are always inserted at the beginning of the argument list if more parameters are given when resolving</para>
</summary>
<param name="parameters">The parameters</param>
<returns>The current instance of this <see cref="T:LightweightIocContainer.Interfaces.Registrations.IRegistration"/></returns>
<exception cref="T:LightweightIocContainer.Exceptions.InvalidRegistrationException"><see cref="P:LightweightIocContainer.Registrations.RegistrationBase.Parameters"/> are already set or no parameters given</exception>
</member>
<member name="M:LightweightIocContainer.Registrations.RegistrationBase.WithParameters(System.ValueTuple{System.Int32,System.Object}[])">
<summary>
Pass parameters that will be used to<see cref="M:LightweightIocContainer.IocContainer.Resolve``1"/> an instance of this <see cref="P:LightweightIocContainer.Interfaces.Registrations.IRegistration.InterfaceType"/>
<para>Parameters set with this method are inserted at the position in the argument list that is passed with the parameter if more parameters are given when resolving</para>
</summary>
<param name="parameters">The parameters with their position</param>
<returns>The current instance of this <see cref="T:LightweightIocContainer.Interfaces.Registrations.IRegistration"/></returns>
<exception cref="T:LightweightIocContainer.Exceptions.InvalidRegistrationException"><see cref="P:LightweightIocContainer.Registrations.RegistrationBase.Parameters"/> are already set or no parameters given</exception>
</member>
<member name="M:LightweightIocContainer.Registrations.RegistrationBase.WithFactory``1">
<summary>
Register an abstract typed factory for the <see cref="T:LightweightIocContainer.Interfaces.Registrations.IRegistrationBase"/>
</summary>
<typeparam name="TFactory">The type of the abstract typed factory</typeparam>
<returns>The current instance of this <see cref="T:LightweightIocContainer.Interfaces.Registrations.IRegistrationBase"/></returns>
</member>
<member name="M:LightweightIocContainer.Registrations.RegistrationBase.WithFactory``2">
<summary>
Register a custom implemented factory for the <see cref="T:LightweightIocContainer.Interfaces.Registrations.IRegistrationBase"/>
</summary>
<typeparam name="TFactoryInterface">The type of the interface for the custom factory</typeparam>
<typeparam name="TFactoryImplementation">The type of the implementation for the custom factory</typeparam>
<returns>The current instance of this <see cref="T:LightweightIocContainer.Interfaces.Registrations.IRegistrationBase"/></returns>
</member>
<member name="M:LightweightIocContainer.Registrations.RegistrationBase.WithDisposeStrategy(LightweightIocContainer.DisposeStrategy)">
<summary>
Add a <see cref="P:LightweightIocContainer.Registrations.RegistrationBase.DisposeStrategy"/> for the <see cref="T:LightweightIocContainer.Interfaces.Registrations.IRegistrationBase"/>
</summary>
<param name="disposeStrategy">The <see cref="P:LightweightIocContainer.Registrations.RegistrationBase.DisposeStrategy"/></param>
<returns>The current instance of this <see cref="T:LightweightIocContainer.Registrations.RegistrationBase"/></returns>
</member>
<member name="M:LightweightIocContainer.Registrations.RegistrationBase.Validate">
<summary>
Validate this <see cref="T:LightweightIocContainer.Registrations.RegistrationBase"/>
</summary>
</member>
<member name="M:LightweightIocContainer.Registrations.RegistrationBase.ValidateMultiton">
<summary>
Validate that no registration that isn't derived from <see cref="T:LightweightIocContainer.Interfaces.Registrations.IMultitonRegistration"/> has <see cref="F:LightweightIocContainer.Lifestyle.Multiton"/>
</summary>
<exception cref="T:LightweightIocContainer.Exceptions.InvalidRegistrationException">Can't register a type as Lifestyle.Multiton without a scope (Registration is not of type IMultitonRegistration)</exception>
</member>
<member name="M:LightweightIocContainer.Registrations.RegistrationBase.ValidateFactory">
<summary>
Validate the <see cref="P:LightweightIocContainer.Registrations.RegistrationBase.Factory"/>
</summary>
<exception cref="T:LightweightIocContainer.Exceptions.InvalidFactoryRegistrationException">No create method that can create the <see cref="P:LightweightIocContainer.Registrations.RegistrationBase.InterfaceType"/></exception>
</member>
<member name="M:LightweightIocContainer.Registrations.RegistrationBase.ValidateDisposeStrategy">
<summary>
Validate the <see cref="P:LightweightIocContainer.Registrations.RegistrationBase.DisposeStrategy"/> for the <see cref="P:LightweightIocContainer.Registrations.RegistrationBase.InterfaceType"/> and <see cref="P:LightweightIocContainer.Registrations.RegistrationBase.Lifestyle"/>
</summary>
</member>
<member name="M:LightweightIocContainer.Registrations.RegistrationBase.ValidateDisposeStrategy(System.Type)">
<summary>
Validate the <see cref="P:LightweightIocContainer.Registrations.RegistrationBase.DisposeStrategy"/> for the given <see cref="T:System.Type"/> and <see cref="P:LightweightIocContainer.Registrations.RegistrationBase.Lifestyle"/>
</summary>
<param name="type">The given <see cref="T:System.Type"/></param>
<exception cref="T:LightweightIocContainer.Exceptions.InvalidDisposeStrategyException">Dispose strategy is invalid for this <see cref="P:LightweightIocContainer.Registrations.RegistrationBase.InterfaceType"/> and <see cref="P:LightweightIocContainer.Registrations.RegistrationBase.Lifestyle"/></exception>
</member>
<member name="T:LightweightIocContainer.Registrations.RegistrationCollector">
<summary>
Creates and collects the <see cref="T:LightweightIocContainer.Interfaces.Registrations.IRegistration"/>s
</summary>
</member>
<member name="P:LightweightIocContainer.Registrations.RegistrationCollector.Registrations">
<summary>
The collected <see cref="T:LightweightIocContainer.Interfaces.Registrations.IRegistration"/>s
</summary>
</member>
<member name="M:LightweightIocContainer.Registrations.RegistrationCollector.Add``2(LightweightIocContainer.Lifestyle)">
<summary>
Add an Interface with a Type that implements it
</summary>
<typeparam name="TInterface">The Interface to add</typeparam>
<typeparam name="TImplementation">The Type that implements the interface</typeparam>
<param name="lifestyle">The <see cref="T:LightweightIocContainer.Lifestyle"/> for this <see cref="T:LightweightIocContainer.Interfaces.Registrations.IRegistration"/></param>
<returns>The created <see cref="T:LightweightIocContainer.Interfaces.Registrations.IRegistration"/></returns>
</member>
<member name="M:LightweightIocContainer.Registrations.RegistrationCollector.AddOpenGenerics(System.Type,System.Type,LightweightIocContainer.Lifestyle)">
<summary>
Add an open generic Interface with an open generic Type that implements it
</summary>
<param name="tInterface">The open generic Interface to add</param>
<param name="tImplementation">The open generic Type that implements the interface</param>
<param name="lifestyle">The <see cref="T:LightweightIocContainer.Lifestyle"/> for this <see cref="T:LightweightIocContainer.Interfaces.Registrations.IRegistration"/></param>
<returns>The created <see cref="T:LightweightIocContainer.Interfaces.Registrations.IRegistration"/></returns>
<exception cref="T:LightweightIocContainer.Exceptions.InvalidRegistrationException">Function can only be used to register open generic types</exception>
<exception cref="T:LightweightIocContainer.Exceptions.InvalidRegistrationException">Can't register a multiton with open generic registration</exception>
</member>
<member name="M:LightweightIocContainer.Registrations.RegistrationCollector.Add``3(LightweightIocContainer.Lifestyle)">
<summary>
Add multiple interfaces for a <see cref="T:System.Type"/> that implements them
</summary>
<typeparam name="TInterface1">The base interface to add</typeparam>
<typeparam name="TInterface2">A second interface to add</typeparam>
<typeparam name="TImplementation">The <see cref="T:System.Type"/> that implements both interfaces</typeparam>
<param name="lifestyle">The <see cref="T:LightweightIocContainer.Lifestyle"/> for this <see cref="T:LightweightIocContainer.Interfaces.Registrations.IRegistration"/></param>
<returns>The created <see cref="T:LightweightIocContainer.Interfaces.Registrations.IMultipleRegistration`2"/></returns>
</member>
<member name="M:LightweightIocContainer.Registrations.RegistrationCollector.Add``4(LightweightIocContainer.Lifestyle)">
<summary>
Add multiple interfaces for a <see cref="T:System.Type"/> that implements them
</summary>
<typeparam name="TInterface1">The base interface to add</typeparam>
<typeparam name="TInterface2">A second interface to add</typeparam>
<typeparam name="TInterface3">A third interface to add</typeparam>
<typeparam name="TImplementation">The <see cref="T:System.Type"/> that implements both interfaces</typeparam>
<param name="lifestyle">The <see cref="T:LightweightIocContainer.Lifestyle"/> for this <see cref="T:LightweightIocContainer.Interfaces.Registrations.IRegistration"/></param>
<returns>The created <see cref="T:LightweightIocContainer.Interfaces.Registrations.IMultipleRegistration`3"/></returns>
</member>
<member name="M:LightweightIocContainer.Registrations.RegistrationCollector.Add``5(LightweightIocContainer.Lifestyle)">
<summary>
Add multiple interfaces for a <see cref="T:System.Type"/> that implements them
</summary>
<typeparam name="TInterface1">The base interface to add</typeparam>
<typeparam name="TInterface2">A second interface to add</typeparam>
<typeparam name="TInterface3">A third interface to add</typeparam>
<typeparam name="TInterface4">A fourth interface to add</typeparam>
<typeparam name="TImplementation">The <see cref="T:System.Type"/> that implements both interfaces</typeparam>
<param name="lifestyle">The <see cref="T:LightweightIocContainer.Lifestyle"/> for this <see cref="T:LightweightIocContainer.Interfaces.Registrations.IRegistration"/></param>
<returns>The created <see cref="T:LightweightIocContainer.Interfaces.Registrations.IMultipleRegistration`4"/></returns>
</member>
<member name="M:LightweightIocContainer.Registrations.RegistrationCollector.Add``6(LightweightIocContainer.Lifestyle)">
<summary>
Add multiple interfaces for a <see cref="T:System.Type"/> that implements them
</summary>
<typeparam name="TInterface1">The base interface to add</typeparam>
<typeparam name="TInterface2">A second interface to add</typeparam>
<typeparam name="TInterface3">A third interface to add</typeparam>
<typeparam name="TInterface4">A fourth interface to add</typeparam>
<typeparam name="TInterface5">A fifth interface to add</typeparam>
<typeparam name="TImplementation">The <see cref="T:System.Type"/> that implements both interfaces</typeparam>
<param name="lifestyle">The <see cref="T:LightweightIocContainer.Lifestyle"/> for this <see cref="T:LightweightIocContainer.Interfaces.Registrations.IRegistration"/></param>
<returns>The created <see cref="T:LightweightIocContainer.Interfaces.Registrations.IMultipleRegistration`5"/></returns>
</member>
<member name="M:LightweightIocContainer.Registrations.RegistrationCollector.Add``1(LightweightIocContainer.Lifestyle)">
<summary>
Add a <see cref="T:System.Type"/> without an interface
</summary>
<typeparam name="TImplementation">The <see cref="T:System.Type"/> to add</typeparam>
<param name="lifestyle">The <see cref="T:LightweightIocContainer.Lifestyle"/> for this <see cref="T:LightweightIocContainer.Interfaces.Registrations.IRegistration"/></param>
<returns>The created <see cref="T:LightweightIocContainer.Interfaces.Registrations.IRegistration"/></returns>
</member>
<member name="M:LightweightIocContainer.Registrations.RegistrationCollector.AddMultiton``3">
<summary>
Add an Interface with a Type that implements it as a multiton
</summary>
<typeparam name="TInterface">The Interface to add</typeparam>
<typeparam name="TImplementation">The Type that implements the interface</typeparam>
<typeparam name="TScope">The Type of the multiton scope</typeparam>
<returns>The created <see cref="T:LightweightIocContainer.Interfaces.Registrations.IRegistration"/></returns>
</member>
<member name="M:LightweightIocContainer.Registrations.RegistrationCollector.AddMultiton``4">
<summary>
Add multiple interfaces for a <see cref="T:System.Type"/> that implements them as a multiton
</summary>
<typeparam name="TInterface1">The base interface to add</typeparam>
<typeparam name="TInterface2">A second interface to add</typeparam>
<typeparam name="TImplementation">The Type that implements the interface</typeparam>
<typeparam name="TScope">The Type of the multiton scope</typeparam>
<returns>The created <see cref="T:LightweightIocContainer.Interfaces.Registrations.IRegistration"/></returns>
</member>
<member name="M:LightweightIocContainer.Registrations.RegistrationCollector.Register``2(LightweightIocContainer.Interfaces.Registrations.IMultipleRegistration{``0,``1})">
<summary>
Register all <see cref="P:LightweightIocContainer.Interfaces.Registrations.IMultipleRegistration`2.Registrations"/> from an <see cref="T:LightweightIocContainer.Interfaces.Registrations.IMultipleRegistration`2"/>
</summary>
<typeparam name="TInterface1">The <see cref="T:System.Type"/> of the first registered interface</typeparam>
<typeparam name="TImplementation">The <see cref="T:System.Type"/> of the registered implementation</typeparam>
<param name="multipleRegistration">The <see cref="T:LightweightIocContainer.Interfaces.Registrations.IMultipleRegistration`2"/></param>
</member>
<member name="T:LightweightIocContainer.Registrations.RegistrationFactory">
<summary>
A factory to register interfaces and factories in an <see cref="T:LightweightIocContainer.Interfaces.Installers.IIocInstaller"/> and create the needed <see cref="T:LightweightIocContainer.Interfaces.Registrations.IRegistration"/>s
</summary>
</member>
<member name="M:LightweightIocContainer.Registrations.RegistrationFactory.Register``2(LightweightIocContainer.Lifestyle)">
<summary>
Register an Interface with a Type that implements it and create a <see cref="T:LightweightIocContainer.Interfaces.Registrations.ITypedRegistration`2"/>
</summary>
<typeparam name="TInterface">The Interface to register</typeparam>
<typeparam name="TImplementation">The Type that implements the interface</typeparam>
<param name="lifestyle">The <see cref="T:LightweightIocContainer.Lifestyle"/> for this <see cref="T:LightweightIocContainer.Interfaces.Registrations.ITypedRegistration`2"/></param>
<returns>A new created <see cref="T:LightweightIocContainer.Interfaces.Registrations.ITypedRegistration`2"/> with the given parameters</returns>
</member>
<member name="M:LightweightIocContainer.Registrations.RegistrationFactory.Register(System.Type,System.Type,LightweightIocContainer.Lifestyle)">
<summary>
Register an open generic Interface with an open generic Type that implements it and create a <see cref="T:LightweightIocContainer.Interfaces.Registrations.IOpenGenericRegistration"/>
</summary>
<param name="tInterface">The open generic Interface to register</param>
<param name="tImplementation">The open generic Type that implements the interface</param>
<param name="lifestyle">The <see cref="T:LightweightIocContainer.Lifestyle"/> for this <see cref="T:LightweightIocContainer.Interfaces.Registrations.IOpenGenericRegistration"/></param>
<returns>The created <see cref="T:LightweightIocContainer.Interfaces.Registrations.IOpenGenericRegistration"/></returns>
</member>
<member name="M:LightweightIocContainer.Registrations.RegistrationFactory.Register``3(LightweightIocContainer.Lifestyle)">
<summary>
Register multiple interfaces for a <see cref="T:System.Type"/> that implements them and create a <see cref="T:LightweightIocContainer.Interfaces.Registrations.IMultipleRegistration`2"/>
</summary>
<typeparam name="TInterface1">The base interface to register</typeparam>
<typeparam name="TInterface2">A second interface to register</typeparam>
<typeparam name="TImplementation">The <see cref="T:System.Type"/> that implements both interfaces</typeparam>
<param name="lifestyle">The <see cref="T:LightweightIocContainer.Lifestyle"/> for this <see cref="T:LightweightIocContainer.Interfaces.Registrations.IRegistrationBase"/></param>
<returns>The created <see cref="T:LightweightIocContainer.Interfaces.Registrations.IMultipleRegistration`2"/></returns>
</member>
<member name="M:LightweightIocContainer.Registrations.RegistrationFactory.Register``4(LightweightIocContainer.Lifestyle)">
<summary>
Register multiple interfaces for a <see cref="T:System.Type"/> that implements them and create a <see cref="T:LightweightIocContainer.Interfaces.Registrations.IMultipleRegistration`3"/>
</summary>
<typeparam name="TInterface1">The base interface to register</typeparam>
<typeparam name="TInterface2">A second interface to register</typeparam>
<typeparam name="TInterface3">A third interface to register</typeparam>
<typeparam name="TImplementation">The <see cref="T:System.Type"/> that implements both interfaces</typeparam>
<param name="lifestyle">The <see cref="T:LightweightIocContainer.Lifestyle"/> for this <see cref="T:LightweightIocContainer.Interfaces.Registrations.IRegistrationBase"/></param>
<returns>The created <see cref="T:LightweightIocContainer.Interfaces.Registrations.IMultipleRegistration`3"/></returns>
</member>
<member name="M:LightweightIocContainer.Registrations.RegistrationFactory.Register``5(LightweightIocContainer.Lifestyle)">
<summary>
Register multiple interfaces for a <see cref="T:System.Type"/> that implements them and create a <see cref="T:LightweightIocContainer.Interfaces.Registrations.IMultipleRegistration`4"/>
</summary>
<typeparam name="TInterface1">The base interface to register</typeparam>
<typeparam name="TInterface2">A second interface to register</typeparam>
<typeparam name="TInterface3">A third interface to register</typeparam>
<typeparam name="TInterface4">A fourth interface to register</typeparam>
<typeparam name="TImplementation">The <see cref="T:System.Type"/> that implements both interfaces</typeparam>
<param name="lifestyle">The <see cref="T:LightweightIocContainer.Lifestyle"/> for this <see cref="T:LightweightIocContainer.Interfaces.Registrations.IRegistrationBase"/></param>
<returns>The created <see cref="T:LightweightIocContainer.Interfaces.Registrations.IMultipleRegistration`4"/></returns>
</member>
<member name="M:LightweightIocContainer.Registrations.RegistrationFactory.Register``6(LightweightIocContainer.Lifestyle)">
<summary>
Register multiple interfaces for a <see cref="T:System.Type"/> that implements them and create a <see cref="T:LightweightIocContainer.Interfaces.Registrations.IMultipleRegistration`5"/>
</summary>
<typeparam name="TInterface1">The base interface to register</typeparam>
<typeparam name="TInterface2">A second interface to register</typeparam>
<typeparam name="TInterface3">A third interface to register</typeparam>
<typeparam name="TInterface4">A fourth interface to register</typeparam>
<typeparam name="TInterface5">A fifth interface to register</typeparam>
<typeparam name="TImplementation">The <see cref="T:System.Type"/> that implements both interfaces</typeparam>
<param name="lifestyle">The <see cref="T:LightweightIocContainer.Lifestyle"/> for this <see cref="T:LightweightIocContainer.Interfaces.Registrations.IRegistrationBase"/></param>
<returns>The created <see cref="T:LightweightIocContainer.Interfaces.Registrations.IMultipleRegistration`5"/></returns>
</member>
<member name="M:LightweightIocContainer.Registrations.RegistrationFactory.Register``1(LightweightIocContainer.Lifestyle)">
<summary>
Register a <see cref="T:System.Type"/> without an interface and create a <see cref="T:LightweightIocContainer.Interfaces.Registrations.ISingleTypeRegistration`1"/>
</summary>
<typeparam name="T">The <see cref="T:System.Type"/> to register</typeparam>
<param name="lifestyle">The <see cref="T:LightweightIocContainer.Lifestyle"/> for this <see cref="T:LightweightIocContainer.Interfaces.Registrations.ISingleTypeRegistration`1"/></param>
<returns>A new created <see cref="T:LightweightIocContainer.Interfaces.Registrations.ISingleTypeRegistration`1"/> with the given parameters</returns>
</member>
<member name="M:LightweightIocContainer.Registrations.RegistrationFactory.RegisterMultiton``3">
<summary>
Register an Interface with a Type that implements it as a multiton and create a <see cref="T:LightweightIocContainer.Interfaces.Registrations.IMultitonRegistration`2"/>
</summary>
<typeparam name="TInterface">The Interface to register</typeparam>
<typeparam name="TImplementation">The Type that implements the interface</typeparam>
<typeparam name="TScope">The Type of the multiton scope</typeparam>
<returns>A new created <see cref="T:LightweightIocContainer.Interfaces.Registrations.IMultitonRegistration`2"/> with the given parameters</returns>
</member>
<member name="M:LightweightIocContainer.Registrations.RegistrationFactory.RegisterMultiton``4">
<summary>
Register multiple interfaces for a <see cref="T:System.Type"/> that implements them as a multiton
</summary>
<typeparam name="TInterface1">The base interface to register</typeparam>
<typeparam name="TInterface2">A second interface to register</typeparam>
<typeparam name="TImplementation">The Type that implements the interface</typeparam>
<typeparam name="TScope">The Type of the multiton scope</typeparam>
<returns>A new created <see cref="T:LightweightIocContainer.Interfaces.Registrations.IMultipleMultitonRegistration`3"/> with the given parameters</returns>
</member>
<member name="M:LightweightIocContainer.Registrations.RegistrationFactory.RegisterFactory``1(LightweightIocContainer.Interfaces.Factories.ITypedFactory{``0})">
<summary>
Register an Interface as an abstract typed factory and create a <see cref="T:LightweightIocContainer.Interfaces.Registrations.ITypedFactoryRegistration`1"/>
</summary>
<typeparam name="TFactory">The abstract typed factory to register</typeparam>
<returns>A new created <see cref="T:LightweightIocContainer.Interfaces.Registrations.ITypedFactoryRegistration`1"/> with the given parameters</returns>
</member>
<member name="T:LightweightIocContainer.Registrations.SingleTypeRegistration`1">
<summary>
The <see cref="T:LightweightIocContainer.Interfaces.Registrations.IRegistration"/> to register either only an interface or only a <see cref="T:System.Type"/>
</summary>
<typeparam name="T">The <see cref="T:System.Type"/> of the <see cref="T:LightweightIocContainer.Interfaces.Registrations.IRegistration"/></typeparam>
</member>
<member name="M:LightweightIocContainer.Registrations.SingleTypeRegistration`1.#ctor(System.Type,LightweightIocContainer.Lifestyle,LightweightIocContainer.IocContainer)">
<summary>
The <see cref="T:LightweightIocContainer.Interfaces.Registrations.IRegistration"/> to register either only an interface or only a <see cref="T:System.Type"/>
</summary>
<param name="interfaceType">The <see cref="T:System.Type"/> of the interface or <see cref="T:System.Type"/></param>
<param name="lifestyle">The <see cref="T:LightweightIocContainer.Lifestyle"/> of the <see cref="T:LightweightIocContainer.Registrations.RegistrationBase"/></param>
<param name="container">The current instance of the <see cref="T:LightweightIocContainer.Interfaces.IIocContainer"/></param>
</member>
<member name="P:LightweightIocContainer.Registrations.SingleTypeRegistration`1.FactoryMethod">
<summary>
<see cref="T:System.Func`2"/> that is invoked instead of creating an instance of this <see cref="T:System.Type"/> the default way
</summary>
</member>
<member name="M:LightweightIocContainer.Registrations.SingleTypeRegistration`1.WithFactoryMethod(System.Func{LightweightIocContainer.Interfaces.IIocResolver,`0})">
<summary>
Pass a <see cref="T:System.Func`2"/> that will be invoked instead of creating an instance of this <see cref="T:System.Type"/> the default way
</summary>
<param name="factoryMethod">The <see cref="T:System.Func`2"/></param>
<returns>The current instance of this <see cref="T:LightweightIocContainer.Interfaces.Registrations.IRegistration"/></returns>
</member>
<member name="T:LightweightIocContainer.Registrations.TypedFactoryRegistration`1">
<summary>
The registration that is used to register an abstract typed factory
</summary>
<typeparam name="TFactory">The <see cref="T:System.Type"/> of the abstract typed factory</typeparam>
</member>
<member name="M:LightweightIocContainer.Registrations.TypedFactoryRegistration`1.#ctor(LightweightIocContainer.Interfaces.Factories.ITypedFactory{`0})">
<summary>
The registration that is used to register an abstract typed factory
</summary>
<param name="factory">The <see cref="T:LightweightIocContainer.Interfaces.Factories.ITypedFactory`1"/> for this <see cref="T:LightweightIocContainer.Interfaces.Registrations.IRegistration"/></param>
</member>
<member name="P:LightweightIocContainer.Registrations.TypedFactoryRegistration`1.InterfaceType">
<summary>
The <see cref="T:System.Type"/> of the factory that is registered with this <see cref="T:LightweightIocContainer.Interfaces.Registrations.IRegistration"/>
</summary>
</member>
<member name="P:LightweightIocContainer.Registrations.TypedFactoryRegistration`1.Factory">
<summary>
The class that contains the implemented abstract factory of this <see cref="T:LightweightIocContainer.Registrations.TypedFactoryRegistration`1"/>
</summary>
</member>
<member name="T:LightweightIocContainer.Registrations.TypedRegistration`2">
<summary>
A <see cref="T:LightweightIocContainer.Interfaces.Registrations.IRegistrationBase"/> that implements a <see cref="T:System.Type"/>
</summary>
</member>
<member name="M:LightweightIocContainer.Registrations.TypedRegistration`2.#ctor(System.Type,System.Type,LightweightIocContainer.Lifestyle,LightweightIocContainer.IocContainer)">
<summary>
A <see cref="T:LightweightIocContainer.Interfaces.Registrations.IRegistrationBase"/> that implements a <see cref="T:System.Type"/>
</summary>
<param name="interfaceType">The <see cref="T:System.Type"/> of the interface</param>
<param name="implementationType">The <see cref="T:System.Type"/> of the implementation type</param>
<param name="lifestyle">The <see cref="T:LightweightIocContainer.Lifestyle"/> of this <see cref="T:LightweightIocContainer.Interfaces.Registrations.IRegistrationBase"/></param>
<param name="container">The current instance of the <see cref="T:LightweightIocContainer.Interfaces.IIocContainer"/></param>
</member>
<member name="P:LightweightIocContainer.Registrations.TypedRegistration`2.ImplementationType">
<summary>
The <see cref="T:System.Type"/> that implements the <see cref="P:LightweightIocContainer.Interfaces.Registrations.IRegistration.InterfaceType"/> that is registered with this <see cref="T:LightweightIocContainer.Interfaces.Registrations.IRegistrationBase"/>
</summary>
</member>
<member name="P:LightweightIocContainer.Registrations.TypedRegistration`2.OnCreateAction">
<summary>
This <see cref="T:System.Action"/> is invoked when an instance of this type is created.
<para>Can be set in the <see cref="T:LightweightIocContainer.Interfaces.Installers.IIocInstaller"/> by calling <see cref="M:LightweightIocContainer.Interfaces.Registrations.Fluent.IOnCreate`2.OnCreate(System.Action{`1})"/></para>
</summary>
</member>
<member name="P:LightweightIocContainer.Registrations.TypedRegistration`2.LightweightIocContainer#Interfaces#Registrations#Fluent#IOnCreate#OnCreateAction">
<summary>
This <see cref="T:System.Action"/> is invoked when an instance of this type is created.
<para>Can be set in the <see cref="T:LightweightIocContainer.Interfaces.Installers.IIocInstaller"/> by calling <see cref="M:LightweightIocContainer.Interfaces.Registrations.Fluent.IOnCreate`2.OnCreate(System.Action{`1})"/></para>
</summary>
</member>
<member name="M:LightweightIocContainer.Registrations.TypedRegistration`2.OnCreate(System.Action{`1})">
<summary>
Pass an <see cref="T:System.Action`1"/> that will be invoked when an instance of this type is created
</summary>
<param name="action">The <see cref="T:System.Action`1"/></param>
<returns>The current instance of this <see cref="T:LightweightIocContainer.Interfaces.Registrations.ITypedRegistration`2"/></returns>
</member>
<member name="M:LightweightIocContainer.Registrations.TypedRegistration`2.ValidateDisposeStrategy">
<summary>
Validate the <see cref="T:LightweightIocContainer.DisposeStrategy"/> for the <see cref="P:LightweightIocContainer.Registrations.TypedRegistration`2.ImplementationType"/> and <see cref="T:LightweightIocContainer.Lifestyle"/>
</summary>
</member>
<member name="T:LightweightIocContainer.ResolvePlaceholders.IInternalToBeResolvedPlaceholder">
<summary>
An internal placeholder that is used to hold types that need to be resolved during the resolving process
</summary>
</member>
<member name="P:LightweightIocContainer.ResolvePlaceholders.IInternalToBeResolvedPlaceholder.ResolvedType">
<summary>
The <see cref="T:System.Type"/> to be resolved
</summary>
</member>
<member name="T:LightweightIocContainer.ResolvePlaceholders.InternalFactoryMethodPlaceholder`1">
<summary>
An internal placeholder that is used to hold factory methods for types that need to be resolved during the resolve process
</summary>
</member>
<member name="P:LightweightIocContainer.ResolvePlaceholders.InternalFactoryMethodPlaceholder`1.ResolvedType">
<summary>
The <see cref="T:System.Type"/> to be resolved
</summary>
</member>
<member name="P:LightweightIocContainer.ResolvePlaceholders.InternalFactoryMethodPlaceholder`1.FactoryMethod">
<summary>
The <see cref="P:LightweightIocContainer.Interfaces.Registrations.ISingleTypeRegistration`1.FactoryMethod"/>
</summary>
</member>
<member name="T:LightweightIocContainer.ResolvePlaceholders.InternalResolvePlaceholder">
<summary>
An internal placeholder that is used during the resolving process
</summary>
</member>
<member name="T:LightweightIocContainer.ResolvePlaceholders.InternalToBeResolvedPlaceholder">
<summary>
An internal placeholder that is used to hold types that need to be resolved during the resolving process
</summary>
</member>
<member name="P:LightweightIocContainer.ResolvePlaceholders.InternalToBeResolvedPlaceholder.ResolvedType">
<summary>
The <see cref="T:System.Type"/> to be resolved
</summary>
</member>
<member name="P:LightweightIocContainer.ResolvePlaceholders.InternalToBeResolvedPlaceholder.ResolvedRegistration">
<summary>
The <see cref="T:LightweightIocContainer.Interfaces.Registrations.IRegistration"/> to be resolved
</summary>
</member>
<member name="P:LightweightIocContainer.ResolvePlaceholders.InternalToBeResolvedPlaceholder.Parameters">
<summary>
The parameters needed to resolve the <see cref="P:LightweightIocContainer.ResolvePlaceholders.InternalToBeResolvedPlaceholder.ResolvedRegistration"/>
</summary>
</member>
<member name="M:LightweightIocContainer.TypeExtension.GetDefault(System.Type)">
<summary>
Returns the default value for a given <see cref="T:System.Type"/>
</summary>
<param name="type">The given <see cref="T:System.Type"/></param>
<returns>The default value for the given <see cref="T:System.Type"/></returns>
</member>
</members>
</doc>