<?xml version="1.0"?>
<doc>
    <assembly>
        <name>ImpromptuInterface</name>
    </assembly>
    <members>
        <member name="T:ImpromptuInterface.Dynamic.ImpromptuForwarder">
            <summary>
            Proxies Calls allows subclasser to override do extra actions before or after base invocation
            </summary>
            <remarks>
            This may not be as efficient as other proxies that can work on just static objects or just dynamic objects...
            Consider this when using.
            </remarks>
        </member>
        <member name="T:ImpromptuInterface.Dynamic.ImpromptuObject">
            <summary>
            Dynamic Object that knows about the Impromtu Interface return types;
            Override Typical Dynamic Object methods, and use TypeForName to get the return type of an interface member.
            </summary>
        </member>
        <member name="T:ImpromptuInterface.Dynamic.IDynamicKnowLike">
            <summary>
            This interface can be used on your custom dynamic objects if you want to know the interface you are impromptu-ly implementing.
            </summary>
        </member>
        <member name="P:ImpromptuInterface.Dynamic.IDynamicKnowLike.KnownInterfaces">
            <summary>
             Property used to pass interface information to proxied object
            </summary>
        </member>
        <member name="P:ImpromptuInterface.Dynamic.IDynamicKnowLike.KnownPropertySpec">
            <summary>
            Sets the known property spec.
            </summary>
            <value>The known property spec.</value>
        </member>
        <member name="T:ImpromptuInterface.Dynamic.IActLike">
            <summary>
            This interface can be used on your custom dynamic objects if you want impromptu interfaces without casting to object or using the static method syntax of ActLike.
            Also if you want to change the behavior for slightly for specific types as this will take precident when using the dynamic keyword or your specific type is known staticly.
            </summary>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.IActLike.ActLike``1(System.Type[])">
             <summary>
             This interface can be used on your custom dynamic objects if you want impromptu interfaces without casting to object or using the static method syntax of ActLike.
             Also if you want to change the behavior for slightly for specific types as this will take precident when using the dynamic keyword or your specific type is known staticly.
             </summary>
            <param name="otherInterfaces"></param>
            <typeparam name="TInterface"></typeparam>
            <returns></returns>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.ImpromptuObject.#ctor">
            <summary>
            Initializes a new instance of the <see cref="T:ImpromptuInterface.Dynamic.ImpromptuObject"/> class.
            </summary>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.ImpromptuObject.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
            <summary>
            Initializes a new instance of the <see cref="T:ImpromptuInterface.Dynamic.ImpromptuObject"/> class. when deserializing
            </summary>
            <param name="info">The info.</param>
            <param name="context">The context.</param>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.ImpromptuObject.GetObjectData(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
            <summary>
            Populates a <see cref="T:System.Runtime.Serialization.SerializationInfo"/> with the data needed to serialize the target object.
            </summary>
            <param name="info">The <see cref="T:System.Runtime.Serialization.SerializationInfo"/> to populate with data.</param>
            <param name="context">The destination (see <see cref="T:System.Runtime.Serialization.StreamingContext"/>) for this serialization.</param>
            <exception cref="T:System.Security.SecurityException">The caller does not have the required permission. </exception>
        </member>
        <member name="F:ImpromptuInterface.Dynamic.ImpromptuObject._returnTypHash">
            <summary>
            Cache to avoid refelection for same Interfaces.
            </summary>
        </member>
        <member name="F:ImpromptuInterface.Dynamic.ImpromptuObject._hash">
            <summary>
            Hash for this instance to lookup cached values from <see cref="F:ImpromptuInterface.Dynamic.ImpromptuObject._returnTypHash"/>
            </summary>
        </member>
        <member name="F:ImpromptuInterface.Dynamic.ImpromptuObject.PropertySpec">
            <summary>
            Keep Track of Known Property Spec
            </summary>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.ImpromptuObject.GetDynamicMemberNames">
            <summary>
            Returns the enumeration of all dynamic member names.
            </summary>
            <returns>
            A sequence that contains dynamic member names.
            </returns>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.ImpromptuObject.TryTypeForName(System.String,System.Type@)">
            <summary>
            Tries to get the type for the property name from the interface.
            </summary>
            <param name="name">The name.</param>
            <param name="returnType">The return Type.</param>
            <returns></returns>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.ImpromptuObject.ActLike``1(System.Type[])">
            <summary>
            Allows ActLike to be called via dyanmic invocation
            </summary>
            <typeparam name="TInterface">The type of the interface.</typeparam>
            <param name="otherInterfaces">The other interfaces.</param>
            <returns></returns>
        </member>
        <member name="P:ImpromptuInterface.Dynamic.ImpromptuObject.KnownInterfaces">
            <summary>
            Gets or sets the known interfaces.
            Set should only be called be the factory methood
            </summary>
            <value>The known interfaces.</value>
        </member>
        <member name="P:ImpromptuInterface.Dynamic.ImpromptuObject.KnownPropertySpec">
            <summary>
            Gets or sets the known fake interface (string method name to return type mapping).
            </summary>
            <value>The known fake interface.</value>
        </member>
        <member name="T:ImpromptuInterface.Dynamic.IForwarder">
            <summary>
            Get access to target of original proxy
            </summary>
        </member>
        <member name="P:ImpromptuInterface.Dynamic.IForwarder.Target">
            <summary>
            Gets the target.
            </summary>
            <value>The target.</value>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.ImpromptuForwarder.#ctor(System.Object)">
            <summary>
            Initializes a new instance of the <see cref="T:ImpromptuInterface.Dynamic.ImpromptuForwarder"/> class.
            </summary>
            <param name="target">The target.</param>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.ImpromptuForwarder.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
            <summary>
            Initializes a new instance of the <see cref="T:ImpromptuInterface.Dynamic.ImpromptuForwarder"/> class.
            </summary>
            <param name="info">The info.</param>
            <param name="context">The context.</param>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.ImpromptuForwarder.GetObjectData(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
            <summary>
            Populates a <see cref="T:System.Runtime.Serialization.SerializationInfo"/> with the data needed to serialize the target object.
            </summary>
            <param name="info">The <see cref="T:System.Runtime.Serialization.SerializationInfo"/> to populate with data.</param>
            <param name="context">The destination (see <see cref="T:System.Runtime.Serialization.StreamingContext"/>) for this serialization.</param>
            <exception cref="T:System.Security.SecurityException">The caller does not have the required permission. </exception>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.ImpromptuForwarder.GetDynamicMemberNames">
            <summary>
            Returns the enumeration of all dynamic member names.
            </summary>
            <returns>
            A sequence that contains dynamic member names.
            </returns>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.ImpromptuForwarder.TryGetMember(System.Dynamic.GetMemberBinder,System.Object@)">
            <summary>
            Provides the implementation for operations that get member values. Classes derived from the <see cref="T:System.Dynamic.DynamicObject"/> class can override this method to specify dynamic behavior for operations such as getting a value for a property.
            </summary>
            <param name="binder">Provides information about the object that called the dynamic operation. The binder.Name property provides the name of the member on which the dynamic operation is performed. For example, for the Console.WriteLine(sampleObject.SampleProperty) statement, where sampleObject is an instance of the class derived from the <see cref="T:System.Dynamic.DynamicObject"/> class, binder.Name returns "SampleProperty". The binder.IgnoreCase property specifies whether the member name is case-sensitive.</param>
            <param name="result">The result of the get operation. For example, if the method is called for a property, you can assign the property value to <paramref name="result"/>.</param>
            <returns>
            true if the operation is successful; otherwise, false. If this method returns false, the run-time binder of the language determines the behavior. (In most cases, a run-time exception is thrown.)
            </returns>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.ImpromptuForwarder.TryInvoke(System.Dynamic.InvokeBinder,System.Object[],System.Object@)">
            <summary>
            Provides the implementation for operations that invoke an object. Classes derived from the <see cref="T:System.Dynamic.DynamicObject"/> class can override this method to specify dynamic behavior for operations such as invoking an object or a delegate.
            </summary>
            <param name="binder">Provides information about the invoke operation.</param>
            <param name="args">The arguments that are passed to the object during the invoke operation. For example, for the sampleObject(100) operation, where sampleObject is derived from the <see cref="T:System.Dynamic.DynamicObject"/> class, <paramref name="args[0]"/> is equal to 100.</param>
            <param name="result">The result of the object invocation.</param>
            <returns>
            true if the operation is successful; otherwise, false. If this method returns false, the run-time binder of the language determines the behavior. (In most cases, a language-specific run-time exception is thrown.
            </returns>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.ImpromptuForwarder.Equals(ImpromptuInterface.Dynamic.ImpromptuForwarder)">
            <summary>
            Equals the specified other.
            </summary>
            <param name="other">The other.</param>
            <returns></returns>
        </member>
        <member name="P:ImpromptuInterface.Dynamic.ImpromptuForwarder.Target">
            <summary>
            Gets or sets the target.
            </summary>
            <value>The target.</value>
        </member>
        <member name="P:ImpromptuInterface.Dynamic.ImpromptuForwarder.CallTarget">
            <summary>
            Gets the call target.
            </summary>
            <value>The call target.</value>
        </member>
        <member name="T:ImpromptuInterface.AliasAttribute">
            <summary>
            Alias to swap method/property/event call name invoked on original
            </summary>
        </member>
        <member name="M:ImpromptuInterface.AliasAttribute.#ctor(System.String)">
            <summary>
            Initializes a new instance of the <see cref="T:ImpromptuInterface.AliasAttribute"/> class.
            </summary>
            <param name="name">The name.</param>
        </member>
        <member name="P:ImpromptuInterface.AliasAttribute.Name">
            <summary>
            Gets or sets the name.
            </summary>
            <value>
            The name.
            </value>
        </member>
        <member name="T:ImpromptuInterface.NonRecursiveInterfaceAttribute">
            <summary>
            Attribute on Inteface to stop proxy from recursively
            proxying other interfaces
            </summary>
        </member>
        <member name="T:ImpromptuInterface.UseNamedArgumentAttribute">
            <summary>
            Attribute for Methods and Parameters on Custom Interfaces designed to be used with a dynamic implementation
            </summary>
        </member>
        <member name="T:ImpromptuInterface.Dynamic.AliasAttribute">
            <summary>
            Alias to swap method/property/event call name invoked on original
            </summary>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.AliasAttribute.#ctor(System.String)">
            <summary>
            Initializes a new instance of the <see cref="T:ImpromptuInterface.Dynamic.AliasAttribute"/> class.
            </summary>
            <param name="name">The name.</param>
        </member>
        <member name="P:ImpromptuInterface.Dynamic.AliasAttribute.Name">
            <summary>
            Gets or sets the name.
            </summary>
            <value>
            The name.
            </value>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.ExtensionToInstanceProxy.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
            <summary>
            Initializes a new instance of the <see cref="T:ImpromptuInterface.Dynamic.ImpromptuObject"/> class. when deserializing
            </summary>
            <param name="info">The info.</param>
            <param name="context">The context.</param>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.ExtensionToInstanceProxy.GetObjectData(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
            <summary>
            Populates a <see cref="T:System.Runtime.Serialization.SerializationInfo"/> with the data needed to serialize the target object.
            </summary>
            <param name="info">The <see cref="T:System.Runtime.Serialization.SerializationInfo"/> to populate with data.</param>
            <param name="context">The destination (see <see cref="T:System.Runtime.Serialization.StreamingContext"/>) for this serialization.</param>
            <exception cref="T:System.Security.SecurityException">The caller does not have the required permission. </exception>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.LinqInstanceProxy.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
            <summary>
            Initializes a new instance of the <see cref="T:ImpromptuInterface.Dynamic.ImpromptuObject"/> class. when deserializing
            </summary>
            <param name="info">The info.</param>
            <param name="context">The context.</param>
        </member>
        <member name="T:ImpromptuInterface.Dynamic.FluentStringLookup">
            <summary>
            Building block to use Method calls as dynamic lookups
            </summary>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.FluentStringLookup.#ctor(System.Func{System.String,System.Object})">
            <summary>
            Initializes a new instance of the <see cref="T:ImpromptuInterface.Dynamic.FluentStringLookup"/> class.
            </summary>
            <param name="lookup">The lookup.</param>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.ImpromptuMatch.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
            <summary>
            Initializes a new instance of the <see cref="T:ImpromptuInterface.Dynamic.ImpromptuList"/> class.
            </summary>
            <param name="info">The info.</param>
            <param name="context">The context.</param>
        </member>
        <member name="T:ImpromptuInterface.Dynamic.FluentRegex">
            <summary>
            Extension Methods for fluent Regex
            </summary>
        </member>
        <member name="T:ImpromptuInterface.Dynamic.Mimic">
            <summary>
            Class for TDD, used for mocking any dynamic object
            </summary>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.Mimic.TryBinaryOperation(System.Dynamic.BinaryOperationBinder,System.Object,System.Object@)">
            <summary>
            Override on DynamicObject
            </summary>
            <param name="binder"></param>
            <param name="arg"></param>
            <param name="result"></param>
            <returns></returns>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.Mimic.TryConvert(System.Dynamic.ConvertBinder,System.Object@)">
            <summary>
            Override on DynamicObject
            </summary>
            <param name="binder"></param>
            <param name="result"></param>
            <returns></returns>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.Mimic.TryCreateInstance(System.Dynamic.CreateInstanceBinder,System.Object[],System.Object@)">
            <summary>
            Override on DynamicObject
            </summary>
            <param name="binder"></param>
            <param name="args"></param>
            <param name="result"></param>
            <returns></returns>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.Mimic.TryDeleteIndex(System.Dynamic.DeleteIndexBinder,System.Object[])">
            <summary>
            Override on DynamicObject
            </summary>
            <param name="binder"></param>
            <param name="indexes"></param>
            <returns></returns>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.Mimic.TryDeleteMember(System.Dynamic.DeleteMemberBinder)">
            <summary>
            Override on DynamicObject
            </summary>
            <param name="binder"></param>
            <returns></returns>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.Mimic.TryGetIndex(System.Dynamic.GetIndexBinder,System.Object[],System.Object@)">
            <summary>
            Override on DynamicObject
            </summary>
            <param name="binder"></param>
            <param name="indexes"></param>
            <param name="result"></param>
            <returns></returns>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.Mimic.TryGetMember(System.Dynamic.GetMemberBinder,System.Object@)">
            <summary>
            Override on DynamicObject
            </summary>
            <param name="binder"></param>
            <param name="result"></param>
            <returns></returns>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.Mimic.TryInvoke(System.Dynamic.InvokeBinder,System.Object[],System.Object@)">
            <summary>
            Override on DynamicObject
            </summary>
            <param name="binder"></param>
            <param name="args"></param>
            <param name="result"></param>
            <returns></returns>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.Mimic.TryInvokeMember(System.Dynamic.InvokeMemberBinder,System.Object[],System.Object@)">
            <summary>
            Override on DynamicObject
            </summary>
            <param name="binder"></param>
            <param name="args"></param>
            <param name="result"></param>
            <returns></returns>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.Mimic.TrySetIndex(System.Dynamic.SetIndexBinder,System.Object[],System.Object)">
            <summary>
            Override on DynamicObject
            </summary>
            <param name="binder"></param>
            <param name="indexes"></param>
            <param name="value"></param>
            <returns></returns>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.Mimic.TrySetMember(System.Dynamic.SetMemberBinder,System.Object)">
            <summary>
            Override on DynamicObject
            </summary>
            <param name="binder"></param>
            <param name="value"></param>
            <returns></returns>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.Mimic.TryUnaryOperation(System.Dynamic.UnaryOperationBinder,System.Object@)">
            <summary>
            Override on DynamicObject
            </summary>
            <param name="binder"></param>
            <param name="result"></param>
            <returns></returns>
        </member>
        <member name="T:ImpromptuInterface.Dynamic.Builder">
            <summary>
            Builds Objects with a Fluent Syntax
            </summary>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.Builder.New">
            <summary>
            New Builder
            </summary>
            <returns></returns>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.Builder.New``1">
            <summary>
            New Builder
            </summary>
            <typeparam name="TObjectPrototype">The type of the object prototype.</typeparam>
            <returns></returns>
        </member>
        <member name="T:ImpromptuInterface.Dynamic.Build">
            <summary>
            Syntax for a quick new inline prototype object
            </summary>
        </member>
        <member name="P:ImpromptuInterface.Dynamic.Build.NewObject">
            <summary>
            Gets the new object builder.
            </summary>
            <value>The new object.</value>
        </member>
        <member name="P:ImpromptuInterface.Dynamic.Build.NewList">
            <summary>
            Gets the new list builder.
            </summary>
            <value>The new list.</value>
        </member>
        <member name="T:ImpromptuInterface.Dynamic.Build`1">
            <summary>
            Syntax for a quick inline object property setup
            </summary>
            <typeparam name="TObjectPrototype">The type of the object prototype.</typeparam>
        </member>
        <member name="P:ImpromptuInterface.Dynamic.Build`1.NewObject">
            <summary>
            Gets the new object builder.
            </summary>
            <value>The new.</value>
        </member>
        <member name="P:ImpromptuInterface.Dynamic.Build`1.NewList">
            <summary>
            Gets the new list builder.
            </summary>
            <value>The new list.</value>
        </member>
        <member name="T:ImpromptuInterface.Dynamic.Activate">
            <summary>
            Encapsulates an Activator
            </summary>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.Activate.#ctor(System.Type,System.Object[])">
            <summary>
            Initializes a new instance of the <see cref="T:ImpromptuInterface.Dynamic.Activate"/> class.
            </summary>
            <param name="type">The type.</param>
            <param name="args">The args.</param>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.Activate.#ctor(System.Type,System.Func{System.Object[]})">
            <summary>
            Initializes a new instance of the <see cref="T:ImpromptuInterface.Dynamic.Activate"/> class. With Factory Function
            </summary>
            <param name="type">The type.</param>
            <param name="args">The args.</param>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.Activate.Create">
            <summary>
            Creates this instance.
            </summary>
            <returns></returns>
        </member>
        <member name="P:ImpromptuInterface.Dynamic.Activate.Type">
            <summary>
            Gets or sets the constructor type.
            </summary>
            <value>The type.</value>
        </member>
        <member name="P:ImpromptuInterface.Dynamic.Activate.Arguments">
            <summary>
            Gets or sets the constructor arguments.
            </summary>
            <value>The arguments.</value>
        </member>
        <member name="T:ImpromptuInterface.Dynamic.Activate`1">
            <summary>
            Encapsulates an Activator
            </summary>
            <typeparam name="TObjectPrototype">The type of the object prototype.</typeparam>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.Activate`1.#ctor(System.Object[])">
            <summary>
            Initializes a new instance of the <see cref="T:ImpromptuInterface.Dynamic.Activate`1"/> class.
            </summary>
            <param name="args">The args.</param>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.Activate`1.#ctor(System.Func{System.Object[]})">
            <summary>
            Initializes a new instance of the <see cref="T:ImpromptuInterface.Dynamic.Activate`1"/> class. With Factory Function
            </summary>
            <param name="args">The args.</param>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.Activate`1.Create">
            <summary>
            Creates this instance.
            </summary>
            <returns></returns>
        </member>
        <member name="T:ImpromptuInterface.Dynamic.CacheableInvocation">
            <summary>
            Cacheable representation of an invocation without the target or arguments  also by default only does public methods to make it easier to cache.
             /// </summary>
        </member>
        <member name="T:ImpromptuInterface.Dynamic.Invocation">
            <summary>
            Storable representation of an invocation without the target
            </summary>
        </member>
        <member name="F:ImpromptuInterface.Dynamic.Invocation.ExplicitConvertBinderName">
            <summary>
            Defacto Binder Name for Explicit Convert Op
            </summary>
        </member>
        <member name="F:ImpromptuInterface.Dynamic.Invocation.ImplicitConvertBinderName">
            <summary>
            Defacto Binder Name for Implicit Convert Op
            </summary>
        </member>
        <member name="F:ImpromptuInterface.Dynamic.Invocation.IndexBinderName">
            <summary>
            Defacto Binder Name for Indexer
            </summary>
        </member>
        <member name="F:ImpromptuInterface.Dynamic.Invocation.ConstructorBinderName">
            <summary>
            Defacto Binder Name for Construvter
            </summary>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.Invocation.Create(ImpromptuInterface.Dynamic.InvocationKind,ImpromptuInterface.String_OR_InvokeMemberName,System.Object[])">
            <summary>
            Creates the invocation.
            </summary>
            <param name="kind">The kind.</param>
            <param name="name">The name.</param>
            <param name="storedArgs">The args.</param>
            <returns></returns>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.Invocation.#ctor(ImpromptuInterface.Dynamic.InvocationKind,ImpromptuInterface.String_OR_InvokeMemberName,System.Object[])">
            <summary>
            Initializes a new instance of the <see cref="T:ImpromptuInterface.Dynamic.Invocation"/> class.
            </summary>
            <param name="kind">The kind.</param>
            <param name="name">The name.</param>
            <param name="storedArgs">The args.</param>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.Invocation.Equals(ImpromptuInterface.Dynamic.Invocation)">
            <summary>
            Equalses the specified other.
            </summary>
            <param name="other">The other.</param>
            <returns></returns>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.Invocation.Invoke(System.Object,System.Object[])">
            <summary>
            Invokes the invocation on specified target with specific args.
            </summary>
            <param name="target">The target.</param>
            <param name="args">The args.</param>
            <returns></returns>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.Invocation.InvokeWithArgs(System.Object,System.Object[])">
            <summary>
            Deprecated use <see cref="M:ImpromptuInterface.Dynamic.Invocation.Invoke(System.Object,System.Object[])"/>
            </summary>
            <param name="target">The target.</param>
            <param name="args">The args.</param>
            <returns></returns>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.Invocation.InvokeWithStoredArgs(System.Object)">
            <summary>
            Invokes the invocation on specified target.
            </summary>
            <param name="target">The target.</param>
            <returns></returns>
        </member>
        <member name="P:ImpromptuInterface.Dynamic.Invocation.Kind">
            <summary>
            Gets or sets the kind.
            </summary>
            <value>The kind.</value>
        </member>
        <member name="P:ImpromptuInterface.Dynamic.Invocation.Name">
            <summary>
            Gets or sets the name.
            </summary>
            <value>The name.</value>
        </member>
        <member name="P:ImpromptuInterface.Dynamic.Invocation.Args">
            <summary>
            Gets or sets the args.
            </summary>
            <value>The args.</value>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.CacheableInvocation.CreateConvert(System.Type,System.Boolean)">
            <summary>
            Creates the cacheable convert call.
            </summary>
            <param name="convertType">Type of the convert.</param>
            <param name="convertExplicit">if set to <c>true</c> [convert explict].</param>
            <returns></returns>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.CacheableInvocation.CreateCall(ImpromptuInterface.Dynamic.InvocationKind,ImpromptuInterface.String_OR_InvokeMemberName,System.Dynamic.CallInfo,System.Object)">
            <summary>
            Creates the cacheable method or indexer or property call.
            </summary>
            <param name="kind">The kind.</param>
            <param name="name">The name.</param>
            <param name="callInfo">The callInfo.</param>
            <param name="context">The context.</param>
            <returns></returns>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.CacheableInvocation.#ctor(ImpromptuInterface.Dynamic.InvocationKind,ImpromptuInterface.String_OR_InvokeMemberName,System.Int32,System.String[],System.Object,System.Type,System.Boolean,System.Object[])">
            <summary>
            Initializes a new instance of the <see cref="T:ImpromptuInterface.Dynamic.CacheableInvocation"/> class.
            </summary>
            <param name="kind">The kind.</param>
            <param name="name">The name.</param>
            <param name="argCount">The arg count.</param>
            <param name="argNames">The arg names.</param>
            <param name="context">The context.</param>
            <param name="convertType">Type of the convert.</param>
            <param name="convertExplicit">if set to <c>true</c> [convert explict].</param>
            <param name="storedArgs">The stored args.</param>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.CacheableInvocation.Equals(ImpromptuInterface.Dynamic.CacheableInvocation)">
            <summary>
            Equalses the specified other.
            </summary>
            <param name="other">The other.</param>
            <returns></returns>
        </member>
        <member name="T:ImpromptuInterface.Dynamic.IImpromptuBuilder">
            <summary>
            Interface for simplistic builder options
            </summary>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.IImpromptuBuilder.List(System.Object[])">
            <summary>
            Creates a prototype list
            </summary>
            <param name="contents">The contents.</param>
            <returns></returns>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.IImpromptuBuilder.ListSetup(System.Object[])">
            <summary>
            Setup List or Array, takes either one <see cref="T:ImpromptuInterface.Dynamic.Activate"/> or a list of constructor args that will use objects Type
            </summary>
            <param name="constructorArgs">The constructor args.</param>
            <returns></returns>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.IImpromptuBuilder.ListSetup``1">
            <summary>
            Setup List or Array if list has a default constrcutor
            </summary>
            <typeparam name="TList"></typeparam>
            <returns></returns>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.IImpromptuBuilder.ListSetup(System.Func{System.Object[]})">
            <summary>
            Setup List or Array, takes either one <see cref="T:ImpromptuInterface.Dynamic.Activate"/> or a list of constructor args that will use objects Type
            </summary>
            <param name="constructorArgsFactory">The constructor args factory.</param>
            <returns></returns>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.IImpromptuBuilder.ArraySetup``1">
            <summary>
            Setup List or Array if list has a default constrcutor
            </summary>
            <typeparam name="TList"></typeparam>
            <returns></returns>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.IImpromptuBuilder.ArraySetup(System.Object[])">
            <summary>
            Alternative name for <see cref="M:ImpromptuInterface.Dynamic.IImpromptuBuilder.ListSetup(System.Object[])"/>
            </summary>
            <param name="constructorArgs">The constructor args.</param>
            <returns></returns>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.IImpromptuBuilder.ArraySetup(System.Func{System.Object[]})">
            <summary>
            Alternative name for <see cref="M:ImpromptuInterface.Dynamic.IImpromptuBuilder.ListSetup``1"/>
            </summary>
            <param name="constructorArgsFactory">The constructor args factory.</param>
            <returns></returns>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.IImpromptuBuilder.Array(System.Object[])">
            <summary>
            Alternative name for <see cref="M:ImpromptuInterface.Dynamic.IImpromptuBuilder.List(System.Object[])"/>
            </summary>
            <param name="contents">The contents.</param>
            <returns></returns>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.IImpromptuBuilder.ObjectSetup(System.Object[])">
            <summary>
            Sets up object builder
            </summary>
            <param name="constructorArgs">The constructor args.</param>
            <returns></returns>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.IImpromptuBuilder.ObjectSetup(System.Func{System.Object[]})">
            <summary>
            Sets up object builder
            </summary>
            <param name="constructorArgsFactory"></param>
            <returns></returns>
        </member>
        <member name="P:ImpromptuInterface.Dynamic.IImpromptuBuilder.Object">
            <summary>
            Generates Object, use by calling with named arguments <code>builder.Object(Prop1:"test",Prop2:"test")</code>
            returns new object;
            </summary>
        </member>
        <member name="P:ImpromptuInterface.Dynamic.IImpromptuBuilder.Setup">
            <summary>
            Setups up named builders 
            </summary>
            <value>The setup.</value>
        </member>
        <member name="T:ImpromptuInterface.Dynamic.ImpromptuBuilder`1">
            <summary>
            Builds Expando-Like Objects with an inline Syntax
            </summary>
            <typeparam name="TObjectProtoType">The type of the object proto type.</typeparam>
        </member>
        <member name="F:ImpromptuInterface.Dynamic.ImpromptuBuilder`1._buildType">
            <summary>
            Build factory storage
            </summary>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.ImpromptuBuilder`1.#ctor">
            <summary>
            Initializes a new instance of the <see cref="T:ImpromptuInterface.Dynamic.ImpromptuBuilder`1"/> class.
            </summary>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.ImpromptuBuilder`1.List(System.Object[])">
            <summary>
            Creates a prototype list
            </summary>
            <param name="contents">The contents.</param>
            <returns></returns>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.ImpromptuBuilder`1.Array(System.Object[])">
            <summary>
            Alternative name for <see cref="M:ImpromptuInterface.Dynamic.ImpromptuBuilder`1.List(System.Object[])"/>
            </summary>
            <param name="contents">The contents.</param>
            <returns></returns>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.ImpromptuBuilder`1.ObjectSetup(System.Object[])">
            <summary>
            Sets up object builder
            </summary>
            <param name="constructorArgs">The constructor args.</param>
            <returns></returns>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.ImpromptuBuilder`1.ObjectSetup(System.Func{System.Object[]})">
            <summary>
            Sets up object builder
            </summary>
            <param name="constructorArgsFactory"></param>
            <returns></returns>
        </member>
        <member name="P:ImpromptuInterface.Dynamic.ImpromptuBuilder`1.Object">
            <summary>
            Creates a Prototype object.
            </summary>
            <value>The object.</value>
        </member>
        <member name="P:ImpromptuInterface.Dynamic.ImpromptuBuilder`1.Setup">
            <summary>
            Trapoline for setting up Builders
            </summary>
        </member>
        <member name="T:ImpromptuInterface.Dynamic.ImpromptuBuilder`1.BuilderTrampoline">
            <summary>
             Trampoline for builder
            </summary>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.ImpromptuBuilder`1.BuilderTrampoline.#ctor(ImpromptuInterface.Dynamic.ImpromptuBuilder{`0})">
            <summary>
            Initializes a new instance of the <see cref="T:ImpromptuInterface.Dynamic.ImpromptuBuilder`1.BuilderTrampoline"/> class.
            </summary>
            <param name="builder">The builder.</param>
        </member>
        <member name="T:ImpromptuInterface.Dynamic.ImpromptuBuilder`1.SetupTrampoline">
            <summary>
            Trampoline for setup builder
            </summary>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.ImpromptuBuilder`1.SetupTrampoline.#ctor(ImpromptuInterface.Dynamic.ImpromptuBuilder{`0})">
            <summary>
            Initializes a new instance of the <see cref="T:ImpromptuInterface.Dynamic.ImpromptuBuilder`1.SetupTrampoline"/> class.
            </summary>
            <param name="builder">The builder.</param>
        </member>
        <member name="T:ImpromptuInterface.Dynamic.ImpromptuDictionary">
            <summary>
            Similar to Expando Objects but handles null values when the property is defined with an impromptu interface
            </summary>
        </member>
        <member name="T:ImpromptuInterface.Dynamic.ImpromptuDictionaryBase">
            <summary>
            Base class of Expando-Type objects
            </summary>
        </member>
        <member name="F:ImpromptuInterface.Dynamic.ImpromptuDictionaryBase._dictionary">
            <summary>
            Wrapped Dictionary
            </summary>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.ImpromptuDictionaryBase.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
            <summary>
            Initializes a new instance of the <see cref="T:ImpromptuInterface.Dynamic.ImpromptuDictionaryBase"/> class.
            </summary>
            <param name="info">The info.</param>
            <param name="context">The context.</param>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.ImpromptuDictionaryBase.GetObjectData(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
            <summary>
            Populates a <see cref="T:System.Runtime.Serialization.SerializationInfo"/> with the data needed to serialize the target object.
            </summary>
            <param name="info">The <see cref="T:System.Runtime.Serialization.SerializationInfo"/> to populate with data.</param>
            <param name="context">The destination (see <see cref="T:System.Runtime.Serialization.StreamingContext"/>) for this serialization.</param>
            <exception cref="T:System.Security.SecurityException">The caller does not have the required permission. </exception>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.ImpromptuDictionaryBase.#ctor(System.Collections.Generic.IEnumerable{System.Collections.Generic.KeyValuePair{System.String,System.Object}})">
            <summary>
            Initializes a new instance of the <see cref="T:ImpromptuInterface.Dynamic.ImpromptuDictionary"/> class.
            </summary>
            <param name="dict">The dict.</param>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.ImpromptuDictionaryBase.GetDynamicMemberNames">
            <summary>
            Returns the enumeration of all dynamic member names.
            </summary>
            <returns>
            A sequence that contains dynamic member names.
            </returns>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.ImpromptuDictionaryBase.TryGetMember(System.Dynamic.GetMemberBinder,System.Object@)">
            <summary>
            Provides the implementation for operations that get member values. Classes derived from the <see cref="T:System.Dynamic.DynamicObject"/> class can override this method to specify dynamic behavior for operations such as getting a value for a property.
            </summary>
            <param name="binder">Provides information about the object that called the dynamic operation. The binder.Name property provides the name of the member on which the dynamic operation is performed. For example, for the Console.WriteLine(sampleObject.SampleProperty) statement, where sampleObject is an instance of the class derived from the <see cref="T:System.Dynamic.DynamicObject"/> class, binder.Name returns "SampleProperty". The binder.IgnoreCase property specifies whether the member name is case-sensitive.</param>
            <param name="result">The result of the get operation. For example, if the method is called for a property, you can assign the property value to <paramref name="result"/>.</param>
            <returns>
            true if the operation is successful; otherwise, false. If this method returns false, the run-time binder of the language determines the behavior. (In most cases, a run-time exception is thrown.)
            </returns>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.ImpromptuDictionaryBase.TryInvokeMember(System.Dynamic.InvokeMemberBinder,System.Object[],System.Object@)">
            <summary>
            Provides the implementation for operations that invoke a member. Classes derived from the <see cref="T:System.Dynamic.DynamicObject"/> class can override this method to specify dynamic behavior for operations such as calling a method.
            </summary>
            <param name="binder">Provides information about the dynamic operation. The binder.Name property provides the name of the member on which the dynamic operation is performed. For example, for the statement sampleObject.SampleMethod(100), where sampleObject is an instance of the class derived from the <see cref="T:System.Dynamic.DynamicObject"/> class, binder.Name returns "SampleMethod". The binder.IgnoreCase property specifies whether the member name is case-sensitive.</param>
            <param name="args">The arguments that are passed to the object member during the invoke operation. For example, for the statement sampleObject.SampleMethod(100), where sampleObject is derived from the <see cref="T:System.Dynamic.DynamicObject"/> class, <paramref name="args"/> is equal to 100.</param>
            <param name="result">The result of the member invocation.</param>
            <returns>
            true if the operation is successful; otherwise, false. If this method returns false, the run-time binder of the language determines the behavior. (In most cases, a language-specific run-time exception is thrown.)
            </returns>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.ImpromptuDictionaryBase.TrySetMember(System.Dynamic.SetMemberBinder,System.Object)">
            <summary>
            Provides the implementation for operations that set member values. Classes derived from the <see cref="T:System.Dynamic.DynamicObject"/> class can override this method to specify dynamic behavior for operations such as setting a value for a property.
            </summary>
            <param name="binder">Provides information about the object that called the dynamic operation. The binder.Name property provides the name of the member to which the value is being assigned. For example, for the statement sampleObject.SampleProperty = "Test", where sampleObject is an instance of the class derived from the <see cref="T:System.Dynamic.DynamicObject"/> class, binder.Name returns "SampleProperty". The binder.IgnoreCase property specifies whether the member name is case-sensitive.</param>
            <param name="value">The value to set to the member. For example, for sampleObject.SampleProperty = "Test", where sampleObject is an instance of the class derived from the <see cref="T:System.Dynamic.DynamicObject"/> class, the <paramref name="value"/> is "Test".</param>
            <returns>
            true if the operation is successful; otherwise, false. If this method returns false, the run-time binder of the language determines the behavior. (In most cases, a language-specific run-time exception is thrown.)
            </returns>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.ImpromptuDictionaryBase.Add(System.Collections.Generic.KeyValuePair{System.String,System.Object})">
            <summary>
            Adds the specified item.
            </summary>
            <param name="item">The item.</param>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.ImpromptuDictionaryBase.Contains(System.Collections.Generic.KeyValuePair{System.String,System.Object})">
            <summary>
            Determines whether [contains] [the specified item].
            </summary>
            <param name="item">The item.</param>
            <returns>
            	<c>true</c> if [contains] [the specified item]; otherwise, <c>false</c>.
            </returns>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.ImpromptuDictionaryBase.CopyTo(System.Collections.Generic.KeyValuePair{System.String,System.Object}[],System.Int32)">
            <summary>
            Copies to.
            </summary>
            <param name="array">The array.</param>
            <param name="arrayIndex">Index of the array.</param>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.ImpromptuDictionaryBase.Remove(System.Collections.Generic.KeyValuePair{System.String,System.Object})">
            <summary>
            Removes the specified item.
            </summary>
            <param name="item">The item.</param>
            <returns></returns>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.ImpromptuDictionaryBase.ContainsKey(System.String)">
            <summary>
            Determines whether the specified key contains key.
            </summary>
            <param name="key">The key.</param>
            <returns>
            	<c>true</c> if the specified key contains key; otherwise, <c>false</c>.
            </returns>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.ImpromptuDictionaryBase.Add(System.String,System.Object)">
            <summary>
            Adds the specified key.
            </summary>
            <param name="key">The key.</param>
            <param name="value">The value.</param>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.ImpromptuDictionaryBase.Remove(System.String)">
            <summary>
            Removes the specified key.
            </summary>
            <param name="key">The key.</param>
            <returns></returns>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.ImpromptuDictionaryBase.TryGetValue(System.String,System.Object@)">
            <summary>
            Tries the get value.
            </summary>
            <param name="key">The key.</param>
            <param name="value">The value.</param>
            <returns></returns>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.ImpromptuDictionaryBase.OnPropertyChanged(System.String)">
            <summary>
            Called when [property changed].
            </summary>
            <param name="key">The key.</param>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.ImpromptuDictionaryBase.Equals(ImpromptuInterface.Dynamic.ImpromptuDictionary)">
            <summary>
            Equalses the specified other.
            </summary>
            <param name="other">The other.</param>
            <returns></returns>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.ImpromptuDictionaryBase.Equals(System.Object)">
            <summary>
            Determines whether the specified <see cref="T:System.Object"/> is equal to this instance.
            </summary>
            <param name="obj">The <see cref="T:System.Object"/> to compare with this instance.</param>
            <returns>
            	<c>true</c> if the specified <see cref="T:System.Object"/> is equal to this instance; otherwise, <c>false</c>.
            </returns>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.ImpromptuDictionaryBase.GetHashCode">
            <summary>
            Returns a hash code for this instance.
            </summary>
            <returns>
            A hash code for this instance, suitable for use in hashing algorithms and data structures like a hash table. 
            </returns>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.ImpromptuDictionaryBase.ToString">
            <summary>
            Returns a <see cref="T:System.String"/> that represents this instance.
            </summary>
            <returns>
            A <see cref="T:System.String"/> that represents this instance.
            </returns>
        </member>
        <member name="P:ImpromptuInterface.Dynamic.ImpromptuDictionaryBase.IsReadOnly">
            <summary>
            Gets a value indicating whether this instance is read only.
            </summary>
            <value>
            	<c>true</c> if this instance is read only; otherwise, <c>false</c>.
            </value>
        </member>
        <member name="P:ImpromptuInterface.Dynamic.ImpromptuDictionaryBase.Keys">
            <summary>
            Gets the keys.
            </summary>
            <value>The keys.</value>
        </member>
        <member name="P:ImpromptuInterface.Dynamic.ImpromptuDictionaryBase.Values">
            <summary>
            Gets the values.
            </summary>
            <value>The values.</value>
        </member>
        <member name="E:ImpromptuInterface.Dynamic.ImpromptuDictionaryBase.PropertyChanged">
            <summary>
            Occurs when a property value changes.
            </summary>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.ImpromptuDictionary.Create``1(System.Collections.Generic.IEnumerable{System.Collections.Generic.KeyValuePair{System.String,System.Object}})">
            <summary>
            Convenience create method to make an Impromptu Dictionary instance acting like interface type parameter
            </summary>
            <typeparam name="T"></typeparam>
            <param name="dict">The dict.</param>
            <returns></returns>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.ImpromptuDictionary.#ctor">
            <summary>
            Initializes a new instance of the <see cref="T:ImpromptuInterface.Dynamic.ImpromptuDictionary"/> class.
            </summary>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.ImpromptuDictionary.#ctor(System.Collections.Generic.IEnumerable{System.Collections.Generic.KeyValuePair{System.String,System.Object}})">
            <summary>
            Initializes a new instance of the <see cref="T:ImpromptuInterface.Dynamic.ImpromptuDictionary"/> class.
            </summary>
            <param name="dict">The dict.</param>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.ImpromptuDictionary.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
            <summary>
            Initializes a new instance of the <see cref="T:ImpromptuInterface.Dynamic.ImpromptuDictionary"/> class.
            </summary>
            <param name="info">The info.</param>
            <param name="context">The context.</param>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.ImpromptuDictionary.GetEnumerator">
            <summary>
            Gets the enumerator.
            </summary>
            <returns></returns>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.ImpromptuDictionary.Clear">
            <summary>
            Clears this instance.
            </summary>
        </member>
        <member name="P:ImpromptuInterface.Dynamic.ImpromptuDictionary.Count">
            <summary>
            Gets the count.
            </summary>
            <value>The count.</value>
        </member>
        <member name="P:ImpromptuInterface.Dynamic.ImpromptuDictionary.Item(System.String)">
            <summary>
            Gets or sets the <see cref="T:System.Object"/> with the specified key.
            </summary>
            <value></value>
        </member>
        <member name="T:ImpromptuInterface.Dynamic.ImpromptuChainableDictionary">
            <summary>
            Adds extra synatx to intialize properties to match up with clay
            </summary>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.ImpromptuChainableDictionary.#ctor">
            <summary>
            Initializes a new instance of the <see cref="T:ImpromptuInterface.Dynamic.ImpromptuChainableDictionary"/> class.
            </summary>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.ImpromptuChainableDictionary.#ctor(System.Collections.Generic.IEnumerable{System.Collections.Generic.KeyValuePair{System.String,System.Object}})">
            <summary>
            Initializes a new instance of the <see cref="T:ImpromptuInterface.Dynamic.ImpromptuDictionary"/> class.
            </summary>
            <param name="dict">The dict.</param>
        </member>
        <member name="T:ImpromptuInterface.Dynamic.ImpromptuDummy">
            <summary>
            Dummy that just returns null of default for everything.
            </summary>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.ImpromptuDummy.#ctor">
            <summary>
            Initializes a new instance of the <see cref="T:ImpromptuInterface.Dynamic.ImpromptuDummy"/> class.
            </summary>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.ImpromptuDummy.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
            <summary>
            Initializes a new instance of the <see cref="T:ImpromptuInterface.Dynamic.ImpromptuDummy"/> class.
            </summary>
            <param name="info">The info.</param>
            <param name="context">The context.</param>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.ImpromptuDummy.TryGetMember(System.Dynamic.GetMemberBinder,System.Object@)">
            <summary>
            Provides the implementation for operations that get member values. Classes derived from the <see cref="T:System.Dynamic.DynamicObject"/> class can override this method to specify dynamic behavior for operations such as getting a value for a property.
            </summary>
            <param name="binder">Provides information about the object that called the dynamic operation. The binder.Name property provides the name of the member on which the dynamic operation is performed. For example, for the Console.WriteLine(sampleObject.SampleProperty) statement, where sampleObject is an instance of the class derived from the <see cref="T:System.Dynamic.DynamicObject"/> class, binder.Name returns "SampleProperty". The binder.IgnoreCase property specifies whether the member name is case-sensitive.</param>
            <param name="result">The result of the get operation. For example, if the method is called for a property, you can assign the property value to <paramref name="result"/>.</param>
            <returns>
            true if the operation is successful; otherwise, false. If this method returns false, the run-time binder of the language determines the behavior. (In most cases, a run-time exception is thrown.)
            </returns>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.ImpromptuDummy.TrySetMember(System.Dynamic.SetMemberBinder,System.Object)">
            <summary>
            Provides the implementation for operations that set member values. Classes derived from the <see cref="T:System.Dynamic.DynamicObject"/> class can override this method to specify dynamic behavior for operations such as setting a value for a property.
            </summary>
            <param name="binder">Provides information about the object that called the dynamic operation. The binder.Name property provides the name of the member to which the value is being assigned. For example, for the statement sampleObject.SampleProperty = "Test", where sampleObject is an instance of the class derived from the <see cref="T:System.Dynamic.DynamicObject"/> class, binder.Name returns "SampleProperty". The binder.IgnoreCase property specifies whether the member name is case-sensitive.</param>
            <param name="value">The value to set to the member. For example, for sampleObject.SampleProperty = "Test", where sampleObject is an instance of the class derived from the <see cref="T:System.Dynamic.DynamicObject"/> class, the <paramref name="value"/> is "Test".</param>
            <returns>
            true if the operation is successful; otherwise, false. If this method returns false, the run-time binder of the language determines the behavior. (In most cases, a language-specific run-time exception is thrown.)
            </returns>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.ImpromptuDummy.TryInvokeMember(System.Dynamic.InvokeMemberBinder,System.Object[],System.Object@)">
            <summary>
            Provides the implementation for operations that invoke a member. Classes derived from the <see cref="T:System.Dynamic.DynamicObject"/> class can override this method to specify dynamic behavior for operations such as calling a method.
            </summary>
            <param name="binder">Provides information about the dynamic operation. The binder.Name property provides the name of the member on which the dynamic operation is performed. For example, for the statement sampleObject.SampleMethod(100), where sampleObject is an instance of the class derived from the <see cref="T:System.Dynamic.DynamicObject"/> class, binder.Name returns "SampleMethod". The binder.IgnoreCase property specifies whether the member name is case-sensitive.</param>
            <param name="args">The arguments that are passed to the object member during the invoke operation. For example, for the statement sampleObject.SampleMethod(100), where sampleObject is derived from the <see cref="T:System.Dynamic.DynamicObject"/> class, <paramref name="args"/> is equal to 100.</param>
            <param name="result">The result of the member invocation.</param>
            <returns>
            true if the operation is successful; otherwise, false. If this method returns false, the run-time binder of the language determines the behavior. (In most cases, a language-specific run-time exception is thrown.)
            </returns>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.ImpromptuDummy.TryGetIndex(System.Dynamic.GetIndexBinder,System.Object[],System.Object@)">
            <summary>
            Tries the index of the get.
            </summary>
            <param name="binder">The binder.</param>
            <param name="indexes">The indexes.</param>
            <param name="result">The result.</param>
            <returns></returns>
        </member>
        <member name="T:ImpromptuInterface.Dynamic.ImpromptuFactory">
            <summary>
            Base Class for making a fluent factory using an Impromptu Interface return type.
            </summary>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.ImpromptuFactory.Create``1">
            <summary>
            Creates this instance with Interface;
            </summary>
            <typeparam name="T"></typeparam>
            <returns></returns>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.ImpromptuFactory.TryGetMember(System.Dynamic.GetMemberBinder,System.Object@)">
            <summary>
            Provides the default implementation for operations that get instance as defined by <see cref="M:ImpromptuInterface.Dynamic.ImpromptuFactory.GetInstanceForDynamicMember(System.String,System.Object[])"/>. Classes derived from the <see cref="T:ImpromptuInterface.ImpromptuObject"/> class can override this method to specify dynamic behavior for operations such as getting a value for a property.
            </summary>
            <param name="binder">Provides information about the object that called the dynamic operation. The binder.Name property provides the name of the member on which the dynamic operation is performed. For example, for the Console.WriteLine(sampleObject.SampleProperty) statement, where sampleObject is an instance of the class derived from the <see cref="T:System.Dynamic.DynamicObject"/> class, binder.Name returns "SampleProperty". The binder.IgnoreCase property specifies whether the member name is case-sensitive.</param>
            <param name="result">The result of the get operation. For example, if the method is called for a property, you can assign the property value to <paramref name="result"/>.</param>
            <returns>
            true if the operation is successful; otherwise, false. If this method returns false, the run-time binder of the language determines the behavior. (In most cases, a run-time exception is thrown.)
            </returns>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.ImpromptuFactory.TryInvokeMember(System.Dynamic.InvokeMemberBinder,System.Object[],System.Object@)">
            <summary>
            Provides the implementation for operations that invoke a member. Classes derived from the <see cref="T:System.Dynamic.DynamicObject"/> class can override this method to specify dynamic behavior for operations such as calling a method.
            </summary>
            <param name="binder">Provides information about the dynamic operation. The binder.Name property provides the name of the member on which the dynamic operation is performed. For example, for the statement sampleObject.SampleMethod(100), where sampleObject is an instance of the class derived from the <see cref="T:System.Dynamic.DynamicObject"/> class, binder.Name returns "SampleMethod". The binder.IgnoreCase property specifies whether the member name is case-sensitive.</param>
            <param name="args">The arguments that are passed to the object member during the invoke operation. For example, for the statement sampleObject.SampleMethod(100), where sampleObject is derived from the <see cref="T:System.Dynamic.DynamicObject"/> class, <paramref name="args"/>[0] is equal to 100.</param>
            <param name="result">The result of the member invocation.</param>
            <returns>
            true if the operation is successful; otherwise, false. If this method returns false, the run-time binder of the language determines the behavior. (In most cases, a language-specific run-time exception is thrown.)
            </returns>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.ImpromptuFactory.CreateType(System.Type,System.Object[])">
            <summary>
            Constructs the type. Override for changing type intialization property changes.
            </summary>
            <param name="type">The type.</param>
            <param name="args">The args.</param>
            <returns></returns>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.ImpromptuFactory.GetInstanceForDynamicMember(System.String,System.Object[])">
            <summary>
            Gets the instance for a dynamic member. Override for type constrcution behavoir changes based on property name.
            </summary>
            <param name="memberName">Name of the member.</param>
            <param name="args">The args.</param>
            <returns></returns>
        </member>
        <member name="T:ImpromptuInterface.Dynamic.ImpromptuSingleInstancesFactory">
            <summary>
            Base Class for making a singleton fluent factory using an Impromptu Interface return type.
            </summary>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.ImpromptuSingleInstancesFactory.Create``1">
            <summary>
            Creates this instance with Interface;
            </summary>
            <typeparam name="T"></typeparam>
            <returns></returns>
        </member>
        <member name="F:ImpromptuInterface.Dynamic.ImpromptuSingleInstancesFactory._hashFactoryTypes">
            <summary>
            Store Singletons
            </summary>
        </member>
        <member name="F:ImpromptuInterface.Dynamic.ImpromptuSingleInstancesFactory._lockTable">
            <summary>
            Lock for accessing singletons
            </summary>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.ImpromptuSingleInstancesFactory.GetInstanceForDynamicMember(System.String,System.Object[])">
            <summary>
            Gets the instance for a dynamic member. Override for type constrcution behavoir changes based on property name.
            </summary>
            <param name="memberName">Name of the member.</param>
            <param name="args"></param>
            <returns></returns>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.ImpromptuForwarderAddRemove.op_Addition(ImpromptuInterface.Dynamic.ImpromptuForwarderAddRemove,System.Object)">
            <summary>
            Implements the operator +.
            </summary>
            <param name="left">The left.</param>
            <param name="right">The right.</param>
            <returns>The result of the operator.</returns>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.ImpromptuForwarderAddRemove.op_Subtraction(ImpromptuInterface.Dynamic.ImpromptuForwarderAddRemove,System.Object)">
            <summary>
            Implements the operator -.
            </summary>
            <param name="left">The left.</param>
            <param name="right">The right.</param>
            <returns>The result of the operator.</returns>
        </member>
        <member name="P:ImpromptuInterface.Dynamic.ImpromptuForwarderAddRemove.Delegate">
            <summary>
            Gets or sets the delegate.
            </summary>
            <value>The delegate.</value>
        </member>
        <member name="P:ImpromptuInterface.Dynamic.ImpromptuForwarderAddRemove.IsAdding">
            <summary>
            Gets or sets a value indicating whether this instance is adding.
            </summary>
            <value><c>true</c> if this instance is adding; otherwise, <c>false</c>.</value>
        </member>
        <member name="T:ImpromptuInterface.Dynamic.ImpromptuGet">
            <summary>
            Dynamic Proxy that exposes any properties of objects, and can massage results based on interface
            </summary>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.ImpromptuGet.#ctor(System.Object)">
            <summary>
            Initializes a new instance of the <see cref="T:ImpromptuInterface.Dynamic.ImpromptuGet"/> class.
            </summary>
            <param name="target">The target.</param>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.ImpromptuGet.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
            <summary>
            Initializes a new instance of the <see cref="T:ImpromptuInterface.Dynamic.ImpromptuGet"/> class.
            </summary>
            <param name="info">The info.</param>
            <param name="context">The context.</param>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.ImpromptuGet.Create``1(System.Object)">
            <summary>
            Creates the proxy over the specified target.
            </summary>
            <typeparam name="T">Interface</typeparam>
            <param name="target">The target.</param>
            <returns></returns>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.ImpromptuGet.Create(System.Object)">
            <summary>
            Creates the proxy over the specified target.
            </summary>
            <param name="target">The target.</param>
            <returns></returns>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.ImpromptuGet.TryGetMember(System.Dynamic.GetMemberBinder,System.Object@)">
            <summary>
            Provides the implementation for operations that get member values. Classes derived from the <see cref="T:System.Dynamic.DynamicObject"/> class can override this method to specify dynamic behavior for operations such as getting a value for a property.
            </summary>
            <param name="binder">Provides information about the object that called the dynamic operation. The binder.Name property provides the name of the member on which the dynamic operation is performed. For example, for the Console.WriteLine(sampleObject.SampleProperty) statement, where sampleObject is an instance of the class derived from the <see cref="T:System.Dynamic.DynamicObject"/> class, binder.Name returns "SampleProperty". The binder.IgnoreCase property specifies whether the member name is case-sensitive.</param>
            <param name="result">The result of the get operation. For example, if the method is called for a property, you can assign the property value to <paramref name="result"/>.</param>
            <returns>
            true if the operation is successful; otherwise, false. If this method returns false, the run-time binder of the language determines the behavior. (In most cases, a run-time exception is thrown.)
            </returns>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.ImpromptuGet.TryInvokeMember(System.Dynamic.InvokeMemberBinder,System.Object[],System.Object@)">
            <summary>
            Provides the implementation for operations that invoke a member. Classes derived from the <see cref="T:System.Dynamic.DynamicObject"/> class can override this method to specify dynamic behavior for operations such as calling a method.
            </summary>
            <param name="binder">Provides information about the dynamic operation. The binder.Name property provides the name of the member on which the dynamic operation is performed. For example, for the statement sampleObject.SampleMethod(100), where sampleObject is an instance of the class derived from the <see cref="T:System.Dynamic.DynamicObject"/> class, binder.Name returns "SampleMethod". The binder.IgnoreCase property specifies whether the member name is case-sensitive.</param>
            <param name="args">The arguments that are passed to the object member during the invoke operation. For example, for the statement sampleObject.SampleMethod(100), where sampleObject is derived from the <see cref="T:System.Dynamic.DynamicObject"/> class, <paramref name="args"/> is equal to 100.</param>
            <param name="result">The result of the member invocation.</param>
            <returns>
            true if the operation is successful; otherwise, false. If this method returns false, the run-time binder of the language determines the behavior. (In most cases, a language-specific run-time exception is thrown.)
            </returns>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.ImpromptuGet.TryGetIndex(System.Dynamic.GetIndexBinder,System.Object[],System.Object@)">
            <summary>
            Tries the index of the get.
            </summary>
            <param name="binder">The binder.</param>
            <param name="indexes">The indexes.</param>
            <param name="result">The result.</param>
            <returns></returns>
        </member>
        <member name="T:ImpromptuInterface.Dynamic.ImpromptuLateLibraryType">
            <summary>
            Late bind types from libraries not not at compile type
            </summary>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.ImpromptuLateLibraryType.#ctor(System.Type)">
            <summary>
            Initializes a new instance of the <see cref="T:ImpromptuInterface.Dynamic.ImpromptuLateLibraryType"/> class.
            </summary>
            <param name="type">The type.</param>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.ImpromptuLateLibraryType.#ctor(System.String)">
            <summary>
            Initializes a new instance of the <see cref="T:ImpromptuInterface.Dynamic.ImpromptuLateLibraryType"/> class.
            </summary>
            <param name="typeName">Qualified Name of the type.</param>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.ImpromptuLateLibraryType.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
            <summary>
            Initializes a new instance of the <see cref="T:ImpromptuInterface.Dynamic.ImpromptuForwarder"/> class.
            </summary>
            <param name="info">The info.</param>
            <param name="context">The context.</param>
        </member>
        <member name="P:ImpromptuInterface.Dynamic.ImpromptuLateLibraryType.new">
            <summary>
            Returns a late bound constructor
            </summary>
            <value>The late bound constructor</value>
        </member>
        <member name="P:ImpromptuInterface.Dynamic.ImpromptuLateLibraryType.IsAvailable">
            <summary>
            Gets a value indicating whether this Type is available at runtime.
            </summary>
            <value>
            	<c>true</c> if this instance is available; otherwise, <c>false</c>.
            </value>
        </member>
        <member name="T:ImpromptuInterface.Dynamic.ImpromptuLateLibraryType.ConstructorForward">
            <summary>
            Forward argument to constructor including named arguments
            </summary>
        </member>
        <member name="T:ImpromptuInterface.Dynamic.ImpromptuLazy">
            <summary>
            Abstract base for the Generic class <see cref="T:ImpromptuInterface.Dynamic.ImpromptuLazy`1"/> with <see cref="M:ImpromptuInterface.Dynamic.ImpromptuLazy.Create``1(System.Func{``0})"/> fatory methods
            </summary>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.ImpromptuLazy.Create``1(System.Func{``0})">
            <summary>
            Creates ImpromptuLazy based on the specified valuefactory.
            </summary>
            <typeparam name="T"></typeparam>
            <param name="valuefactory">The valuefactory.</param>
            <returns></returns>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.ImpromptuLazy.Create``1(System.Lazy{``0})">
            <summary>
            Creates ImpromptuLazy based on the specified target.
            </summary>
            <typeparam name="T"></typeparam>
            <param name="target">The target.</param>
            <returns></returns>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.ImpromptuLazy.#ctor(System.Object)">
            <summary>
            Initializes a new instance of the <see cref="T:ImpromptuInterface.Dynamic.ImpromptuLazy"/> class.
            </summary>
            <param name="target">The target.</param>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.ImpromptuLazy.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
            <summary>
            Initializes a new instance of the <see cref="T:ImpromptuInterface.Dynamic.ImpromptuLazy"/> class.
            </summary>
            <param name="info">The info.</param>
            <param name="context">The context.</param>
        </member>
        <member name="T:ImpromptuInterface.Dynamic.ImpromptuLazy`1">
            <summary>
            Wraps a Lazy Type evalutaes on first method call
            </summary>
            <typeparam name="T"></typeparam>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.ImpromptuLazy`1.#ctor(System.Lazy{`0})">
            <summary>
            Initializes a new instance of the <see cref="T:ImpromptuInterface.Dynamic.ImpromptuLazy`1"/> class.
            </summary>
            <param name="target">The target.</param>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.ImpromptuLazy`1.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
            <summary>
            Initializes a new instance of the <see cref="T:ImpromptuInterface.Dynamic.ImpromptuForwarder"/> class.
            </summary>
            <param name="info">The info.</param>
            <param name="context">The context.</param>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.ImpromptuLazy`1.#ctor(System.Func{`0})">
            <summary>
            Initializes a new instance of the <see cref="T:ImpromptuInterface.Dynamic.ImpromptuLazy`1"/> class.
            </summary>
            <param name="valueFactory">The value factory.</param>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.ImpromptuLazy`1.GetDynamicMemberNames">
            <summary>
            Returns the enumeration of all dynamic member names.
            </summary>
            <returns>
            A sequence that contains dynamic member names.
            </returns>
        </member>
        <member name="T:ImpromptuInterface.Dynamic.ImpromptuList">
            <summary>
            Expando-Type List for dynamic objects
            </summary>
        </member>
        <member name="F:ImpromptuInterface.Dynamic.ImpromptuList._list">
            <summary>
            Wrapped list
            </summary>
        </member>
        <member name="F:ImpromptuInterface.Dynamic.ImpromptuList.ListLock">
            <summary>
            Initializes a new instance of the <see cref="T:ImpromptuInterface.Dynamic.ImpromptuDictionary"/> class.
            </summary>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.ImpromptuList.#ctor(System.Collections.Generic.IEnumerable{System.Object},System.Collections.Generic.IEnumerable{System.Collections.Generic.KeyValuePair{System.String,System.Object}})">
            <summary>
            Initializes a new instance of the <see cref="T:ImpromptuInterface.Dynamic.ImpromptuList"/> class.
            </summary>
            <param name="contents">The contents.</param>
            <param name="members">The members.</param>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.ImpromptuList.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
            <summary>
            Initializes a new instance of the <see cref="T:ImpromptuInterface.Dynamic.ImpromptuList"/> class.
            </summary>
            <param name="info">The info.</param>
            <param name="context">The context.</param>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.ImpromptuList.GetEnumerator">
            <summary>
            Gets the enumerator.
            </summary>
            <returns></returns>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.ImpromptuList.Add(System.Object)">
            <summary>
            Adds the specified item.
            </summary>
            <param name="item">The item.</param>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.ImpromptuList.Clear">
            <summary>
            Clears this instance.
            </summary>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.ImpromptuList.Contains(System.Object)">
            <summary>
            Determines whether [contains] [the specified item].
            </summary>
            <param name="item">The item.</param>
            <returns>
            	<c>true</c> if [contains] [the specified item]; otherwise, <c>false</c>.
            </returns>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.ImpromptuList.CopyTo(System.Object[],System.Int32)">
            <summary>
            Copies to.
            </summary>
            <param name="array">The array.</param>
            <param name="arrayIndex">Index of the array.</param>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.ImpromptuList.IndexOf(System.Object)">
            <summary>
            Indexes the of.
            </summary>
            <param name="item">The item.</param>
            <returns></returns>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.ImpromptuList.Equals(ImpromptuInterface.Dynamic.ImpromptuList)">
            <summary>
            Equalses the specified other.
            </summary>
            <param name="other">The other.</param>
            <returns></returns>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.ImpromptuList.GetRepresentedItem">
            <summary>
            Gets the represented item. USED fOR GetItemProperties
            </summary>
            <returns></returns>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.ImpromptuList.GetListName(System.ComponentModel.PropertyDescriptor[])">
            <summary>
            Returns the name of the list.
            </summary>
            <param name="listAccessors">An array of <see cref="T:System.ComponentModel.PropertyDescriptor"/> objects, for which the list name is returned. This can be null.</param>
            <returns>The name of the list.</returns>
        </member>
        <member name="P:ImpromptuInterface.Dynamic.ImpromptuList.Count">
            <summary>
            Gets the count.
            </summary>
            <value>The count.</value>
        </member>
        <member name="E:ImpromptuInterface.Dynamic.ImpromptuList.CollectionChanged">
            <summary>
            Occurs when the collection changes.
            </summary>
        </member>
        <member name="P:ImpromptuInterface.Dynamic.ImpromptuList.OverrideGettingItemMethodNames">
            <summary>
            Gets or sets the override getting item method names. USED for GetItemProperties
            </summary>
            <value>The override getting item method names.</value>
        </member>
        <member name="T:ImpromptuInterface.Dynamic.ImpromptuPropertyDescriptor">
            <summary>
            Property Descriptor for Dynamic Objects
            </summary>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.ImpromptuPropertyDescriptor.#ctor(System.String)">
            <summary>
            Initializes a new instance of the <see cref="T:ImpromptuInterface.Dynamic.ImpromptuPropertyDescriptor"/> class.
            </summary>
            <param name="name">The name.</param>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.ImpromptuPropertyDescriptor.CanResetValue(System.Object)">
            <summary>
            When overridden in a derived class, returns whether resetting an object changes its value.
            </summary>
            <param name="component">The component to test for reset capability.</param>
            <returns>
            true if resetting the component changes its value; otherwise, false.
            </returns>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.ImpromptuPropertyDescriptor.GetValue(System.Object)">
            <summary>
            When overridden in a derived class, gets the current value of the property on a component.
            </summary>
            <param name="component">The component with the property for which to retrieve the value.</param>
            <returns>
            The value of a property for a given component.
            </returns>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.ImpromptuPropertyDescriptor.ResetValue(System.Object)">
            <summary>
            When overridden in a derived class, resets the value for this property of the component to the default value.
            </summary>
            <param name="component">The component with the property value that is to be reset to the default value.</param>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.ImpromptuPropertyDescriptor.SetValue(System.Object,System.Object)">
            <summary>
            When overridden in a derived class, sets the value of the component to a different value.
            </summary>
            <param name="component">The component with the property value that is to be set.</param>
            <param name="value">The new value.</param>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.ImpromptuPropertyDescriptor.ShouldSerializeValue(System.Object)">
            <summary>
            When overridden in a derived class, determines a value indicating whether the value of this property needs to be persisted.
            </summary>
            <param name="component">The component with the property to be examined for persistence.</param>
            <returns>
            true if the property should be persisted; otherwise, false.
            </returns>
        </member>
        <member name="P:ImpromptuInterface.Dynamic.ImpromptuPropertyDescriptor.ComponentType">
            <summary>
            When overridden in a derived class, gets the type of the component this property is bound to.
            </summary>
            <value></value>
            <returns>A <see cref="T:System.Type"/> that represents the type of component this property is bound to. When the <see cref="M:System.ComponentModel.PropertyDescriptor.GetValue(System.Object)"/> or <see cref="M:System.ComponentModel.PropertyDescriptor.SetValue(System.Object,System.Object)"/> methods are invoked, the object specified might be an instance of this type.</returns>
        </member>
        <member name="P:ImpromptuInterface.Dynamic.ImpromptuPropertyDescriptor.IsReadOnly">
            <summary>
            When overridden in a derived class, gets a value indicating whether this property is read-only.
            </summary>
            <value></value>
            <returns>true if the property is read-only; otherwise, false.</returns>
        </member>
        <member name="P:ImpromptuInterface.Dynamic.ImpromptuPropertyDescriptor.PropertyType">
            <summary>
            When overridden in a derived class, gets the type of the property.
            </summary>
            <value></value>
            <returns>A <see cref="T:System.Type"/> that represents the type of the property.</returns>
        </member>
        <member name="T:ImpromptuInterface.Dynamic.ImpromptuRecorder">
            <summary>
            Proxy that Records Dynamic Invocations on an object
            </summary>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.ImpromptuRecorder.#ctor">
            <summary>
            Initializes a new instance of the <see cref="T:ImpromptuInterface.Dynamic.ImpromptuRecorder"/> class.
            </summary>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.ImpromptuRecorder.#ctor(System.Object)">
            <summary>
            Initializes a new instance of the <see cref="T:ImpromptuInterface.Dynamic.ImpromptuRecorder"/> class.
            </summary>
            <param name="target">The target.</param>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.ImpromptuRecorder.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
            <summary>
            Initializes a new instance of the <see cref="T:ImpromptuInterface.Dynamic.ImpromptuRecorder"/> class.
            </summary>
            <param name="info">The info.</param>
            <param name="context">The context.</param>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.ImpromptuRecorder.GetObjectData(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
            <summary>
            Gets the object data.
            </summary>
            <param name="info">The info.</param>
            <param name="context">The context.</param>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.ImpromptuRecorder.ReplayOn``1(``0)">
            <summary>
            Replays the recording on target.
            </summary>
            <param name="target">The target.</param>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.ImpromptuRecorder.TryInvokeMember(System.Dynamic.InvokeMemberBinder,System.Object[],System.Object@)">
            <summary>
            Tries the invoke member.
            </summary>
            <param name="binder">The binder.</param>
            <param name="args">The args.</param>
            <param name="result">The result.</param>
            <returns></returns>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.ImpromptuRecorder.TryGetIndex(System.Dynamic.GetIndexBinder,System.Object[],System.Object@)">
            <summary>
            Tries the index of the get.
            </summary>
            <param name="binder">The binder.</param>
            <param name="indexes">The indexes.</param>
            <param name="result">The result.</param>
            <returns></returns>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.ImpromptuRecorder.TrySetIndex(System.Dynamic.SetIndexBinder,System.Object[],System.Object)">
            <summary>
            Tries the index of the set.
            </summary>
            <param name="binder">The binder.</param>
            <param name="indexes">The indexes.</param>
            <param name="value">The value.</param>
            <returns></returns>
        </member>
        <member name="P:ImpromptuInterface.Dynamic.ImpromptuRecorder.Recording">
            <summary>
            Gets or sets the recording.
            </summary>
            <value>The recording.</value>
        </member>
        <member name="T:ImpromptuInterface.Dynamic.Return`1">
            <summary>
            Fluent Class for writing inline lambdass
            </summary>
            <typeparam name="TR">The type of the R.</typeparam>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.Return`1.Arguments(System.Func{`0})">
            <summary>
            Arguments
            </summary>
            <param name="del">The lambda.</param>
            <returns>The lambda.</returns>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.Return`1.ThisAndArguments(ImpromptuInterface.Dynamic.ThisFunc{`0})">
            <summary>
            This and arguments.
            </summary>
            <param name="del">The del.</param>
            <returns></returns>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.Return`1.Arguments``1(System.Func{``0,`0})">
            <summary>
            Arguments 
            </summary>
            <typeparam name="T1">The type of the Argument 1.</typeparam>
            <param name="del">The lambdas.</param>
            <returns></returns>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.Return`1.ThisAndArguments``1(ImpromptuInterface.Dynamic.ThisFunc{`0,``0})">
            <summary>
            this and Arguments.
            </summary>
            <typeparam name="T1">The type of the Argument 1.</typeparam>
            <param name="del">The del.</param>
            <returns></returns>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.Return`1.Arguments``2(System.Func{``0,``1,`0})">
            <summary>
            Arguments 
            </summary>
            <typeparam name="T1">The type of the Argument 1.</typeparam>
            <typeparam name="T2">The type of the Argument 2.</typeparam>
            <param name="del">The lambdas.</param>
            <returns></returns>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.Return`1.ThisAndArguments``2(ImpromptuInterface.Dynamic.ThisFunc{`0,``0,``1})">
            <summary>
            this and Arguments.
            </summary>
            <typeparam name="T1">The type of the Argument 1.</typeparam>
            <typeparam name="T2">The type of the Argument 2.</typeparam>
            <param name="del">The del.</param>
            <returns></returns>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.Return`1.Arguments``3(System.Func{``0,``1,``2,`0})">
            <summary>
            Arguments 
            </summary>
            <typeparam name="T1">The type of the Argument 1.</typeparam>
            <typeparam name="T2">The type of the Argument 2.</typeparam>
            <typeparam name="T3">The type of the Argument 3.</typeparam>
            <param name="del">The lambdas.</param>
            <returns></returns>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.Return`1.ThisAndArguments``3(ImpromptuInterface.Dynamic.ThisFunc{`0,``0,``1,``2})">
            <summary>
            this and Arguments.
            </summary>
            <typeparam name="T1">The type of the Argument 1.</typeparam>
            <typeparam name="T2">The type of the Argument 2.</typeparam>
            <typeparam name="T3">The type of the Argument 3.</typeparam>
            <param name="del">The del.</param>
            <returns></returns>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.Return`1.Arguments``4(System.Func{``0,``1,``2,``3,`0})">
            <summary>
            Arguments 
            </summary>
            <typeparam name="T1">The type of the Argument 1.</typeparam>
            <typeparam name="T2">The type of the Argument 2.</typeparam>
            <typeparam name="T3">The type of the Argument 3.</typeparam>
            <typeparam name="T4">The type of the Argument 4.</typeparam>
            <param name="del">The lambdas.</param>
            <returns></returns>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.Return`1.ThisAndArguments``4(ImpromptuInterface.Dynamic.ThisFunc{`0,``0,``1,``2,``3})">
            <summary>
            this and Arguments.
            </summary>
            <typeparam name="T1">The type of the Argument 1.</typeparam>
            <typeparam name="T2">The type of the Argument 2.</typeparam>
            <typeparam name="T3">The type of the Argument 3.</typeparam>
            <typeparam name="T4">The type of the Argument 4.</typeparam>
            <param name="del">The del.</param>
            <returns></returns>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.Return`1.Arguments``5(System.Func{``0,``1,``2,``3,``4,`0})">
            <summary>
            Arguments 
            </summary>
            <typeparam name="T1">The type of the Argument 1.</typeparam>
            <typeparam name="T2">The type of the Argument 2.</typeparam>
            <typeparam name="T3">The type of the Argument 3.</typeparam>
            <typeparam name="T4">The type of the Argument 4.</typeparam>
            <typeparam name="T5">The type of the Argument 5.</typeparam>
            <param name="del">The lambdas.</param>
            <returns></returns>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.Return`1.ThisAndArguments``5(ImpromptuInterface.Dynamic.ThisFunc{`0,``0,``1,``2,``3,``4})">
            <summary>
            this and Arguments.
            </summary>
            <typeparam name="T1">The type of the Argument 1.</typeparam>
            <typeparam name="T2">The type of the Argument 2.</typeparam>
            <typeparam name="T3">The type of the Argument 3.</typeparam>
            <typeparam name="T4">The type of the Argument 4.</typeparam>
            <typeparam name="T5">The type of the Argument 5.</typeparam>
            <param name="del">The del.</param>
            <returns></returns>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.Return`1.Arguments``6(System.Func{``0,``1,``2,``3,``4,``5,`0})">
            <summary>
            Arguments 
            </summary>
            <typeparam name="T1">The type of the Argument 1.</typeparam>
            <typeparam name="T2">The type of the Argument 2.</typeparam>
            <typeparam name="T3">The type of the Argument 3.</typeparam>
            <typeparam name="T4">The type of the Argument 4.</typeparam>
            <typeparam name="T5">The type of the Argument 5.</typeparam>
            <typeparam name="T6">The type of the Argument 6.</typeparam>
            <param name="del">The lambdas.</param>
            <returns></returns>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.Return`1.ThisAndArguments``6(ImpromptuInterface.Dynamic.ThisFunc{`0,``0,``1,``2,``3,``4,``5})">
            <summary>
            this and Arguments.
            </summary>
            <typeparam name="T1">The type of the Argument 1.</typeparam>
            <typeparam name="T2">The type of the Argument 2.</typeparam>
            <typeparam name="T3">The type of the Argument 3.</typeparam>
            <typeparam name="T4">The type of the Argument 4.</typeparam>
            <typeparam name="T5">The type of the Argument 5.</typeparam>
            <typeparam name="T6">The type of the Argument 6.</typeparam>
            <param name="del">The del.</param>
            <returns></returns>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.Return`1.Arguments``7(System.Func{``0,``1,``2,``3,``4,``5,``6,`0})">
            <summary>
            Arguments 
            </summary>
            <typeparam name="T1">The type of the Argument 1.</typeparam>
            <typeparam name="T2">The type of the Argument 2.</typeparam>
            <typeparam name="T3">The type of the Argument 3.</typeparam>
            <typeparam name="T4">The type of the Argument 4.</typeparam>
            <typeparam name="T5">The type of the Argument 5.</typeparam>
            <typeparam name="T6">The type of the Argument 6.</typeparam>
            <typeparam name="T7">The type of the Argument 7.</typeparam>
            <param name="del">The lambdas.</param>
            <returns></returns>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.Return`1.ThisAndArguments``7(ImpromptuInterface.Dynamic.ThisFunc{`0,``0,``1,``2,``3,``4,``5,``6})">
            <summary>
            this and Arguments.
            </summary>
            <typeparam name="T1">The type of the Argument 1.</typeparam>
            <typeparam name="T2">The type of the Argument 2.</typeparam>
            <typeparam name="T3">The type of the Argument 3.</typeparam>
            <typeparam name="T4">The type of the Argument 4.</typeparam>
            <typeparam name="T5">The type of the Argument 5.</typeparam>
            <typeparam name="T6">The type of the Argument 6.</typeparam>
            <typeparam name="T7">The type of the Argument 7.</typeparam>
            <param name="del">The del.</param>
            <returns></returns>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.Return`1.Arguments``8(System.Func{``0,``1,``2,``3,``4,``5,``6,``7,`0})">
            <summary>
            Arguments 
            </summary>
            <typeparam name="T1">The type of the Argument 1.</typeparam>
            <typeparam name="T2">The type of the Argument 2.</typeparam>
            <typeparam name="T3">The type of the Argument 3.</typeparam>
            <typeparam name="T4">The type of the Argument 4.</typeparam>
            <typeparam name="T5">The type of the Argument 5.</typeparam>
            <typeparam name="T6">The type of the Argument 6.</typeparam>
            <typeparam name="T7">The type of the Argument 7.</typeparam>
            <typeparam name="T8">The type of the Argument 8.</typeparam>
            <param name="del">The lambdas.</param>
            <returns></returns>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.Return`1.ThisAndArguments``8(ImpromptuInterface.Dynamic.ThisFunc{`0,``0,``1,``2,``3,``4,``5,``6,``7})">
            <summary>
            this and Arguments.
            </summary>
            <typeparam name="T1">The type of the Argument 1.</typeparam>
            <typeparam name="T2">The type of the Argument 2.</typeparam>
            <typeparam name="T3">The type of the Argument 3.</typeparam>
            <typeparam name="T4">The type of the Argument 4.</typeparam>
            <typeparam name="T5">The type of the Argument 5.</typeparam>
            <typeparam name="T6">The type of the Argument 6.</typeparam>
            <typeparam name="T7">The type of the Argument 7.</typeparam>
            <typeparam name="T8">The type of the Argument 8.</typeparam>
            <param name="del">The del.</param>
            <returns></returns>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.Return`1.Arguments``9(System.Func{``0,``1,``2,``3,``4,``5,``6,``7,``8,`0})">
            <summary>
            Arguments 
            </summary>
            <typeparam name="T1">The type of the Argument 1.</typeparam>
            <typeparam name="T2">The type of the Argument 2.</typeparam>
            <typeparam name="T3">The type of the Argument 3.</typeparam>
            <typeparam name="T4">The type of the Argument 4.</typeparam>
            <typeparam name="T5">The type of the Argument 5.</typeparam>
            <typeparam name="T6">The type of the Argument 6.</typeparam>
            <typeparam name="T7">The type of the Argument 7.</typeparam>
            <typeparam name="T8">The type of the Argument 8.</typeparam>
            <typeparam name="T9">The type of the Argument 9.</typeparam>
            <param name="del">The lambdas.</param>
            <returns></returns>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.Return`1.ThisAndArguments``9(ImpromptuInterface.Dynamic.ThisFunc{`0,``0,``1,``2,``3,``4,``5,``6,``7,``8})">
            <summary>
            this and Arguments.
            </summary>
            <typeparam name="T1">The type of the Argument 1.</typeparam>
            <typeparam name="T2">The type of the Argument 2.</typeparam>
            <typeparam name="T3">The type of the Argument 3.</typeparam>
            <typeparam name="T4">The type of the Argument 4.</typeparam>
            <typeparam name="T5">The type of the Argument 5.</typeparam>
            <typeparam name="T6">The type of the Argument 6.</typeparam>
            <typeparam name="T7">The type of the Argument 7.</typeparam>
            <typeparam name="T8">The type of the Argument 8.</typeparam>
            <typeparam name="T9">The type of the Argument 9.</typeparam>
            <param name="del">The del.</param>
            <returns></returns>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.Return`1.Arguments``10(System.Func{``0,``1,``2,``3,``4,``5,``6,``7,``8,``9,`0})">
            <summary>
            Arguments 
            </summary>
            <typeparam name="T1">The type of the Argument 1.</typeparam>
            <typeparam name="T2">The type of the Argument 2.</typeparam>
            <typeparam name="T3">The type of the Argument 3.</typeparam>
            <typeparam name="T4">The type of the Argument 4.</typeparam>
            <typeparam name="T5">The type of the Argument 5.</typeparam>
            <typeparam name="T6">The type of the Argument 6.</typeparam>
            <typeparam name="T7">The type of the Argument 7.</typeparam>
            <typeparam name="T8">The type of the Argument 8.</typeparam>
            <typeparam name="T9">The type of the Argument 9.</typeparam>
            <typeparam name="T10">The type of the Argument 10.</typeparam>
            <param name="del">The lambdas.</param>
            <returns></returns>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.Return`1.ThisAndArguments``10(ImpromptuInterface.Dynamic.ThisFunc{`0,``0,``1,``2,``3,``4,``5,``6,``7,``8,``9})">
            <summary>
            this and Arguments.
            </summary>
            <typeparam name="T1">The type of the Argument 1.</typeparam>
            <typeparam name="T2">The type of the Argument 2.</typeparam>
            <typeparam name="T3">The type of the Argument 3.</typeparam>
            <typeparam name="T4">The type of the Argument 4.</typeparam>
            <typeparam name="T5">The type of the Argument 5.</typeparam>
            <typeparam name="T6">The type of the Argument 6.</typeparam>
            <typeparam name="T7">The type of the Argument 7.</typeparam>
            <typeparam name="T8">The type of the Argument 8.</typeparam>
            <typeparam name="T9">The type of the Argument 9.</typeparam>
            <typeparam name="T10">The type of the Argument 10.</typeparam>
            <param name="del">The del.</param>
            <returns></returns>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.Return`1.Arguments``11(System.Func{``0,``1,``2,``3,``4,``5,``6,``7,``8,``9,``10,`0})">
            <summary>
            Arguments 
            </summary>
            <typeparam name="T1">The type of the Argument 1.</typeparam>
            <typeparam name="T2">The type of the Argument 2.</typeparam>
            <typeparam name="T3">The type of the Argument 3.</typeparam>
            <typeparam name="T4">The type of the Argument 4.</typeparam>
            <typeparam name="T5">The type of the Argument 5.</typeparam>
            <typeparam name="T6">The type of the Argument 6.</typeparam>
            <typeparam name="T7">The type of the Argument 7.</typeparam>
            <typeparam name="T8">The type of the Argument 8.</typeparam>
            <typeparam name="T9">The type of the Argument 9.</typeparam>
            <typeparam name="T10">The type of the Argument 10.</typeparam>
            <typeparam name="T11">The type of the Argument 11.</typeparam>
            <param name="del">The lambdas.</param>
            <returns></returns>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.Return`1.ThisAndArguments``11(ImpromptuInterface.Dynamic.ThisFunc{`0,``0,``1,``2,``3,``4,``5,``6,``7,``8,``9,``10})">
            <summary>
            this and Arguments.
            </summary>
            <typeparam name="T1">The type of the Argument 1.</typeparam>
            <typeparam name="T2">The type of the Argument 2.</typeparam>
            <typeparam name="T3">The type of the Argument 3.</typeparam>
            <typeparam name="T4">The type of the Argument 4.</typeparam>
            <typeparam name="T5">The type of the Argument 5.</typeparam>
            <typeparam name="T6">The type of the Argument 6.</typeparam>
            <typeparam name="T7">The type of the Argument 7.</typeparam>
            <typeparam name="T8">The type of the Argument 8.</typeparam>
            <typeparam name="T9">The type of the Argument 9.</typeparam>
            <typeparam name="T10">The type of the Argument 10.</typeparam>
            <typeparam name="T11">The type of the Argument 11.</typeparam>
            <param name="del">The del.</param>
            <returns></returns>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.Return`1.Arguments``12(System.Func{``0,``1,``2,``3,``4,``5,``6,``7,``8,``9,``10,``11,`0})">
            <summary>
            Arguments 
            </summary>
            <typeparam name="T1">The type of the Argument 1.</typeparam>
            <typeparam name="T2">The type of the Argument 2.</typeparam>
            <typeparam name="T3">The type of the Argument 3.</typeparam>
            <typeparam name="T4">The type of the Argument 4.</typeparam>
            <typeparam name="T5">The type of the Argument 5.</typeparam>
            <typeparam name="T6">The type of the Argument 6.</typeparam>
            <typeparam name="T7">The type of the Argument 7.</typeparam>
            <typeparam name="T8">The type of the Argument 8.</typeparam>
            <typeparam name="T9">The type of the Argument 9.</typeparam>
            <typeparam name="T10">The type of the Argument 10.</typeparam>
            <typeparam name="T11">The type of the Argument 11.</typeparam>
            <typeparam name="T12">The type of the Argument 12.</typeparam>
            <param name="del">The lambdas.</param>
            <returns></returns>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.Return`1.ThisAndArguments``12(ImpromptuInterface.Dynamic.ThisFunc{`0,``0,``1,``2,``3,``4,``5,``6,``7,``8,``9,``10,``11})">
            <summary>
            this and Arguments.
            </summary>
            <typeparam name="T1">The type of the Argument 1.</typeparam>
            <typeparam name="T2">The type of the Argument 2.</typeparam>
            <typeparam name="T3">The type of the Argument 3.</typeparam>
            <typeparam name="T4">The type of the Argument 4.</typeparam>
            <typeparam name="T5">The type of the Argument 5.</typeparam>
            <typeparam name="T6">The type of the Argument 6.</typeparam>
            <typeparam name="T7">The type of the Argument 7.</typeparam>
            <typeparam name="T8">The type of the Argument 8.</typeparam>
            <typeparam name="T9">The type of the Argument 9.</typeparam>
            <typeparam name="T10">The type of the Argument 10.</typeparam>
            <typeparam name="T11">The type of the Argument 11.</typeparam>
            <typeparam name="T12">The type of the Argument 12.</typeparam>
            <param name="del">The del.</param>
            <returns></returns>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.Return`1.Arguments``13(System.Func{``0,``1,``2,``3,``4,``5,``6,``7,``8,``9,``10,``11,``12,`0})">
            <summary>
            Arguments 
            </summary>
            <typeparam name="T1">The type of the Argument 1.</typeparam>
            <typeparam name="T2">The type of the Argument 2.</typeparam>
            <typeparam name="T3">The type of the Argument 3.</typeparam>
            <typeparam name="T4">The type of the Argument 4.</typeparam>
            <typeparam name="T5">The type of the Argument 5.</typeparam>
            <typeparam name="T6">The type of the Argument 6.</typeparam>
            <typeparam name="T7">The type of the Argument 7.</typeparam>
            <typeparam name="T8">The type of the Argument 8.</typeparam>
            <typeparam name="T9">The type of the Argument 9.</typeparam>
            <typeparam name="T10">The type of the Argument 10.</typeparam>
            <typeparam name="T11">The type of the Argument 11.</typeparam>
            <typeparam name="T12">The type of the Argument 12.</typeparam>
            <typeparam name="T13">The type of the Argument 13.</typeparam>
            <param name="del">The lambdas.</param>
            <returns></returns>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.Return`1.ThisAndArguments``13(ImpromptuInterface.Dynamic.ThisFunc{`0,``0,``1,``2,``3,``4,``5,``6,``7,``8,``9,``10,``11,``12})">
            <summary>
            this and Arguments.
            </summary>
            <typeparam name="T1">The type of the Argument 1.</typeparam>
            <typeparam name="T2">The type of the Argument 2.</typeparam>
            <typeparam name="T3">The type of the Argument 3.</typeparam>
            <typeparam name="T4">The type of the Argument 4.</typeparam>
            <typeparam name="T5">The type of the Argument 5.</typeparam>
            <typeparam name="T6">The type of the Argument 6.</typeparam>
            <typeparam name="T7">The type of the Argument 7.</typeparam>
            <typeparam name="T8">The type of the Argument 8.</typeparam>
            <typeparam name="T9">The type of the Argument 9.</typeparam>
            <typeparam name="T10">The type of the Argument 10.</typeparam>
            <typeparam name="T11">The type of the Argument 11.</typeparam>
            <typeparam name="T12">The type of the Argument 12.</typeparam>
            <typeparam name="T13">The type of the Argument 13.</typeparam>
            <param name="del">The del.</param>
            <returns></returns>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.Return`1.Arguments``14(System.Func{``0,``1,``2,``3,``4,``5,``6,``7,``8,``9,``10,``11,``12,``13,`0})">
            <summary>
            Arguments 
            </summary>
            <typeparam name="T1">The type of the Argument 1.</typeparam>
            <typeparam name="T2">The type of the Argument 2.</typeparam>
            <typeparam name="T3">The type of the Argument 3.</typeparam>
            <typeparam name="T4">The type of the Argument 4.</typeparam>
            <typeparam name="T5">The type of the Argument 5.</typeparam>
            <typeparam name="T6">The type of the Argument 6.</typeparam>
            <typeparam name="T7">The type of the Argument 7.</typeparam>
            <typeparam name="T8">The type of the Argument 8.</typeparam>
            <typeparam name="T9">The type of the Argument 9.</typeparam>
            <typeparam name="T10">The type of the Argument 10.</typeparam>
            <typeparam name="T11">The type of the Argument 11.</typeparam>
            <typeparam name="T12">The type of the Argument 12.</typeparam>
            <typeparam name="T13">The type of the Argument 13.</typeparam>
            <typeparam name="T14">The type of the Argument 14.</typeparam>
            <param name="del">The lambdas.</param>
            <returns></returns>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.Return`1.ThisAndArguments``14(ImpromptuInterface.Dynamic.ThisFunc{`0,``0,``1,``2,``3,``4,``5,``6,``7,``8,``9,``10,``11,``12,``13})">
            <summary>
            this and Arguments.
            </summary>
            <typeparam name="T1">The type of the Argument 1.</typeparam>
            <typeparam name="T2">The type of the Argument 2.</typeparam>
            <typeparam name="T3">The type of the Argument 3.</typeparam>
            <typeparam name="T4">The type of the Argument 4.</typeparam>
            <typeparam name="T5">The type of the Argument 5.</typeparam>
            <typeparam name="T6">The type of the Argument 6.</typeparam>
            <typeparam name="T7">The type of the Argument 7.</typeparam>
            <typeparam name="T8">The type of the Argument 8.</typeparam>
            <typeparam name="T9">The type of the Argument 9.</typeparam>
            <typeparam name="T10">The type of the Argument 10.</typeparam>
            <typeparam name="T11">The type of the Argument 11.</typeparam>
            <typeparam name="T12">The type of the Argument 12.</typeparam>
            <typeparam name="T13">The type of the Argument 13.</typeparam>
            <typeparam name="T14">The type of the Argument 14.</typeparam>
            <param name="del">The del.</param>
            <returns></returns>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.Return`1.Arguments``15(System.Func{``0,``1,``2,``3,``4,``5,``6,``7,``8,``9,``10,``11,``12,``13,``14,`0})">
            <summary>
            Arguments 
            </summary>
            <typeparam name="T1">The type of the Argument 1.</typeparam>
            <typeparam name="T2">The type of the Argument 2.</typeparam>
            <typeparam name="T3">The type of the Argument 3.</typeparam>
            <typeparam name="T4">The type of the Argument 4.</typeparam>
            <typeparam name="T5">The type of the Argument 5.</typeparam>
            <typeparam name="T6">The type of the Argument 6.</typeparam>
            <typeparam name="T7">The type of the Argument 7.</typeparam>
            <typeparam name="T8">The type of the Argument 8.</typeparam>
            <typeparam name="T9">The type of the Argument 9.</typeparam>
            <typeparam name="T10">The type of the Argument 10.</typeparam>
            <typeparam name="T11">The type of the Argument 11.</typeparam>
            <typeparam name="T12">The type of the Argument 12.</typeparam>
            <typeparam name="T13">The type of the Argument 13.</typeparam>
            <typeparam name="T14">The type of the Argument 14.</typeparam>
            <typeparam name="T15">The type of the Argument 15.</typeparam>
            <param name="del">The lambdas.</param>
            <returns></returns>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.Return`1.ThisAndArguments``15(ImpromptuInterface.Dynamic.ThisFunc{`0,``0,``1,``2,``3,``4,``5,``6,``7,``8,``9,``10,``11,``12,``13,``14})">
            <summary>
            this and Arguments.
            </summary>
            <typeparam name="T1">The type of the Argument 1.</typeparam>
            <typeparam name="T2">The type of the Argument 2.</typeparam>
            <typeparam name="T3">The type of the Argument 3.</typeparam>
            <typeparam name="T4">The type of the Argument 4.</typeparam>
            <typeparam name="T5">The type of the Argument 5.</typeparam>
            <typeparam name="T6">The type of the Argument 6.</typeparam>
            <typeparam name="T7">The type of the Argument 7.</typeparam>
            <typeparam name="T8">The type of the Argument 8.</typeparam>
            <typeparam name="T9">The type of the Argument 9.</typeparam>
            <typeparam name="T10">The type of the Argument 10.</typeparam>
            <typeparam name="T11">The type of the Argument 11.</typeparam>
            <typeparam name="T12">The type of the Argument 12.</typeparam>
            <typeparam name="T13">The type of the Argument 13.</typeparam>
            <typeparam name="T14">The type of the Argument 14.</typeparam>
            <typeparam name="T15">The type of the Argument 15.</typeparam>
            <param name="del">The del.</param>
            <returns></returns>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.Return`1.Arguments``16(System.Func{``0,``1,``2,``3,``4,``5,``6,``7,``8,``9,``10,``11,``12,``13,``14,``15,`0})">
            <summary>
            Arguments 
            </summary>
            <typeparam name="T1">The type of the Argument 1.</typeparam>
            <typeparam name="T2">The type of the Argument 2.</typeparam>
            <typeparam name="T3">The type of the Argument 3.</typeparam>
            <typeparam name="T4">The type of the Argument 4.</typeparam>
            <typeparam name="T5">The type of the Argument 5.</typeparam>
            <typeparam name="T6">The type of the Argument 6.</typeparam>
            <typeparam name="T7">The type of the Argument 7.</typeparam>
            <typeparam name="T8">The type of the Argument 8.</typeparam>
            <typeparam name="T9">The type of the Argument 9.</typeparam>
            <typeparam name="T10">The type of the Argument 10.</typeparam>
            <typeparam name="T11">The type of the Argument 11.</typeparam>
            <typeparam name="T12">The type of the Argument 12.</typeparam>
            <typeparam name="T13">The type of the Argument 13.</typeparam>
            <typeparam name="T14">The type of the Argument 14.</typeparam>
            <typeparam name="T15">The type of the Argument 15.</typeparam>
            <typeparam name="T16">The type of the Argument 16.</typeparam>
            <param name="del">The lambdas.</param>
            <returns></returns>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.Return`1.ThisAndArguments``16(ImpromptuInterface.Dynamic.ThisFunc{`0,``0,``1,``2,``3,``4,``5,``6,``7,``8,``9,``10,``11,``12,``13,``14,``15})">
            <summary>
            this and Arguments.
            </summary>
            <typeparam name="T1">The type of the Argument 1.</typeparam>
            <typeparam name="T2">The type of the Argument 2.</typeparam>
            <typeparam name="T3">The type of the Argument 3.</typeparam>
            <typeparam name="T4">The type of the Argument 4.</typeparam>
            <typeparam name="T5">The type of the Argument 5.</typeparam>
            <typeparam name="T6">The type of the Argument 6.</typeparam>
            <typeparam name="T7">The type of the Argument 7.</typeparam>
            <typeparam name="T8">The type of the Argument 8.</typeparam>
            <typeparam name="T9">The type of the Argument 9.</typeparam>
            <typeparam name="T10">The type of the Argument 10.</typeparam>
            <typeparam name="T11">The type of the Argument 11.</typeparam>
            <typeparam name="T12">The type of the Argument 12.</typeparam>
            <typeparam name="T13">The type of the Argument 13.</typeparam>
            <typeparam name="T14">The type of the Argument 14.</typeparam>
            <typeparam name="T15">The type of the Argument 15.</typeparam>
            <typeparam name="T16">The type of the Argument 16.</typeparam>
            <param name="del">The del.</param>
            <returns></returns>
        </member>
        <member name="T:ImpromptuInterface.Dynamic.ReturnVoid">
            <summary>
            Fluent class for writing inline lambdas that return void
            </summary>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.ReturnVoid.Arguments(System.Action)">
            <summary>
            Arguments
            </summary>
            <param name="del">The lambda.</param>
            <returns>The lambda.</returns>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.ReturnVoid.ThisAndArguments(ImpromptuInterface.Dynamic.ThisAction)">
            <summary>
            This and arguments.
            </summary>
            <param name="del">The del.</param>
            <returns></returns>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.ReturnVoid.Arguments``1(System.Action{``0})">
            <summary>
            Arguments
            </summary>
            <typeparam name="T1">The type of the Argument 1.</typeparam>
            <param name="del">The lambda.</param>
            <returns>The lambda.</returns>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.ReturnVoid.ThisAndArguments``1(ImpromptuInterface.Dynamic.ThisAction{``0})">
            <summary>
            This and Arguments.
            </summary>
            <typeparam name="T1">The type of the Argument 1.</typeparam>
            <param name="del">The del.</param>
            <returns></returns>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.ReturnVoid.Arguments``2(System.Action{``0,``1})">
            <summary>
            Arguments
            </summary>
            <typeparam name="T1">The type of the Argument 1.</typeparam>
            <typeparam name="T2">The type of the Argument 2.</typeparam>
            <param name="del">The lambda.</param>
            <returns>The lambda.</returns>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.ReturnVoid.ThisAndArguments``2(ImpromptuInterface.Dynamic.ThisAction{``0,``1})">
            <summary>
            This and Arguments.
            </summary>
            <typeparam name="T1">The type of the Argument 1.</typeparam>
            <typeparam name="T2">The type of the Argument 2.</typeparam>
            <param name="del">The del.</param>
            <returns></returns>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.ReturnVoid.Arguments``3(System.Action{``0,``1,``2})">
            <summary>
            Arguments
            </summary>
            <typeparam name="T1">The type of the Argument 1.</typeparam>
            <typeparam name="T2">The type of the Argument 2.</typeparam>
            <typeparam name="T3">The type of the Argument 3.</typeparam>
            <param name="del">The lambda.</param>
            <returns>The lambda.</returns>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.ReturnVoid.ThisAndArguments``3(ImpromptuInterface.Dynamic.ThisAction{``0,``1,``2})">
            <summary>
            This and Arguments.
            </summary>
            <typeparam name="T1">The type of the Argument 1.</typeparam>
            <typeparam name="T2">The type of the Argument 2.</typeparam>
            <typeparam name="T3">The type of the Argument 3.</typeparam>
            <param name="del">The del.</param>
            <returns></returns>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.ReturnVoid.Arguments``4(System.Action{``0,``1,``2,``3})">
            <summary>
            Arguments
            </summary>
            <typeparam name="T1">The type of the Argument 1.</typeparam>
            <typeparam name="T2">The type of the Argument 2.</typeparam>
            <typeparam name="T3">The type of the Argument 3.</typeparam>
            <typeparam name="T4">The type of the Argument 4.</typeparam>
            <param name="del">The lambda.</param>
            <returns>The lambda.</returns>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.ReturnVoid.ThisAndArguments``4(ImpromptuInterface.Dynamic.ThisAction{``0,``1,``2,``3})">
            <summary>
            This and Arguments.
            </summary>
            <typeparam name="T1">The type of the Argument 1.</typeparam>
            <typeparam name="T2">The type of the Argument 2.</typeparam>
            <typeparam name="T3">The type of the Argument 3.</typeparam>
            <typeparam name="T4">The type of the Argument 4.</typeparam>
            <param name="del">The del.</param>
            <returns></returns>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.ReturnVoid.Arguments``5(System.Action{``0,``1,``2,``3,``4})">
            <summary>
            Arguments
            </summary>
            <typeparam name="T1">The type of the Argument 1.</typeparam>
            <typeparam name="T2">The type of the Argument 2.</typeparam>
            <typeparam name="T3">The type of the Argument 3.</typeparam>
            <typeparam name="T4">The type of the Argument 4.</typeparam>
            <typeparam name="T5">The type of the Argument 5.</typeparam>
            <param name="del">The lambda.</param>
            <returns>The lambda.</returns>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.ReturnVoid.ThisAndArguments``5(ImpromptuInterface.Dynamic.ThisAction{``0,``1,``2,``3,``4})">
            <summary>
            This and Arguments.
            </summary>
            <typeparam name="T1">The type of the Argument 1.</typeparam>
            <typeparam name="T2">The type of the Argument 2.</typeparam>
            <typeparam name="T3">The type of the Argument 3.</typeparam>
            <typeparam name="T4">The type of the Argument 4.</typeparam>
            <typeparam name="T5">The type of the Argument 5.</typeparam>
            <param name="del">The del.</param>
            <returns></returns>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.ReturnVoid.Arguments``6(System.Action{``0,``1,``2,``3,``4,``5})">
            <summary>
            Arguments
            </summary>
            <typeparam name="T1">The type of the Argument 1.</typeparam>
            <typeparam name="T2">The type of the Argument 2.</typeparam>
            <typeparam name="T3">The type of the Argument 3.</typeparam>
            <typeparam name="T4">The type of the Argument 4.</typeparam>
            <typeparam name="T5">The type of the Argument 5.</typeparam>
            <typeparam name="T6">The type of the Argument 6.</typeparam>
            <param name="del">The lambda.</param>
            <returns>The lambda.</returns>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.ReturnVoid.ThisAndArguments``6(ImpromptuInterface.Dynamic.ThisAction{``0,``1,``2,``3,``4,``5})">
            <summary>
            This and Arguments.
            </summary>
            <typeparam name="T1">The type of the Argument 1.</typeparam>
            <typeparam name="T2">The type of the Argument 2.</typeparam>
            <typeparam name="T3">The type of the Argument 3.</typeparam>
            <typeparam name="T4">The type of the Argument 4.</typeparam>
            <typeparam name="T5">The type of the Argument 5.</typeparam>
            <typeparam name="T6">The type of the Argument 6.</typeparam>
            <param name="del">The del.</param>
            <returns></returns>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.ReturnVoid.Arguments``7(System.Action{``0,``1,``2,``3,``4,``5,``6})">
            <summary>
            Arguments
            </summary>
            <typeparam name="T1">The type of the Argument 1.</typeparam>
            <typeparam name="T2">The type of the Argument 2.</typeparam>
            <typeparam name="T3">The type of the Argument 3.</typeparam>
            <typeparam name="T4">The type of the Argument 4.</typeparam>
            <typeparam name="T5">The type of the Argument 5.</typeparam>
            <typeparam name="T6">The type of the Argument 6.</typeparam>
            <typeparam name="T7">The type of the Argument 7.</typeparam>
            <param name="del">The lambda.</param>
            <returns>The lambda.</returns>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.ReturnVoid.ThisAndArguments``7(ImpromptuInterface.Dynamic.ThisAction{``0,``1,``2,``3,``4,``5,``6})">
            <summary>
            This and Arguments.
            </summary>
            <typeparam name="T1">The type of the Argument 1.</typeparam>
            <typeparam name="T2">The type of the Argument 2.</typeparam>
            <typeparam name="T3">The type of the Argument 3.</typeparam>
            <typeparam name="T4">The type of the Argument 4.</typeparam>
            <typeparam name="T5">The type of the Argument 5.</typeparam>
            <typeparam name="T6">The type of the Argument 6.</typeparam>
            <typeparam name="T7">The type of the Argument 7.</typeparam>
            <param name="del">The del.</param>
            <returns></returns>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.ReturnVoid.Arguments``8(System.Action{``0,``1,``2,``3,``4,``5,``6,``7})">
            <summary>
            Arguments
            </summary>
            <typeparam name="T1">The type of the Argument 1.</typeparam>
            <typeparam name="T2">The type of the Argument 2.</typeparam>
            <typeparam name="T3">The type of the Argument 3.</typeparam>
            <typeparam name="T4">The type of the Argument 4.</typeparam>
            <typeparam name="T5">The type of the Argument 5.</typeparam>
            <typeparam name="T6">The type of the Argument 6.</typeparam>
            <typeparam name="T7">The type of the Argument 7.</typeparam>
            <typeparam name="T8">The type of the Argument 8.</typeparam>
            <param name="del">The lambda.</param>
            <returns>The lambda.</returns>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.ReturnVoid.ThisAndArguments``8(ImpromptuInterface.Dynamic.ThisAction{``0,``1,``2,``3,``4,``5,``6,``7})">
            <summary>
            This and Arguments.
            </summary>
            <typeparam name="T1">The type of the Argument 1.</typeparam>
            <typeparam name="T2">The type of the Argument 2.</typeparam>
            <typeparam name="T3">The type of the Argument 3.</typeparam>
            <typeparam name="T4">The type of the Argument 4.</typeparam>
            <typeparam name="T5">The type of the Argument 5.</typeparam>
            <typeparam name="T6">The type of the Argument 6.</typeparam>
            <typeparam name="T7">The type of the Argument 7.</typeparam>
            <typeparam name="T8">The type of the Argument 8.</typeparam>
            <param name="del">The del.</param>
            <returns></returns>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.ReturnVoid.Arguments``9(System.Action{``0,``1,``2,``3,``4,``5,``6,``7,``8})">
            <summary>
            Arguments
            </summary>
            <typeparam name="T1">The type of the Argument 1.</typeparam>
            <typeparam name="T2">The type of the Argument 2.</typeparam>
            <typeparam name="T3">The type of the Argument 3.</typeparam>
            <typeparam name="T4">The type of the Argument 4.</typeparam>
            <typeparam name="T5">The type of the Argument 5.</typeparam>
            <typeparam name="T6">The type of the Argument 6.</typeparam>
            <typeparam name="T7">The type of the Argument 7.</typeparam>
            <typeparam name="T8">The type of the Argument 8.</typeparam>
            <typeparam name="T9">The type of the Argument 9.</typeparam>
            <param name="del">The lambda.</param>
            <returns>The lambda.</returns>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.ReturnVoid.ThisAndArguments``9(ImpromptuInterface.Dynamic.ThisAction{``0,``1,``2,``3,``4,``5,``6,``7,``8})">
            <summary>
            This and Arguments.
            </summary>
            <typeparam name="T1">The type of the Argument 1.</typeparam>
            <typeparam name="T2">The type of the Argument 2.</typeparam>
            <typeparam name="T3">The type of the Argument 3.</typeparam>
            <typeparam name="T4">The type of the Argument 4.</typeparam>
            <typeparam name="T5">The type of the Argument 5.</typeparam>
            <typeparam name="T6">The type of the Argument 6.</typeparam>
            <typeparam name="T7">The type of the Argument 7.</typeparam>
            <typeparam name="T8">The type of the Argument 8.</typeparam>
            <typeparam name="T9">The type of the Argument 9.</typeparam>
            <param name="del">The del.</param>
            <returns></returns>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.ReturnVoid.Arguments``10(System.Action{``0,``1,``2,``3,``4,``5,``6,``7,``8,``9})">
            <summary>
            Arguments
            </summary>
            <typeparam name="T1">The type of the Argument 1.</typeparam>
            <typeparam name="T2">The type of the Argument 2.</typeparam>
            <typeparam name="T3">The type of the Argument 3.</typeparam>
            <typeparam name="T4">The type of the Argument 4.</typeparam>
            <typeparam name="T5">The type of the Argument 5.</typeparam>
            <typeparam name="T6">The type of the Argument 6.</typeparam>
            <typeparam name="T7">The type of the Argument 7.</typeparam>
            <typeparam name="T8">The type of the Argument 8.</typeparam>
            <typeparam name="T9">The type of the Argument 9.</typeparam>
            <typeparam name="T10">The type of the Argument 10.</typeparam>
            <param name="del">The lambda.</param>
            <returns>The lambda.</returns>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.ReturnVoid.ThisAndArguments``10(ImpromptuInterface.Dynamic.ThisAction{``0,``1,``2,``3,``4,``5,``6,``7,``8,``9})">
            <summary>
            This and Arguments.
            </summary>
            <typeparam name="T1">The type of the Argument 1.</typeparam>
            <typeparam name="T2">The type of the Argument 2.</typeparam>
            <typeparam name="T3">The type of the Argument 3.</typeparam>
            <typeparam name="T4">The type of the Argument 4.</typeparam>
            <typeparam name="T5">The type of the Argument 5.</typeparam>
            <typeparam name="T6">The type of the Argument 6.</typeparam>
            <typeparam name="T7">The type of the Argument 7.</typeparam>
            <typeparam name="T8">The type of the Argument 8.</typeparam>
            <typeparam name="T9">The type of the Argument 9.</typeparam>
            <typeparam name="T10">The type of the Argument 10.</typeparam>
            <param name="del">The del.</param>
            <returns></returns>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.ReturnVoid.Arguments``11(System.Action{``0,``1,``2,``3,``4,``5,``6,``7,``8,``9,``10})">
            <summary>
            Arguments
            </summary>
            <typeparam name="T1">The type of the Argument 1.</typeparam>
            <typeparam name="T2">The type of the Argument 2.</typeparam>
            <typeparam name="T3">The type of the Argument 3.</typeparam>
            <typeparam name="T4">The type of the Argument 4.</typeparam>
            <typeparam name="T5">The type of the Argument 5.</typeparam>
            <typeparam name="T6">The type of the Argument 6.</typeparam>
            <typeparam name="T7">The type of the Argument 7.</typeparam>
            <typeparam name="T8">The type of the Argument 8.</typeparam>
            <typeparam name="T9">The type of the Argument 9.</typeparam>
            <typeparam name="T10">The type of the Argument 10.</typeparam>
            <typeparam name="T11">The type of the Argument 11.</typeparam>
            <param name="del">The lambda.</param>
            <returns>The lambda.</returns>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.ReturnVoid.ThisAndArguments``11(ImpromptuInterface.Dynamic.ThisAction{``0,``1,``2,``3,``4,``5,``6,``7,``8,``9,``10})">
            <summary>
            This and Arguments.
            </summary>
            <typeparam name="T1">The type of the Argument 1.</typeparam>
            <typeparam name="T2">The type of the Argument 2.</typeparam>
            <typeparam name="T3">The type of the Argument 3.</typeparam>
            <typeparam name="T4">The type of the Argument 4.</typeparam>
            <typeparam name="T5">The type of the Argument 5.</typeparam>
            <typeparam name="T6">The type of the Argument 6.</typeparam>
            <typeparam name="T7">The type of the Argument 7.</typeparam>
            <typeparam name="T8">The type of the Argument 8.</typeparam>
            <typeparam name="T9">The type of the Argument 9.</typeparam>
            <typeparam name="T10">The type of the Argument 10.</typeparam>
            <typeparam name="T11">The type of the Argument 11.</typeparam>
            <param name="del">The del.</param>
            <returns></returns>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.ReturnVoid.Arguments``12(System.Action{``0,``1,``2,``3,``4,``5,``6,``7,``8,``9,``10,``11})">
            <summary>
            Arguments
            </summary>
            <typeparam name="T1">The type of the Argument 1.</typeparam>
            <typeparam name="T2">The type of the Argument 2.</typeparam>
            <typeparam name="T3">The type of the Argument 3.</typeparam>
            <typeparam name="T4">The type of the Argument 4.</typeparam>
            <typeparam name="T5">The type of the Argument 5.</typeparam>
            <typeparam name="T6">The type of the Argument 6.</typeparam>
            <typeparam name="T7">The type of the Argument 7.</typeparam>
            <typeparam name="T8">The type of the Argument 8.</typeparam>
            <typeparam name="T9">The type of the Argument 9.</typeparam>
            <typeparam name="T10">The type of the Argument 10.</typeparam>
            <typeparam name="T11">The type of the Argument 11.</typeparam>
            <typeparam name="T12">The type of the Argument 12.</typeparam>
            <param name="del">The lambda.</param>
            <returns>The lambda.</returns>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.ReturnVoid.ThisAndArguments``12(ImpromptuInterface.Dynamic.ThisAction{``0,``1,``2,``3,``4,``5,``6,``7,``8,``9,``10,``11})">
            <summary>
            This and Arguments.
            </summary>
            <typeparam name="T1">The type of the Argument 1.</typeparam>
            <typeparam name="T2">The type of the Argument 2.</typeparam>
            <typeparam name="T3">The type of the Argument 3.</typeparam>
            <typeparam name="T4">The type of the Argument 4.</typeparam>
            <typeparam name="T5">The type of the Argument 5.</typeparam>
            <typeparam name="T6">The type of the Argument 6.</typeparam>
            <typeparam name="T7">The type of the Argument 7.</typeparam>
            <typeparam name="T8">The type of the Argument 8.</typeparam>
            <typeparam name="T9">The type of the Argument 9.</typeparam>
            <typeparam name="T10">The type of the Argument 10.</typeparam>
            <typeparam name="T11">The type of the Argument 11.</typeparam>
            <typeparam name="T12">The type of the Argument 12.</typeparam>
            <param name="del">The del.</param>
            <returns></returns>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.ReturnVoid.Arguments``13(System.Action{``0,``1,``2,``3,``4,``5,``6,``7,``8,``9,``10,``11,``12})">
            <summary>
            Arguments
            </summary>
            <typeparam name="T1">The type of the Argument 1.</typeparam>
            <typeparam name="T2">The type of the Argument 2.</typeparam>
            <typeparam name="T3">The type of the Argument 3.</typeparam>
            <typeparam name="T4">The type of the Argument 4.</typeparam>
            <typeparam name="T5">The type of the Argument 5.</typeparam>
            <typeparam name="T6">The type of the Argument 6.</typeparam>
            <typeparam name="T7">The type of the Argument 7.</typeparam>
            <typeparam name="T8">The type of the Argument 8.</typeparam>
            <typeparam name="T9">The type of the Argument 9.</typeparam>
            <typeparam name="T10">The type of the Argument 10.</typeparam>
            <typeparam name="T11">The type of the Argument 11.</typeparam>
            <typeparam name="T12">The type of the Argument 12.</typeparam>
            <typeparam name="T13">The type of the Argument 13.</typeparam>
            <param name="del">The lambda.</param>
            <returns>The lambda.</returns>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.ReturnVoid.ThisAndArguments``13(ImpromptuInterface.Dynamic.ThisAction{``0,``1,``2,``3,``4,``5,``6,``7,``8,``9,``10,``11,``12})">
            <summary>
            This and Arguments.
            </summary>
            <typeparam name="T1">The type of the Argument 1.</typeparam>
            <typeparam name="T2">The type of the Argument 2.</typeparam>
            <typeparam name="T3">The type of the Argument 3.</typeparam>
            <typeparam name="T4">The type of the Argument 4.</typeparam>
            <typeparam name="T5">The type of the Argument 5.</typeparam>
            <typeparam name="T6">The type of the Argument 6.</typeparam>
            <typeparam name="T7">The type of the Argument 7.</typeparam>
            <typeparam name="T8">The type of the Argument 8.</typeparam>
            <typeparam name="T9">The type of the Argument 9.</typeparam>
            <typeparam name="T10">The type of the Argument 10.</typeparam>
            <typeparam name="T11">The type of the Argument 11.</typeparam>
            <typeparam name="T12">The type of the Argument 12.</typeparam>
            <typeparam name="T13">The type of the Argument 13.</typeparam>
            <param name="del">The del.</param>
            <returns></returns>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.ReturnVoid.Arguments``14(System.Action{``0,``1,``2,``3,``4,``5,``6,``7,``8,``9,``10,``11,``12,``13})">
            <summary>
            Arguments
            </summary>
            <typeparam name="T1">The type of the Argument 1.</typeparam>
            <typeparam name="T2">The type of the Argument 2.</typeparam>
            <typeparam name="T3">The type of the Argument 3.</typeparam>
            <typeparam name="T4">The type of the Argument 4.</typeparam>
            <typeparam name="T5">The type of the Argument 5.</typeparam>
            <typeparam name="T6">The type of the Argument 6.</typeparam>
            <typeparam name="T7">The type of the Argument 7.</typeparam>
            <typeparam name="T8">The type of the Argument 8.</typeparam>
            <typeparam name="T9">The type of the Argument 9.</typeparam>
            <typeparam name="T10">The type of the Argument 10.</typeparam>
            <typeparam name="T11">The type of the Argument 11.</typeparam>
            <typeparam name="T12">The type of the Argument 12.</typeparam>
            <typeparam name="T13">The type of the Argument 13.</typeparam>
            <typeparam name="T14">The type of the Argument 14.</typeparam>
            <param name="del">The lambda.</param>
            <returns>The lambda.</returns>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.ReturnVoid.ThisAndArguments``14(ImpromptuInterface.Dynamic.ThisAction{``0,``1,``2,``3,``4,``5,``6,``7,``8,``9,``10,``11,``12,``13})">
            <summary>
            This and Arguments.
            </summary>
            <typeparam name="T1">The type of the Argument 1.</typeparam>
            <typeparam name="T2">The type of the Argument 2.</typeparam>
            <typeparam name="T3">The type of the Argument 3.</typeparam>
            <typeparam name="T4">The type of the Argument 4.</typeparam>
            <typeparam name="T5">The type of the Argument 5.</typeparam>
            <typeparam name="T6">The type of the Argument 6.</typeparam>
            <typeparam name="T7">The type of the Argument 7.</typeparam>
            <typeparam name="T8">The type of the Argument 8.</typeparam>
            <typeparam name="T9">The type of the Argument 9.</typeparam>
            <typeparam name="T10">The type of the Argument 10.</typeparam>
            <typeparam name="T11">The type of the Argument 11.</typeparam>
            <typeparam name="T12">The type of the Argument 12.</typeparam>
            <typeparam name="T13">The type of the Argument 13.</typeparam>
            <typeparam name="T14">The type of the Argument 14.</typeparam>
            <param name="del">The del.</param>
            <returns></returns>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.ReturnVoid.Arguments``15(System.Action{``0,``1,``2,``3,``4,``5,``6,``7,``8,``9,``10,``11,``12,``13,``14})">
            <summary>
            Arguments
            </summary>
            <typeparam name="T1">The type of the Argument 1.</typeparam>
            <typeparam name="T2">The type of the Argument 2.</typeparam>
            <typeparam name="T3">The type of the Argument 3.</typeparam>
            <typeparam name="T4">The type of the Argument 4.</typeparam>
            <typeparam name="T5">The type of the Argument 5.</typeparam>
            <typeparam name="T6">The type of the Argument 6.</typeparam>
            <typeparam name="T7">The type of the Argument 7.</typeparam>
            <typeparam name="T8">The type of the Argument 8.</typeparam>
            <typeparam name="T9">The type of the Argument 9.</typeparam>
            <typeparam name="T10">The type of the Argument 10.</typeparam>
            <typeparam name="T11">The type of the Argument 11.</typeparam>
            <typeparam name="T12">The type of the Argument 12.</typeparam>
            <typeparam name="T13">The type of the Argument 13.</typeparam>
            <typeparam name="T14">The type of the Argument 14.</typeparam>
            <typeparam name="T15">The type of the Argument 15.</typeparam>
            <param name="del">The lambda.</param>
            <returns>The lambda.</returns>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.ReturnVoid.ThisAndArguments``15(ImpromptuInterface.Dynamic.ThisAction{``0,``1,``2,``3,``4,``5,``6,``7,``8,``9,``10,``11,``12,``13,``14})">
            <summary>
            This and Arguments.
            </summary>
            <typeparam name="T1">The type of the Argument 1.</typeparam>
            <typeparam name="T2">The type of the Argument 2.</typeparam>
            <typeparam name="T3">The type of the Argument 3.</typeparam>
            <typeparam name="T4">The type of the Argument 4.</typeparam>
            <typeparam name="T5">The type of the Argument 5.</typeparam>
            <typeparam name="T6">The type of the Argument 6.</typeparam>
            <typeparam name="T7">The type of the Argument 7.</typeparam>
            <typeparam name="T8">The type of the Argument 8.</typeparam>
            <typeparam name="T9">The type of the Argument 9.</typeparam>
            <typeparam name="T10">The type of the Argument 10.</typeparam>
            <typeparam name="T11">The type of the Argument 11.</typeparam>
            <typeparam name="T12">The type of the Argument 12.</typeparam>
            <typeparam name="T13">The type of the Argument 13.</typeparam>
            <typeparam name="T14">The type of the Argument 14.</typeparam>
            <typeparam name="T15">The type of the Argument 15.</typeparam>
            <param name="del">The del.</param>
            <returns></returns>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.ReturnVoid.Arguments``16(System.Action{``0,``1,``2,``3,``4,``5,``6,``7,``8,``9,``10,``11,``12,``13,``14,``15})">
            <summary>
            Arguments
            </summary>
            <typeparam name="T1">The type of the Argument 1.</typeparam>
            <typeparam name="T2">The type of the Argument 2.</typeparam>
            <typeparam name="T3">The type of the Argument 3.</typeparam>
            <typeparam name="T4">The type of the Argument 4.</typeparam>
            <typeparam name="T5">The type of the Argument 5.</typeparam>
            <typeparam name="T6">The type of the Argument 6.</typeparam>
            <typeparam name="T7">The type of the Argument 7.</typeparam>
            <typeparam name="T8">The type of the Argument 8.</typeparam>
            <typeparam name="T9">The type of the Argument 9.</typeparam>
            <typeparam name="T10">The type of the Argument 10.</typeparam>
            <typeparam name="T11">The type of the Argument 11.</typeparam>
            <typeparam name="T12">The type of the Argument 12.</typeparam>
            <typeparam name="T13">The type of the Argument 13.</typeparam>
            <typeparam name="T14">The type of the Argument 14.</typeparam>
            <typeparam name="T15">The type of the Argument 15.</typeparam>
            <typeparam name="T16">The type of the Argument 16.</typeparam>
            <param name="del">The lambda.</param>
            <returns>The lambda.</returns>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.ReturnVoid.ThisAndArguments``16(ImpromptuInterface.Dynamic.ThisAction{``0,``1,``2,``3,``4,``5,``6,``7,``8,``9,``10,``11,``12,``13,``14,``15})">
            <summary>
            This and Arguments.
            </summary>
            <typeparam name="T1">The type of the Argument 1.</typeparam>
            <typeparam name="T2">The type of the Argument 2.</typeparam>
            <typeparam name="T3">The type of the Argument 3.</typeparam>
            <typeparam name="T4">The type of the Argument 4.</typeparam>
            <typeparam name="T5">The type of the Argument 5.</typeparam>
            <typeparam name="T6">The type of the Argument 6.</typeparam>
            <typeparam name="T7">The type of the Argument 7.</typeparam>
            <typeparam name="T8">The type of the Argument 8.</typeparam>
            <typeparam name="T9">The type of the Argument 9.</typeparam>
            <typeparam name="T10">The type of the Argument 10.</typeparam>
            <typeparam name="T11">The type of the Argument 11.</typeparam>
            <typeparam name="T12">The type of the Argument 12.</typeparam>
            <typeparam name="T13">The type of the Argument 13.</typeparam>
            <typeparam name="T14">The type of the Argument 14.</typeparam>
            <typeparam name="T15">The type of the Argument 15.</typeparam>
            <typeparam name="T16">The type of the Argument 16.</typeparam>
            <param name="del">The del.</param>
            <returns></returns>
        </member>
        <member name="T:ImpromptuInterface.Dynamic.InvocationKind">
            <summary>
            Type of Invocation
            </summary>
        </member>
        <member name="F:ImpromptuInterface.Dynamic.InvocationKind.NotSet">
            <summary>
            NotSet
            </summary>
        </member>
        <member name="F:ImpromptuInterface.Dynamic.InvocationKind.Convert">
            <summary>
            Convert Implicit or Explicity
            </summary>
        </member>
        <member name="F:ImpromptuInterface.Dynamic.InvocationKind.Get">
            <summary>
            Get Property
            </summary>
        </member>
        <member name="F:ImpromptuInterface.Dynamic.InvocationKind.Set">
            <summary>
            Set Property
            </summary>
        </member>
        <member name="F:ImpromptuInterface.Dynamic.InvocationKind.GetIndex">
            <summary>
            Get Indexer
            </summary>
        </member>
        <member name="F:ImpromptuInterface.Dynamic.InvocationKind.SetIndex">
            <summary>
            Set Indexer
            </summary>
        </member>
        <member name="F:ImpromptuInterface.Dynamic.InvocationKind.InvokeMember">
            <summary>
            Invoke Method the has return value
            </summary>
        </member>
        <member name="F:ImpromptuInterface.Dynamic.InvocationKind.InvokeMemberAction">
            <summary>
            Invoke Method that returns void
            </summary>
        </member>
        <member name="F:ImpromptuInterface.Dynamic.InvocationKind.InvokeMemberUnknown">
            <summary>
            Invoke Method that could return a value or void
            </summary>
        </member>
        <member name="F:ImpromptuInterface.Dynamic.InvocationKind.Constructor">
            <summary>
            Invoke Constructor
            </summary>
        </member>
        <member name="F:ImpromptuInterface.Dynamic.InvocationKind.AddAssign">
            <summary>
            Invoke +=
            </summary>
        </member>
        <member name="F:ImpromptuInterface.Dynamic.InvocationKind.SubtractAssign">
            <summary>
            Invoke -=
            </summary>
        </member>
        <member name="F:ImpromptuInterface.Dynamic.InvocationKind.IsEvent">
            <summary>
            Invoke Event Property Test
            </summary>
        </member>
        <member name="F:ImpromptuInterface.Dynamic.InvocationKind.Invoke">
            <summary>
            Invoke Directly
            </summary>
        </member>
        <member name="F:ImpromptuInterface.Dynamic.InvocationKind.InvokeAction">
            <summary>
            Invoke Directly DiscardResult
            </summary>
        </member>
        <member name="F:ImpromptuInterface.Dynamic.InvocationKind.InvokeUnknown">
            <summary>
            Invoke Directly Return Value
            </summary>
        </member>
        <member name="T:ImpromptuInterface.Dynamic.NonRecursiveInterfaceAttribute">
            <summary>
            Attribute on Inteface to stop proxy from recursively
            proxying other interfaces
            </summary>
        </member>
        <member name="T:ImpromptuInterface.Dynamic.PartialApplyInvocation">
            <summary>
            Internal method for subsequent invocations of <see cref="M:ImpromptuInterface.Impromptu.Curry(System.Object,System.Nullable{System.Int32})"/>
            </summary>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.PartialApplyInvocation.TryConvert(System.Dynamic.ConvertBinder,System.Object@)">
            <summary>
            Provides implementation for type conversion operations. Classes derived from the <see cref="T:System.Dynamic.DynamicObject"/> class can override this method to specify dynamic behavior for operations that convert an object from one type to another.
            </summary>
            <param name="binder">Provides information about the conversion operation. The binder.Type property provides the type to which the object must be converted. For example, for the statement (String)sampleObject in C# (CType(sampleObject, Type) in Visual Basic), where sampleObject is an instance of the class derived from the <see cref="T:System.Dynamic.DynamicObject"/> class, binder.Type returns the <see cref="T:System.String"/> type. The binder.Explicit property provides information about the kind of conversion that occurs. It returns true for explicit conversion and false for implicit conversion.</param>
            <param name="result">The result of the type conversion operation.</param>
            <returns>
            true if the operation is successful; otherwise, false. If this method returns false, the run-time binder of the language determines the behavior. (In most cases, a language-specific run-time exception is thrown.)
            </returns>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.PartialApplyInvocation.TryInvoke(System.Dynamic.InvokeBinder,System.Object[],System.Object@)">
            <summary>
            Provides the implementation for operations that invoke an object. Classes derived from the <see cref="T:System.Dynamic.DynamicObject"/> class can override this method to specify dynamic behavior for operations such as invoking an object or a delegate.
            </summary>
            <param name="binder">Provides information about the invoke operation.</param>
            <param name="args">The arguments that are passed to the object during the invoke operation. For example, for the sampleObject(100) operation, where sampleObject is derived from the <see cref="T:System.Dynamic.DynamicObject"/> class, <paramref name="args[0]"/> is equal to 100.</param>
            <param name="result">The result of the object invocation.</param>
            <returns>
            true if the operation is successful; otherwise, false. If this method returns false, the run-time binder of the language determines the behavior. (In most cases, a language-specific run-time exception is thrown.
            </returns>
        </member>
        <member name="P:ImpromptuInterface.Dynamic.PartialApplyInvocation.Target">
            <summary>
            Gets the target.
            </summary>
            <value>The target.</value>
        </member>
        <member name="P:ImpromptuInterface.Dynamic.PartialApplyInvocation.MemberName">
            <summary>
            Gets the name of the member.
            </summary>
            <value>The name of the member.</value>
        </member>
        <member name="P:ImpromptuInterface.Dynamic.PartialApplyInvocation.Args">
            <summary>
            Gets the args.
            </summary>
            <value>The args.</value>
        </member>
        <member name="P:ImpromptuInterface.Dynamic.PartialApplyInvocation.TotalArgCount">
            <summary>
            Gets the total arg count.
            </summary>
            <value>The total arg count.</value>
        </member>
        <member name="P:ImpromptuInterface.Dynamic.PartialApplyInvocation.InvocationKind">
            <summary>
            Gets the kind of the invocation.
            </summary>
            <value>The kind of the invocation.</value>
        </member>
        <member name="T:ImpromptuInterface.Dynamic.ThisAction">
            <summary>
            Special Delegate used to make impromptu object methods first parameter is this.
            </summary>
        </member>
        <member name="T:ImpromptuInterface.Dynamic.ThisAction`1">
            <summary>
            Special Delegate used to make impromptu object methods first parameter is this.
            </summary>
        </member>
        <member name="T:ImpromptuInterface.Dynamic.ThisAction`2">
            <summary>
            Special Delegate used to make impromptu object methods first parameter is this.
            </summary>
        </member>
        <member name="T:ImpromptuInterface.Dynamic.ThisAction`3">
            <summary>
            Special Delegate used to make impromptu object methods first parameter is this.
            </summary>
        </member>
        <member name="T:ImpromptuInterface.Dynamic.ThisAction`4">
            <summary>
            Special Delegate used to make impromptu object methods first parameter is this.
            </summary>
        </member>
        <member name="T:ImpromptuInterface.Dynamic.ThisAction`5">
            <summary>
            Special Delegate used to make impromptu object methods first parameter is this.
            </summary>
        </member>
        <member name="T:ImpromptuInterface.Dynamic.ThisAction`6">
            <summary>
            Special Delegate used to make impromptu object methods first parameter is this.
            </summary>
        </member>
        <member name="T:ImpromptuInterface.Dynamic.ThisAction`7">
            <summary>
            Special Delegate used to make impromptu object methods first parameter is this.
            </summary>
        </member>
        <member name="T:ImpromptuInterface.Dynamic.ThisAction`8">
            <summary>
            Special Delegate used to make impromptu object methods first parameter is this.
            </summary>
        </member>
        <member name="T:ImpromptuInterface.Dynamic.ThisAction`9">
            <summary>
            Special Delegate used to make impromptu object methods first parameter is this.
            </summary>
        </member>
        <member name="T:ImpromptuInterface.Dynamic.ThisAction`10">
            <summary>
            Special Delegate used to make impromptu object methods first parameter is this.
            </summary>
        </member>
        <member name="T:ImpromptuInterface.Dynamic.ThisAction`11">
            <summary>
            Special Delegate used to make impromptu object methods first parameter is this.
            </summary>
        </member>
        <member name="T:ImpromptuInterface.Dynamic.ThisAction`12">
            <summary>
            Special Delegate used to make impromptu object methods first parameter is this.
            </summary>
        </member>
        <member name="T:ImpromptuInterface.Dynamic.ThisAction`13">
            <summary>
            Special Delegate used to make impromptu object methods first parameter is this.
            </summary>
        </member>
        <member name="T:ImpromptuInterface.Dynamic.ThisAction`14">
            <summary>
            Special Delegate used to make impromptu object methods first parameter is this.
            </summary>
        </member>
        <member name="T:ImpromptuInterface.Dynamic.ThisAction`15">
            <summary>
            Special Delegate used to make impromptu object methods first parameter is this.
            </summary>
        </member>
        <member name="T:ImpromptuInterface.Dynamic.ThisAction`16">
            <summary>
            Special Delegate used to make impromptu object methods first parameter is this.
            </summary>
        </member>
        <member name="T:ImpromptuInterface.Dynamic.ThisFunc`1">
            <summary>
            Special Delegate used to make impromptu object methods first parameter is this.
            </summary>
        </member>
        <member name="T:ImpromptuInterface.Dynamic.ThisFunc`2">
            <summary>
            Special Delegate used to make impromptu object methods first parameter is this.
            </summary>
        </member>
        <member name="T:ImpromptuInterface.Dynamic.ThisFunc`3">
            <summary>
            Special Delegate used to make impromptu object methods first parameter is this.
            </summary>
        </member>
        <member name="T:ImpromptuInterface.Dynamic.ThisFunc`4">
            <summary>
            Special Delegate used to make impromptu object methods first parameter is this.
            </summary>
        </member>
        <member name="T:ImpromptuInterface.Dynamic.ThisFunc`5">
            <summary>
            Special Delegate used to make impromptu object methods first parameter is this.
            </summary>
        </member>
        <member name="T:ImpromptuInterface.Dynamic.ThisFunc`6">
            <summary>
            Special Delegate used to make impromptu object methods first parameter is this.
            </summary>
        </member>
        <member name="T:ImpromptuInterface.Dynamic.ThisFunc`7">
            <summary>
            Special Delegate used to make impromptu object methods first parameter is this.
            </summary>
        </member>
        <member name="T:ImpromptuInterface.Dynamic.ThisFunc`8">
            <summary>
            Special Delegate used to make impromptu object methods first parameter is this.
            </summary>
        </member>
        <member name="T:ImpromptuInterface.Dynamic.ThisFunc`9">
            <summary>
            Special Delegate used to make impromptu object methods first parameter is this.
            </summary>
        </member>
        <member name="T:ImpromptuInterface.Dynamic.ThisFunc`10">
            <summary>
            Special Delegate used to make impromptu object methods first parameter is this.
            </summary>
        </member>
        <member name="T:ImpromptuInterface.Dynamic.ThisFunc`11">
            <summary>
            Special Delegate used to make impromptu object methods first parameter is this.
            </summary>
        </member>
        <member name="T:ImpromptuInterface.Dynamic.ThisFunc`12">
            <summary>
            Special Delegate used to make impromptu object methods first parameter is this.
            </summary>
        </member>
        <member name="T:ImpromptuInterface.Dynamic.ThisFunc`13">
            <summary>
            Special Delegate used to make impromptu object methods first parameter is this.
            </summary>
        </member>
        <member name="T:ImpromptuInterface.Dynamic.ThisFunc`14">
            <summary>
            Special Delegate used to make impromptu object methods first parameter is this.
            </summary>
        </member>
        <member name="T:ImpromptuInterface.Dynamic.ThisFunc`15">
            <summary>
            Special Delegate used to make impromptu object methods first parameter is this.
            </summary>
        </member>
        <member name="T:ImpromptuInterface.Dynamic.ThisFunc`16">
            <summary>
            Special Delegate used to make impromptu object methods first parameter is this.
            </summary>
        </member>
        <member name="T:ImpromptuInterface.Dynamic.ThisFunc`17">
            <summary>
            Special Delegate used to make impromptu object methods first parameter is this.
            </summary>
        </member>
        <member name="T:ImpromptuInterface.Dynamic.ThisDelegate">
            <summary>
            Extension method for Dealing with Special Delegate Type
            </summary>
        </member>
        <member name="M:ImpromptuInterface.Dynamic.ThisDelegate.IsSpecialThisDelegate(System.Delegate)">
            <summary>
            Determines whether [is special this delegate] [the specified del].
            </summary>
            <param name="del">The del.</param>
            <returns>
            	<c>true</c> if [is special this delegate] [the specified del]; otherwise, <c>false</c>.
            </returns>
        </member>
        <member name="T:ImpromptuInterface.Dynamic.UseNamedArgumentAttribute">
            <summary>
            Attribute for Methods and Parameters on Custom Interfaces designed to be used with a dynamic implementation
            </summary>
        </member>
        <member name="T:ImpromptuInterface.Build.IActLikeProxyInitialize">
            <summary>
            This interface can be used to define your own custom proxy if you preload it.
            </summary>
            <remarks>
            Advanced usage only! This is required as well as <see cref="T:ImpromptuInterface.Build.ActLikeProxyAttribute"></see>
            </remarks>
        </member>
        <member name="T:ImpromptuInterface.IActLikeProxy">
            <summary>
            This interface can be used to access the original content of your emitted type;
            </summary>
        </member>
        <member name="P:ImpromptuInterface.IActLikeProxy.Original">
            <summary>
             Returns the proxied object
            </summary>
        </member>
        <member name="M:ImpromptuInterface.Build.IActLikeProxyInitialize.Initialize(System.Object,System.Collections.Generic.IEnumerable{System.Type},System.Collections.Generic.IDictionary{System.String,System.Type})">
            <summary>
             Method used to Initialize Proxy
            </summary>
            <param name="original"></param>
            <param name="interfaces"></param>
            <param name="informalInterface"></param>
        </member>
        <member name="T:ImpromptuInterface.Build.ActLikeProxy">
            <summary>
            Base class of Emited ProxiesC:\Documents and Settings\jayt\My Documents\Visual Studio 2010\Projects\impromptuinterface\ImpromptuInterface\Optimization\
            </summary>
        </member>
        <member name="M:ImpromptuInterface.Build.ActLikeProxy.ImpromptuInterface#Build#IActLikeProxyInitialize#Initialize(System.Object,System.Collections.Generic.IEnumerable{System.Type},System.Collections.Generic.IDictionary{System.String,System.Type})">
            <summary>
            Method used to Initialize Proxy
            </summary>
            <param name="original"></param>
            <param name="interfaces"></param>
            <param name="informalInterface"></param>
        </member>
        <member name="M:ImpromptuInterface.Build.ActLikeProxy.Equals(System.Object)">
            <summary>
            Determines whether the specified <see cref="T:System.Object"/> is equal to this instance.
            </summary>
            <param name="obj">The <see cref="T:System.Object"/> to compare with this instance.</param>
            <returns>
            	<c>true</c> if the specified <see cref="T:System.Object"/> is equal to this instance; otherwise, <c>false</c>.
            </returns>
        </member>
        <member name="M:ImpromptuInterface.Build.ActLikeProxy.Equals(ImpromptuInterface.Build.ActLikeProxy)">
            <summary>
            Actlike proxy should be equivalent to the objects they proxy
            </summary>
            <param name="other">The other.</param>
            <returns></returns>
        </member>
        <member name="M:ImpromptuInterface.Build.ActLikeProxy.GetHashCode">
            <summary>
            Returns a hash code for this instance.
            </summary>
            <returns>
            A hash code for this instance, suitable for use in hashing algorithms and data structures like a hash table. 
            </returns>
        </member>
        <member name="M:ImpromptuInterface.Build.ActLikeProxy.GetObjectData(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
            <summary>
            Populates a <see cref="T:System.Runtime.Serialization.SerializationInfo"/> with the data needed to serialize the target object.
            </summary>
            <param name="info">The <see cref="T:System.Runtime.Serialization.SerializationInfo"/> to populate with data.</param>
            <param name="context">The destination (see <see cref="T:System.Runtime.Serialization.StreamingContext"/>) for this serialization.</param>
            <exception cref="T:System.Security.SecurityException">The caller does not have the required permission. </exception>
        </member>
        <member name="M:ImpromptuInterface.Build.ActLikeProxy.ToString">
            <summary>
            Returns a <see cref="T:System.String"/> that represents this instance.
            </summary>
            <returns>
            A <see cref="T:System.String"/> that represents this instance.
            </returns>
        </member>
        <member name="P:ImpromptuInterface.Build.ActLikeProxy.ActLikeProxyOriginal">
            <summary>
            Returns the proxied object
            </summary>
            <value></value>
        </member>
        <member name="T:ImpromptuInterface.Build.ActLikeProxyAttribute">
            <summary>
            Meta info describing proxy usage. Can be used to preload proxy.
            </summary>
        </member>
        <member name="M:ImpromptuInterface.Build.ActLikeProxyAttribute.#ctor(System.Type[],System.Type)">
            <summary>
            Initializes a new instance of the <see cref="T:ImpromptuInterface.Build.ActLikeProxyAttribute"/> class.
            </summary>
            <param name="interfaces">The interfaces.</param>
            <param name="context">The context.</param>
        </member>
        <member name="P:ImpromptuInterface.Build.ActLikeProxyAttribute.Interfaces">
            <summary>
            Gets or sets the interfaces.
            </summary>
            <value>The interfaces.</value>
        </member>
        <member name="P:ImpromptuInterface.Build.ActLikeProxyAttribute.Context">
            <summary>
            Gets or sets the context.
            </summary>
            <value>The context.</value>
        </member>
        <member name="T:ImpromptuInterface.Build.ActLikeProxySerializationHelper">
            <summary>
            Support Deserializing the proxy since on separate runs of an executable
            </summary>
        </member>
        <member name="F:ImpromptuInterface.Build.ActLikeProxySerializationHelper.Original">
            <summary>
            Original Object
            </summary>
        </member>
        <member name="F:ImpromptuInterface.Build.ActLikeProxySerializationHelper.Interfaces">
            <summary>
            Intefaces
            </summary>
        </member>
        <member name="F:ImpromptuInterface.Build.ActLikeProxySerializationHelper.MonoInterfaces">
            <summary>
            Interfaces by name for Mono workaround
            </summary>
        </member>
        <member name="F:ImpromptuInterface.Build.ActLikeProxySerializationHelper.Context">
            <summary>
            Type Context
            </summary>
        </member>
        <member name="M:ImpromptuInterface.Build.ActLikeProxySerializationHelper.GetRealObject(System.Runtime.Serialization.StreamingContext)">
            <summary>
            Returns the real object that should be deserialized, rather than the object that the serialized stream specifies.
            </summary>
            <param name="context">The <see cref="T:System.Runtime.Serialization.StreamingContext"/> from which the current object is deserialized.</param>
            <returns>
            Returns the actual object that is put into the graph.
            </returns>
            <exception cref="T:System.Security.SecurityException">The caller does not have the required permission. The call will not work on a medium trusted server.</exception>
        </member>
        <member name="T:ImpromptuInterface.Build.BuildProxy">
            <summary>
             Does most of the work buiding and caching proxies
            </summary>
        </member>
        <member name="M:ImpromptuInterface.Build.BuildProxy.WriteOutDll(System.String)">
            <summary>
            Writes the out DLL of types created between this call and being closed used for debugging of emitted IL code
            </summary>
            <param name="name">The name.</param>
            <returns></returns>
            <remarks>
                This may be used for generating an assembly for preloading proxies, however you must be very careful when doing so as 
                changes could make the emitted asssembly out of date very easily.
            </remarks>
        </member>
        <member name="M:ImpromptuInterface.Build.BuildProxy.BuildType(System.Type,System.Type,System.Type[])">
            <summary>
            Builds the type for the static proxy or returns from cache
            </summary>
            <param name="contextType">Type of the context.</param>
            <param name="mainInterface">The main interface.</param>
            <param name="otherInterfaces">The other interfaces.</param>
            <returns></returns>
        </member>
        <member name="M:ImpromptuInterface.Build.BuildProxy.BuildType(System.Type,System.Collections.Generic.IDictionary{System.String,System.Type})">
            <summary>
            Builds the type.
            </summary>
            <param name="contextType">Type of the context.</param>
            <param name="informalInterface">The informal interface.</param>
            <returns></returns>
        </member>
        <member name="M:ImpromptuInterface.Build.BuildProxy.PreLoadProxy(System.Type,ImpromptuInterface.Build.ActLikeProxyAttribute)">
            <summary>
            Preloads a proxy for ActLike to use.
            </summary>
            <param name="proxyType">Type of the proxy.</param>
            <param name="attribute">The ActLikeProxyAttribute, if not provide it will be looked up.</param>
            <returns>Returns false if there already is a proxy registered for the same type.</returns>
        </member>
        <member name="M:ImpromptuInterface.Build.BuildProxy.PreLoadProxiesFromAssembly(System.Reflection.Assembly)">
            <summary>
            Preloads proxies that ActLike uses from assembly.
            </summary>
            <param name="assembly">The assembly.</param>
            <returns>Returns false if there already is a proxy registered for the same type.</returns>
        </member>
        <member name="M:ImpromptuInterface.Build.BuildProxy.MakePropertyHelper(System.Reflection.Emit.ModuleBuilder,System.Reflection.Emit.TypeBuilder,ImpromptuInterface.Build.BuildProxy.PropertyEmitInfo,System.Reflection.PropertyInfo,System.Reflection.MethodInfo,System.Reflection.MethodInfo)">
            <summary>
            Makes the property helper.
            </summary>
            <param name="builder">The builder.</param>
            <param name="typeBuilder">The type builder.</param>
            <param name="info">The info.</param>
            <param name="getMethod">The get method.</param>
            <param name="setMethod">The set method.</param>
            <param name="emitInfo">The emit info.</param>
        </member>
        <member name="M:ImpromptuInterface.Build.BuildProxy.EmitCallSiteFuncType(System.Collections.Generic.IEnumerable{System.Type},System.Type)">
            <summary>
            Emits new delegate type of the call site func.
            </summary>
            <param name="argTypes">The arg types.</param>
            <param name="returnType">Type of the return.</param>
            <returns></returns>
        </member>
        <member name="M:ImpromptuInterface.Build.BuildProxy.GenerateCallSiteFuncType(System.Collections.Generic.IEnumerable{System.Type},System.Type,System.Reflection.MethodInfo,System.Reflection.Emit.TypeBuilder)">
            <summary>
            Generates the delegate type of the call site function.
            </summary>
            <param name="argTypes">The arg types.</param>
            <param name="returnType">Type of the return.</param>
            <param name="methodInfo">The method info. Required for reference types or delegates with more than 16 arguments.</param>
            <param name="builder">The Type Builder. Required for reference types or delegates with more than 16 arguments.</param>
            <returns></returns>
        </member>
        <member name="P:ImpromptuInterface.Build.BuildProxy.Builder">
            <summary>
             Module Builder for buiding proxies
            </summary>
        </member>
        <member name="T:ImpromptuInterface.Build.EmitExtensions">
            <summary>
             Extension Methods that make emiting code easier and easier to read
            </summary>
        </member>
        <member name="M:ImpromptuInterface.Build.EmitExtensions.GetFieldEvenIfGeneric(System.Type,System.String)">
            <summary>
            Gets the field info even if generic type parameter.
            </summary>
            <param name="type">The type.</param>
            <param name="fieldName">Name of the field.</param>
            <returns></returns>
        </member>
        <member name="M:ImpromptuInterface.Build.EmitExtensions.GetMethodEvenIfGeneric(System.Type,System.String,System.Type[])">
            <summary>
            Gets the method info even if generic type parameter.
            </summary>
            <param name="type">The type.</param>
            <param name="methodName">Name of the method.</param>
            <param name="argTypes">The arg types.</param>
            <returns></returns>
        </member>
        <member name="M:ImpromptuInterface.Build.EmitExtensions.GetMethodEvenIfGeneric(System.Type,System.String)">
            <summary>
            Gets the method info even if generic type parameter.
            </summary>
            <param name="type">The type.</param>
            <param name="methodName">Name of the method.</param>
            <returns></returns>
        </member>
        <member name="M:ImpromptuInterface.Build.EmitExtensions.EmitBranchTrue(System.Reflection.Emit.ILGenerator,System.Action{System.Reflection.Emit.ILGenerator})">
            <summary>
            Emits branch true. expects using keyword.
            </summary>
            <param name="generator">The generator.</param>
            <param name="condition">The condition.</param>
            <returns></returns>
            <example>
            Using keyword allows you to set the emit code you are branching over and then automatically emits label when disposing
            <code>
            		<![CDATA[
            using (tIlGen.EmitBranchTrue(g=>g.Emit(OpCodes.Ldsfld, tConvertField)))
            {
            tIlGen.EmitDynamicConvertBinder(CSharpBinderFlags.None, returnType, contextType);
            tIlGen.EmitCallsiteCreate(convertFuncType);
            tIlGen.Emit(OpCodes.Stsfld, tConvertField);
            }
            ]]>
            	</code>
            </example>
        </member>
        <member name="M:ImpromptuInterface.Build.EmitExtensions.EmitInvocation(System.Reflection.Emit.ILGenerator,System.Action{System.Reflection.Emit.ILGenerator},System.Action{System.Reflection.Emit.ILGenerator},System.Action{System.Reflection.Emit.ILGenerator}[])">
            <summary>
            Emits the call.
            </summary>
            <param name="generator">The generator.</param>
            <param name="target">The target.</param>
            <param name="call">The call.</param>
            <param name="parameters">The parameters.</param>
        </member>
        <member name="M:ImpromptuInterface.Build.EmitExtensions.EmitCallsiteCreate(System.Reflection.Emit.ILGenerator,System.Type)">
            <summary>
            Emits creating the callsite.
            </summary>
            <param name="generator">The generator.</param>
            <param name="funcType">Type of the func.</param>
        </member>
        <member name="M:ImpromptuInterface.Build.EmitExtensions.EmitCallInvokeFunc(System.Reflection.Emit.ILGenerator,System.Type)">
            <summary>
            Emits the call invoke delegate.
            </summary>
            <param name="generator">The generator.</param>
            <param name="funcType">Type of the func.</param>
        </member>
        <member name="M:ImpromptuInterface.Build.EmitExtensions.EmitArray(System.Reflection.Emit.ILGenerator,System.Type,System.Collections.Generic.IList{System.Action{System.Reflection.Emit.ILGenerator}})">
            <summary>
            Emits an array.
            </summary>
            <param name="generator">The generator.</param>
            <param name="arrayType">Type of the array.</param>
            <param name="emitElements">The emit elements.</param>
        </member>
        <member name="M:ImpromptuInterface.Build.EmitExtensions.EmitStoreLocation(System.Reflection.Emit.ILGenerator,System.Int32)">
            <summary>
            Emits the store location.
            </summary>
            <param name="generator">The generator.</param>
            <param name="location">The location.</param>
        </member>
        <member name="M:ImpromptuInterface.Build.EmitExtensions.EmitLoadArgument(System.Reflection.Emit.ILGenerator,System.Int32)">
            <summary>
            Emits the load argument.
            </summary>
            <param name="generator">The generator.</param>
            <param name="location">The location.</param>
        </member>
        <member name="M:ImpromptuInterface.Build.EmitExtensions.EmitLoadLocation(System.Reflection.Emit.ILGenerator,System.Int32)">
            <summary>
            Emits the load location.
            </summary>
            <param name="generator">The generator.</param>
            <param name="location">The location.</param>
        </member>
        <member name="M:ImpromptuInterface.Build.EmitExtensions.EmitDynamicMethodInvokeBinder(System.Reflection.Emit.ILGenerator,Microsoft.CSharp.RuntimeBinder.CSharpBinderFlags,System.String,System.Collections.Generic.IEnumerable{System.Type},System.Type,System.Reflection.ParameterInfo[],System.Collections.Generic.IEnumerable{System.String})">
            <summary>
            Emits the dynamic method invoke binder.
            </summary>
            <param name="generator">The generator.</param>
            <param name="flag">The binding flags.</param>
            <param name="name">The name.</param>
            <param name="context">The context.</param>
            <param name="argInfo">The arg info.</param>
            <param name="argNames">The arg names.</param>
        </member>
        <member name="M:ImpromptuInterface.Build.EmitExtensions.EmitDynamicSetBinder(System.Reflection.Emit.ILGenerator,Microsoft.CSharp.RuntimeBinder.CSharpBinderFlags,System.String,System.Type,System.Type[])">
            <summary>
            Emits the dynamic set binder.
            </summary>
            <param name="generator">The generator.</param>
            <param name="flag">The binding flags.</param>
            <param name="name">The name.</param>
            <param name="context">The context.</param>
            <param name="argTypes">The arg types.</param>
        </member>
        <member name="M:ImpromptuInterface.Build.EmitExtensions.EmitDynamicSetBinderDynamicParams(System.Reflection.Emit.ILGenerator,Microsoft.CSharp.RuntimeBinder.CSharpBinderFlags,System.String,System.Type,System.Type[])">
            <summary>
            Emits the dynamic set binder dynamic params.
            </summary>
            <param name="generator">The generator.</param>
            <param name="flag">The flag.</param>
            <param name="name">The name.</param>
            <param name="context">The context.</param>
            <param name="argTypes">The arg types.</param>
        </member>
        <member name="M:ImpromptuInterface.Build.EmitExtensions.EmitDynamicBinaryOpBinder(System.Reflection.Emit.ILGenerator,Microsoft.CSharp.RuntimeBinder.CSharpBinderFlags,System.Linq.Expressions.ExpressionType,System.Type,System.Type[])">
            <summary>
            Emits the dynamic binary op binder.
            </summary>
            <param name="generator">The generator.</param>
            <param name="flag">The flag.</param>
            <param name="exprType">Type of the expr.</param>
            <param name="context">The context.</param>
            <param name="argTypes">The arg types.</param>
        </member>
        <member name="M:ImpromptuInterface.Build.EmitExtensions.EmitDynamicGetBinder(System.Reflection.Emit.ILGenerator,Microsoft.CSharp.RuntimeBinder.CSharpBinderFlags,System.String,System.Type,System.Type[])">
            <summary>
            Emits the dynamic get binder.
            </summary>
            <param name="generator">The generator.</param>
            <param name="flag">The binding flags.</param>
            <param name="name">The name.</param>
            <param name="context">The context.</param>
            <param name="argTypes">The arg types.</param>
        </member>
        <member name="M:ImpromptuInterface.Build.EmitExtensions.EmitCreateCSharpArgumentInfo(System.Reflection.Emit.ILGenerator,Microsoft.CSharp.RuntimeBinder.CSharpArgumentInfoFlags,System.String)">
            <summary>
            Emits creating the <see cref="T:Microsoft.CSharp.RuntimeBinder.CSharpArgumentInfo"></see>
            </summary>
            <param name="generator">The generator.</param>
            <param name="flag">The flag.</param>
            <param name="name">The name.</param>
        </member>
        <member name="M:ImpromptuInterface.Build.EmitExtensions.EmitDynamicConvertBinder(System.Reflection.Emit.ILGenerator,Microsoft.CSharp.RuntimeBinder.CSharpBinderFlags,System.Type,System.Type)">
            <summary>
            Emits the dynamic convert binder.
            </summary>
            <param name="generator">The generator.</param>
            <param name="flag">The binding flag.</param>
            <param name="returnType">Type of the return.</param>
            <param name="context">The context.</param>
        </member>
        <member name="M:ImpromptuInterface.Build.EmitExtensions.EmitTypeOf(System.Reflection.Emit.ILGenerator,System.Type)">
            <summary>
            Emits the typeof(Type)
            </summary>
            <param name="generator">The generator.</param>
            <param name="type">The type.</param>
        </member>
        <member name="M:ImpromptuInterface.Build.EmitExtensions.EmitTypeOf(System.Reflection.Emit.ILGenerator,System.Reflection.Emit.TypeToken)">
            <summary>
            Emits the typeof(Type)
            </summary>
            <param name="generator">The generator.</param>
            <param name="type">The type.</param>
        </member>
        <member name="T:ImpromptuInterface.Build.EmitExtensions.BranchTrueOverBlock">
            <summary>
             Used to automatically create label on dispose
            </summary>
        </member>
        <member name="M:ImpromptuInterface.Build.EmitExtensions.BranchTrueOverBlock.#ctor(System.Reflection.Emit.ILGenerator)">
            <summary>
             Constructor
            </summary>
            <param name="generator"></param>
        </member>
        <member name="M:ImpromptuInterface.Build.EmitExtensions.BranchTrueOverBlock.Dispose">
            <summary>
            Finishes block
            </summary>
        </member>
        <member name="M:ImpromptuInterface.Build.EmitExtensions.BranchFalseOverBlock.#ctor(System.Reflection.Emit.ILGenerator)">
            <summary>
             Constructor
            </summary>
            <param name="generator"></param>
        </member>
        <member name="M:ImpromptuInterface.Build.EmitExtensions.BranchFalseOverBlock.Dispose">
            <summary>
            Finishes block
            </summary>
        </member>
        <member name="T:ImpromptuInterface.Build.TypeHash">
            <summary>
            Type that Encompasses Hashing a group of Types in various ways
            </summary>
        </member>
        <member name="M:ImpromptuInterface.Build.TypeHash.Equals(ImpromptuInterface.Build.TypeHash)">
            <summary>
            Equalses the specified other.
            </summary>
            <param name="other">The other.</param>
            <returns></returns>
        </member>
        <member name="M:ImpromptuInterface.Build.TypeHash.Equals(System.Object)">
            <summary>
            Determines whether the specified <see cref="T:System.Object"/> is equal to this instance.
            </summary>
            <param name="obj">The <see cref="T:System.Object"/> to compare with this instance.</param>
            <returns>
            	<c>true</c> if the specified <see cref="T:System.Object"/> is equal to this instance; otherwise, <c>false</c>.
            </returns>
        </member>
        <member name="M:ImpromptuInterface.Build.TypeHash.GetHashCode">
            <summary>
            Returns a hash code for this instance.
            </summary>
            <returns>
            A hash code for this instance, suitable for use in hashing algorithms and data structures like a hash table. 
            </returns>
        </member>
        <member name="M:ImpromptuInterface.Build.TypeHash.op_Equality(ImpromptuInterface.Build.TypeHash,ImpromptuInterface.Build.TypeHash)">
            <summary>
            Implements the operator ==.
            </summary>
            <param name="left">The left.</param>
            <param name="right">The right.</param>
            <returns>The result of the operator.</returns>
        </member>
        <member name="M:ImpromptuInterface.Build.TypeHash.op_Inequality(ImpromptuInterface.Build.TypeHash,ImpromptuInterface.Build.TypeHash)">
            <summary>
            Implements the operator !=.
            </summary>
            <param name="left">The left.</param>
            <param name="right">The right.</param>
            <returns>The result of the operator.</returns>
        </member>
        <member name="F:ImpromptuInterface.Build.TypeHash.Types">
            <summary>
            Types to be hashed
            </summary>
        </member>
        <member name="F:ImpromptuInterface.Build.TypeHash.InformalInterface">
            <summary>
            The Informal Interface to be hashed
            </summary>
        </member>
        <member name="M:ImpromptuInterface.Build.TypeHash.#ctor(System.Collections.Generic.IEnumerable{System.Type})">
            <summary>
            Initializes a new instance of the <see cref="T:ImpromptuInterface.Build.TypeHash"/> class.
            </summary>
            <param name="moreTypes">The more types.</param>
        </member>
        <member name="M:ImpromptuInterface.Build.TypeHash.#ctor(System.Type,System.Type[])">
            <summary>
            Initializes a new instance of the <see cref="T:ImpromptuInterface.Build.TypeHash"/> class.
            For use when you have must distinguish one type; and the rest aren't strict
            </summary>
            <param name="type1">The type1.</param>
            <param name="moreTypes">The more types.</param>
        </member>
        <member name="M:ImpromptuInterface.Build.TypeHash.#ctor(System.Type,System.Collections.Generic.IDictionary{System.String,System.Type})">
            <summary>
            Initializes a new instance of the <see cref="T:ImpromptuInterface.Build.TypeHash"/> class.
            </summary>
            <param name="type1">The type1.</param>
            <param name="informalInterface">The informal interface.</param>
        </member>
        <member name="M:ImpromptuInterface.Build.TypeHash.#ctor(System.Boolean,System.Reflection.MemberInfo[])">
            <summary>
            Initializes a new instance of the <see cref="T:ImpromptuInterface.Build.TypeHash"/> class.
            </summary>
            <param name="strictOrder">if set to <c>true</c> [strict order].</param>
            <param name="moreTypes">types.</param>
        </member>
        <member name="M:ImpromptuInterface.Build.TypeHash.Create(System.Collections.Generic.IEnumerable{System.Type})">
            <summary>
            Creates the TypeHash
            </summary>
            <param name="moreTypes">The more types.</param>
            <returns></returns>
        </member>
        <member name="M:ImpromptuInterface.Build.TypeHash.Create(System.Type,System.Type[])">
            <summary>
            Creates the TypeHash
            </summary>
            <param name="type1">The type1.</param>
            <param name="moreTypes">The more types.</param>
            <returns></returns>
        </member>
        <member name="M:ImpromptuInterface.Build.TypeHash.Create(System.Type,System.Collections.Generic.IDictionary{System.String,System.Type})">
            <summary>
            Creates the TypeHash
            </summary>
            <param name="type1">The type1.</param>
            <param name="informalInterface">The informal interface.</param>
            <returns></returns>
        </member>
        <member name="M:ImpromptuInterface.Build.TypeHash.Create(System.Boolean,System.Reflection.MemberInfo[])">
            <summary>
            Creates the TypeHash
            </summary>
            <param name="strictOrder">if set to <c>true</c> [strict order].</param>
            <param name="moreTypes">The more types.</param>
            <returns></returns>
        </member>
        <member name="T:ImpromptuInterface.Impromptu">
            <summary>
            Main API
            </summary>
        </member>
        <member name="M:ImpromptuInterface.Impromptu.CreateCallSite(System.Type,System.Runtime.CompilerServices.CallSiteBinder,ImpromptuInterface.String_OR_InvokeMemberName,System.Type,System.String[],System.Boolean,System.Boolean)">
            <summary>
            Creates a cached call site at runtime.
            </summary>
            <param name="delegateType">Type of the delegate.</param>
            <param name="binder">The CallSite binder.</param>
            <param name="name">Member Name</param>
            <param name="context">Permissions Context type</param>
            <param name="argNames">The arg names.</param>
            <param name="staticContext">if set to <c>true</c> [static context].</param>
            <param name="isEvent">if set to <c>true</c> [is event].</param>
            <returns>The CallSite</returns>
            <remarks>
            Advanced usage only for serious custom dynamic invocation.
            </remarks>
            <seealso cref="M:ImpromptuInterface.Impromptu.CreateCallSite``1(System.Runtime.CompilerServices.CallSiteBinder,ImpromptuInterface.String_OR_InvokeMemberName,System.Type,System.String[],System.Boolean,System.Boolean)"/>
        </member>
        <member name="M:ImpromptuInterface.Impromptu.CreateCallSite``1(System.Runtime.CompilerServices.CallSiteBinder,ImpromptuInterface.String_OR_InvokeMemberName,System.Type,System.String[],System.Boolean,System.Boolean)">
            <summary>
            Creates the call site.
            </summary>
            <typeparam name="T"></typeparam>
            <param name="binder">The binder.</param>
            <param name="name">The name.</param>
            <param name="context">The context.</param>
            <param name="argNames">The arg names.</param>
            <param name="staticContext">if set to <c>true</c> [static context].</param>
            <param name="isEvent">if set to <c>true</c> [is event].</param>
            <returns></returns>
            /// 
            <example>
            Unit test that exhibits usage
            <code><![CDATA[
            string tResult = String.Empty;
            var tPoco = new MethOutPoco();
            var tBinder =
            Binder.InvokeMember(BinderFlags.None, "Func", null, GetType(),
            new[]
            {
            Info.Create(
            InfoFlags.None, null),
            Info.Create(
            InfoFlags.IsOut |
            InfoFlags.UseCompileTimeType, null)
            });
            var tSite = Impromptu.CreateCallSite<DynamicTryString>(tBinder);
            tSite.Target.Invoke(tSite, tPoco, out tResult);
            Assert.AreEqual("success", tResult);
            ]]></code>
            </example>
            <seealso cref="M:ImpromptuInterface.Impromptu.CreateCallSite(System.Type,System.Runtime.CompilerServices.CallSiteBinder,ImpromptuInterface.String_OR_InvokeMemberName,System.Type,System.String[],System.Boolean,System.Boolean)"/>
        </member>
        <member name="M:ImpromptuInterface.Impromptu.InvokeMember(System.Object,ImpromptuInterface.String_OR_InvokeMemberName,System.Object[])">
             <summary>
             Dynamically Invokes a member method using the DLR
             </summary>
             <param name="target">The target.</param>
             <param name="name">The name. Can be a string it will be implicitly converted</param>
             <param name="args">The args.</param>
             <returns> The result</returns>
             <example>   
             Unit test that exhibits usage:
             <code>
             <![CDATA[
                dynamic tExpando = new ExpandoObject();
                tExpando.Func = new Func<int, string>(it => it.ToString());
            
                var tValue = 1;
                var tOut = Impromptu.InvokeMember(tExpando, "Func", tValue);
            
                Assert.AreEqual(tValue.ToString(), tOut);
             ]]>
             </code>
             </example>
        </member>
        <member name="M:ImpromptuInterface.Impromptu.InvokeBinaryOperator(System.Object,System.Linq.Expressions.ExpressionType,System.Object)">
            <summary>
            Invokes the binary operator.
            </summary>
            <param name="leftArg">The left arg.</param>
            <param name="op">The op.</param>
            <param name="rightArg">The right Arg.</param>
            <returns></returns>
        </member>
        <member name="M:ImpromptuInterface.Impromptu.InvokeUnaryOpartor(System.Linq.Expressions.ExpressionType,System.Object)">
            <summary>
            Invokes the unary opartor.
            </summary>
            <param name="arg">The arg.</param>
            <param name="op">The op.</param>
            <returns></returns>
        </member>
        <member name="M:ImpromptuInterface.Impromptu.Invoke(System.Object,System.Object[])">
            <summary>
            Invokes the specified target using the DLR;
            </summary>
            <param name="target">The target.</param>
            <param name="args">The args.</param>
            <returns></returns>
        </member>
        <member name="M:ImpromptuInterface.Impromptu.InvokeGetIndex(System.Object,System.Object[])">
            <summary>
            Dynamically Invokes indexer using the DLR.
            </summary>
            <param name="target">The target.</param>
            <param name="indexes">The indexes.</param>
            <returns></returns>
        </member>
        <member name="M:ImpromptuInterface.Impromptu.InvokeSetValueOnIndexes(System.Object,System.Object,System.Object[])">
            <summary>
            Convenience version of InvokeSetIndex that separates value and indexes.
            </summary>
            <param name="target">The target.</param>
            <param name="value">The value</param>
            <param name="indexes">The indexes </param>
            <returns></returns>
        </member>
        <member name="M:ImpromptuInterface.Impromptu.InvokeSetIndex(System.Object,System.Object[])">
            <summary>
            Invokes setindex.
            </summary>
            <param name="target">The target.</param>
            <param name="indexesThenValue">The indexes then value.</param>
        </member>
        <member name="M:ImpromptuInterface.Impromptu.InvokeMemberAction(System.Object,ImpromptuInterface.String_OR_InvokeMemberName,System.Object[])">
             <summary>
             Dynamically Invokes a member method which returns void using the DLR
             </summary>
             <param name="target">The target.</param>
             <param name="name">The name.</param>
             <param name="args">The args.</param>
             <example>
             Unit test that exhibits usage:
             <code>
             <![CDATA[
                var tTest = "Wrong";
                var tValue = "Correct";
            
                dynamic tExpando = new ExpandoObject();
                tExpando.Action = new Action<string>(it => tTest = it);
            
                Impromptu.InvokeMemberAction(tExpando, "Action", tValue);
            
                Assert.AreEqual(tValue, tTest);
             ]]>
             </code>
             </example>
        </member>
        <member name="M:ImpromptuInterface.Impromptu.InvokeAction(System.Object,System.Object[])">
            <summary>
            Invokes the action using the DLR
            </summary>
            <param name="target">The target.</param>
            <param name="args">The args.</param>
        </member>
        <member name="M:ImpromptuInterface.Impromptu.InvokeSet(System.Object,System.String,System.Object)">
             <summary>
             Dynamically Invokes a set member using the DLR.
             </summary>
             <param name="target">The target.</param>
             <param name="name">The name.</param>
             <param name="value">The value.</param>
             <example>
             Unit test that exhibits usage:
             <code>
             <![CDATA[
                dynamic tExpando = new ExpandoObject();
            
                var tSetValue = "1";
            
                Impromptu.InvokeSet(tExpando, "Test", tSetValue);
            
                Assert.AreEqual(tSetValue, tExpando.Test);
             ]]>
             </code>
             </example>
             <remarks>
             if you call a static property off a type with a static context the csharp dlr binder won't do it, so this method reverts to reflection
             </remarks>
        </member>
        <member name="M:ImpromptuInterface.Impromptu.InvokeSetChain(System.Object,System.String,System.Object)">
            <summary>
            Invokes the set on the end of a property chain.
            </summary>
            <param name="target">The target.</param>
            <param name="propertyChain">The property chain.</param>
            <param name="value">The value.</param>
        </member>
        <member name="M:ImpromptuInterface.Impromptu.Curry(System.Object,System.Nullable{System.Int32})">
            <summary>
            Wraps a target to partial apply a method (or target if you can invoke target directly eg delegate).
            </summary>
            <param name="target">The target.</param>
            <param name="totalArgCount">The total arg count.</param>
            <returns></returns>
        </member>
        <member name="M:ImpromptuInterface.Impromptu.Curry(System.Delegate)">
            <summary>
            Wraps a delegate to partially apply it.
            </summary>
            <param name="target">The target.</param>
            <returns></returns>
        </member>
        <member name="M:ImpromptuInterface.Impromptu.InvokeGet(System.Object,System.String)">
             <summary>
             Dynamically Invokes a get member using the DLR.
             </summary>
             <param name="target">The target.</param>
             <param name="name">The name.</param>
             <returns>The result.</returns>
             <example>
             Unit Test that describes usage
             <code>
             <![CDATA[
                var tSetValue = "1";
                var tAnon = new { Test = tSetValue };
            
                var tOut =Impromptu.InvokeGet(tAnon, "Test");
            
                Assert.AreEqual(tSetValue, tOut);
             ]]>
             </code>
             </example>
        </member>
        <member name="M:ImpromptuInterface.Impromptu.InvokeGetChain(System.Object,System.String)">
            <summary>
            Invokes the getter property chain.
            </summary>
            <param name="target">The target.</param>
            <param name="propertyChain">The property chain.</param>
            <returns></returns>
        </member>
        <member name="M:ImpromptuInterface.Impromptu.InvokeIsEvent(System.Object,System.String)">
            <summary>
            Determines whether the specified name on target is event. This allows you to know whether to InvokeMemberAction
             add_{name} or a combo of {invokeget, +=, invokeset} and the corresponding remove_{name} 
            or a combon of {invokeget, -=, invokeset}
            </summary>
            <param name="target">The target.</param>
            <param name="name">The name.</param>
            <returns>
            	<c>true</c> if the specified target is event; otherwise, <c>false</c>.
            </returns>
        </member>
        <member name="M:ImpromptuInterface.Impromptu.InvokeAddAssign(System.Object,System.String,System.Object)">
            <summary>
            Invokes add assign with correct behavior for events.
            </summary>
            <param name="target">The target.</param>
            <param name="name">The name.</param>
            <param name="value">The value.</param>
        </member>
        <member name="M:ImpromptuInterface.Impromptu.InvokeAddAssignMember(System.Object,System.String,System.Object)">
            <summary>
            Invokes add assign with correct behavior for events.
            </summary>
            <param name="target">The target.</param>
            <param name="name">The name.</param>
            <param name="value">The value.</param>
        </member>
        <member name="M:ImpromptuInterface.Impromptu.InvokeSubtractAssign(System.Object,System.String,System.Object)">
            <summary>
            Invokes subtract assign with correct behavior for events.
            </summary>
            <param name="target">The target.</param>
            <param name="name">The name.</param>
            <param name="value">The value.</param>
        </member>
        <member name="M:ImpromptuInterface.Impromptu.InvokeSubtractAssignMember(System.Object,System.String,System.Object)">
            <summary>
            Invokes subtract assign with correct behavior for events.
            </summary>
            <param name="target">The target.</param>
            <param name="name">The name.</param>
            <param name="value">The value.</param>
        </member>
        <member name="M:ImpromptuInterface.Impromptu.InvokeConvert(System.Object,System.Type,System.Boolean)">
            <summary>
            Invokes  convert using the DLR.
            </summary>
            <param name="target">The target.</param>
            <param name="type">The type.</param>
            <param name="explicit">if set to <c>true</c> [explicit].</param>
            <returns></returns>
        </member>
        <member name="M:ImpromptuInterface.Impromptu.InvokeConstuctor(System.Type,System.Object[])">
            <summary>
            (Obsolete)Invokes the constructor. misspelling
            </summary>
            <param name="type">The type.</param>
            <param name="args">The args.</param>
            <returns></returns>
        </member>
        <member name="M:ImpromptuInterface.Impromptu.InvokeConstructor(System.Type,System.Object[])">
            <summary>
            Invokes the constuctor.
            </summary>
            <param name="type">The type.</param>
            <param name="args">The args.</param>
            <returns></returns>
        </member>
        <member name="M:ImpromptuInterface.Impromptu.FastDynamicInvoke(System.Delegate,System.Object[])">
            <summary>
            FastDynamicInvoke extension method. Runs up to runs up to 20x faster than <see cref="M:System.Delegate.DynamicInvoke(System.Object[])"/> .
            </summary>
            <param name="del">The del.</param>
            <param name="args">The args.</param>
            <returns></returns>
        </member>
        <member name="M:ImpromptuInterface.Impromptu.GenericDelegateType(System.Int32,System.Boolean)">
            <summary>
            Given a generic parameter count and whether it returns void or not gives type of Action or Func
            </summary>
            <param name="paramCount">The param count.</param>
            <param name="returnVoid">if set to <c>true</c> [return void].</param>
            <returns>Type of Action or Func</returns>
        </member>
        <member name="M:ImpromptuInterface.Impromptu.GetMemberNames(System.Object,System.Boolean)">
            <summary>
            Gets the member names of properties. Not all IDynamicMetaObjectProvider have support for this.
            </summary>
            <param name="target">The target.</param>
            <param name="dynamicOnly">if set to <c>true</c> [dynamic only]. Won't add reflected properties</param>
            <returns></returns>
        </member>
        <member name="M:ImpromptuInterface.Impromptu.InvokeCallSite(System.Runtime.CompilerServices.CallSite,System.Object,System.Object[])">
            <summary>
            Dynamically invokes a method determined by the CallSite binder and be given an appropriate delegate type
            </summary>
            <param name="callSite">The Callsite</param>
            <param name="target">The target.</param>
            <param name="args">The args.</param>
            <returns></returns>
            <remarks>
            Advanced use only. Use this method for serious custom invocation, otherwise there are other convenience methods such as
            <see cref="M:ImpromptuInterface.Impromptu.InvokeMember(System.Object,ImpromptuInterface.String_OR_InvokeMemberName,System.Object[])"></see>, <see cref="M:ImpromptuInterface.Impromptu.InvokeGet(System.Object,System.String)"></see>, <see cref="M:ImpromptuInterface.Impromptu.InvokeSet(System.Object,System.String,System.Object)"></see> and <see cref="M:ImpromptuInterface.Impromptu.InvokeMemberAction(System.Object,ImpromptuInterface.String_OR_InvokeMemberName,System.Object[])"></see>
            </remarks>
        </member>
        <member name="M:ImpromptuInterface.Impromptu.Invoke(System.Runtime.CompilerServices.CallSite,System.Object,System.Object[])">
            <summary>
            Dynamically invokes a method determined by the CallSite binder and be given an appropriate delegate type
            </summary>
            <param name="callSite">The Callsite</param>
            <param name="target">The target.</param>
            <param name="args">The args.</param>
            <returns></returns>
            <remarks>
            Advanced use only. Use this method for serious custom invocation, otherwise there are other convenience methods such as
            <see cref="M:ImpromptuInterface.Impromptu.InvokeMember(System.Object,ImpromptuInterface.String_OR_InvokeMemberName,System.Object[])"></see>, <see cref="M:ImpromptuInterface.Impromptu.InvokeGet(System.Object,System.String)"></see>, <see cref="M:ImpromptuInterface.Impromptu.InvokeSet(System.Object,System.String,System.Object)"></see> and <see cref="M:ImpromptuInterface.Impromptu.InvokeMemberAction(System.Object,ImpromptuInterface.String_OR_InvokeMemberName,System.Object[])"></see>
            </remarks>
        </member>
        <member name="M:ImpromptuInterface.Impromptu.ActLike``1(System.Object,System.Type[])">
            <summary>
            Extension Method that Wraps an existing object with an Explicit interface definition
            </summary>
            <typeparam name="TInterface">The type of the interface.</typeparam>
            <param name="originalDynamic">The original object can be annoymous type, System.DynamicObject as well as any others.</param>
            <param name="otherInterfaces">Optional other interfaces.</param>
            <returns></returns>
        </member>
        <member name="M:ImpromptuInterface.Impromptu.UndoActLike(System.Object)">
            <summary>
            Unwraps the act like proxy (if wrapped).
            </summary>
            <param name="proxiedObject">The proxied object.</param>
            <returns></returns>
        </member>
        <member name="M:ImpromptuInterface.Impromptu.ActLike(System.Object,System.Type[])">
            <summary>
            Extension Method that Wraps an existing object with an Interface of what it is implicitly assigned to.
            </summary>
            <param name="originalDynamic">The original dynamic.</param>
            <param name="otherInterfaces">The other interfaces.</param>
            <returns></returns>
        </member>
        <member name="M:ImpromptuInterface.Impromptu.ActLikeProperties(System.Object,System.Collections.Generic.IDictionary{System.String,System.Type})">
            <summary>
            Makes static methods for the passed in property spec, designed to be used with old api's that reflect properties.
            </summary>
            <param name="originalDynamic">The original dynamic.</param>
            <param name="propertySpec">The property spec.</param>
            <returns></returns>
        </member>
        <member name="M:ImpromptuInterface.Impromptu.InitializeProxy(System.Type,System.Object,System.Collections.Generic.IEnumerable{System.Type},System.Collections.Generic.IDictionary{System.String,System.Type})">
            <summary>
            Private helper method that initializes the proxy.
            </summary>
            <param name="proxytype">The proxytype.</param>
            <param name="original">The original.</param>
            <param name="interfaces">The interfaces.</param>
            <param name="propertySpec">The property spec.</param>
            <returns></returns>
        </member>
        <member name="M:ImpromptuInterface.Impromptu.CallActLike``1(System.Object,System.Object,System.Type[])">
            <summary>
            This Extension method is called off the calling context to perserve permissions with the object wrapped with an explicit interface definition.
            </summary>
            <typeparam name="TInterface">The type of the interface.</typeparam>
            <param name="caller">The caller.</param>
            <param name="originalDynamic">The original dynamic.</param>
            <param name="otherInterfaces">The other interfaces.</param>
            <returns></returns>
            <example>
            UnitTest That describes usage
            <code>
            <![CDATA[
                var tTest = new TestWithPrivateMethod();
                var tNonExposed = this.CallActLike<IExposePrivateMethod>(tTest);
                Assert.Throws<RuntimeBinderException>(() => tNonExposed.Test());
            ]]>
            </code>
            </example>
        </member>
        <member name="M:ImpromptuInterface.Impromptu.AllActLike``1(System.Collections.Generic.IEnumerable{System.Object},System.Type[])">
            <summary>
            Chainable Linq to Objects Method, allows you to wrap a list of objects with an Explict interface defintion
            </summary>
            <typeparam name="TInterface">The type of the interface.</typeparam>
            <param name="originalDynamic">The original dynamic.</param>
            <param name="otherInterfaces">The other interfaces.</param>
            <returns></returns>
        </member>
        <member name="M:ImpromptuInterface.Impromptu.DynamicActLike(System.Object,System.Type[])">
            <summary>
            Static Method that wraps an existing dyanmic object with a explicit interface type
            </summary>
            <param name="originalDynamic">The original dynamic.</param>
            <param name="otherInterfaces">The other interfaces.</param>
            <returns></returns>
        </member>
        <member name="M:ImpromptuInterface.Impromptu.CallDynamicActLike(System.Object,System.Object,System.Type[])">
            <summary>
            This Extension method is called off the calling context to perserve permissions with the object wrapped with an explicit interface definition.
            </summary>
            <param name="caller">The caller.</param>
            <param name="originalDynamic">The original dynamic.</param>
            <param name="otherInterfaces">The other interfaces.</param>
            <returns></returns>
        </member>
        <member name="M:ImpromptuInterface.Impromptu.AllCallActLike``1(System.Collections.Generic.IEnumerable{System.Object},System.Object,System.Type[])">
            <summary>
            Chainable Linq to Objects Method, allows you to wrap a list of objects, and preserve method permissions with a caller, with an Explict interface defintion
            </summary>
            <typeparam name="TInterface">The type of the interface.</typeparam>
            <param name="originalDynamic">The original dynamic.</param>
            <param name="caller">The caller.</param>
            <param name="otherInterfaces">The other interfaces.</param>
            <returns></returns>
        </member>
        <member name="P:ImpromptuInterface.Impromptu.InvokeSetAll">
            <summary>
            Call Like method invokes set on target and a list of property/value. Invoke with dictionary, anonymous type or named arguments.
            </summary>
            <value>The invoke set all.</value>
        </member>
        <member name="T:ImpromptuInterface.Internal.Curry">
            <summary>
            Internal Implementation of <see cref="M:ImpromptuInterface.Impromptu.Curry(System.Object,System.Nullable{System.Int32})"/>
            </summary>
        </member>
        <member name="M:ImpromptuInterface.Internal.Curry.TryConvert(System.Dynamic.ConvertBinder,System.Object@)">
            <summary>
            Provides implementation for type conversion operations. Classes derived from the <see cref="T:System.Dynamic.DynamicObject"/> class can override this method to specify dynamic behavior for operations that convert an object from one type to another.
            </summary>
            <param name="binder">Provides information about the conversion operation. The binder.Type property provides the type to which the object must be converted. For example, for the statement (String)sampleObject in C# (CType(sampleObject, Type) in Visual Basic), where sampleObject is an instance of the class derived from the <see cref="T:System.Dynamic.DynamicObject"/> class, binder.Type returns the <see cref="T:System.String"/> type. The binder.Explicit property provides information about the kind of conversion that occurs. It returns true for explicit conversion and false for implicit conversion.</param>
            <param name="result">The result of the type conversion operation.</param>
            <returns>
            true if the operation is successful; otherwise, false. If this method returns false, the run-time binder of the language determines the behavior. (In most cases, a language-specific run-time exception is thrown.)
            </returns>
        </member>
        <member name="M:ImpromptuInterface.Internal.Curry.TryInvokeMember(System.Dynamic.InvokeMemberBinder,System.Object[],System.Object@)">
            <summary>
            Provides the implementation for operations that invoke a member. Classes derived from the <see cref="T:System.Dynamic.DynamicObject"/> class can override this method to specify dynamic behavior for operations such as calling a method.
            </summary>
            <param name="binder">Provides information about the dynamic operation. The binder.Name property provides the name of the member on which the dynamic operation is performed. For example, for the statement sampleObject.SampleMethod(100), where sampleObject is an instance of the class derived from the <see cref="T:System.Dynamic.DynamicObject"/> class, binder.Name returns "SampleMethod". The binder.IgnoreCase property specifies whether the member name is case-sensitive.</param>
            <param name="args">The arguments that are passed to the object member during the invoke operation. For example, for the statement sampleObject.SampleMethod(100), where sampleObject is derived from the <see cref="T:System.Dynamic.DynamicObject"/> class, <paramref name="args"/>[0] is equal to 100.</param>
            <param name="result">The result of the member invocation.</param>
            <returns>
            true if the operation is successful; otherwise, false. If this method returns false, the run-time binder of the language determines the behavior. (In most cases, a language-specific run-time exception is thrown.)
            </returns>
        </member>
        <member name="M:ImpromptuInterface.Internal.Curry.TryInvoke(System.Dynamic.InvokeBinder,System.Object[],System.Object@)">
            <summary>
            Provides the implementation for operations that invoke an object. Classes derived from the <see cref="T:System.Dynamic.DynamicObject"/> class can override this method to specify dynamic behavior for operations such as invoking an object or a delegate.
            </summary>
            <param name="binder">Provides information about the invoke operation.</param>
            <param name="args">The arguments that are passed to the object during the invoke operation. For example, for the sampleObject(100) operation, where sampleObject is derived from the <see cref="T:System.Dynamic.DynamicObject"/> class, <paramref name="args"/>[0] is equal to 100.</param>
            <param name="result">The result of the object invocation.</param>
            <returns>
            true if the operation is successful; otherwise, false. If this method returns false, the run-time binder of the language determines the behavior. (In most cases, a language-specific run-time exception is thrown.
            </returns>
        </member>
        <member name="T:ImpromptuInterface.Internal.InvokeSetters">
            <summary>
            Internal class implmenation for <see cref="P:ImpromptuInterface.Impromptu.InvokeSetAll"/>
            </summary>
        </member>
        <member name="M:ImpromptuInterface.Internal.InvokeSetters.TryInvoke(System.Dynamic.InvokeBinder,System.Object[],System.Object@)">
            <summary>
            Provides the implementation for operations that invoke an object. Classes derived from the <see cref="T:System.Dynamic.DynamicObject"/> class can override this method to specify dynamic behavior for operations such as invoking an object or a delegate.
            </summary>
            <param name="binder">Provides information about the invoke operation.</param>
            <param name="args">The arguments that are passed to the object during the invoke operation. For example, for the sampleObject(100) operation, where sampleObject is derived from the <see cref="T:System.Dynamic.DynamicObject"/> class, <paramref name="args"/>[0] is equal to 100.</param>
            <param name="result">The result of the object invocation.</param>
            <returns>
            true if the operation is successful; otherwise, false. If this method returns false, the run-time binder of the language determines the behavior. (In most cases, a language-specific run-time exception is thrown.
            </returns>
        </member>
        <member name="T:ImpromptuInterface.InvokeArg">
            <summary>
            Use for Named arguments passed to InvokeMethods
            </summary>
        </member>
        <member name="M:ImpromptuInterface.InvokeArg.op_Explicit(System.Collections.Generic.KeyValuePair{System.String,System.Object})~ImpromptuInterface.InvokeArg">
            <summary>
            Performs an explicit conversion from <see cref="T:System.Collections.Generic.KeyValuePair`2"/> to <see cref="T:ImpromptuInterface.InvokeArg"/>.
            </summary>
            <param name="pair">The pair.</param>
            <returns>The result of the conversion.</returns>
        </member>
        <member name="F:ImpromptuInterface.InvokeArg.Create">
            <summary>
            Create Function can set to variable to make cleaner syntax;
            </summary>
        </member>
        <member name="M:ImpromptuInterface.InvokeArg.#ctor(System.String,System.Object)">
            <summary>
            Initializes a new instance of the <see cref="T:ImpromptuInterface.InvokeArg"/> class.
            </summary>
            <param name="name">The name.</param>
            <param name="value">The value.</param>
        </member>
        <member name="P:ImpromptuInterface.InvokeArg.Name">
            <summary>
            Gets or sets the argument name.
            </summary>
            <value>The name.</value>
        </member>
        <member name="P:ImpromptuInterface.InvokeArg.Value">
            <summary>
            Gets or sets the argument value.
            </summary>
            <value>The value.</value>
        </member>
        <member name="T:ImpromptuInterface.InvokeArg`1">
            <summary>
            InvokeArg that makes it easier to Cast from any IDictionaryValue
            </summary>
            <typeparam name="T"></typeparam>
        </member>
        <member name="M:ImpromptuInterface.InvokeArg`1.#ctor(System.String,System.Object)">
            <summary>
            Initializes a new instance of the <see cref="T:ImpromptuInterface.InvokeArg`1"/> class.
            </summary>
            <param name="name">The name.</param>
            <param name="value">The value.</param>
        </member>
        <member name="M:ImpromptuInterface.InvokeArg`1.op_Explicit(System.Collections.Generic.KeyValuePair{System.String,`0})~ImpromptuInterface.InvokeArg{`0}">
            <summary>
            Performs an explicit conversion from <see cref="T:System.Collections.Generic.KeyValuePair`2"/> to <see cref="T:ImpromptuInterface.InvokeArg`1"/>.
            </summary>
            <param name="pair">The pair.</param>
            <returns>The result of the conversion.</returns>
        </member>
        <member name="T:ImpromptuInterface.StaticContext">
            <summary>
            Specific version of InvokeContext which declares a type to be used to invoke static methods.
            </summary>
        </member>
        <member name="T:ImpromptuInterface.InvokeContext">
            <summary>
            Object that stores a context with a target for dynamic invocation
            </summary>
        </member>
        <member name="F:ImpromptuInterface.InvokeContext.CreateContext">
            <summary>
            Create Function can set to variable to make cleaner syntax;
            </summary>
        </member>
        <member name="F:ImpromptuInterface.InvokeContext.CreateStatic">
            <summary>
            Create Function can set to variable to make cleaner syntax;
            </summary>
        </member>
        <member name="F:ImpromptuInterface.InvokeContext.CreateStaticWithContext">
            <summary>
            Create Function can set to variable to make cleaner syntax;
            </summary>
        </member>
        <member name="M:ImpromptuInterface.InvokeContext.#ctor(System.Type,System.Boolean,System.Object)">
            <summary>
            Initializes a new instance of the <see cref="T:ImpromptuInterface.InvokeContext"/> class.
            </summary>
            <param name="target">The target.</param>
            <param name="staticContext">if set to <c>true</c> [static context].</param>
            <param name="context">The context.</param>
        </member>
        <member name="M:ImpromptuInterface.InvokeContext.#ctor(System.Object,System.Object)">
            <summary>
            Initializes a new instance of the <see cref="T:ImpromptuInterface.InvokeContext"/> class.
            </summary>
            <param name="target">The target.</param>
            <param name="context">The context.</param>
        </member>
        <member name="P:ImpromptuInterface.InvokeContext.Target">
            <summary>
            Gets or sets the target.
            </summary>
            <value>The target.</value>
        </member>
        <member name="P:ImpromptuInterface.InvokeContext.Context">
            <summary>
            Gets or sets the context.
            </summary>
            <value>The context.</value>
        </member>
        <member name="P:ImpromptuInterface.InvokeContext.StaticContext">
            <summary>
            Gets or sets a value indicating whether [static context].
            </summary>
            <value><c>true</c> if [static context]; otherwise, <c>false</c>.</value>
        </member>
        <member name="M:ImpromptuInterface.StaticContext.op_Explicit(System.Type)~ImpromptuInterface.StaticContext">
            <summary>
            Performs an explicit conversion from <see cref="T:System.Type"/> to <see cref="T:ImpromptuInterface.StaticContext"/>.
            </summary>
            <param name="type">The type.</param>
            <returns>The result of the conversion.</returns>
        </member>
        <member name="M:ImpromptuInterface.StaticContext.#ctor(System.Type)">
            <summary>
            Initializes a new instance of the <see cref="T:ImpromptuInterface.StaticContext"/> class.
            </summary>
            <param name="target">The target.</param>
        </member>
        <member name="T:ImpromptuInterface.InvokeExt.InvokeExt">
            <summary>
            Various extension methods for add
            </summary>
        </member>
        <member name="M:ImpromptuInterface.InvokeExt.InvokeExt.WithContext(System.Object,System.Type)">
            <summary>
            Combines target with context.
            </summary>
            <param name="target">The target.</param>
            <param name="context">The context.</param>
            <returns></returns>
        </member>
        <member name="M:ImpromptuInterface.InvokeExt.InvokeExt.WithContext``1(System.Object)">
            <summary>
            Combines target with context.
            </summary>
            <typeparam name="TContext">The type of the context.</typeparam>
            <param name="target">The target.</param>
            <returns></returns>
        </member>
        <member name="M:ImpromptuInterface.InvokeExt.InvokeExt.WithContext(System.Object,System.Object)">
            <summary>
            Combines target with context.
            </summary>
            <param name="target">The target.</param>
            <param name="context">The context.</param>
            <returns></returns>
        </member>
        <member name="M:ImpromptuInterface.InvokeExt.InvokeExt.WithStaticContext(System.Type,System.Object)">
            <summary>
            Withes the static context.
            </summary>
            <param name="target">The target.</param>
            <param name="context">The context.</param>
            <returns></returns>
        </member>
        <member name="M:ImpromptuInterface.InvokeExt.InvokeExt.WithGenericArgs(System.String,System.Type[])">
            <summary>
            attaches generic args to string
            </summary>
            <param name="name">The name.</param>
            <param name="genericArgs">The generic args.</param>
            <returns></returns>
        </member>
        <member name="M:ImpromptuInterface.InvokeExt.InvokeExt.WithArgumentName(System.Object,System.String)">
            <summary>
            attaches name of the argument.
            </summary>
            <param name="argument">The argument.</param>
            <param name="name">The name.</param>
            <returns></returns>
        </member>
        <member name="T:ImpromptuInterface.String_OR_InvokeMemberName">
            <summary>
            String or InvokeMemberName
            </summary>
        </member>
        <member name="M:ImpromptuInterface.String_OR_InvokeMemberName.op_Implicit(System.String)~ImpromptuInterface.String_OR_InvokeMemberName">
            <summary>
            Performs an implicit conversion from <see cref="T:System.String"/> to <see cref="T:ImpromptuInterface.String_OR_InvokeMemberName"/>.
            </summary>
            <param name="name">The name.</param>
            <returns>The result of the conversion.</returns>
        </member>
        <member name="P:ImpromptuInterface.String_OR_InvokeMemberName.Name">
            <summary>
            Gets the name.
            </summary>
            <value>The name.</value>
        </member>
        <member name="P:ImpromptuInterface.String_OR_InvokeMemberName.GenericArgs">
            <summary>
            Gets the generic args.
            </summary>
            <value>The generic args.</value>
        </member>
        <member name="P:ImpromptuInterface.String_OR_InvokeMemberName.IsSpecialName">
            <summary>
            Gets or sets a value indicating whether this member is special name.
            </summary>
            <value>
            	<c>true</c> if this instance is special name; otherwise, <c>false</c>.
            </value>
        </member>
        <member name="T:ImpromptuInterface.InvokeMemberName">
            <summary>
            Name of Member with associated Generic parameterss
            </summary>
        </member>
        <member name="F:ImpromptuInterface.InvokeMemberName.Create">
            <summary>
            Create Function can set to variable to make cleaner syntax;
            </summary>
        </member>
        <member name="F:ImpromptuInterface.InvokeMemberName.CreateSpecialName">
            <summary>
            Create Function can set to variable to make cleaner syntax;
            </summary>
        </member>
        <member name="M:ImpromptuInterface.InvokeMemberName.op_Implicit(System.String)~ImpromptuInterface.InvokeMemberName">
            <summary>
            Performs an implicit conversion from <see cref="T:System.String"/> to <see cref="T:ImpromptuInterface.InvokeMemberName"/>.
            </summary>
            <param name="name">The name.</param>
            <returns>The result of the conversion.</returns>
        </member>
        <member name="M:ImpromptuInterface.InvokeMemberName.#ctor(System.String,System.Type[])">
            <summary>
            Initializes a new instance of the <see cref="T:ImpromptuInterface.InvokeMemberName"/> class.
            </summary>
            <param name="name">The name.</param>
            <param name="genericArgs">The generic args.</param>
        </member>
        <member name="M:ImpromptuInterface.InvokeMemberName.#ctor(System.String,System.Boolean)">
            <summary>
            Initializes a new instance of the <see cref="T:ImpromptuInterface.InvokeMemberName"/> class.
            </summary>
            <param name="name">The name.</param>
            <param name="isSpecialName">if set to <c>true</c> [is special name].</param>
        </member>
        <member name="M:ImpromptuInterface.InvokeMemberName.Equals(System.Object)">
            <summary>
            Determines whether the specified <see cref="T:System.Object"/> is equal to this instance.
            </summary>
            <param name="obj">The <see cref="T:System.Object"/> to compare with this instance.</param>
            <returns>
            	<c>true</c> if the specified <see cref="T:System.Object"/> is equal to this instance; otherwise, <c>false</c>.
            </returns>
        </member>
        <member name="M:ImpromptuInterface.InvokeMemberName.GetHashCode">
            <summary>
            Returns a hash code for this instance.
            </summary>
            <returns>
            A hash code for this instance, suitable for use in hashing algorithms and data structures like a hash table. 
            </returns>
        </member>
        <member name="M:ImpromptuInterface.Optimization.BareBonesList`1.#ctor(System.Int32)">
            <summary>
            Initializes a new instance of the <see cref="T:ImpromptuInterface.Optimization.BareBonesList`1"/> class.
            </summary>
            <param name="length">The max length that the list cannot grow beyound</param>
        </member>
        <member name="M:ImpromptuInterface.Optimization.BareBonesList`1.GetEnumerator">
            <summary>
            Gets the enumerator. with bare bones this is good only once
            </summary>
            <returns></returns>
        </member>
        <member name="T:ImpromptuInterface.Optimization.InvokeHelper.LazyBinder">
            <summary>
            LazyBinderType
            </summary>
        </member>
        <member name="T:ImpromptuInterface.Optimization.Util">
            <summary>
            Utility Class
            </summary>
        </member>
        <member name="M:ImpromptuInterface.Optimization.Util.IsAnonymousType(System.Object)">
            <summary>
            Determines whether [is anonymous type] [the specified target].
            </summary>
            <param name="target">The target.</param>
            <returns>
            	<c>true</c> if [is anonymous type] [the specified target]; otherwise, <c>false</c>.
            </returns>
        </member>
        <member name="M:ImpromptuInterface.Optimization.Util.NameArgsIfNecessary(System.Dynamic.CallInfo,System.Object[])">
            <summary>
            Names the args if necessary.
            </summary>
            <param name="callInfo">The call info.</param>
            <param name="args">The args.</param>
            <returns></returns>
        </member>
        <member name="M:ImpromptuInterface.Optimization.Util.GetTargetContext(System.Object,System.Type@,System.Boolean@)">
            <summary>
            Gets the target context.
            </summary>
            <param name="target">The target.</param>
            <param name="context">The context.</param>
            <param name="staticContext">if set to <c>true</c> [static context].</param>
            <returns></returns>
        </member>
        <member name="M:ImpromptuInterface.Optimization.Util.FixContext(System.Type)">
            <summary>
            Fixes the context.
            </summary>
            <param name="context">The context.</param>
            <returns></returns>
        </member>
        <member name="M:ImpromptuInterface.Optimization.Util.GetValue``1(System.Runtime.Serialization.SerializationInfo,System.String)">
            <summary>
            Gets the value. Conveinence Ext method
            </summary>
            <typeparam name="T"></typeparam>
            <param name="info">The info.</param>
            <param name="name">The name.</param>
            <returns></returns>
        </member>
        <member name="F:ImpromptuInterface.Optimization.Util.IsMono">
            <summary>
            Is Current Runtime Mono?
            </summary>
        </member>
    </members>
</doc>
