--- a
+++ b/trunk/cforge/packages/IronPython-2.7.7/Platforms/Net45/Microsoft.Dynamic.xml
@@ -0,0 +1,6543 @@
+<?xml version="1.0"?>
+<doc>
+    <assembly>
+        <name>Microsoft.Dynamic</name>
+    </assembly>
+    <members>
+        <member name="P:Microsoft.Scripting.Actions.Calls.ActualArguments.Count">
+            <summary>
+            The number of arguments not counting the collapsed ones.
+            </summary>
+        </member>
+        <member name="P:Microsoft.Scripting.Actions.Calls.ActualArguments.VisibleCount">
+            <summary>
+            Gets the total number of visible arguments passed to the call site including collapsed ones.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Actions.Calls.ActualArguments.TryBindNamedArguments(Microsoft.Scripting.Actions.Calls.MethodCandidate,Microsoft.Scripting.Actions.Calls.ArgumentBinding@,Microsoft.Scripting.Actions.Calls.CallFailure@)">
+            <summary>
+            Binds named arguments to the parameters. Returns a permutation of indices that captures the relationship between 
+            named arguments and their corresponding parameters. Checks for duplicate and unbound named arguments.
+            
+            Ensures that for all i: namedArgs[i] binds to parameters[args.Length + bindingPermutation[i]] 
+            </summary>
+        </member>
+        <member name="T:Microsoft.Scripting.Actions.Calls.ArgBuilder">
+            <summary>
+            ArgBuilder provides an argument value used by the MethodBinder.  One ArgBuilder exists for each
+            physical parameter defined on a method.  
+            
+            Contrast this with ParameterWrapper which represents the logical argument passed to the method.
+            </summary>
+        </member>
+        <member name="P:Microsoft.Scripting.Actions.Calls.ArgBuilder.ConsumedArgumentCount">
+            <summary>
+            The number of actual arguments consumed by this builder.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Actions.Calls.ArgBuilder.ToExpression(Microsoft.Scripting.Actions.Calls.OverloadResolver,Microsoft.Scripting.Actions.Calls.RestrictedArguments,System.Boolean[])">
+            <summary>
+            Provides the Expression which provides the value to be passed to the argument.
+            If <c>null</c> is returned the argument is skipped (not passed to the callee).
+            </summary>
+        </member>
+        <member name="P:Microsoft.Scripting.Actions.Calls.ArgBuilder.Type">
+            <summary>
+            Returns the type required for the argument or null if the ArgBuilder
+            does not consume a type.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Actions.Calls.ArgBuilder.UpdateFromReturn(Microsoft.Scripting.Actions.Calls.OverloadResolver,Microsoft.Scripting.Actions.Calls.RestrictedArguments)">
+            <summary>
+            Provides an Expression which will update the provided value after a call to the method.  May
+            return null if no update is required.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Actions.Calls.ArgBuilder.ToReturnExpression(Microsoft.Scripting.Actions.Calls.OverloadResolver)">
+            <summary>
+            If the argument produces a return value (e.g. a ref or out value) this provides
+            the additional value to be returned.
+            </summary>
+        </member>
+        <member name="P:Microsoft.Scripting.Actions.Calls.ArgBuilder.ByRefArgument">
+            <summary>
+            An assignable value that is passed to a byref parameter
+            After the call it will contain the updated value
+            </summary>
+        </member>
+        <member name="T:Microsoft.Scripting.Actions.Calls.BindingResult">
+            <summary>
+            Indicates the specific type of failure, if any, from binding to a method.
+            </summary>
+        </member>
+        <member name="F:Microsoft.Scripting.Actions.Calls.BindingResult.Success">
+            <summary>
+            The binding succeeded.  Only one method was applicable or had the best conversion.  
+            </summary>
+        </member>
+        <member name="F:Microsoft.Scripting.Actions.Calls.BindingResult.AmbiguousMatch">
+            <summary>
+            More than one method was applicable for the provided parameters and no method was considered the best.
+            </summary>
+        </member>
+        <member name="F:Microsoft.Scripting.Actions.Calls.BindingResult.IncorrectArgumentCount">
+            <summary>
+            There are no overloads that match the number of parameters required for the call
+            </summary>
+        </member>
+        <member name="F:Microsoft.Scripting.Actions.Calls.BindingResult.CallFailure">
+            <summary>
+            None of the target method(s) can successfully be called.  The failure can be due to:
+                1. Arguments could not be successfully converted for the call
+                2. Keyword arguments could not be assigned to positional arguments
+                3. Keyword arguments could be assigned but would result in an argument being assigned 
+                   multiple times (keyword and positional arguments conflit or dupliate keyword arguments).
+            </summary>
+        </member>
+        <member name="F:Microsoft.Scripting.Actions.Calls.BindingResult.InvalidArguments">
+            <summary>
+            Actual arguments cannot be constructed.
+            </summary>
+        </member>
+        <member name="F:Microsoft.Scripting.Actions.Calls.BindingResult.NoCallableMethod">
+            <summary>
+            No method is callable. For example, all methods have an unbound generic parameter.
+            </summary>
+        </member>
+        <member name="T:Microsoft.Scripting.Actions.Calls.BindingTarget">
+            <summary>
+            Encapsulates the result of an attempt to bind to one or methods using the OverloadResolver.
+            
+            Users should first check the Result property to see if the binding was successful or
+            to determine the specific type of failure that occured.  If the binding was successful
+            MakeExpression can then be called to create an expression which calls the method.
+            If the binding was a failure callers can then create a custom error message based upon
+            the reason the call failed.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Actions.Calls.BindingTarget.#ctor(System.String,System.Int32,Microsoft.Scripting.Actions.Calls.MethodCandidate,Microsoft.Scripting.Actions.Calls.NarrowingLevel,Microsoft.Scripting.Actions.Calls.RestrictedArguments)">
+            <summary>
+            Creates a new BindingTarget when the method binding has succeeded.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Actions.Calls.BindingTarget.#ctor(System.String,System.Int32,System.Int32[])">
+            <summary>
+            Creates a new BindingTarget when the method binding has failed due to an incorrect argument count
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Actions.Calls.BindingTarget.#ctor(System.String,System.Int32,Microsoft.Scripting.Actions.Calls.CallFailure[])">
+            <summary>
+            Creates a new BindingTarget when the method binding has failued due to 
+            one or more parameters which could not be converted.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Actions.Calls.BindingTarget.#ctor(System.String,System.Int32,Microsoft.Scripting.Actions.Calls.MethodCandidate[])">
+            <summary>
+            Creates a new BindingTarget when the match was ambiguous
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Actions.Calls.BindingTarget.#ctor(System.String,Microsoft.Scripting.Actions.Calls.BindingResult)">
+            <summary>
+            Other failure.
+            </summary>
+        </member>
+        <member name="P:Microsoft.Scripting.Actions.Calls.BindingTarget.Result">
+            <summary>
+            Gets the result of the attempt to bind.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Actions.Calls.BindingTarget.MakeExpression">
+            <summary>
+            Gets an Expression which calls the binding target if the method binding succeeded.
+            
+            Throws InvalidOperationException if the binding failed.
+            </summary>
+        </member>
+        <member name="P:Microsoft.Scripting.Actions.Calls.BindingTarget.Method">
+            <summary>
+            Returns the method if the binding succeeded, or null if no method was applicable.
+            </summary>
+        </member>
+        <member name="P:Microsoft.Scripting.Actions.Calls.BindingTarget.Overload">
+            <summary>
+            Returns the selected overload if the binding succeeded, or null if no one was applicable.
+            </summary>
+        </member>
+        <member name="P:Microsoft.Scripting.Actions.Calls.BindingTarget.Name">
+            <summary>
+            Gets the name of the method as supplied to the OverloadResolver.
+            </summary>
+        </member>
+        <member name="P:Microsoft.Scripting.Actions.Calls.BindingTarget.MethodCandidate">
+            <summary>
+            Returns the MethodTarget if the binding succeeded, or null if no method was applicable.
+            </summary>
+        </member>
+        <member name="P:Microsoft.Scripting.Actions.Calls.BindingTarget.AmbiguousMatches">
+            <summary>
+            Returns the methods which don't have any matches or null if Result == BindingResult.AmbiguousMatch
+            </summary>
+        </member>
+        <member name="P:Microsoft.Scripting.Actions.Calls.BindingTarget.CallFailures">
+            <summary>
+            Returns the methods and their associated conversion failures if Result == BindingResult.CallFailure.
+            </summary>
+        </member>
+        <member name="P:Microsoft.Scripting.Actions.Calls.BindingTarget.ExpectedArgumentCount">
+            <summary>
+            Returns the acceptable number of arguments which can be passed to the method if Result == BindingResult.IncorrectArgumentCount.
+            </summary>
+        </member>
+        <member name="P:Microsoft.Scripting.Actions.Calls.BindingTarget.ActualArgumentCount">
+            <summary>
+            Returns the total number of arguments provided to the call. 0 if the call succeeded or failed for a reason other
+            than argument count mismatch.
+            </summary>
+        </member>
+        <member name="P:Microsoft.Scripting.Actions.Calls.BindingTarget.RestrictedArguments">
+            <summary>
+            Gets the MetaObjects which we originally did binding against in their restricted form.
+            
+            The members of the array correspond to each of the arguments.  All members of the array
+            have a value.
+            </summary>
+        </member>
+        <member name="P:Microsoft.Scripting.Actions.Calls.BindingTarget.ReturnType">
+            <summary>
+            Returns the return type of the binding, or null if no method was applicable.
+            </summary>
+        </member>
+        <member name="P:Microsoft.Scripting.Actions.Calls.BindingTarget.NarrowingLevel">
+            <summary>
+            Returns the NarrowingLevel of the method if the call succeeded.  If the call
+            failed returns NarrowingLevel.None.
+            </summary>
+        </member>
+        <member name="P:Microsoft.Scripting.Actions.Calls.BindingTarget.Success">
+            <summary>
+            Returns true if the binding was succesful, false if it failed.
+            
+            This is an alias for BindingTarget.Result == BindingResult.Success.
+            </summary>
+        </member>
+        <member name="T:Microsoft.Scripting.Actions.Calls.CallFailure">
+            <summary>
+            Represents the reason why a call to a specific method could not be performed by the OverloadResolver.
+            
+            The reason for the failure is specified by the CallFailureReason property.  Once this property
+            has been consulted the other properties can be consulted for more detailed information regarding
+            the failure.
+            
+            If reason is ConversionFailure the ConversionResults property will be non-null.
+            If reason is UnassignableKeyword the KeywordArguments property will be non-null and include
+                the keywords which could not be assigned.
+            If reason is DuplicateKeyword the KeywordArguments property will be non-null and include
+                the keywords which were duplicated (either by the keywords themselves or by positional
+                arguments).
+                
+            MethodTarget is always set and indicates the method which failed to bind.
+            </summary>
+        </member>
+        <member name="P:Microsoft.Scripting.Actions.Calls.CallFailure.Candidate">
+            <summary>
+            Gets the MethodTarget which the call failed for.
+            </summary>
+        </member>
+        <member name="P:Microsoft.Scripting.Actions.Calls.CallFailure.Reason">
+            <summary>
+            Gets the reason for the call failure which determines the other 
+            properties of the CallFailure which should be consulted.
+            </summary>
+        </member>
+        <member name="P:Microsoft.Scripting.Actions.Calls.CallFailure.ConversionResults">
+            <summary>
+            Gets a list of ConversionResult's for each parameter indicating
+            whether the conversion was successful or failed and the types
+            being converted.
+            </summary>
+        </member>
+        <member name="P:Microsoft.Scripting.Actions.Calls.CallFailure.KeywordArguments">
+            <summary>
+            Gets the list of keyword arguments that were either dupliated or
+            unassignable.
+            </summary>
+        </member>
+        <member name="F:Microsoft.Scripting.Actions.Calls.CallFailureReason.None">
+            <summary>
+            Default value, their was no CallFailure.
+            </summary>
+        </member>
+        <member name="F:Microsoft.Scripting.Actions.Calls.CallFailureReason.ConversionFailure">
+            <summary>
+            One of more parameters failed to be converted
+            </summary>
+        </member>
+        <member name="F:Microsoft.Scripting.Actions.Calls.CallFailureReason.UnassignableKeyword">
+            <summary>
+            One or more keyword arguments could not be successfully assigned to a positional argument
+            </summary>
+        </member>
+        <member name="F:Microsoft.Scripting.Actions.Calls.CallFailureReason.DuplicateKeyword">
+            <summary>
+            One or more keyword arguments were duplicated or would have taken the spot of a 
+            provided positional argument.
+            </summary>
+        </member>
+        <member name="F:Microsoft.Scripting.Actions.Calls.CallFailureReason.TypeInference">
+            <summary>
+            Type arguments could not be inferred
+            </summary>
+        </member>
+        <member name="T:Microsoft.Scripting.Actions.Calls.CandidateSet">
+            <summary>
+            Represents a collection of MethodCandidate's which all accept the
+            same number of logical parameters.  For example a params method
+            and a method with 3 parameters would both be a CandidateSet for 3 parameters.
+            </summary>
+        </member>
+        <member name="T:Microsoft.Scripting.Actions.Calls.ConversionResult">
+            <summary>
+            Represents information about a failure to convert an argument from one
+            type to another.
+            </summary>
+        </member>
+        <member name="P:Microsoft.Scripting.Actions.Calls.ConversionResult.Arg">
+            <summary>
+            Value of the argument or null if it is not available.
+            </summary>
+        </member>
+        <member name="P:Microsoft.Scripting.Actions.Calls.ConversionResult.ArgType">
+            <summary>
+            Argument actual type or its limit type if the value not known.
+            DynamicNull if the argument value is null.
+            </summary>
+        </member>
+        <member name="T:Microsoft.Scripting.Actions.Calls.DefaultArgBuilder">
+            <summary>
+            ArgBuilder which provides a default parameter value for a method call.
+            </summary>
+        </member>
+        <member name="P:Microsoft.Scripting.Actions.Calls.InstanceBuilder.ConsumedArgumentCount">
+            <summary>
+            The number of actual arguments consumed by this builder.
+            </summary>
+        </member>
+        <member name="T:Microsoft.Scripting.Actions.Calls.KeywordArgBuilder">
+            <summary>
+            ArgBuilder which provides a value for a keyword argument.  
+            
+            The KeywordArgBuilder calculates its position at emit time using it's initial 
+            offset within the keyword arguments, the number of keyword arguments, and the 
+            total number of arguments provided by the user.  It then delegates to an 
+            underlying ArgBuilder which only receives the single correct argument.
+            
+            Delaying the calculation of the position to emit time allows the method binding to be 
+            done without knowing the exact the number of arguments provided by the user. Hence,
+            the method binder can be dependent only on the set of method overloads and keyword names,
+            but not the user arguments. While the number of user arguments could be determined
+            upfront, the current MethodBinder does not have this design.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Actions.Calls.KeywordArgBuilder.BuilderExpectsSingleParameter(Microsoft.Scripting.Actions.Calls.ArgBuilder)">
+            <summary>
+            The underlying builder should expect a single parameter as KeywordArgBuilder is responsible
+            for calculating the correct parameter to use
+            </summary>
+            <param name="builder"></param>
+        </member>
+        <member name="T:Microsoft.Scripting.Actions.Calls.KeywordConstructorReturnBuilder">
+            <summary>
+            Updates fields/properties of the returned value with unused keyword parameters.
+            </summary>
+        </member>
+        <member name="T:Microsoft.Scripting.Actions.Calls.MethodCandidate">
+             <summary>
+             MethodCandidate represents the different possible ways of calling a method or a set of method overloads.
+             A single method can result in multiple MethodCandidates. Some reasons include:
+             - Every optional parameter or parameter with a default value will result in a candidate
+             - The presence of ref and out parameters will add a candidate for languages which want to return the updated values as return values.
+             - ArgumentKind.List and ArgumentKind.Dictionary can result in a new candidate per invocation since the list might be different every time.
+            
+             Each MethodCandidate represents the parameter type for the candidate using ParameterWrapper.
+             </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Actions.Calls.MethodCandidate.MakeParamsExtended(System.Int32,System.Collections.Generic.IList{System.String})">
+            <summary>
+            Builds a new MethodCandidate which takes count arguments and the provided list of keyword arguments.
+            
+            The basic idea here is to figure out which parameters map to params or a dictionary params and
+            fill in those spots w/ extra ParameterWrapper's.  
+            </summary>
+        </member>
+        <member name="T:Microsoft.Scripting.Actions.Calls.NarrowingLevel">
+            <summary>
+            Narrowing conversions are conversions that cannot be proved to always succeed, conversions that are 
+            known to possibly lose information, and conversions across domains of types sufficiently different 
+            to merit narrowing notation like casts. 
+            
+            Its upto every language to define the levels for conversions. The narrowling levels can be used by
+            for method overload resolution, where the overload is based on the parameter types (and not the number 
+            of parameters).
+            </summary>
+        </member>
+        <member name="F:Microsoft.Scripting.Actions.Calls.NarrowingLevel.None">
+            <summary>
+            Conversions at this level do not do any narrowing. Typically, this will include
+            implicit numeric conversions, Type.IsAssignableFrom, StringBuilder to string, etc.
+            </summary>
+        </member>
+        <member name="F:Microsoft.Scripting.Actions.Calls.NarrowingLevel.One">
+            <summary>
+            Language defined prefered narrowing conversion.  First level that introduces narrowing
+            conversions.
+            </summary>
+        </member>
+        <member name="F:Microsoft.Scripting.Actions.Calls.NarrowingLevel.Two">
+            <summary>
+            Language defined preferred narrowing conversion.  Second level that introduces narrowing
+            conversions and should have more conversions than One.
+            </summary>
+        </member>
+        <member name="F:Microsoft.Scripting.Actions.Calls.NarrowingLevel.Three">
+            <summary>
+            Language defined preferred narrowing conversion.  Third level that introduces narrowing
+            conversions and should have more conversions that Two.
+            </summary>
+        </member>
+        <member name="F:Microsoft.Scripting.Actions.Calls.NarrowingLevel.All">
+            <summary>
+            A somewhat meaningful conversion is possible, but it will quite likely be lossy.
+            For eg. BigInteger to an Int32, Boolean to Int32, one-char string to a char,
+            larger number type to a smaller numeric type (where there is no overflow), etc
+            </summary>
+        </member>
+        <member name="T:Microsoft.Scripting.Actions.Calls.OutArgBuilder">
+            <summary>
+            Builds the argument for an out argument when not passed a StrongBox.  The out parameter
+            is returned as an additional return value.
+            </summary>
+        </member>
+        <member name="T:Microsoft.Scripting.Actions.Calls.OverloadInfo">
+            <summary>
+            Defines a method overload abstraction for the purpose of overload resolution. 
+            It provides the overload resolver the metadata it needs to perform the resolution.
+            </summary>
+            <remarks>
+            WARNING: This is a temporary API that will undergo breaking changes in future versions.
+            </remarks>
+        </member>
+        <member name="P:Microsoft.Scripting.Actions.Calls.OverloadInfo.ReturnParameter">
+            <summary>
+            Null for constructors.
+            </summary>
+        </member>
+        <member name="P:Microsoft.Scripting.Actions.Calls.OverloadInfo.IsVariadic">
+            <summary>
+            The method arity can vary, i.e. the method has params array or params dict parameters.
+            </summary>
+        </member>
+        <member name="T:Microsoft.Scripting.Actions.Calls.ReflectionOverloadInfo">
+            <summary>
+            Represents a method overload that is bound to a <see cref="T:System.Reflection.MethodBase"/>.
+            </summary>
+            <remarks>
+            Not thread safe.
+            WARNING: This is a temporary API that will undergo breaking changes in future versions. 
+            </remarks>
+        </member>
+        <member name="T:Microsoft.Scripting.Actions.Calls.OverloadResolver">
+            <summary>
+            Provides binding and overload resolution to .NET methods.
+            
+            MethodBinder's can be used for:
+                generating new AST code for calling a method 
+                calling a method via reflection at runtime
+                (not implemented) performing an abstract call
+                
+            MethodBinder's support default arguments, optional arguments, by-ref (in and out), and keyword arguments.
+            
+            Implementation Details:
+            
+            The MethodBinder works by building up a CandidateSet for each number of effective arguments that can be
+            passed to a set of overloads.  For example a set of overloads such as:
+                foo(object a, object b, object c)
+                foo(int a, int b)
+                
+            would have 2 target sets - one for 3 parameters and one for 2 parameters.  For parameter arrays
+            we fallback and create the appropriately sized CandidateSet on demand.
+            
+            Each CandidateSet consists of a set of MethodCandidate's.  Each MethodCandidate knows the flattened
+            parameters that could be received.  For example for a function such as:
+                foo(params int[] args)
+                
+            When this method is in a CandidateSet of size 3 the MethodCandidate takes 3 parameters - all of them
+            ints; if it's in a CandidateSet of size 4 it takes 4 parameters.  Effectively a MethodCandidate is 
+            a simplified view that allows all arguments to be treated as required positional arguments.
+            
+            Each MethodCandidate in turn refers to a MethodTarget.  The MethodTarget is composed of a set
+            of ArgBuilder's and a ReturnBuilder which know how to consume the positional arguments and pass
+            them to the appropriate argument of the destination method.  This includes routing keyword
+            arguments to the correct position, providing the default values for optional arguments, etc...
+            
+            After binding is finished the MethodCandidates are thrown away and a BindingTarget is returned. 
+            The BindingTarget indicates whether the binding was successful and if not any additional information
+            that should be reported to the user about the failed binding.  It also exposes the MethodTarget which
+            allows consumers to get the flattened list of required parameters for the call.  MethodCandidates
+            are not exposed and are an internal implementation detail of the MethodBinder.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Actions.Calls.OverloadResolver.ResolveOverload(System.String,System.Collections.Generic.IList{System.Reflection.MethodBase},Microsoft.Scripting.Actions.Calls.NarrowingLevel,Microsoft.Scripting.Actions.Calls.NarrowingLevel)">
+            <summary>
+            Resolves a method overload and returns back a BindingTarget.
+            
+            The BindingTarget can then be tested for the success or particular type of
+            failure that prevents the method from being called. If successfully bound the BindingTarget
+            contains a list of argument meta-objects with additional restrictions that ensure the selection
+            of the particular overload.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Actions.Calls.OverloadResolver.AllowMemberInitialization(Microsoft.Scripting.Actions.Calls.OverloadInfo)">
+            <summary>
+            Checks to see if the language allows named arguments to be bound to instance fields or
+            properties and turned into setters. By default this is only allowed on contructors.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Actions.Calls.OverloadResolver.GetByRefArrayExpression(System.Linq.Expressions.Expression)">
+            <summary>
+            Gets an expression that evaluates to the result of GetByRefArray operation.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Actions.Calls.OverloadResolver.BindToUnexpandedParams(Microsoft.Scripting.Actions.Calls.MethodCandidate)">
+            <summary>
+            Allow to bind an array/dictionary instance or a null reference to params array/dictionary parameter.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Actions.Calls.OverloadResolver.MapSpecialParameters(Microsoft.Scripting.Actions.Calls.ParameterMapping)">
+            <summary>
+            Called before arguments binding.
+            </summary>
+            <returns>
+            A bitmask that indicates (set bits) the parameters that were mapped by this method.
+            A default mapping will be constructed for the remaining parameters (cleared bits).
+            </returns>
+        </member>
+        <member name="M:Microsoft.Scripting.Actions.Calls.OverloadResolver.CreateActualArguments(System.Collections.Generic.IList{System.Dynamic.DynamicMetaObject},System.Collections.Generic.IList{System.String},System.Int32,System.Int32)">
+            <summary>
+            Return null if arguments cannot be constructed and overload resolution should produce an error.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Actions.Calls.OverloadResolver.IsOverloadedOnParameter(System.Int32,System.Int32,System.Collections.Generic.IList{Microsoft.Scripting.Actions.Calls.ApplicableCandidate})">
+            <summary>
+            Determines whether given overloads are overloaded on index-th parameter (the types of the index-th parameters are the same).
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Actions.Calls.OverloadResolver.SelectBestConversionFor(System.Dynamic.DynamicMetaObject,Microsoft.Scripting.Actions.Calls.ParameterWrapper,Microsoft.Scripting.Actions.Calls.ParameterWrapper,Microsoft.Scripting.Actions.Calls.NarrowingLevel)">
+            <summary>
+            Selects the best (of two) candidates for conversion from actualType
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Actions.Calls.OverloadResolver.PreferConvert(System.Type,System.Type)">
+            <summary>
+            Provides ordering for two parameter types if there is no conversion between the two parameter types.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Actions.Calls.OverloadResolver.GetSplattedItemExpression(System.Linq.Expressions.Expression)">
+            <summary>
+            The method is called each time an item of lazily splatted argument is needed.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Actions.Calls.ParameterMapping.MapParameterReduceByRef(System.Reflection.ParameterInfo)">
+            <summary>
+            Maps out parameters to return args and ref parameters to ones that don't accept StrongBox.
+            </summary>
+        </member>
+        <member name="T:Microsoft.Scripting.Actions.Calls.ParameterWrapper">
+            <summary>
+            ParameterWrapper represents the logical view of a parameter. For eg. the byref-reduced signature
+            of a method with byref parameters will be represented using a ParameterWrapper of the underlying
+            element type, since the logical view of the byref-reduced signature is that the argument will be
+            passed by value (and the updated value is included in the return value).
+            
+            Contrast this with ArgBuilder which represents the real physical argument passed to the method.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Actions.Calls.ParameterWrapper.#ctor(System.Type,System.String,System.Boolean)">
+            <summary>
+            ParameterInfo is not available.
+            </summary>
+        </member>
+        <member name="P:Microsoft.Scripting.Actions.Calls.ParameterWrapper.IsParamsArray">
+            <summary>
+            True if the wrapper represents a params-array parameter (false for parameters created by expansion of a params-array).
+            </summary>
+        </member>
+        <member name="P:Microsoft.Scripting.Actions.Calls.ParameterWrapper.IsParamsDict">
+            <summary>
+            True if the wrapper represents a params-dict parameter (false for parameters created by expansion of a params-dict).
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Actions.Calls.ParameterWrapper.Expand">
+            <summary>
+            Creates a parameter that represents an expanded item of params-array.
+            </summary>
+        </member>
+        <member name="T:Microsoft.Scripting.Actions.Calls.ParamsDictArgBuilder">
+            <summary>
+            Builds the parameter for a params dictionary argument - this collects all the extra name/value
+            pairs provided to the function into a SymbolDictionary which is passed to the function.
+            </summary>
+        </member>
+        <member name="T:Microsoft.Scripting.Actions.Calls.ReferenceArgBuilder">
+            <summary>
+            An argument that the user wants to explicitly pass by-reference (with copy-in copy-out semantics).
+            The user passes a StrongBox[T] object whose value will get updated when the call returns.
+            </summary>
+        </member>
+        <member name="P:Microsoft.Scripting.Actions.Calls.RestrictedArguments.HasUntypedRestrictions">
+            <summary>
+            True if there are restrictions beyond just simple type restrictions
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Actions.Calls.ReturnBuilder.#ctor(System.Type)">
+            <summary>
+            Creates a ReturnBuilder
+            </summary>
+            <param name="returnType">the type the ReturnBuilder will leave on the stack</param>
+        </member>
+        <member name="T:Microsoft.Scripting.Actions.Calls.ReturnReferenceArgBuilder">
+            <summary>
+            Builds a parameter for a reference argument when a StrongBox has not been provided.  The
+            updated return value is returned as one of the resulting return values.
+            </summary>
+        </member>
+        <member name="T:Microsoft.Scripting.Actions.Calls.SimpleArgBuilder">
+            <summary>
+            SimpleArgBuilder produces the value produced by the user as the argument value.  It
+            also tracks information about the original parameter and is used to create extended
+            methods for params arrays and param dictionary functions.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Actions.Calls.SimpleArgBuilder.#ctor(System.Type,System.Int32,System.Boolean,System.Boolean)">
+            <summary>
+            Parameter info is not available for this argument.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Actions.Calls.SimpleArgBuilder.#ctor(System.Reflection.ParameterInfo,System.Int32)">
+            <summary>
+            Type and whether the parameter is a params-array or params-dictionary is derived from info.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Actions.Calls.TypeInferer.GetGenericArgumentsForInferedMethod(Microsoft.Scripting.Actions.Calls.OverloadInfo,System.Collections.Generic.Dictionary{System.Type,System.Type})">
+            <summary>
+            Gets the generic arguments for method based upon the constraints discovered during
+            type inference.  Returns null if not all generic arguments had their types inferred.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Actions.Calls.TypeInferer.CreateNewArgBuilders(Microsoft.Scripting.Actions.Calls.MethodCandidate,Microsoft.Scripting.Actions.Calls.OverloadInfo)">
+            <summary>
+            Creates a new set of arg builders for the given generic method definition which target the new
+            parameters.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Actions.Calls.TypeInferer.CreateNewWrappers(Microsoft.Scripting.Actions.Calls.MethodCandidate,Microsoft.Scripting.Actions.Calls.OverloadInfo,Microsoft.Scripting.Actions.Calls.OverloadInfo)">
+            <summary>
+            Creates a new list of ParameterWrappers for the generic method replacing the old parameters with the new ones.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Actions.Calls.TypeInferer.GetSortedGenericArguments(Microsoft.Scripting.Actions.Calls.OverloadInfo,System.Collections.Generic.Dictionary{System.Type,System.Collections.Generic.List{System.Type}})">
+            <summary>
+            Gets the generic type arguments sorted so that the type arguments
+            that are depended upon by other type arguments are sorted before
+            their dependencies.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Actions.Calls.TypeInferer.IsDependentConstraint(System.Collections.Generic.Dictionary{System.Type,System.Collections.Generic.List{System.Type}},System.Type,System.Type)">
+            <summary>
+            Checks to see if the x type parameter is dependent upon the y type parameter.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Actions.Calls.TypeInferer.GetDependencyMapping(Microsoft.Scripting.Actions.Calls.OverloadInfo)">
+            <summary>
+            Builds a mapping based upon generic parameter constraints between related generic
+            parameters.  This is then used to sort the generic parameters so that we can process
+            the least dependent parameters first.  For example given the method:
+            
+            void Foo{T0, T1}(T0 x, T1 y) where T0 : T1 
+            
+            We need to first infer the type information for T1 before we infer the type information
+            for T0 so that we can ensure the constraints are correct.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Actions.Calls.TypeInferer.GetArgumentToInputMapping(Microsoft.Scripting.Actions.Calls.MethodCandidate,System.Collections.Generic.IList{System.Dynamic.DynamicMetaObject})">
+            <summary>
+            Returns a mapping from generic type parameter to the input DMOs which map to it.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Actions.Calls.TypeInferer.AddOneInput(System.Collections.Generic.Dictionary{System.Type,Microsoft.Scripting.Actions.Calls.TypeInferer.ArgumentInputs},System.Dynamic.DynamicMetaObject,System.Type)">
+            <summary>
+            Adds any additional ArgumentInputs entries for the given object and parameter type.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Actions.Calls.TypeInferer.CollectGenericParameters(System.Type,System.Collections.Generic.List{System.Type})">
+            <summary>
+            Walks the nested generic hierarchy to construct all of the generic parameters referred
+            to by this type.  For example if getting the generic parameters for the x parameter on
+            the method:
+            
+            void Foo{T0, T1}(Dictionary{T0, T1} x);
+            
+            We would add both typeof(T0) and typeof(T1) to the list of generic arguments.
+            </summary>
+        </member>
+        <member name="T:Microsoft.Scripting.Actions.Calls.TypeInferer.ArgumentInputs">
+            <summary>
+            Maps a single type parameter to the possible parameters and DynamicMetaObjects
+            we can get inference from.  For example for the signature:
+            
+            void Foo{T0, T1}(T0 x, T1 y, IList{T1} z);
+            
+            We would have one ArgumentInput for T0 which holds onto the DMO providing the argument
+            value for x.  We would also have one ArgumentInput for T1 which holds onto the 2 DMOs
+            for y and z.  Associated with y would be a GenericParameterInferer and associated with
+            z would be a ConstructedParameterInferer.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Actions.Calls.TypeInferer.GetInferedType(Microsoft.Scripting.Actions.Calls.OverloadResolver,System.Type,System.Type,System.Dynamic.DynamicMetaObject,System.Collections.Generic.Dictionary{System.Type,System.Type},System.Collections.Generic.Dictionary{System.Dynamic.DynamicMetaObject,System.Dynamic.BindingRestrictions})">
+            <summary>
+            Provides generic type inference for a single parameter.
+            </summary>
+            <remarks>
+            For example: 
+              M{T}(T x)
+              M{T}(IList{T} x)
+              M{T}(ref T x)
+              M{T}(T[] x)
+              M{T}(ref Dictionary{T,T}[] x)
+            </remarks>
+        </member>
+        <member name="M:Microsoft.Scripting.Actions.Calls.TypeInferer.GetInferedType(System.Type,System.Type,System.Type,System.Type,System.Collections.Generic.Dictionary{System.Type,System.Type})">
+            <summary>
+            Provides generic type inference for a single parameter.
+            </summary>
+            <remarks>
+            For example: 
+              M{T}(T x)
+              M{T}(IList{T} x)
+              M{T}(ref T x)
+              M{T}(T[] x)
+              M{T}(ref Dictionary{T,T}[] x)
+            </remarks>
+        </member>
+        <member name="M:Microsoft.Scripting.Actions.Calls.TypeInferer.ConstraintsViolated(System.Type,System.Type,System.Collections.Generic.Dictionary{System.Type,System.Type})">
+            <summary>
+            Checks if the constraints are violated by the given input for the specified generic method parameter.
+            
+            This method must be supplied with a mapping for any dependent generic method type parameters which
+            this one can be constrained to.  For example for the signature "void Foo{T0, T1}(T0 x, T1 y) where T0 : T1".
+            we cannot know if the constraints are violated unless we know what we have calculated T1 to be.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Actions.Calls.TypeInferer.MatchGenericParameter(System.Type,System.Type,System.Type,System.Collections.Generic.Dictionary{System.Type,System.Type},System.Type@)">
+            <summary>
+            Finds all occurences of <c>genericParameter</c> in <c>openType</c> and the corresponding concrete types in <c>closedType</c>.
+            Returns true iff all occurences of the generic parameter in the open type correspond to the same concrete type in the closed type 
+            and this type satisfies given <c>constraints</c>. Returns the concrete type in <c>match</c> if so.
+            </summary>
+        </member>
+        <member name="T:Microsoft.Scripting.Actions.Calls.IInferableInvokable">
+            <summary>
+            Implemented by DynamicMetaObject subclasses when the associated object
+            can participate in generic method type inference.  This interface
+            is used when the inference engine is attempting to perform type inference
+            for a parameter which is typed to a delegate type.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Actions.Calls.IInferableInvokable.GetInferredType(System.Type,System.Type)">
+            <summary>
+            Returns the type inferred for parameterType when performing
+            inference for a conversion to delegateType.
+            </summary>
+        </member>
+        <member name="T:Microsoft.Scripting.Actions.Calls.InferenceResult">
+            <summary>
+            Provides information about the result of a custom object which dynamically
+            infers back types.
+            
+            Currently only used for invokable objects to feedback the types for a delegate
+            type.
+            </summary>
+        </member>
+        <member name="T:Microsoft.Scripting.Actions.ConversionResultKind">
+            <summary>
+            Determines the result of a conversion action.  The result can either result in an exception, a value that
+            has been successfully converted or default(T), or a true/false result indicating if the value can be converted.
+            </summary>
+        </member>
+        <member name="F:Microsoft.Scripting.Actions.ConversionResultKind.ImplicitCast">
+            <summary>
+            Attempts to perform available implicit conversions and throws if there are no available conversions.
+            </summary>
+        </member>
+        <member name="F:Microsoft.Scripting.Actions.ConversionResultKind.ExplicitCast">
+            <summary>
+            Attempst to perform available implicit and explicit conversions and throws if there are no available conversions.
+            </summary>
+        </member>
+        <member name="F:Microsoft.Scripting.Actions.ConversionResultKind.ImplicitTry">
+            <summary>
+            Attempts to perform available implicit conversions and returns default(ReturnType) if no conversions can be performed.
+            
+            If the return type of the rule is a value type then the return value will be zero-initialized.  If the return type
+            of the rule is object or another class then the return type will be null (even if the conversion is to a value type).
+            This enables ImplicitTry to be used to do TryConvertTo even if the type is value type (and the difference between
+            null and a real value can be distinguished).
+            </summary>
+        </member>
+        <member name="F:Microsoft.Scripting.Actions.ConversionResultKind.ExplicitTry">
+            <summary>
+            Attempts to perform available implicit and explicit conversions and returns default(ReturnType) if no conversions 
+            can be performed.
+            
+            If the return type of the rule is a value type then the return value will be zero-initialized.  If the return type
+            of the rule is object or another class then the return type will be null (even if the conversion is to a value type).
+            This enables ExplicitTry to be used to do TryConvertTo even if the type is value type (and the difference between
+            null and a real value can be distinguished).
+            </summary>
+        </member>
+        <member name="T:Microsoft.Scripting.Actions.DefaultBinder">
+            <summary>
+            Provides binding semantics for a language.  This include conversions as well as support
+            for producing rules for actions.  These optimized rules are used for calling methods, 
+            performing operators, and getting members using the ActionBinder's conversion semantics.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Actions.DefaultBinder.GetIndex(Microsoft.Scripting.Actions.Calls.OverloadResolverFactory,System.Dynamic.DynamicMetaObject[])">
+            <summary>
+            Creates the MetaObject for indexing directly into arrays or indexing into objects which have
+            default members.  Returns null if we're not an indexing operation.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Actions.DefaultBinder.SetIndex(Microsoft.Scripting.Actions.Calls.OverloadResolverFactory,System.Dynamic.DynamicMetaObject[])">
+            <summary>
+            Creates the MetaObject for indexing directly into arrays or indexing into objects which have
+            default members.  Returns null if we're not an indexing operation.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Actions.DefaultBinder.MakeGeneralOperatorRule(System.String,Microsoft.Scripting.Actions.Calls.OverloadResolverFactory,System.Dynamic.DynamicMetaObject[])">
+            <summary>
+            Creates the meta object for the rest of the operations: comparisons and all other
+            ExpressionType.  If the operation cannot be completed a MetaObject which indicates an
+            error will be returned.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Actions.DefaultBinder.MakeGeneralOperatorRule(System.Linq.Expressions.ExpressionType,Microsoft.Scripting.Actions.Calls.OverloadResolverFactory,System.Dynamic.DynamicMetaObject[])">
+            <summary>
+            Creates the meta object for the rest of the operations: comparisons and all other
+            ExpressionType.  If the operation cannot be completed a MetaObject which indicates an
+            error will be returned.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Actions.DefaultBinder.TryNullComparisonRule(System.Dynamic.DynamicMetaObject[])">
+            <summary>
+            Produces a rule for comparing a value to null - supports comparing object references and nullable types.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Actions.DefaultBinder.TryConvertToObject(System.Type,System.Type,System.Dynamic.DynamicMetaObject,System.Dynamic.BindingRestrictions)">
+            <summary>
+            Checks if the conversion is to object and produces a target if it is.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Actions.DefaultBinder.TryAllConversions(Microsoft.Scripting.Actions.Calls.OverloadResolverFactory,System.Type,Microsoft.Scripting.Actions.ConversionResultKind,System.Type,System.Dynamic.BindingRestrictions,System.Dynamic.DynamicMetaObject)">
+            <summary>
+            Checks if any conversions are available and if so builds the target for that conversion.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Actions.DefaultBinder.TryAssignableConversion(System.Type,System.Type,System.Dynamic.BindingRestrictions,System.Dynamic.DynamicMetaObject)">
+            <summary>
+            Checks if the conversion can be handled by a simple cast.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Actions.DefaultBinder.TryUserDefinedConversion(Microsoft.Scripting.Actions.ConversionResultKind,System.Type,System.Type,System.Dynamic.BindingRestrictions,System.Dynamic.DynamicMetaObject)">
+            <summary>
+            Checks if the conversion can be handled by calling a user-defined conversion method.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Actions.DefaultBinder.TryOneConversion(Microsoft.Scripting.Actions.ConversionResultKind,System.Type,System.Type,System.Type,System.String,System.Boolean,System.Dynamic.BindingRestrictions,System.Dynamic.DynamicMetaObject)">
+            <summary>
+            Helper that checkes both types to see if either one defines the specified conversion
+            method.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Actions.DefaultBinder.TryUserDefinedConversion(Microsoft.Scripting.Actions.ConversionResultKind,System.Type,System.Type,Microsoft.Scripting.Actions.MemberGroup,System.Boolean,System.Dynamic.BindingRestrictions,System.Dynamic.DynamicMetaObject)">
+            <summary>
+            Checks if any of the members of the MemberGroup provide the applicable conversion and 
+            if so uses it to build a conversion rule.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Actions.DefaultBinder.TryExtensibleConversion(System.Type,System.Type,System.Dynamic.BindingRestrictions,System.Dynamic.DynamicMetaObject)">
+            <summary>
+            Checks if the conversion is to applicable by extracting the value from Extensible of T.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Actions.DefaultBinder.TryImplicitNumericConversion(System.Type,System.Type,System.Dynamic.BindingRestrictions,System.Dynamic.DynamicMetaObject)">
+            <summary>
+            Checks if there's an implicit numeric conversion for primitive data types.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Actions.DefaultBinder.TryNullableConversion(Microsoft.Scripting.Actions.Calls.OverloadResolverFactory,System.Type,Microsoft.Scripting.Actions.ConversionResultKind,System.Type,System.Dynamic.BindingRestrictions,System.Dynamic.DynamicMetaObject)">
+            <summary>
+            Checks if there's a conversion to/from Nullable of T.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Actions.DefaultBinder.TryNullConversion(System.Type,System.Type,System.Dynamic.BindingRestrictions)">
+            <summary>
+            Checks to see if there's a conversion of null to a reference type
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Actions.DefaultBinder.MakeErrorTarget(System.Type,Microsoft.Scripting.Actions.ConversionResultKind,System.Dynamic.BindingRestrictions,System.Dynamic.DynamicMetaObject)">
+            <summary>
+            Helper to produce an error when a conversion cannot occur
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Actions.DefaultBinder.MakeBoxingTarget(System.Dynamic.DynamicMetaObject,System.Dynamic.BindingRestrictions)">
+            <summary>
+            Helper to produce a rule which just boxes a value type
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Actions.DefaultBinder.MakeConversionTarget(Microsoft.Scripting.Actions.ConversionResultKind,Microsoft.Scripting.Actions.MethodTracker,System.Type,System.Boolean,System.Dynamic.BindingRestrictions,System.Dynamic.DynamicMetaObject)">
+            <summary>
+            Helper to produce a conversion rule by calling the helper method to do the convert
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Actions.DefaultBinder.MakeExtensibleConversionTarget(Microsoft.Scripting.Actions.ConversionResultKind,Microsoft.Scripting.Actions.MethodTracker,System.Type,System.Boolean,System.Dynamic.BindingRestrictions,System.Dynamic.DynamicMetaObject)">
+            <summary>
+            Helper to produce a conversion rule by calling the helper method to do the convert
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Actions.DefaultBinder.MakeConversionTargetWorker(Microsoft.Scripting.Actions.ConversionResultKind,Microsoft.Scripting.Actions.MethodTracker,System.Boolean,System.Dynamic.BindingRestrictions,System.Linq.Expressions.Expression)">
+            <summary>
+            Helper to produce a conversion rule by calling the method to do the convert.  This version takes the parameter
+            to be passed to the conversion function and we call it w/ our own value or w/ our Extensible.Value.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Actions.DefaultBinder.WrapForThrowingTry(Microsoft.Scripting.Actions.ConversionResultKind,System.Boolean,System.Linq.Expressions.Expression,System.Type)">
+            <summary>
+            Helper to wrap explicit conversion call into try/catch incase it throws an exception.  If
+            it throws the default value is returned.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Actions.DefaultBinder.MakeSimpleConversionTarget(System.Type,System.Dynamic.BindingRestrictions,System.Dynamic.DynamicMetaObject)">
+            <summary>
+            Helper to produce a rule when no conversion is required (the strong type of the expression
+            input matches the type we're converting to or has an implicit conversion at the IL level)
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Actions.DefaultBinder.MakeSimpleExtensibleConversionTarget(System.Type,System.Dynamic.BindingRestrictions,System.Dynamic.DynamicMetaObject)">
+            <summary>
+            Helper to produce a rule when no conversion is required from an extensible type's
+            underlying storage to the type we're converting to.  The type of extensible type
+            matches the type we're converting to or has an implicit conversion at the IL level.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Actions.DefaultBinder.MakeExtensibleTarget(System.Type,System.Dynamic.BindingRestrictions,System.Dynamic.DynamicMetaObject)">
+            <summary>
+            Helper to extract the value from an Extensible of T
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Actions.DefaultBinder.MakeNullToNullableOfTTarget(System.Type,System.Dynamic.BindingRestrictions)">
+            <summary>
+            Helper to convert a null value to nullable of T
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Actions.DefaultBinder.MakeTToNullableOfTTarget(System.Type,System.Type,System.Dynamic.BindingRestrictions,System.Dynamic.DynamicMetaObject)">
+            <summary>
+            Helper to produce the rule for converting T to Nullable of T
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Actions.DefaultBinder.MakeConvertingToTToNullableOfTTarget(Microsoft.Scripting.Actions.Calls.OverloadResolverFactory,System.Type,Microsoft.Scripting.Actions.ConversionResultKind,System.Dynamic.BindingRestrictions,System.Dynamic.DynamicMetaObject)">
+            <summary>
+            Helper to produce the rule for converting T to Nullable of T
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Actions.DefaultBinder.GetTryConvertReturnValue(System.Type)">
+            <summary>
+            Returns a value which indicates failure when a OldConvertToAction of ImplicitTry or
+            ExplicitTry.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Actions.DefaultBinder.GetExtensibleValue(System.Type,System.Dynamic.DynamicMetaObject)">
+            <summary>
+            Helper to extract the Value of an Extensible of T from the
+            expression being converted.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Actions.DefaultBinder.GetUnderlyingType(System.Type)">
+            <summary>
+            Helper that checks if fromType is an Extensible of T or a subtype of 
+            Extensible of T and if so returns the T.  Otherwise it returns fromType.
+            
+            This is used to treat extensible types the same as their underlying types.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Actions.DefaultBinder.MakeNullTarget(System.Type,System.Dynamic.BindingRestrictions)">
+            <summary>
+            Creates a target which returns null for a reference type.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Actions.DefaultBinder.MakeOperatorDeleteMemberBody(Microsoft.Scripting.Actions.DefaultBinder.SetOrDeleteMemberInfo,System.Dynamic.DynamicMetaObject,System.Type,System.String)">
+            <summary> if a member-injector is defined-on or registered-for this type call it </summary>
+        </member>
+        <member name="T:Microsoft.Scripting.Actions.DefaultBinder.SetOrDeleteMemberInfo">
+            <summary>
+            Helper class for flowing information about the GetMember request.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Actions.DefaultBinder.GetMember(System.String,System.Dynamic.DynamicMetaObject)">
+            <summary>
+            Builds a MetaObject for performing a member get.  Supports all built-in .NET members, the OperatorMethod 
+            GetBoundMember, and StrongBox instances.
+            </summary>
+            <param name="name">
+            The name of the member to retrieve.  This name is not processed by the DefaultBinder and
+            is instead handed off to the GetMember API which can do name mangling, case insensitive lookups, etc...
+            </param>
+            <param name="target">
+            The MetaObject from which the member is retrieved.
+            </param>
+            <returns>
+            Returns a DynamicMetaObject which represents the value that will be returned when the member is accessed.
+            
+            The returned DynamicMetaObject may be strongly typed to a value type which needs boxing before being
+            returned from a standard DLR GetMemberBinder.  The language is responsible for performing any boxing
+            so that it has an opportunity to perform custom boxing.
+            </returns>
+        </member>
+        <member name="M:Microsoft.Scripting.Actions.DefaultBinder.GetMember(System.String,System.Dynamic.DynamicMetaObject,Microsoft.Scripting.Actions.Calls.OverloadResolverFactory)">
+            <summary>
+            Builds a MetaObject for performing a member get.  Supports all built-in .NET members, the OperatorMethod 
+            GetBoundMember, and StrongBox instances.
+            </summary>
+            <param name="name">
+            The name of the member to retrieve.  This name is not processed by the DefaultBinder and
+            is instead handed off to the GetMember API which can do name mangling, case insensitive lookups, etc...
+            </param>
+            <param name="target">
+            The MetaObject from which the member is retrieved.
+            </param>
+            <param name="resolverFactory">
+            Provides overload resolution and method binding for any calls which need to be performed for the GetMember.
+            </param>
+            <returns>
+            Returns a DynamicMetaObject which represents the value that will be returned when the member is accessed.
+            
+            The returned DynamicMetaObject may be strongly typed to a value type which needs boxing before being
+            returned from a standard DLR GetMemberBinder.  The language is responsible for performing any boxing
+            so that it has an opportunity to perform custom boxing.
+            </returns>
+        </member>
+        <member name="M:Microsoft.Scripting.Actions.DefaultBinder.GetMember(System.String,System.Dynamic.DynamicMetaObject,Microsoft.Scripting.Actions.Calls.OverloadResolverFactory,System.Boolean,System.Dynamic.DynamicMetaObject)">
+            <summary>
+            Builds a MetaObject for performing a member get.  Supports all built-in .NET members, the OperatorMethod 
+            GetBoundMember, and StrongBox instances.
+            </summary>
+            <param name="name">
+            The name of the member to retrieve.  This name is not processed by the DefaultBinder and
+            is instead handed off to the GetMember API which can do name mangling, case insensitive lookups, etc...
+            </param>
+            <param name="target">
+            The MetaObject from which the member is retrieved.
+            </param>
+            <param name="resolverFactory">
+            An OverloadResolverFactory which can be used for performing overload resolution and method binding.
+            </param>
+            <param name="isNoThrow">
+            True if the operation should return Operation.Failed on failure, false if it
+            should return the exception produced by MakeMissingMemberError.
+            </param>
+            <param name="errorSuggestion">
+            The meta object to be used if the get results in an error.
+            </param>
+            <returns>
+            Returns a DynamicMetaObject which represents the value that will be returned when the member is accessed.
+            
+            The returned DynamicMetaObject may be strongly typed to a value type which needs boxing before being
+            returned from a standard DLR GetMemberBinder.  The language is responsible for performing any boxing
+            so that it has an opportunity to perform custom boxing.
+            </returns>
+        </member>
+        <member name="M:Microsoft.Scripting.Actions.DefaultBinder.GetMember(System.String,System.Dynamic.DynamicMetaObject,System.Boolean,System.Dynamic.DynamicMetaObject)">
+            <summary>
+            Builds a MetaObject for performing a member get.  Supports all built-in .NET members, the OperatorMethod 
+            GetBoundMember, and StrongBox instances.
+            </summary>
+            <param name="name">
+            The name of the member to retrieve.  This name is not processed by the DefaultBinder and
+            is instead handed off to the GetMember API which can do name mangling, case insensitive lookups, etc...
+            </param>
+            <param name="target">
+            The MetaObject from which the member is retrieved.
+            </param>
+            <param name="isNoThrow">
+            True if the operation should return Operation.Failed on failure, false if it
+            should return the exception produced by MakeMissingMemberError.
+            </param>
+            <param name="errorSuggestion">
+            The meta object to be used if the get results in an error.
+            </param>
+            <returns>
+            Returns a DynamicMetaObject which represents the value that will be returned when the member is accessed.
+            
+            The returned DynamicMetaObject may be strongly typed to a value type which needs boxing before being
+            returned from a standard DLR GetMemberBinder.  The language is responsible for performing any boxing
+            so that it has an opportunity to perform custom boxing.
+            </returns>
+        </member>
+        <member name="M:Microsoft.Scripting.Actions.DefaultBinder.MakeOperatorGetMemberBody(Microsoft.Scripting.Actions.DefaultBinder.GetMemberInfo,System.Dynamic.DynamicMetaObject,System.Type,System.String)">
+            <summary> if a member-injector is defined-on or registered-for this type call it </summary>
+        </member>
+        <member name="T:Microsoft.Scripting.Actions.DefaultBinder.GetMemberInfo">
+            <summary>
+            Helper class for flowing information about the GetMember request.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Actions.DefaultBinder.Call(Microsoft.Scripting.Actions.CallSignature,System.Dynamic.DynamicMetaObject,System.Dynamic.DynamicMetaObject[])">
+            <summary>
+            Provides default binding for performing a call on the specified meta objects.
+            </summary>
+            <param name="signature">The signature describing the call</param>
+            <param name="target">The meta object to be called.</param>
+            <param name="args">
+            Additional meta objects are the parameters for the call as specified by the CallSignature in the CallAction.
+            </param>
+            <returns>A MetaObject representing the call or the error.</returns>
+        </member>
+        <member name="M:Microsoft.Scripting.Actions.DefaultBinder.Call(Microsoft.Scripting.Actions.CallSignature,Microsoft.Scripting.Actions.Calls.OverloadResolverFactory,System.Dynamic.DynamicMetaObject,System.Dynamic.DynamicMetaObject[])">
+            <summary>
+            Provides default binding for performing a call on the specified meta objects.
+            </summary>
+            <param name="signature">The signature describing the call</param>
+            <param name="target">The meta object to be called.</param>
+            <param name="args">
+            Additional meta objects are the parameters for the call as specified by the CallSignature in the CallAction.
+            </param>
+            <param name="resolverFactory">Overload resolver factory.</param>
+            <returns>A MetaObject representing the call or the error.</returns>
+        </member>
+        <member name="M:Microsoft.Scripting.Actions.DefaultBinder.Call(Microsoft.Scripting.Actions.CallSignature,System.Dynamic.DynamicMetaObject,Microsoft.Scripting.Actions.Calls.OverloadResolverFactory,System.Dynamic.DynamicMetaObject,System.Dynamic.DynamicMetaObject[])">
+            <summary>
+            Provides default binding for performing a call on the specified meta objects.
+            </summary>
+            <param name="signature">The signature describing the call</param>
+            <param name="target">The meta object to be called.</param>
+            <param name="args">
+            Additional meta objects are the parameters for the call as specified by the CallSignature in the CallAction.
+            </param>
+            <param name="resolverFactory">Overload resolver factory.</param>
+            <param name="errorSuggestion">The result should the object be uncallable.</param>
+            <returns>A MetaObject representing the call or the error.</returns>
+        </member>
+        <member name="M:Microsoft.Scripting.Actions.DefaultBinder.GetTargetInfo(System.Dynamic.DynamicMetaObject,System.Dynamic.DynamicMetaObject[])">
+            <summary>
+            Gets a TargetInfo object for performing a call on this object.  
+            
+            If this object is a delegate we bind to the Invoke method.
+            If this object is a MemberGroup or MethodGroup we bind to the methods in the member group.
+            If this object is a BoundMemberTracker we bind to the methods with the bound instance.
+            If the underlying type has defined an operator Call method we'll bind to that method.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Actions.DefaultBinder.TryGetMethodGroupTargets(System.Dynamic.DynamicMetaObject,System.Dynamic.DynamicMetaObject[],Microsoft.Scripting.Actions.MethodGroup)">
+            <summary>
+            Binds to the methods in a method group.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Actions.DefaultBinder.TryGetMemberGroupTargets(System.Dynamic.DynamicMetaObject,System.Dynamic.DynamicMetaObject[],Microsoft.Scripting.Actions.MemberGroup)">
+            <summary>
+            Binds to the methods in a member group.  
+            
+            TODO: We should really only have either MemberGroup or MethodGroup, not both.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Actions.DefaultBinder.TryGetBoundMemberTargets(System.Dynamic.DynamicMetaObject,System.Dynamic.DynamicMetaObject[],Microsoft.Scripting.Actions.BoundMemberTracker)">
+            <summary>
+            Binds to the BoundMemberTracker and uses the instance in the tracker and restricts
+            based upon the object instance type.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Actions.DefaultBinder.TryGetDelegateTargets(System.Dynamic.DynamicMetaObject,System.Dynamic.DynamicMetaObject[],System.Delegate)">
+            <summary>
+            Binds to the Invoke method on a delegate if this is a delegate type.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Actions.DefaultBinder.TryGetOperatorTargets(System.Dynamic.DynamicMetaObject,System.Dynamic.DynamicMetaObject[],System.Object)">
+            <summary>
+            Attempts to bind to an operator Call method.
+            </summary>
+        </member>
+        <member name="T:Microsoft.Scripting.Actions.DefaultBinder.TargetInfo">
+            <summary>
+            Encapsulates information about the target of the call.  This includes an implicit instance for the call,
+            the methods that we'll be calling as well as any restrictions required to perform the call.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Actions.DefaultBinder.CallMethod(Microsoft.Scripting.Actions.DefaultOverloadResolver,System.Collections.Generic.IList{System.Reflection.MethodBase})">
+            <summary>
+            Performs binding against a set of overloaded methods using the specified arguments.  The arguments are
+            consumed as specified by the CallSignature object.
+            </summary>
+            <param name="resolver">Overload resolver.</param>
+            <param name="targets">The methods to be called</param>
+            <returns>A meta object which results from the call.</returns>
+        </member>
+        <member name="M:Microsoft.Scripting.Actions.DefaultBinder.CallMethod(Microsoft.Scripting.Actions.DefaultOverloadResolver,System.Collections.Generic.IList{System.Reflection.MethodBase},System.String)">
+            <summary>
+            Performs binding against a set of overloaded methods using the specified arguments.  The arguments are
+            consumed as specified by the CallSignature object.
+            </summary>
+            <param name="resolver">Overload resolver.</param>
+            <param name="targets">The methods to be called</param>
+            <param name="name">The name of the method or null to use the name from targets.</param>
+            <returns>A meta object which results from the call.</returns>
+        </member>
+        <member name="M:Microsoft.Scripting.Actions.DefaultBinder.CallMethod(Microsoft.Scripting.Actions.DefaultOverloadResolver,System.Collections.Generic.IList{System.Reflection.MethodBase},System.Dynamic.BindingRestrictions)">
+            <summary>
+            Performs binding against a set of overloaded methods using the specified arguments.  The arguments are
+            consumed as specified by the CallSignature object.
+            </summary>
+            <param name="resolver">Overload resolver.</param>
+            <param name="targets">The methods to be called</param>
+            <param name="restrictions">Additional restrictions which should be applied to the resulting MetaObject.</param>
+            <returns>A meta object which results from the call.</returns>
+        </member>
+        <member name="M:Microsoft.Scripting.Actions.DefaultBinder.CallMethod(Microsoft.Scripting.Actions.DefaultOverloadResolver,System.Collections.Generic.IList{System.Reflection.MethodBase},System.Dynamic.BindingRestrictions,System.String)">
+            <summary>
+            Performs binding against a set of overloaded methods using the specified arguments.  The arguments are
+            consumed as specified by the CallSignature object.
+            </summary>
+            <param name="resolver">Overload resolver.</param>
+            <param name="targets">The methods to be called</param>
+            <param name="restrictions">Additional restrictions which should be applied to the resulting MetaObject.</param>
+            <param name="name">The name of the method or null to use the name from targets.</param>
+            <returns>A meta object which results from the call.</returns>
+        </member>
+        <member name="M:Microsoft.Scripting.Actions.DefaultBinder.CallMethod(Microsoft.Scripting.Actions.DefaultOverloadResolver,System.Collections.Generic.IList{System.Reflection.MethodBase},System.Dynamic.BindingRestrictions,System.String,Microsoft.Scripting.Actions.Calls.NarrowingLevel,Microsoft.Scripting.Actions.Calls.NarrowingLevel,Microsoft.Scripting.Actions.Calls.BindingTarget@)">
+            <summary>
+            Performs binding against a set of overloaded methods using the specified arguments.  The arguments are
+            consumed as specified by the CallSignature object.
+            </summary>
+            <param name="minLevel">TODO.</param>
+            <param name="maxLevel">TODO.</param>
+            <param name="resolver">Overload resolver.</param>
+            <param name="targets">The methods to be called</param>
+            <param name="restrictions">Additional restrictions which should be applied to the resulting MetaObject.</param>
+            <param name="target">The resulting binding target which can be used for producing error information.</param>
+            <param name="name">The name of the method or null to use the name from targets.</param>
+            <returns>A meta object which results from the call.</returns>
+        </member>
+        <member name="M:Microsoft.Scripting.Actions.DefaultBinder.MakeSplatTests(Microsoft.Scripting.Runtime.CallTypes,Microsoft.Scripting.Actions.CallSignature,System.Boolean,System.Collections.Generic.IList{System.Dynamic.DynamicMetaObject})">
+            <summary>
+            Makes test for param arrays and param dictionary parameters.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Actions.DefaultBinder.MakeParamsArrayTest(Microsoft.Scripting.Runtime.CallTypes,Microsoft.Scripting.Actions.CallSignature,System.Boolean,System.Collections.Generic.IList{System.Dynamic.DynamicMetaObject})">
+            <summary>
+            Pulls out the right argument to build the splat test.  MakeParamsTest makes the actual test.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Actions.DefaultBinder.MakeParamsTest(System.Dynamic.DynamicMetaObject,System.Boolean)">
+            <summary>
+            Builds the restrictions for calling with a splatted argument array.  Ensures that the
+            argument is still an ICollection of object and that it has the same number of arguments.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Actions.DefaultBinder.MakeParamsDictionaryTest(System.Collections.Generic.IList{System.Dynamic.DynamicMetaObject},System.Boolean)">
+            <summary>
+            Builds the restrictions for calling with keyword arguments.  The restrictions include
+            tests on the individual keys of the dictionary to ensure they have the same names.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Actions.DefaultBinder.SetMember(System.String,System.Dynamic.DynamicMetaObject,System.Dynamic.DynamicMetaObject)">
+            <summary>
+            Builds a MetaObject for performing a member get.  Supports all built-in .NET members, the OperatorMethod 
+            GetBoundMember, and StrongBox instances.
+            </summary>
+            <param name="name">
+            The name of the member to retrieve.  This name is not processed by the DefaultBinder and
+            is instead handed off to the GetMember API which can do name mangling, case insensitive lookups, etc...
+            </param>
+            <param name="target">
+            The MetaObject from which the member is retrieved.
+            </param>
+            <param name="value">
+            The value being assigned to the target member.
+            </param>
+        </member>
+        <member name="M:Microsoft.Scripting.Actions.DefaultBinder.SetMember(System.String,System.Dynamic.DynamicMetaObject,System.Dynamic.DynamicMetaObject,Microsoft.Scripting.Actions.Calls.OverloadResolverFactory)">
+            <summary>
+            Builds a MetaObject for performing a member get.  Supports all built-in .NET members, the OperatorMethod 
+            GetBoundMember, and StrongBox instances.
+            </summary>
+            <param name="name">
+            The name of the member to retrieve.  This name is not processed by the DefaultBinder and
+            is instead handed off to the GetMember API which can do name mangling, case insensitive lookups, etc...
+            </param>
+            <param name="target">
+            The MetaObject from which the member is retrieved.
+            </param>
+            <param name="value">
+            The value being assigned to the target member.
+            </param>
+            <param name="resolverFactory">
+            Provides overload resolution and method binding for any calls which need to be performed for the SetMember.
+            </param>
+        </member>
+        <member name="M:Microsoft.Scripting.Actions.DefaultBinder.SetMember(System.String,System.Dynamic.DynamicMetaObject,System.Dynamic.DynamicMetaObject,System.Dynamic.DynamicMetaObject)">
+            <summary>
+            Builds a MetaObject for performing a member get.  Supports all built-in .NET members, the OperatorMethod 
+            GetBoundMember, and StrongBox instances.
+            </summary>
+            <param name="name">
+            The name of the member to retrieve.  This name is not processed by the DefaultBinder and
+            is instead handed off to the GetMember API which can do name mangling, case insensitive lookups, etc...
+            </param>
+            <param name="target">
+            The MetaObject from which the member is retrieved.
+            </param>
+            <param name="value">
+            The value being assigned to the target member.
+            </param>
+            <param name="errorSuggestion">
+            Provides a DynamicMetaObject that is to be used as the result if the member cannot be set.  If null then then a language
+            specific error code is provided by ActionBinder.MakeMissingMemberErrorForAssign which can be overridden by the language.
+            </param>
+        </member>
+        <member name="M:Microsoft.Scripting.Actions.DefaultBinder.SetMember(System.String,System.Dynamic.DynamicMetaObject,System.Dynamic.DynamicMetaObject,System.Dynamic.DynamicMetaObject,Microsoft.Scripting.Actions.Calls.OverloadResolverFactory)">
+            <summary>
+            Builds a MetaObject for performing a member get.  Supports all built-in .NET members, the OperatorMethod 
+            GetBoundMember, and StrongBox instances.
+            </summary>
+            <param name="name">
+            The name of the member to retrieve.  This name is not processed by the DefaultBinder and
+            is instead handed off to the GetMember API which can do name mangling, case insensitive lookups, etc...
+            </param>
+            <param name="target">
+            The MetaObject from which the member is retrieved.
+            </param>
+            <param name="value">
+            The value being assigned to the target member.
+            </param>
+            <param name="resolverFactory">
+            Provides overload resolution and method binding for any calls which need to be performed for the SetMember.
+            </param>
+            <param name="errorSuggestion">
+            Provides a DynamicMetaObject that is to be used as the result if the member cannot be set.  If null then then a language
+            specific error code is provided by ActionBinder.MakeMissingMemberErrorForAssign which can be overridden by the language.
+            </param>
+        </member>
+        <member name="M:Microsoft.Scripting.Actions.DefaultBinder.MakeOperatorSetMemberBody(Microsoft.Scripting.Actions.DefaultBinder.SetOrDeleteMemberInfo,System.Dynamic.DynamicMetaObject,System.Dynamic.DynamicMetaObject,System.Type,System.String)">
+            <summary> if a member-injector is defined-on or registered-for this type call it </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Actions.DefaultBinder.MakeUndeletableMemberError(System.Type,System.String)">
+            <summary>
+            Provides a way for the binder to provide a custom error message when lookup fails.  Just
+            doing this for the time being until we get a more robust error return mechanism.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Actions.DefaultBinder.MakeNonPublicMemberGetError(Microsoft.Scripting.Actions.Calls.OverloadResolverFactory,Microsoft.Scripting.Actions.MemberTracker,System.Type,System.Dynamic.DynamicMetaObject)">
+            <summary>
+            Called when the user is accessing a protected or private member on a get.
+            
+            The default implementation allows access to the fields or properties using reflection.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Actions.DefaultBinder.MakeReadOnlyMemberError(System.Type,System.String)">
+            <summary>
+            Provides a way for the binder to provide a custom error message when lookup fails.  Just
+            doing this for the time being until we get a more robust error return mechanism.
+            </summary>
+        </member>
+        <member name="T:Microsoft.Scripting.Actions.ErrorMetaObject">
+            <summary>
+            A MetaObject which was produced as the result of a failed binding.
+            </summary>
+        </member>
+        <member name="T:Microsoft.Scripting.Actions.Interceptor">
+            <summary>
+            Interceptor prototype. The interceptor is a call site binder that wraps
+            a real call site binder and can perform arbitrary operations on the expression
+            trees that the wrapped binder produces:
+              * Dumping the trees
+              * Additional rewriting
+              * Static compilation
+              * ...
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Actions.DynamicSiteHelpers.IsInvisibleDlrStackFrame(System.Reflection.MethodBase)">
+            <summary>
+            Returns true if the method should not be displayed in the stack frame.
+            </summary>
+        </member>
+        <member name="T:Microsoft.Scripting.Actions.MemberRequestKind">
+            <summary>
+            Specifies the action for which the default binder is requesting a member.
+            </summary>
+        </member>
+        <member name="T:Microsoft.Scripting.Actions.ILightExceptionBinder">
+             <summary>
+             Implemented by binders which support light exceptions.  Dynamic objects
+             binding against a binder which implements this interface can check 
+             SupportsLightThrow to see if the binder currently supports safely 
+             returning a light exception.  Light exceptions can be created with
+             LightException.Throw.
+            
+             Binders also need to implement GetlightBinder.  This method
+             returns a new call site binder which may return light  exceptions if 
+             the binder supports them.
+             </summary>
+        </member>
+        <member name="P:Microsoft.Scripting.Actions.ILightExceptionBinder.SupportsLightThrow">
+            <summary>
+            Returns true if a callsite binding against this binder can
+            return light exceptions.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Actions.ILightExceptionBinder.GetLightExceptionBinder">
+            <summary>
+            Gets a binder which will support light exception if one is
+            available.
+            </summary>
+        </member>
+        <member name="T:Microsoft.Scripting.Actions.ComboActionRewriter">
+            <summary>
+            A tree rewriter which will find dynamic sites which consume dynamic sites and
+            turn them into a single combo dynamic site.  The combo dynamic site will then run the
+            individual meta binders and produce the resulting code in a single dynamic site.
+            </summary>
+        </member>
+        <member name="T:Microsoft.Scripting.Actions.ComboActionRewriter.ComboDynamicSiteExpression">
+            <summary>
+            A reducible node which we use to generate the combo dynamic sites.  Each time we encounter
+            a dynamic site we replace it with a ComboDynamicSiteExpression.  When a child of a dynamic site
+            turns out to be a ComboDynamicSiteExpression we will then merge the child with the parent updating
+            the binding mapping info.  If any of the inputs cause side effects then we'll stop the combination.
+            </summary>
+        </member>
+        <member name="T:Microsoft.Scripting.Actions.ComboBinder">
+            <summary>
+            A binder which can combine multiple binders into a single dynamic site.  The creator
+            of this needs to perform the mapping of parameters, constants, and sub-site expressions
+            and provide a List of BinderMappingInfo representing this data.  From there the ComboBinder
+            just processes the list to create the resulting code.
+            </summary>
+        </member>
+        <member name="T:Microsoft.Scripting.Actions.ParameterMappingInfo">
+            <summary>
+            Provides a mapping for inputs of combo action expressions.  The input can map
+            to either an input of the new dynamic site, an input of a previous DynamicExpression,
+            or a ConstantExpression which has been pulled out of the dynamic site arguments.
+            </summary>
+        </member>
+        <member name="T:Microsoft.Scripting.Actions.BinderMappingInfo">
+            <summary>
+            Contains the mapping information for a single Combo Binder.  This includes the original
+            meta-binder and the mapping of parameters, sub-sites, and constants into the binding.
+            </summary>
+        </member>
+        <member name="T:Microsoft.Scripting.Actions.ConditionalBuilder">
+            <summary>
+            Builds up a series of conditionals when the False clause isn't yet known.  We can
+            keep appending conditions and if true's.  Each subsequent true branch becomes the
+            false branch of the previous condition and body.  Finally a non-conditional terminating
+            branch must be added.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Actions.ConditionalBuilder.AddCondition(System.Linq.Expressions.Expression,System.Linq.Expressions.Expression)">
+            <summary>
+            Adds a new conditional and body.  The first call this becomes the top-level
+            conditional, subsequent calls will have it added as false statement of the
+            previous conditional.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Actions.ConditionalBuilder.FinishCondition(System.Linq.Expressions.Expression)">
+            <summary>
+            Adds the non-conditional terminating node.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Actions.ConditionalBuilder.FinishError(System.Linq.Expressions.Expression)">
+            <summary>
+            Adds the non-conditional terminating node.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Actions.ConditionalBuilder.GetMetaObject(System.Dynamic.DynamicMetaObject[])">
+            <summary>
+            Gets the resulting meta object for the full body.  FinishCondition
+            must have been called.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Actions.ConditionalBuilder.AddVariable(System.Linq.Expressions.ParameterExpression)">
+            <summary>
+            Adds a variable which will be scoped at the level of the final expression.
+            </summary>
+        </member>
+        <member name="T:Microsoft.Scripting.Actions.NoSideEffectsAttribute">
+            <summary>
+            Marks a method as not having side effects.  used by the combo binder
+            to allow calls to methods.
+            </summary>
+        </member>
+        <member name="T:Microsoft.Scripting.Actions.OperatorInfo">
+            <summary>
+            OperatorInfo provides a mapping from DLR ExpressionType to their associated .NET methods.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Actions.OperatorInfo.GetOperatorInfo(System.Linq.Expressions.ExpressionType)">
+            <summary>
+            Given an operator returns the OperatorInfo associated with the operator or null
+            </summary>
+        </member>
+        <member name="P:Microsoft.Scripting.Actions.OperatorInfo.Operator">
+            <summary>
+            The operator the OperatorInfo provides info for.
+            </summary>
+        </member>
+        <member name="P:Microsoft.Scripting.Actions.OperatorInfo.Name">
+            <summary>
+            The primary method name associated with the method.  This method name is
+            usally in the form of op_Operator (e.g. op_Addition).
+            </summary>
+        </member>
+        <member name="P:Microsoft.Scripting.Actions.OperatorInfo.AlternateName">
+            <summary>
+            The secondary method name associated with the method.  This method name is
+            usually a standard .NET method name with pascal casing (e.g. Add).
+            </summary>
+        </member>
+        <member name="T:Microsoft.Scripting.Actions.ActionBinder">
+            <summary>
+            Provides binding semantics for a language.  This include conversions as well as support
+            for producing rules for actions.  These optimized rules are used for calling methods, 
+            performing operators, and getting members using the ActionBinder's conversion semantics.
+            </summary>
+        </member>
+        <member name="P:Microsoft.Scripting.Actions.ActionBinder.PrivateBinding">
+            <summary>
+            Determines if the binder should allow access to non-public members.
+            
+            By default the binder does not allow access to non-public members.  Base classes
+            can inherit and override this value to customize whether or not private binding
+            is available.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Actions.ActionBinder.Convert(System.Object,System.Type)">
+            <summary>
+            Converts an object at runtime into the specified type.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Actions.ActionBinder.CanConvertFrom(System.Type,System.Type,System.Boolean,Microsoft.Scripting.Actions.Calls.NarrowingLevel)">
+            <summary>
+            Determines if a conversion exists from fromType to toType at the specified narrowing level.
+            toNotNullable is true if the target variable doesn't allow null values.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Actions.ActionBinder.PreferConvert(System.Type,System.Type)">
+            <summary>
+            Provides ordering for two parameter types if there is no conversion between the two parameter types.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Actions.ActionBinder.ConvertExpression(System.Linq.Expressions.Expression,System.Type,Microsoft.Scripting.Actions.ConversionResultKind,Microsoft.Scripting.Actions.Calls.OverloadResolverFactory)">
+            <summary>
+            Converts the provided expression to the given type.  The expression is safe to evaluate multiple times.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Actions.ActionBinder.GetMember(Microsoft.Scripting.Actions.MemberRequestKind,System.Type,System.String)">
+            <summary>
+            Gets the members that are visible from the provided type of the specified name.
+            
+            The default implemetnation first searches the type, then the flattened heirachy of the type, and then
+            registered extension methods.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Actions.ActionBinder.MakeStaticAssignFromDerivedTypeError(System.Type,System.Dynamic.DynamicMetaObject,Microsoft.Scripting.Actions.MemberTracker,System.Dynamic.DynamicMetaObject,Microsoft.Scripting.Actions.Calls.OverloadResolverFactory)">
+            <summary>
+            Called when a set is attempting to assign to a field or property from a derived class through the base class.
+            
+            The default behavior is to allow the assignment.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Actions.ActionBinder.MakeStaticPropertyInstanceAccessError(Microsoft.Scripting.Actions.PropertyTracker,System.Boolean,System.Collections.Generic.IList{System.Dynamic.DynamicMetaObject})">
+            <summary>
+            Creates an ErrorInfo object when a static property is accessed from an instance member.  The default behavior is throw
+            an exception indicating that static members properties be accessed via an instance.  Languages can override this to 
+            customize the exception, message, or to produce an ErrorInfo object which reads or writes to the property being accessed.
+            </summary>
+            <param name="tracker">The static property being accessed through an instance</param>
+            <param name="isAssignment">True if the user is assigning to the property, false if the user is reading from the property</param>
+            <param name="parameters">The parameters being used to access the property.  This includes the instance as the first entry, any index parameters, and the
+            value being assigned as the last entry if isAssignment is true.</param>
+            <returns></returns>
+        </member>
+        <member name="M:Microsoft.Scripting.Actions.ActionBinder.MakeMissingMemberError(System.Type,System.Dynamic.DynamicMetaObject,System.String)">
+            <summary>
+            Provides a way for the binder to provide a custom error message when lookup fails.  Just
+            doing this for the time being until we get a more robust error return mechanism.
+            
+            Deprecated, use the non-generic version instead
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Actions.ActionBinder.GetAllExtensionMembers(System.Type,System.String)">
+            <summary>
+            Gets the extension members of the given name from the provided type.  Base classes are also
+            searched for their extension members.  Once any of the types in the inheritance hierarchy
+            provide an extension member the search is stopped.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Actions.ActionBinder.GetExtensionMembers(System.Type,System.String)">
+            <summary>
+            Gets the extension members of the given name from the provided type.  Subclasses of the
+            type and their extension members are not searched.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Actions.ActionBinder.ReturnMemberTracker(System.Type,Microsoft.Scripting.Actions.MemberTracker)">
+            <summary>
+            Provides an opportunity for languages to replace all MemberTracker's with their own type.
+            
+            Alternatlely a language can expose MemberTracker's directly.
+            </summary>
+            <param name="memberTracker">The member which is being returned to the user.</param>
+            <param name="type">Tthe type which the memberTrack was accessed from</param>
+            <returns></returns>
+        </member>
+        <member name="T:Microsoft.Scripting.Actions.Argument">
+            <summary>
+            TODO: Alternatively, it should be sufficient to remember indices for this, list, dict and block.
+            </summary>
+        </member>
+        <member name="T:Microsoft.Scripting.Actions.ArgumentType">
+            <summary>
+            Convention for an individual argument at a callsite.
+            
+            Multiple different callsites can match against a single declaration. 
+            Some argument kinds can be "unrolled" into multiple arguments, such as list and dictionary. 
+            </summary>
+        </member>
+        <member name="F:Microsoft.Scripting.Actions.ArgumentType.Simple">
+            <summary>
+            Simple unnamed positional argument.
+            In Python: foo(1,2,3) are all simple arguments.
+            </summary>
+        </member>
+        <member name="F:Microsoft.Scripting.Actions.ArgumentType.Named">
+            <summary>
+            Argument with associated name at the callsite
+            In Python: foo(a=1)
+            </summary>
+        </member>
+        <member name="F:Microsoft.Scripting.Actions.ArgumentType.List">
+            <summary>
+            Argument containing a list of arguments. 
+            In Python: foo(*(1,2*2,3))  would match 'def foo(a,b,c)' with 3 declared arguments such that (a,b,c)=(1,4,3).
+                 it could also match 'def foo(*l)' with 1 declared argument such that l=(1,4,3)
+            </summary>
+        </member>
+        <member name="F:Microsoft.Scripting.Actions.ArgumentType.Dictionary">
+            <summary>
+            Argument containing a dictionary of named arguments.
+            In Python: foo(**{'a':1, 'b':2})
+            </summary>
+        </member>
+        <member name="T:Microsoft.Scripting.Actions.CallSignature">
+            <summary>
+            Richly represents the signature of a callsite.
+            </summary>
+        </member>
+        <member name="F:Microsoft.Scripting.Actions.CallSignature._infos">
+            <summary>
+            Array of additional meta information about the arguments, such as named arguments.
+            Null for a simple signature that's just an expression list. eg: foo(a*b,c,d)
+            </summary>
+        </member>
+        <member name="F:Microsoft.Scripting.Actions.CallSignature._argumentCount">
+            <summary>
+            Number of arguments in the signature.
+            </summary>
+        </member>
+        <member name="P:Microsoft.Scripting.Actions.CallSignature.IsSimple">
+            <summary>
+            All arguments are unnamed and matched by position. 
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Actions.CallSignature.HasKeywordArgument">
+            <summary>
+            True if the OldCallAction includes an ArgumentInfo of ArgumentKind.Dictionary or ArgumentKind.Named.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Actions.CallSignature.GetProvidedPositionalArgumentCount">
+            <summary>
+            Gets the number of positional arguments the user provided at the call site.
+            </summary>
+        </member>
+        <member name="T:Microsoft.Scripting.Actions.CustomTracker">
+            <summary>
+            A custom member tracker which enables languages to plug in arbitrary
+            members into the lookup process.
+            </summary>
+        </member>
+        <member name="T:Microsoft.Scripting.Actions.ErrorInfo">
+            <summary>
+            Encapsulates information about the result that should be produced when 
+            a OldDynamicAction cannot be performed.  The ErrorInfo can hold one of:
+                an expression which creates an Exception to be thrown 
+                an expression which produces a value which should be returned 
+                    directly to the user and represents an error has occured (for
+                    example undefined in JavaScript)
+                an expression which produces a value which should be returned
+                    directly to the user but does not actually represent an error.
+            
+            ErrorInfo's are produced by an ActionBinder in response to a failed
+            binding.  
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Actions.ErrorInfo.#ctor(System.Linq.Expressions.Expression,Microsoft.Scripting.Actions.ErrorInfoKind)">
+            <summary>
+            Private constructor - consumers must use static From* factories
+            to create ErrorInfo objects.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Actions.ErrorInfo.FromException(System.Linq.Expressions.Expression)">
+            <summary>
+            Creates a new ErrorInfo which represents an exception that should
+            be thrown.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Actions.ErrorInfo.FromValue(System.Linq.Expressions.Expression)">
+            <summary>
+            Creates a new ErrorInfo which represents a value which should be
+            returned to the user.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Actions.ErrorInfo.FromValueNoError(System.Linq.Expressions.Expression)">
+            <summary>
+            Crates a new ErrorInfo which represents a value which should be returned
+            to the user but does not represent an error.
+            </summary>
+            <param name="resultValue"></param>
+            <returns></returns>
+        </member>
+        <member name="F:Microsoft.Scripting.Actions.ErrorInfoKind.Exception">
+            <summary>
+            The ErrorInfo expression produces an exception
+            </summary>
+        </member>
+        <member name="F:Microsoft.Scripting.Actions.ErrorInfoKind.Error">
+            <summary>
+            The ErrorInfo expression produces a value which represents the error (e.g. undefined)
+            </summary>
+        </member>
+        <member name="F:Microsoft.Scripting.Actions.ErrorInfoKind.Success">
+            <summary>
+            The ErrorInfo expression produces a value which is not an error
+            </summary>
+        </member>
+        <member name="P:Microsoft.Scripting.Actions.EventTracker.IsStatic">
+            <summary>
+            Doesn't need to check PrivateBinding setting: no method that is part of the event is public the entire event is private. 
+            If the code has already a reference to the event tracker instance for a private event its "static-ness" is not influenced 
+            by private-binding setting.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Actions.EventTracker.GetComHandlerList(System.Object)">
+            <summary>
+            Gets the stub list for a COM Object.  For COM objects we store the stub list
+            directly on the object using the Marshal APIs.  This allows us to not have
+            any circular references to deal with via weak references which are challenging
+            in the face of COM.
+            </summary>
+        </member>
+        <member name="T:Microsoft.Scripting.Actions.EventTracker.HandlerList">
+            <summary>
+            Holds on a list of delegates hooked to the event. 
+            We need the list because we cannot enumerate the delegates hooked to CLR event and we need to do so in 
+            handler removal (we need to do custom delegate comparison there). If BCL enables the enumeration we could remove this.
+            </summary>
+        </member>
+        <member name="F:Microsoft.Scripting.Actions.EventTracker.ComHandlerList._handlers">
+            <summary>
+            Storage for the handlers - a key value pair of the callable object and the delegate handler.
+            </summary>
+        </member>
+        <member name="F:Microsoft.Scripting.Actions.EventTracker.NormalHandlerList._handlers">
+            <summary>
+            Storage for the handlers - a key value pair of the callable object and the delegate handler.
+            
+            The delegate handler is closed over the callable object.  Therefore as long as the object is alive the
+            delegate will stay alive and so will the callable object.  That means it's fine to have a weak reference
+            to both of these objects.
+            </summary>
+        </member>
+        <member name="T:Microsoft.Scripting.Actions.ExtensionMethodTracker">
+            <summary>
+            Represents extension method.
+            </summary>
+        </member>
+        <member name="F:Microsoft.Scripting.Actions.ExtensionMethodTracker._declaringType">
+            <summary>
+            The declaring type of the extension (the type this extension method extends)
+            </summary>
+        </member>
+        <member name="P:Microsoft.Scripting.Actions.ExtensionMethodTracker.DeclaringType">
+            <summary>
+            The declaring type of the extension method. Since this is an extension method,
+            the declaring type is in fact the type this extension method extends,
+            not Method.DeclaringType
+            </summary>
+        </member>
+        <member name="T:Microsoft.Scripting.Actions.MemberGroup">
+            <summary>
+            MemberGroups are a collection of MemberTrackers which are commonly produced
+            on-demand to talk about the available members.  They can consist of a mix of
+            different member types or multiple membes of the same type.
+            
+            The most common source of MemberGroups is from ActionBinder.GetMember.  From here
+            the DLR will perform binding to the MemberTrackers frequently producing the value
+            resulted from the user.  If the result of the action produces a member it's self
+            the ActionBinder can provide the value exposed to the user via ReturnMemberTracker.
+            
+            ActionBinder provides default functionality for both getting members from a type
+            as well as exposing the members to the user.  Getting members from the type maps
+            closely to reflection and exposing them to the user exposes the MemberTrackers
+            directly.
+            </summary>
+        </member>
+        <member name="T:Microsoft.Scripting.Actions.MemberTracker">
+            <summary>
+            Represents a logical member of a type.  The member could either be real concrete member on a type or
+            an extension member.
+            
+            This seperates the "physical" members that .NET knows exist on types from the members that
+            logically exist on a type.  It also provides other abstractions above the level of .NET reflection
+            such as MemberGroups and NamespaceTracker's.
+            
+            It also provides a wrapper around the reflection APIs which cannot be extended from partial trust.
+            </summary>
+        </member>
+        <member name="T:Microsoft.Scripting.Actions.MemberTracker.MemberKey">
+            <summary>
+            We ensure we only produce one MemberTracker for each member which logically lives on the declaring type.  So 
+            for example if you get a member from a derived class which is declared on the base class it should be the same 
+            as getting the member from the base class.  That’s easy enough until you get into extension members – here there
+            might be one extension member which is being applied to multiple types.  Therefore we need to take into account the 
+            extension type when ensuring that we only have 1 MemberTracker ever created.
+            </summary>
+        </member>
+        <member name="P:Microsoft.Scripting.Actions.MemberTracker.MemberType">
+            <summary>
+            The type of member tracker.
+            </summary>
+        </member>
+        <member name="P:Microsoft.Scripting.Actions.MemberTracker.DeclaringType">
+            <summary>
+            The logical declaring type of the member.
+            </summary>
+        </member>
+        <member name="P:Microsoft.Scripting.Actions.MemberTracker.Name">
+            <summary>
+            The name of the member.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Actions.MemberTracker.GetValue(Microsoft.Scripting.Actions.Calls.OverloadResolverFactory,Microsoft.Scripting.Actions.ActionBinder,System.Type)">
+            <summary>
+            Gets the expression that creates the value.  
+            
+            Returns null if it's an error to get the value.  The caller can then call GetErrorForGet to get 
+            the correct error Expression (or null if they should provide a default).
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Actions.MemberTracker.SetValue(Microsoft.Scripting.Actions.Calls.OverloadResolverFactory,Microsoft.Scripting.Actions.ActionBinder,System.Type,System.Dynamic.DynamicMetaObject)">
+            <summary>
+            Gets an expression that assigns a value to the left hand side.
+            
+            Returns null if it's an error to assign to.  The caller can then call GetErrorForSet to
+            get the correct error Expression (or null if a default error should be provided).
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Actions.MemberTracker.SetValue(Microsoft.Scripting.Actions.Calls.OverloadResolverFactory,Microsoft.Scripting.Actions.ActionBinder,System.Type,System.Dynamic.DynamicMetaObject,System.Dynamic.DynamicMetaObject)">
+            <summary>
+            Gets an expression that assigns a value to the left hand side.
+            
+            Returns null if it's an error to assign to.  The caller can then call GetErrorForSet to
+            get the correct error Expression (or null if a default error should be provided).
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Actions.MemberTracker.Call(Microsoft.Scripting.Actions.Calls.OverloadResolverFactory,Microsoft.Scripting.Actions.ActionBinder,System.Dynamic.DynamicMetaObject[])">
+            <summary>
+            Gets an expression that performs a call on the object using the specified arguments.
+            
+            Returns null if it's an error to perform the specific operation.  The caller can then call 
+            GetErrorsForDoCall to get the correct error Expression (or null if a default error should be provided).
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Actions.MemberTracker.GetError(Microsoft.Scripting.Actions.ActionBinder,System.Type)">
+            <summary>
+            Returns the error associated with getting the value.  
+            
+            A null return value indicates that the default error message should be provided by the caller.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Actions.MemberTracker.GetBoundError(Microsoft.Scripting.Actions.ActionBinder,System.Dynamic.DynamicMetaObject,System.Type)">
+            <summary>
+            Returns the error associated with accessing this member via a bound instance.
+            
+            A null return value indicates that the default error message should be provided by the caller.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Actions.MemberTracker.GetBoundValue(Microsoft.Scripting.Actions.Calls.OverloadResolverFactory,Microsoft.Scripting.Actions.ActionBinder,System.Type,System.Dynamic.DynamicMetaObject)">
+            <summary>
+            Helper for getting values that have been bound.  Called from BoundMemberTracker.  Custom member
+            trackers can override this to provide their own behaviors when bound to an instance.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Actions.MemberTracker.SetBoundValue(Microsoft.Scripting.Actions.Calls.OverloadResolverFactory,Microsoft.Scripting.Actions.ActionBinder,System.Type,System.Dynamic.DynamicMetaObject,System.Dynamic.DynamicMetaObject)">
+            <summary>
+            Helper for setting values that have been bound.  Called from BoundMemberTracker.  Custom member
+            trackers can override this to provide their own behaviors when bound to an instance.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Actions.MemberTracker.SetBoundValue(Microsoft.Scripting.Actions.Calls.OverloadResolverFactory,Microsoft.Scripting.Actions.ActionBinder,System.Type,System.Dynamic.DynamicMetaObject,System.Dynamic.DynamicMetaObject,System.Dynamic.DynamicMetaObject)">
+            <summary>
+            Helper for setting values that have been bound.  Called from BoundMemberTracker.  Custom member
+            trackers can override this to provide their own behaviors when bound to an instance.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Actions.MemberTracker.BindToInstance(System.Dynamic.DynamicMetaObject)">
+            <summary>
+            Binds the member tracker to the specified instance rturning a new member tracker if binding 
+            is possible.  If binding is not possible the existing member tracker will be returned.  For example
+            binding to a static field results in returning the original MemberTracker.  Binding to an instance
+            field results in a new BoundMemberTracker which will get GetBoundValue/SetBoundValue to pass the
+            instance through.
+            </summary>
+        </member>
+        <member name="T:Microsoft.Scripting.Actions.MethodGroup">
+            <summary>
+            MethodGroup's represent a unique collection of method's.  Typically this
+            unique set is all the methods which are overloaded by the same name including
+            methods with different arity.  These methods represent a single logically
+            overloaded element of a .NET type.
+            
+            The base DLR binders will produce MethodGroup's when provided with a MemberGroup
+            which contains only methods.  The MethodGroup's will be unique instances per
+            each unique group of methods.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Actions.MethodGroup.MakeGenericMethod(System.Type[])">
+            <summary>
+            Returns a BuiltinFunction bound to the provided type arguments.  Returns null if the binding
+            cannot be performed.
+            </summary>
+        </member>
+        <member name="T:Microsoft.Scripting.Actions.NamespaceTracker">
+            <summary>
+            NamespaceTracker represent a CLS namespace.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Actions.NamespaceTracker.LoadAllTypes">
+            <summary>
+            Loads all the types from all assemblies that contribute to the current namespace (but not child namespaces)
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Actions.NamespaceTracker.GetOrMakePackageHierarchy(System.Reflection.Assembly,System.String)">
+            <summary>
+            Populates the tree with nodes for each part of the namespace
+            </summary>
+            <param name="assem"></param>
+            <param name="fullNamespace">Full namespace name. It can be null (for top-level types)</param>
+            <returns></returns>
+        </member>
+        <member name="M:Microsoft.Scripting.Actions.NamespaceTracker.CheckForUnlistedType(System.String)">
+            <summary>
+            As a fallback, so if the type does exist in any assembly. This would happen if a new type was added
+            that was not in the hardcoded list of types. 
+            This code is not accurate because:
+            1. We dont deal with generic types (TypeCollision). 
+            2. Previous calls to GetCustomMemberNames (eg. "from foo import *" in Python) would not have included this type.
+            3. This does not deal with new namespaces added to the assembly
+            </summary>
+        </member>
+        <member name="T:Microsoft.Scripting.Actions.NamespaceTracker.TypeNames">
+            <summary>
+            This stores all the public non-nested type names in a single namespace and from a single assembly.
+            This allows inspection of the namespace without eagerly loading all the types. Eagerly loading
+            types slows down startup, increases working set, and is semantically incorrect as it can trigger
+            TypeLoadExceptions sooner than required.
+            </summary>
+        </member>
+        <member name="T:Microsoft.Scripting.Actions.PropertyTracker">
+            <summary>
+            Represents a logical Property as a member of a Type.  This Property can either be a real 
+            concrete Property on a type (implemented with a ReflectedPropertyTracker) or an extension
+            property (implemented with an ExtensionPropertyTracker).
+            </summary>
+        </member>
+        <member name="T:Microsoft.Scripting.Actions.TopNamespaceTracker">
+            <summary>
+            Represents the top reflected package which contains extra information such as
+            all the assemblies loaded and the built-in modules.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Actions.TopNamespaceTracker.TryGetPackage(System.String)">
+            <summary>
+            returns the package associated with the specified namespace and
+            updates the associated module to mark the package as imported.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Actions.TopNamespaceTracker.LoadAssembly(System.Reflection.Assembly)">
+            <summary>
+            Ensures that the assembly is loaded
+            </summary>
+            <param name="assem"></param>
+            <returns>true if the assembly was loaded for the first time. 
+            false if the assembly had already been loaded before</returns>
+        </member>
+        <member name="M:Microsoft.Scripting.Actions.TopNamespaceTracker.PublishComTypes(System.Reflection.Assembly)">
+            <summary>
+            When an (interop) assembly is loaded, we scan it to discover the GUIDs of COM interfaces so that we can
+            associate the type definition with COM objects with that GUID.
+            Since scanning all loaded assemblies can be expensive, in the future, we might consider a more explicit 
+            user binder to trigger scanning of COM types.
+            </summary>
+        </member>
+        <member name="F:Microsoft.Scripting.Actions.TrackerTypes.Constructor">
+            <summary> Specifies that the member is a constructor, representing a ConstructorTracker </summary>
+        </member>
+        <member name="F:Microsoft.Scripting.Actions.TrackerTypes.Event">
+            <summary> Specifies that the member is an event, representing a EventTracker </summary>
+        </member>
+        <member name="F:Microsoft.Scripting.Actions.TrackerTypes.Field">
+            <summary> Specifies that the member is a field, representing a FieldTracker </summary>
+        </member>
+        <member name="F:Microsoft.Scripting.Actions.TrackerTypes.Method">
+            <summary> Specifies that the member is a method, representing a MethodTracker </summary>
+        </member>
+        <member name="F:Microsoft.Scripting.Actions.TrackerTypes.Property">
+            <summary> Specifies that the member is a property, representing a PropertyTracker </summary>
+        </member>
+        <member name="F:Microsoft.Scripting.Actions.TrackerTypes.Type">
+            <summary> Specifies that the member is a property, representing a TypeTracker </summary>
+        </member>
+        <member name="F:Microsoft.Scripting.Actions.TrackerTypes.Namespace">
+            <summary> Specifies that the member is a namespace, representing a NamespaceTracker </summary>
+        </member>
+        <member name="F:Microsoft.Scripting.Actions.TrackerTypes.MethodGroup">
+            <summary> Specifies that the member is a group of method overloads, representing a MethodGroup</summary>
+        </member>
+        <member name="F:Microsoft.Scripting.Actions.TrackerTypes.TypeGroup">
+            <summary> Specifies that the member is a group of types that very by arity, representing a TypeGroup</summary>
+        </member>
+        <member name="F:Microsoft.Scripting.Actions.TrackerTypes.Custom">
+            <summary> Specifies that the member is a custom meber, represetning a CustomTracker </summary>
+        </member>
+        <member name="F:Microsoft.Scripting.Actions.TrackerTypes.Bound">
+            <summary> Specifies that the member is a bound to an instance, representing a BoundMemberTracker</summary>        
+        </member>
+        <member name="T:Microsoft.Scripting.Actions.TypeGroup">
+            <summary>
+            A TypeCollision is used when we have a collision between
+            two types with the same name.  Currently this is only possible w/ generic
+            methods that should logically have arity as a portion of their name. For eg:
+                 System.EventHandler and System.EventHandler[T]
+                 System.Nullable and System.Nullable[T]
+                 System.IComparable and System.IComparable[T]
+            
+            The TypeCollision provides an indexer but also is a real type.  When used
+            as a real type it is the non-generic form of the type.
+            
+            The indexer allows the user to disambiguate between the generic and
+            non-generic versions.  Therefore users must always provide additional
+            information to get the generic version.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Actions.TypeGroup.UpdateTypeEntity(Microsoft.Scripting.Actions.TypeTracker,Microsoft.Scripting.Actions.TypeTracker)">
+            <param name="existingTypeEntity">The merged list so far. Could be null</param>
+            <param name="newType">The new type(s) to add to the merged list</param>
+            <returns>The merged list.  Could be a TypeTracker or TypeGroup</returns>
+        </member>
+        <member name="M:Microsoft.Scripting.Actions.TypeGroup.GetGenericArity(System.Type)">
+            <summary> Gets the arity of generic parameters</summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Actions.TypeGroup.GetNonGenericType">
+            <exception cref="T:System.TypeLoadException">No non-generic type is represented by this group.</exception>
+        </member>
+        <member name="P:Microsoft.Scripting.Actions.TypeGroup.DeclaringType">
+            <summary>
+            This returns the DeclaringType of all the types in the TypeGroup
+            </summary>
+        </member>
+        <member name="P:Microsoft.Scripting.Actions.TypeGroup.Name">
+            <summary>
+            This returns the base name of the TypeGroup (the name shared by all types minus arity)
+            </summary>
+        </member>
+        <member name="P:Microsoft.Scripting.Actions.TypeGroup.Type">
+            <summary>
+            This will return the result only for the non-generic type if one exists, and will throw 
+            an exception if all types in the TypeGroup are generic
+            </summary>
+        </member>
+        <member name="P:Microsoft.Scripting.Actions.TypeGroup.IsPublic">
+            <summary>
+            This will return the result only for the non-generic type if one exists, and will throw 
+            an exception if all types in the TypeGroup are generic
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Actions.TypeTracker.op_Explicit(Microsoft.Scripting.Actions.TypeTracker)~System.Type">
+            <summary>
+            Enables implicit Type to TypeTracker conversions accross dynamic languages.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Ast.BlockBuilder.ToExpression">
+            <summary>
+            Returns <c>null</c> if no expression was added into the builder.
+            If only a single expression was added returns it.
+            Otherwise returns a <see cref="T:System.Linq.Expressions.BlockExpression"/> containing the expressions added to the builder.
+            </summary>
+        </member>
+        <member name="P:Microsoft.Scripting.Ast.ExpressionCollectionBuilder`1.Expressions">
+            <summary>
+            If the number of items added to the builder is greater than 4 returns a read-only collection builder containing all the items.
+            Returns <c>null</c> otherwise.
+            </summary>
+        </member>
+        <member name="T:Microsoft.Scripting.Ast.FinallyFlowControlExpression">
+            <summary>
+            Wrapping a tree in this node enables jumps from finally blocks
+            It does this by generating control-flow logic in the tree
+            
+            Reducing this node requires a full tree walk of its body
+            (but not nested lambdas)
+            
+            WARNING: this node cannot contain jumps across blocks, because it
+            assumes any unknown jumps are jumps to an outer scope.
+            </summary>
+        </member>
+        <member name="T:Microsoft.Scripting.Ast.Utils">
+            <summary>
+            Factory methods.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Ast.Utils.IsAssignment(System.Linq.Expressions.ExpressionType)">
+            <summary>
+            Determines whether specified expression type represents an assignment.
+            </summary>
+            <returns>
+            True if the expression type represents an assignment.
+            </returns>
+            <remarks>
+            Note that some other nodes can also assign to variables, members or array items:
+            MemberInit, NewArrayInit, Call with ref params, New with ref params, Dynamic with ref params.
+            </remarks>
+        </member>
+        <member name="M:Microsoft.Scripting.Ast.Utils.GetLValueAccess(System.Linq.Expressions.ExpressionType)">
+            <summary>
+            Determines if the left child of the given expression is read or written to or both.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Ast.Utils.Void(System.Linq.Expressions.Expression)">
+            <summary>
+            Converts an expression to a void type.
+            </summary>
+            <param name="expression">An <see cref="T:System.Linq.Expressions.Expression"/> to convert to void. </param>
+            <returns>An <see cref="T:System.Linq.Expressions.Expression" /> that has the <see cref="P:System.Linq.Expressions.Expression.NodeType" /> property equal to <see cref="F:System.Linq.Expressions.ExpressionType.ConvertChecked" /> and the <see cref="P:System.Linq.Expressions.UnaryExpression.Operand" /> and <see cref="P:System.Linq.Expressions.Expression.Type" /> property set to void.</returns>
+        </member>
+        <member name="M:Microsoft.Scripting.Ast.Utils.Box(System.Linq.Expressions.Expression)">
+            <summary>
+            Returns an expression that boxes a given value. Uses boxed objects cache for Int32 and Boolean types.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Ast.Utils.Generator(System.Linq.Expressions.LabelTarget,System.Linq.Expressions.Expression)">
+            <summary>
+            Creates a generator with type IEnumerable{T}, where T is the label.Type
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Ast.Utils.TransformEnumerable(System.Linq.Expressions.Expression,System.Collections.ObjectModel.ReadOnlyCollection{System.Linq.Expressions.ParameterExpression})">
+            
+        </member>
+        <member name="M:Microsoft.Scripting.Ast.Utils.Coalesce(System.Linq.Expressions.Expression,System.Linq.Expressions.Expression,System.Linq.Expressions.ParameterExpression@)">
+            <summary>
+            Null coalescing expression
+            {result} ::= ((tmp = {_left}) == null) ? {right} : tmp
+            '??' operator in C#.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Ast.Utils.CoalesceTrue(System.Linq.Expressions.Expression,System.Linq.Expressions.Expression,System.Reflection.MethodInfo,System.Linq.Expressions.ParameterExpression@)">
+            <summary>
+            True coalescing expression.
+            {result} ::= IsTrue(tmp = {left}) ? {right} : tmp
+            Generalized AND semantics.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Ast.Utils.CoalesceFalse(System.Linq.Expressions.Expression,System.Linq.Expressions.Expression,System.Reflection.MethodInfo,System.Linq.Expressions.ParameterExpression@)">
+            <summary>
+            False coalescing expression.
+            {result} ::= IsTrue(tmp = {left}) ? tmp : {right}
+            Generalized OR semantics.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Ast.Utils.CoalesceTrue(Microsoft.Scripting.Ast.LambdaBuilder,System.Linq.Expressions.Expression,System.Linq.Expressions.Expression,System.Reflection.MethodInfo)">
+            <summary>
+            True coalescing expression.
+            {result} ::= IsTrue(tmp = {left}) ? {right} : tmp
+            Generalized AND semantics.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Ast.Utils.CoalesceFalse(Microsoft.Scripting.Ast.LambdaBuilder,System.Linq.Expressions.Expression,System.Linq.Expressions.Expression,System.Reflection.MethodInfo)">
+            <summary>
+            False coalescing expression.
+            {result} ::= IsTrue(tmp = {left}) ? tmp : {right}
+            Generalized OR semantics.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Ast.Utils.WeakConstant(System.Object)">
+            <summary>
+            Wraps the given value in a WeakReference and returns a tree that will retrieve
+            the value from the WeakReference.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Ast.Utils.Lambda(System.Type,System.String)">
+            <summary>
+            Creates new instance of the LambdaBuilder with the specified name and return type.
+            </summary>
+            <param name="returnType">Return type of the lambda being built.</param>
+            <param name="name">Name for the lambda being built.</param>
+            <returns>new LambdaBuilder instance</returns>
+        </member>
+        <member name="M:Microsoft.Scripting.Ast.Utils.SimpleCallHelper(System.Reflection.MethodInfo,System.Linq.Expressions.Expression[])">
+            <summary>
+            The helper to create the AST method call node. Will add conversions (Utils.Convert)
+            to parameters and instance if necessary.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Ast.Utils.SimpleCallHelper(System.Linq.Expressions.Expression,System.Reflection.MethodInfo,System.Linq.Expressions.Expression[])">
+            <summary>
+            The helper to create the AST method call node. Will add conversions (Utils.Convert)
+            to parameters and instance if necessary.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Ast.Utils.ComplexCallHelper(System.Reflection.MethodInfo,System.Linq.Expressions.Expression[])">
+            <summary>
+            The complex call helper to create the AST method call node.
+            Will add conversions (Expression.Convert()), deals with default parameter values and params arrays.
+            </summary>
+        </member>
+        <member name="T:Microsoft.Scripting.Ast.FlowControlRewriter">
+            <summary>
+            The purpose of this rewriter is simple: ETs do not allow jumps (break, continue, return, goto)
+            that would go through a finally/fault. So we replace them with code that instead stores a flag,
+            and then jumps to the end of the finally/fault. At the end of the try-finally, we emit a switch
+            that then jumps to the correct label.
+            
+            A few things that make this more complicated:
+            
+              1. If a finally contains a jump out, then jumps in the try/catch need to be replaced as well.
+                 It's to support cases like this:
+                     # returns 234
+                     def foo():
+                         try: return 123
+                         finally: return 234 
+                 
+                 We need to replace the "return 123" because after it jumps, we'll go to the finally, which
+                 might decide to jump again, but once the IL finally exits, it ignores the finally jump and
+                 keeps going with the original jump. The moral of the story is: if any jumps in finally are
+                 rewritten, try/catch jumps must be also.
+                 
+             2. To generate better code, we only have one state variable, so if we have to jump out of
+                multiple finallys we just keep jumping. It looks sort of like this:
+                  foo:
+                  try { ... } finally {
+                      try { ... } finally {
+                        ...
+                        if (...) {
+                            // was: goto foo;
+                            $flow = 1; goto endInnerFinally; 
+                        }
+                        ...
+                        endInnerFinally:
+                      }
+                      switch ($flow) {
+                          case 1: goto endOuterFinally;
+                      }
+                      ...
+                      endOuterFinally:
+                  }
+                  switch ($flow) {
+                    case 1: $flow = 0; goto foo;
+                  }
+                  ...
+            
+            </summary>
+        </member>
+        <member name="T:Microsoft.Scripting.Ast.ILightExceptionAwareExpression">
+            <summary>
+            Implemented by expressions which can provide a version which is aware of light exceptions.  
+            
+            Normally these expressions will simply reduce to a version which throws a real exception.
+            When the expression is used inside of a region of code which supports light exceptions
+            the light exception re-writer will call ReduceForLightExceptions.  The expression can
+            then return a new expression which can return a light exception rather than throwing
+            a real .NET exception.
+            </summary>
+        </member>
+        <member name="T:Microsoft.Scripting.Ast.LightCheckAndThrowExpression">
+            <summary>
+            Provides a method call to a method which may return light exceptions. 
+            
+            The call is to a method which supports light exceptions.  When reducing
+            an additional check and throw is added.  When a block code of is re-written
+            for light exceptions this instead reduces to not throw a .NET exception.
+            </summary>
+        </member>
+        <member name="T:Microsoft.Scripting.Ast.LightThrowExpression">
+            <summary>
+            Expression which produces a light exception value.  This should be constructed
+            with the expression which creates the exception and this method will then call
+            a helper method which wraps the exception in our internal light exception class.
+            </summary>
+        </member>
+        <member name="T:Microsoft.Scripting.Ast.LightExceptionRewriter">
+            <summary>
+            Internal re-writer class which creates code which is light exception aware.
+            </summary>
+        </member>
+        <member name="T:Microsoft.Scripting.Ast.LightExceptionRewriter.LightExceptionRewrittenCode">
+            <summary>
+            Class used to be avoid overhead of creating expression trees when we're usually 
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Ast.LightExceptionRewriter.CheckExpression(System.Linq.Expressions.Expression,System.Type)">
+            <summary>
+            Adds light exception handling to the provided expression which
+            is light exception aware.
+            </summary>
+        </member>
+        <member name="T:Microsoft.Scripting.Ast.GeneratorExpression">
+            <summary>
+            A parameterless generator, that is of type IEnumerable, IEnumerable{T},
+            IEnumerator, or IEnumerator{T}. Its body can contain a series of
+            YieldExpressions. Each call into MoveNext on the enumerator reenters
+            the generator, and executes until it reaches a YieldReturn or YieldBreak
+            expression
+            </summary>
+        </member>
+        <member name="P:Microsoft.Scripting.Ast.GeneratorExpression.Target">
+            <summary>
+            The label used by YieldBreak and YieldReturn expressions to yield
+            from this generator
+            </summary>
+        </member>
+        <member name="P:Microsoft.Scripting.Ast.GeneratorExpression.Body">
+            <summary>
+            The body of the generator, which can contain YieldBreak and
+            YieldReturn expressions
+            </summary>
+        </member>
+        <member name="P:Microsoft.Scripting.Ast.GeneratorExpression.RewriteAssignments">
+            <summary>
+            Indicates whether the lhs instances are preserved when assignments
+            are made to expressions containing yields.
+            </summary>
+        </member>
+        <member name="T:Microsoft.Scripting.Ast.GeneratorRewriter">
+            <summary>
+            When finding a yield return or yield break, this rewriter flattens out
+            containing blocks, scopes, and expressions with stack state. All
+            scopes encountered have their variables promoted to the generator's
+            closure, so they survive yields.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Ast.GeneratorRewriter.MakeAssign(System.Linq.Expressions.ParameterExpression,System.Linq.Expressions.Expression)">
+            <summary>
+            Makes an assignment to this variable. Pushes the assignment as far
+            into the right side as possible, to allow jumps into it.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Ast.GeneratorRewriter.IsConstant(System.Linq.Expressions.Expression)">
+            <summary>
+            Returns true if the expression remains constant no matter when it is evaluated.
+            </summary>
+        </member>
+        <member name="T:Microsoft.Scripting.Ast.YieldExpression">
+            <summary>
+            Represents either a YieldBreak or YieldReturn in a GeneratorExpression
+            If Value is non-null, it's a YieldReturn; otherwise it's a YieldBreak
+            and executing it will stop enumeration of the generator, causing
+            MoveNext to return false.
+            </summary>
+        </member>
+        <member name="P:Microsoft.Scripting.Ast.YieldExpression.Value">
+            <summary>
+            The value yieled from this expression, if it is a yield return
+            </summary>
+        </member>
+        <member name="P:Microsoft.Scripting.Ast.YieldExpression.Target">
+            <summary>
+            The label used to yield from this generator
+            </summary>
+        </member>
+        <member name="T:Microsoft.Scripting.Ast.LambdaBuilder">
+            <summary>
+            The builder for creating the LambdaExpression node.
+            
+            Since the nodes require that parameters and variables are created
+            before hand and then passed to the factories creating LambdaExpression
+            this builder keeps track of the different pieces and at the end creates
+            the LambdaExpression.
+            
+            TODO: This has some functionality related to CodeContext that should be
+            removed, in favor of languages handling their own local scopes
+            </summary>
+        </member>
+        <member name="P:Microsoft.Scripting.Ast.LambdaBuilder.Name">
+            <summary>
+            The name of the lambda.
+            Currently anonymous/unnamed lambdas are not allowed.
+            </summary>
+        </member>
+        <member name="P:Microsoft.Scripting.Ast.LambdaBuilder.ReturnType">
+            <summary>
+            Return type of the lambda being created.
+            </summary>
+        </member>
+        <member name="P:Microsoft.Scripting.Ast.LambdaBuilder.Locals">
+            <summary>
+            List of lambda's local variables for direct manipulation.
+            </summary>
+        </member>
+        <member name="P:Microsoft.Scripting.Ast.LambdaBuilder.Parameters">
+            <summary>
+            List of lambda's parameters for direct manipulation
+            </summary>
+        </member>
+        <member name="P:Microsoft.Scripting.Ast.LambdaBuilder.ParamsArray">
+            <summary>
+            The params array argument, if any.
+            </summary>
+        </member>
+        <member name="P:Microsoft.Scripting.Ast.LambdaBuilder.Body">
+            <summary>
+            The body of the lambda. This must be non-null.
+            </summary>
+        </member>
+        <member name="P:Microsoft.Scripting.Ast.LambdaBuilder.Dictionary">
+            <summary>
+            The generated lambda should have dictionary of locals
+            instead of allocating them directly on the CLR stack.
+            </summary>
+        </member>
+        <member name="P:Microsoft.Scripting.Ast.LambdaBuilder.Visible">
+            <summary>
+            The scope is visible (default). Invisible if false.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Ast.LambdaBuilder.Parameter(System.Type,System.String)">
+            <summary>
+            Creates a parameter on the lambda with a given name and type.
+            
+            Parameters maintain the order in which they are created,
+            however custom ordering is possible via direct access to
+            Parameters collection.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Ast.LambdaBuilder.ClosedOverParameter(System.Type,System.String)">
+            <summary>
+            Creates a parameter on the lambda with a given name and type.
+            
+            Parameters maintain the order in which they are created,
+            however custom ordering is possible via direct access to
+            Parameters collection.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Ast.LambdaBuilder.AddParameters(System.Linq.Expressions.ParameterExpression[])">
+            <summary>
+            adds existing parameter to the lambda.
+            
+            Parameters maintain the order in which they are created,
+            however custom ordering is possible via direct access to
+            Parameters collection.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Ast.LambdaBuilder.CreateHiddenParameter(System.String,System.Type)">
+            <summary>
+            Creates a hidden parameter on the lambda with a given name and type.
+            
+            Parameters maintain the order in which they are created,
+            however custom ordering is possible via direct access to
+            Parameters collection.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Ast.LambdaBuilder.CreateParamsArray(System.Type,System.String)">
+            <summary>
+            Creates a params array argument on the labmda.
+            
+            The params array argument is added to the signature immediately. Before the lambda is
+            created, the builder validates that it is still the last (since the caller can modify
+            the order of parameters explicitly by maniuplating the parameter list)
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Ast.LambdaBuilder.ClosedOverVariable(System.Type,System.String)">
+            <summary>
+            Creates a local variable with specified name and type.
+            TODO: simplify by pushing logic into callers
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Ast.LambdaBuilder.Variable(System.Type,System.String)">
+            <summary>
+            Creates a local variable with specified name and type.
+            TODO: simplify by pushing logic into callers
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Ast.LambdaBuilder.HiddenVariable(System.Type,System.String)">
+            <summary>
+            Creates a temporary variable with specified name and type.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Ast.LambdaBuilder.AddHiddenVariable(System.Linq.Expressions.ParameterExpression)">
+            <summary>
+            Adds the temporary variable to the list of variables maintained
+            by the builder. This is useful in cases where the variable is
+            created outside of the builder.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Ast.LambdaBuilder.MakeLambda(System.Type)">
+            <summary>
+            Creates the LambdaExpression from the builder.
+            After this operation, the builder can no longer be used to create other instances.
+            </summary>
+            <param name="lambdaType">Desired type of the lambda. </param>
+            <returns>New LambdaExpression instance.</returns>
+        </member>
+        <member name="M:Microsoft.Scripting.Ast.LambdaBuilder.MakeLambda">
+            <summary>
+            Creates the LambdaExpression from the builder.
+            After this operation, the builder can no longer be used to create other instances.
+            </summary>
+            <returns>New LambdaExpression instance.</returns>
+        </member>
+        <member name="M:Microsoft.Scripting.Ast.LambdaBuilder.MakeGenerator(System.Linq.Expressions.LabelTarget,System.Type)">
+            <summary>
+            Creates the generator LambdaExpression from the builder.
+            After this operation, the builder can no longer be used to create other instances.
+            </summary>
+            <returns>New LambdaExpression instance.</returns>
+        </member>
+        <member name="M:Microsoft.Scripting.Ast.LambdaBuilder.EnsureSignature(System.Type)">
+            <summary>
+            Fixes up lambda body and parameters to match the signature of the given delegate if needed.
+            </summary>
+            <param name="delegateType"></param>
+        </member>
+        <member name="M:Microsoft.Scripting.Ast.LambdaBuilder.Validate">
+            <summary>
+            Validates that the builder has enough information to create the lambda.
+            </summary>
+        </member>
+        <member name="T:Microsoft.Scripting.Debugging.CompilerServices.DebugLambdaInfo">
+            <summary>
+            Used by compilers to provide additional debug information about LambdaExpression to DebugContext
+            </summary>
+        </member>
+        <member name="T:Microsoft.Scripting.Debugging.CompilerServices.IDebugCompilerSupport">
+            <summary>
+            Implemented by compilers to allow the traceback engine to get additional information.
+            </summary>
+        </member>
+        <member name="T:Microsoft.Scripting.Debugging.CompilerServices.DebugContext">
+            <summary>
+            Provides services to compilers for instrumenting code with tracebacks.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Debugging.CompilerServices.DebugContext.CreateInstance">
+            <summary>
+            Creates a new instance of DebugContext
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Debugging.CompilerServices.DebugContext.TransformLambda(System.Linq.Expressions.LambdaExpression,Microsoft.Scripting.Debugging.CompilerServices.DebugLambdaInfo)">
+            <summary>
+            Transforms a LambdaExpression to a debuggable LambdaExpression
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Debugging.CompilerServices.DebugContext.TransformLambda(System.Linq.Expressions.LambdaExpression)">
+            <summary>
+            Transforms a LambdaExpression to a debuggable LambdaExpression
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Debugging.CompilerServices.DebugContext.ResetSourceFile(System.String)">
+            <summary>
+            Resets a state associated with a source file that's maintained in the DebugContext
+            </summary>
+        </member>
+        <member name="P:Microsoft.Scripting.Debugging.CompilerServices.DebugContext.Threads">
+            <summary>
+            Threads
+            </summary>
+        </member>
+        <member name="P:Microsoft.Scripting.Debugging.CompilerServices.DebugContext.DebugCallback">
+            <summary>
+            Hook
+            </summary>
+        </member>
+        <member name="P:Microsoft.Scripting.Debugging.DebugFrame.Thread">
+            <summary>
+            Thread
+            </summary>
+        </member>
+        <member name="P:Microsoft.Scripting.Debugging.DebugFrame.StackDepth">
+            <summary>
+            FrameOrder
+            </summary>
+        </member>
+        <member name="P:Microsoft.Scripting.Debugging.DebugFrame.Variables">
+            <summary>
+            Variables
+            </summary>
+        </member>
+        <member name="P:Microsoft.Scripting.Debugging.DebugFrame.CurrentSequencePointIndex">
+            <summary>
+            CurrentSequencePointIndex
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Debugging.DebugFrame.ReplaceLiftedLocals(System.Runtime.CompilerServices.IRuntimeVariables)">
+            <summary>
+            // This method is called from the generator to update the frame with generator's locals
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Debugging.DebugFrame.RemapToGenerator(System.Int32)">
+            <summary>
+            Remaps the frame's state to use the generator for execution.
+            </summary>
+            <param name="version">Int32.MaxValue to map to latest version</param>
+        </member>
+        <member name="T:Microsoft.Scripting.Debugging.DebuggableLambdaBuilder">
+            <summary>
+            DebuggableLambdaBuilder is used to transform a DLR expression tree into a debuggable lambda expression.
+            </summary>
+        </member>
+        <member name="T:Microsoft.Scripting.Debugging.DebugGenerator`1">
+            <summary>
+            Used to wrap a lambda that was already a generator prior to transform.
+            </summary>
+        </member>
+        <member name="T:Microsoft.Scripting.Debugging.DebugInfoRewriter">
+            <summary>
+            Used to rewrite expressions containing DebugInfoExpressions.
+            </summary>
+        </member>
+        <member name="T:Microsoft.Scripting.Debugging.DebugSourceSpan">
+            <summary>
+            Combines source file and span.  Also provides Contains and Intersects functionality.
+            </summary>
+        </member>
+        <member name="T:Microsoft.Scripting.Debugging.DebugRuntimeVariables">
+            <summary>
+            Implementation of IDebugRuntimeVariables, which wraps IRuntimeVariables + FunctionInfo/DebugMarker
+            </summary>
+        </member>
+        <member name="T:Microsoft.Scripting.Debugging.DefaultDebugThread">
+            <summary>
+            Default implementation of BaseDebugThread, which uses DLR's RuntimeVariablesExpression for lifting locals.
+            </summary>
+        </member>
+        <member name="T:Microsoft.Scripting.Debugging.DefaultDebugThreadFactory">
+            <summary>
+            Default implementation of IDebugThreadFactory, which uses DLR's RuntimeVariablesExpression for lifting locals.
+            </summary>
+        </member>
+        <member name="P:Microsoft.Scripting.Debugging.FunctionInfo.SequencePoints">
+            <summary>
+            SequencePoints
+            </summary>
+        </member>
+        <member name="P:Microsoft.Scripting.Debugging.FunctionInfo.Name">
+            <summary>
+            Name
+            </summary>
+        </member>
+        <member name="P:Microsoft.Scripting.Debugging.FunctionInfo.CustomPayload">
+            <summary>
+            CustomPayload
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Debugging.FunctionInfo.GetTraceLocations">
+            <summary>
+            GetTraceLocations
+            </summary>
+            <returns></returns>
+        </member>
+        <member name="M:Microsoft.Scripting.Debugging.IDebugCallback.OnDebugEvent(Microsoft.Scripting.Debugging.TraceEventKind,Microsoft.Scripting.Debugging.DebugThread,Microsoft.Scripting.Debugging.FunctionInfo,System.Int32,System.Int32,System.Object)">
+            <summary>
+            Callback that is fired by the traceback engine
+            </summary>
+        </member>
+        <member name="T:Microsoft.Scripting.Debugging.LambdaWalker">
+            <summary>
+            Used to extract locals information from expressions.
+            </summary>
+        </member>
+        <member name="T:Microsoft.Scripting.Debugging.ErrorStrings">
+            <summary>
+               Strongly-typed and parameterized string factory.
+            </summary>
+        </member>
+        <member name="T:Microsoft.Scripting.Debugging.IDebugRuntimeVariables">
+            <summary>
+            IDebugRuntimeVariables is used to wrap IRuntimeVariables and add properties for retrieving
+            FunctionInfo and DebugMarker from debuggable labmdas.
+            </summary>
+        </member>
+        <member name="T:Microsoft.Scripting.Debugging.IDebugThreadFactory">
+            <summary>
+            IDebugThreadFactory is used to abstract how frames and local variables are maintained at run/debug time.
+            </summary>
+        </member>
+        <member name="T:Microsoft.Scripting.Debugging.ScopedRuntimeVariables">
+            <summary>
+            Implements IRuntimeVariables in a way that preserves scoping within the lambda.
+            </summary>
+        </member>
+        <member name="T:Microsoft.Scripting.Debugging.TracePipeline">
+            <summary>
+            TraceSession.
+            
+            Basically holds a list of last encountered DebugFrame instances 
+            (one per running thread).
+            </summary>
+        </member>
+        <member name="T:Microsoft.Scripting.Debugging.VariableInfo">
+            <summary>
+            Used to provide information about locals/parameters at debug time.
+            </summary>
+        </member>
+        <member name="P:Microsoft.Scripting.Debugging.VariableInfo.VariableType">
+            <summary>
+            Type
+            </summary>
+        </member>
+        <member name="P:Microsoft.Scripting.Debugging.VariableInfo.Name">
+            <summary>
+            Name
+            </summary>
+        </member>
+        <member name="P:Microsoft.Scripting.Debugging.VariableInfo.IsParameter">
+            <summary>
+            Parameter
+            </summary>
+        </member>
+        <member name="T:Microsoft.Scripting.Generation.FieldBuilderExpression">
+            <summary>
+            Provides a simple expression which enables embedding FieldBuilder's
+            in an AST before the type is complete.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Generation.ConstantCheck.Check(System.Linq.Expressions.Expression,System.Object)">
+            <summary>
+            Tests to see if the expression is a constant with the given value.
+            </summary>
+            <param name="expression">The expression to examine</param>
+            <param name="value">The constant value to check for.</param>
+            <returns>true/false</returns>
+        </member>
+        <member name="M:Microsoft.Scripting.Generation.ConstantCheck.IsConstant(System.Linq.Expressions.Expression,System.Object)">
+            <summary>
+            Tests to see if the expression is a constant with the given value.
+            </summary>
+            <param name="e">The expression to examine</param>
+            <param name="value">The constant value to check for.</param>
+            <returns>true/false</returns>
+        </member>
+        <member name="M:Microsoft.Scripting.Generation.ILGen.BeginCatchBlock(System.Type)">
+            <summary>
+            Begins a catch block.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Generation.ILGen.BeginExceptFilterBlock">
+            <summary>
+            Begins an exception block for a filtered exception.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Generation.ILGen.BeginExceptionBlock">
+            <summary>
+            Begins an exception block for a non-filtered exception.
+            </summary>
+            <returns></returns>
+        </member>
+        <member name="M:Microsoft.Scripting.Generation.ILGen.BeginFaultBlock">
+            <summary>
+            Begins an exception fault block
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Generation.ILGen.BeginFinallyBlock">
+            <summary>
+            Begins a finally block
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Generation.ILGen.EndExceptionBlock">
+            <summary>
+            Ends an exception block.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Generation.ILGen.BeginScope">
+            <summary>
+            Begins a lexical scope.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Generation.ILGen.EndScope">
+            <summary>
+            Ends a lexical scope.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Generation.ILGen.DeclareLocal(System.Type)">
+            <summary>
+            Declares a local variable of the specified type.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Generation.ILGen.DeclareLocal(System.Type,System.Boolean)">
+            <summary>
+            Declares a local variable of the specified type, optionally
+            pinning the object referred to by the variable.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Generation.ILGen.DefineLabel">
+            <summary>
+            Declares a new label.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Generation.ILGen.MarkLabel(System.Reflection.Emit.Label)">
+            <summary>
+            Marks the label at the current position.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Generation.ILGen.Emit(System.Reflection.Emit.OpCode)">
+            <summary>
+            Emits an instruction.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Generation.ILGen.Emit(System.Reflection.Emit.OpCode,System.Byte)">
+            <summary>
+            Emits an instruction with a byte argument.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Generation.ILGen.Emit(System.Reflection.Emit.OpCode,System.Reflection.ConstructorInfo)">
+            <summary>
+            Emits an instruction with the metadata token for the specified contructor.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Generation.ILGen.Emit(System.Reflection.Emit.OpCode,System.Double)">
+            <summary>
+            Emits an instruction with a double argument.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Generation.ILGen.Emit(System.Reflection.Emit.OpCode,System.Reflection.FieldInfo)">
+            <summary>
+            Emits an instruction with the metadata token for the specified field.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Generation.ILGen.Emit(System.Reflection.Emit.OpCode,System.Single)">
+            <summary>
+            Emits an instruction with a float argument.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Generation.ILGen.Emit(System.Reflection.Emit.OpCode,System.Int32)">
+            <summary>
+            Emits an instruction with an int argument.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Generation.ILGen.Emit(System.Reflection.Emit.OpCode,System.Reflection.Emit.Label)">
+            <summary>
+            Emits an instruction with a label argument.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Generation.ILGen.Emit(System.Reflection.Emit.OpCode,System.Reflection.Emit.Label[])">
+            <summary>
+            Emits an instruction with multiple target labels (switch).
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Generation.ILGen.Emit(System.Reflection.Emit.OpCode,System.Reflection.Emit.LocalBuilder)">
+            <summary>
+            Emits an instruction with a reference to a local variable.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Generation.ILGen.Emit(System.Reflection.Emit.OpCode,System.Int64)">
+            <summary>
+            Emits an instruction with a long argument.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Generation.ILGen.Emit(System.Reflection.Emit.OpCode,System.Reflection.MethodInfo)">
+            <summary>
+            Emits an instruction with the metadata token for a specified method.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Generation.ILGen.Emit(System.Reflection.Emit.OpCode,System.SByte)">
+            <summary>
+            Emits an instruction with a signed byte argument.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Generation.ILGen.Emit(System.Reflection.Emit.OpCode,System.Int16)">
+            <summary>
+            Emits an instruction with a short argument.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Generation.ILGen.Emit(System.Reflection.Emit.OpCode,System.Reflection.Emit.SignatureHelper)">
+            <summary>
+            Emits an instruction with a signature token.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Generation.ILGen.Emit(System.Reflection.Emit.OpCode,System.String)">
+            <summary>
+            Emits an instruction with a string argument.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Generation.ILGen.Emit(System.Reflection.Emit.OpCode,System.Type)">
+            <summary>
+            Emits an instruction with the metadata token for a specified type argument.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Generation.ILGen.EmitCall(System.Reflection.Emit.OpCode,System.Reflection.MethodInfo,System.Type[])">
+            <summary>
+            Emits a call or a virtual call to the varargs method.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Generation.ILGen.EmitCalli(System.Reflection.Emit.OpCode,System.Runtime.InteropServices.CallingConvention,System.Type,System.Type[])">
+            <summary>
+            Emits an unmanaged indirect call instruction.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Generation.ILGen.EmitCalli(System.Reflection.Emit.OpCode,System.Reflection.CallingConventions,System.Type,System.Type[],System.Type[])">
+            <summary>
+            Emits a managed indirect call instruction.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Generation.ILGen.MarkSequencePoint(System.Diagnostics.SymbolStore.ISymbolDocumentWriter,System.Int32,System.Int32,System.Int32,System.Int32)">
+            <summary>
+            Marks a sequence point.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Generation.ILGen.UsingNamespace(System.String)">
+            <summary>
+            Specifies the namespace to be used in evaluating locals and watches for the
+                current active lexical scope.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Generation.ILGen.EmitLoadValueIndirect(System.Type)">
+            <summary>
+            Emits a Ldind* instruction for the appropriate type
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Generation.ILGen.EmitStoreValueIndirect(System.Type)">
+            <summary>
+            Emits a Stind* instruction for the appropriate type.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Generation.ILGen.EmitStoreElement(System.Type)">
+            <summary>
+            Emits a Stelem* instruction for the appropriate type.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Generation.ILGen.EmitBoxing(System.Type)">
+            <summary>
+            Boxes the value of the stack. No-op for reference types. Void is
+            converted to a null reference. For almost all value types this
+            method will box them in the standard way. Int32 and Boolean are
+            handled with optimized conversions that reuse the same object for
+            small values. For Int32 this is purely a performance optimization.
+            For Boolean this is use to ensure that True and False are always
+            the same objects.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Generation.ILGen.EmitArray``1(System.Collections.Generic.IList{``0})">
+            <summary>
+            Emits an array of constant values provided in the given list.
+            The array is strongly typed.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Generation.ILGen.EmitArray(System.Type,System.Int32,Microsoft.Scripting.Generation.EmitArrayHelper)">
+            <summary>
+            Emits an array of values of count size.  The items are emitted via the callback
+            which is provided with the current item index to emit.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Generation.ILGen.EmitArray(System.Type)">
+            <summary>
+            Emits an array construction code.  
+            The code assumes that bounds for all dimensions
+            are already emitted.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Generation.ILGen.EmitDefault(System.Type)">
+            <summary>
+            Emits default(T)
+            Semantics match C# compiler behavior
+            </summary>
+        </member>
+        <member name="T:Microsoft.Scripting.Generation.KeyedQueue`2">
+            <summary>
+            A simple dictionary of queues, keyed off a particular type
+            This is useful for storing free lists of variables
+            </summary>
+        </member>
+        <member name="P:Microsoft.Scripting.Generation.Snippets.SnippetsDirectory">
+            <summary>
+            Directory where snippet assembly will be saved if SaveSnippets is set.
+            </summary>
+        </member>
+        <member name="P:Microsoft.Scripting.Generation.Snippets.SaveSnippets">
+            <summary>
+            Save snippets to an assembly (see also SnippetsDirectory, SnippetsFileName).
+            </summary>
+        </member>
+        <member name="P:Microsoft.Scripting.Generation.TypeGen.TypeInitializer">
+            <summary>
+            Gets the Compiler associated with the Type Initializer (cctor) creating it if necessary.
+            </summary>
+        </member>
+        <member name="T:Microsoft.Scripting.Generation.MethodSignatureInfo">
+            <summary>
+            Helper class to remove methods w/ identical signatures.  Used for GetDefaultMembers
+            which returns members from all types in the hierarchy.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Generation.CompilerHelpers.IsConstructor(System.Reflection.MethodBase)">
+            <summary>
+            True if the MethodBase is method which is going to construct an object
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Generation.CompilerHelpers.GetType(System.Object)">
+            <summary>
+            Returns the System.Type for any object, including null.  The type of null
+            is represented by None.Type and all other objects just return the 
+            result of Object.GetType
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Generation.CompilerHelpers.GetTypes(System.Object[])">
+            <summary>
+            Simply returns a Type[] from calling GetType on each element of args.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Generation.CompilerHelpers.TypesEqual(System.Collections.IList,System.Int32,System.Type[])">
+            <summary>
+            EMITTED
+            Used by default method binder to check types of splatted arguments.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Generation.CompilerHelpers.TryGetCallableMethod(System.Type,System.Reflection.MethodInfo)">
+            <summary>
+            Given a MethodInfo which may be declared on a non-public type this attempts to
+            return a MethodInfo which will dispatch to the original MethodInfo but is declared
+            on a public type.
+            
+            Returns the original method if the method if a public version cannot be found.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Generation.CompilerHelpers.FilterNonVisibleMembers(System.Type,System.Collections.Generic.IEnumerable{System.Reflection.MemberInfo})">
+            <summary>
+            Non-public types can have public members that we find when calling type.GetMember(...).  This
+            filters out the non-visible members by attempting to resolve them to the correct visible type.
+            
+            If no correct visible type can be found then the member is not visible and we won't call it.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Generation.CompilerHelpers.MemberEquals(System.Reflection.MemberInfo,System.Reflection.MemberInfo)">
+            <summary>
+            Sees if two MemberInfos point to the same underlying construct in IL.  This
+            ignores the ReflectedType property which exists on MemberInfos which
+            causes direct comparisons to be false even if they are the same member.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Generation.CompilerHelpers.GetTryConvertReturnValue(System.Type)">
+            <summary>
+            Returns a value which indicates failure when a OldConvertToAction of ImplicitTry or
+            ExplicitTry.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Generation.CompilerHelpers.LightCompile(System.Linq.Expressions.LambdaExpression)">
+            <summary>
+            Creates an interpreted delegate for the lambda.
+            </summary>
+            <param name="lambda">The lambda to compile.</param>
+            <returns>A delegate which can interpret the lambda.</returns>
+        </member>
+        <member name="M:Microsoft.Scripting.Generation.CompilerHelpers.LightCompile(System.Linq.Expressions.LambdaExpression,System.Int32)">
+            <summary>
+            Creates an interpreted delegate for the lambda.
+            </summary>
+            <param name="lambda">The lambda to compile.</param>
+            <param name="compilationThreshold">The number of iterations before the interpreter starts compiling</param>
+            <returns>A delegate which can interpret the lambda.</returns>
+        </member>
+        <member name="M:Microsoft.Scripting.Generation.CompilerHelpers.LightCompile``1(System.Linq.Expressions.Expression{``0})">
+            <summary>
+            Creates an interpreted delegate for the lambda.
+            </summary>
+            <typeparam name="T">The lambda's delegate type.</typeparam>
+            <param name="lambda">The lambda to compile.</param>
+            <returns>A delegate which can interpret the lambda.</returns>
+        </member>
+        <member name="M:Microsoft.Scripting.Generation.CompilerHelpers.LightCompile``1(System.Linq.Expressions.Expression{``0},System.Int32)">
+            <summary>
+            Creates an interpreted delegate for the lambda.
+            </summary>
+            <param name="lambda">The lambda to compile.</param>
+            <param name="compilationThreshold">The number of iterations before the interpreter starts compiling</param>
+            <returns>A delegate which can interpret the lambda.</returns>
+        </member>
+        <member name="M:Microsoft.Scripting.Generation.CompilerHelpers.CompileToMethod(System.Linq.Expressions.LambdaExpression,System.Reflection.Emit.MethodBuilder,System.Boolean)">
+            <summary>
+            Compiles the lambda into a method definition.
+            </summary>
+            <param name="lambda">the lambda to compile</param>
+            <param name="method">A <see cref="T:System.Reflection.Emit.MethodBuilder"/> which will be used to hold the lambda's IL.</param>
+            <param name="emitDebugSymbols">A parameter that indicates if debugging information should be emitted to a PDB symbol store.</param>
+        </member>
+        <member name="M:Microsoft.Scripting.Generation.CompilerHelpers.Compile``1(System.Linq.Expressions.Expression{``0},System.Boolean)">
+            <summary>
+            Compiles the LambdaExpression.
+            
+            If the lambda is compiled with emitDebugSymbols, it will be
+            generated into a TypeBuilder. Otherwise, this method is the same as
+            calling LambdaExpression.Compile()
+            
+            This is a workaround for a CLR limitiation: DynamicMethods cannot
+            have debugging information.
+            </summary>
+            <param name="lambda">the lambda to compile</param>
+            <param name="emitDebugSymbols">true to generate a debuggable method, false otherwise</param>
+            <returns>the compiled delegate</returns>
+        </member>
+        <member name="M:Microsoft.Scripting.Generation.CompilerHelpers.CompileToMethod``1(System.Linq.Expressions.Expression{``0},System.Runtime.CompilerServices.DebugInfoGenerator,System.Boolean)">
+            <summary>
+            Compiles the LambdaExpression, emitting it into a new type, and
+            optionally making it debuggable.
+            
+            This is a workaround for a CLR limitiation: DynamicMethods cannot
+            have debugging information.
+            </summary>
+            <param name="lambda">the lambda to compile</param>
+            <param name="debugInfoGenerator">Debugging information generator used by the compiler to mark sequence points and annotate local variables.</param>
+            <param name="emitDebugSymbols">True if debug symbols (PDBs) are emitted by the <paramref name="debugInfoGenerator"/>.</param>
+            <returns>the compiled delegate</returns>
+        </member>
+        <member name="T:Microsoft.Scripting.Generation.CompilerHelpers.DebuggableCodeRewriter">
+            <summary>
+            Removes all live objects and places them in static fields of a type.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Generation.CompilerHelpers.Reduce(System.Linq.Expressions.DynamicExpression)">
+            <summary>
+            Reduces the provided DynamicExpression into site.Target(site, *args).
+            </summary>
+        </member>
+        <member name="T:Microsoft.Scripting.Generation.ToDiskRewriter">
+            <summary>
+            Serializes constants and dynamic sites so the code can be saved to disk
+            </summary>
+        </member>
+        <member name="T:Microsoft.Scripting.Utils.TypeMemberCache`1">
+            <summary>
+            Caches type member lookup.
+            </summary>
+            <remarks>
+            When enumerating members (methods, properties, events) of a type (declared or inherited) Reflection enumerates all
+            runtime members of the type and its base types and caches the result.
+            When looking for a member of a specific name Reflection still enumerates all and filters out those that don't match the name.
+            That's inefficient when looking for members of multiple names one by one.
+            Instead we build a map of name to member list and then answer subsequent queries by simply looking up the dictionary.
+            </remarks>
+        </member>
+        <member name="T:Microsoft.Scripting.Utils.CacheDict`2">
+            <summary>
+            Provides a dictionary-like object used for caches which holds onto a maximum
+            number of elements specified at construction time.
+            
+            This class is not thread safe.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Utils.CacheDict`2.#ctor(System.Int32)">
+            <summary>
+            Creates a dictionary-like object used for caches.
+            </summary>
+            <param name="maxSize">The maximum number of elements to store.</param>
+        </member>
+        <member name="M:Microsoft.Scripting.Utils.CacheDict`2.TryGetValue(`0,`1@)">
+            <summary>
+            Tries to get the value associated with 'key', returning true if it's found and
+            false if it's not present.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Utils.CacheDict`2.Add(`0,`1)">
+            <summary>
+            Adds a new element to the cache, replacing and moving it to the front if the
+            element is already present.
+            </summary>
+        </member>
+        <member name="P:Microsoft.Scripting.Utils.CacheDict`2.Item(`0)">
+            <summary>
+            Returns the value associated with the given key, or throws KeyNotFoundException
+            if the key is not present.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Utils.CollectionExtensions.ToReadOnly``1(System.Collections.Generic.IEnumerable{``0})">
+            <summary>
+            Wraps the provided enumerable into a ReadOnlyCollection{T}
+            
+            Copies all of the data into a new array, so the data can't be
+            changed after creation. The exception is if the enumerable is
+            already a ReadOnlyCollection{T}, in which case we just return it.
+            </summary>
+        </member>
+        <member name="T:Microsoft.Scripting.Utils.CopyOnWriteList`1">
+            <summary>
+            List optimized for few writes and multiple reads. It provides thread-safe read and write access. 
+            Iteration is not thread-safe by default, but GetCopyForRead allows for iteration 
+            without taking a lock.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Utils.CopyOnWriteList`1.GetCopyForRead">
+            <summary>
+            Gets a copy of the contents of the list. The copy will not change even if the original
+            CopyOnWriteList object is modified. This method should be used to iterate the list in
+            a thread-safe way if no lock is taken. Iterating on the original list is not guaranteed 
+            to be thread-safe.
+            </summary>
+            <returns>The returned copy should not be modified by the caller.</returns>
+        </member>
+        <member name="M:Microsoft.Scripting.Utils.DynamicUtils.GetExpressions(System.Dynamic.DynamicMetaObject[])">
+            <summary>
+            Returns the list of expressions represented by the <see cref="T:System.Dynamic.DynamicMetaObject"/> instances.
+            </summary>
+            <param name="objects">An array of <see cref="T:System.Dynamic.DynamicMetaObject"/> instances to extract expressions from.</param>
+            <returns>The array of expressions.</returns>
+        </member>
+        <member name="M:Microsoft.Scripting.Utils.DynamicUtils.ObjectToMetaObject(System.Object,System.Linq.Expressions.Expression)">
+            <summary>
+            Creates an instance of <see cref="T:System.Dynamic.DynamicMetaObject"/> for a runtime value and the expression that represents it during the binding process.
+            </summary>
+            <param name="argValue">The runtime value to be represented by the <see cref="T:System.Dynamic.DynamicMetaObject"/>.</param>
+            <param name="parameterExpression">An expression to represent this <see cref="T:System.Dynamic.DynamicMetaObject"/> during the binding process.</param>
+            <returns>The new instance of <see cref="T:System.Dynamic.DynamicMetaObject"/>.</returns>
+        </member>
+        <member name="M:Microsoft.Scripting.Utils.DynamicUtils.LightBind``1(System.Dynamic.DynamicMetaObjectBinder,System.Object[],System.Int32)">
+            <summary>
+            Produces an interpreted binding using the given binder which falls over to a compiled
+            binding after hitCount tries.
+            
+            This method should be called whenever an interpreted binding is required.  Sometimes it will
+            return a compiled binding if a previous binding was produced and it's hit count was exhausted.
+            In this case the binder will not be called back for a new binding - the previous one will
+            be used.
+            </summary>
+            <typeparam name="T">The delegate type being used for the call site</typeparam>
+            <param name="binder">The binder used for the call site</param>
+            <param name="compilationThreshold">The number of calls before the binder should switch to a compiled mode.</param>
+            <param name="args">The arguments that are passed for the binding (as received in a BindDelegate call)</param>
+            <returns>A delegate which represents the interpreted binding.</returns>
+        </member>
+        <member name="T:Microsoft.Scripting.Utils.DynamicUtils.GenericInterpretedBinder`1.InterpretedRuleHitCheckExpression">
+            <summary>
+            Expression which reduces to the normal test but under the interpreter adds a count down
+            check which enables compiling when the count down is reached.
+            </summary>
+        </member>
+        <member name="T:Microsoft.Scripting.Utils.CachedBindingInfo">
+            <summary>
+            Base class for storing information about the binding that a specific rule is applicable for.
+            
+            We have a derived generic class but this class enables us to refer to it w/o having the
+            generic type information around.
+            
+            This class tracks both the count down to when we should compile.  When we compile we
+            take the Expression[T] that was used before and compile it.  While this is happening
+            we continue to allow the interpreted code to run.  When the compilation is complete we
+            store a thread static which tells us what binding failed and the current rule is no
+            longer functional.  Finally the language binder will call us again and we'll retrieve
+            and return the compiled overload.
+            </summary>
+        </member>
+        <member name="T:Microsoft.Scripting.Utils.HybridReferenceDictionary`2">
+            <summary>
+            A hybrid dictionary which compares based upon object identity.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Utils.MathUtils.FloorDivideUnchecked(System.Int32,System.Int32)">
+            <summary>
+            Calculates the quotient of two 32-bit signed integers rounded towards negative infinity.
+            </summary>
+            <param name="x">Dividend.</param>
+            <param name="y">Divisor.</param>
+            <returns>The quotient of the specified numbers rounded towards negative infinity, or <code>(int)Floor((double)x/(double)y)</code>.</returns>
+            <exception cref="T:System.DivideByZeroException"><paramref name="y"/> is 0.</exception>
+            <remarks>The caller must check for overflow (x = Int32.MinValue, y = -1)</remarks>
+        </member>
+        <member name="M:Microsoft.Scripting.Utils.MathUtils.FloorDivideUnchecked(System.Int64,System.Int64)">
+            <summary>
+            Calculates the quotient of two 32-bit signed integers rounded towards negative infinity.
+            </summary>
+            <param name="x">Dividend.</param>
+            <param name="y">Divisor.</param>
+            <returns>The quotient of the specified numbers rounded towards negative infinity, or <code>(int)Floor((double)x/(double)y)</code>.</returns>
+            <exception cref="T:System.DivideByZeroException"><paramref name="y"/> is 0.</exception>
+            <remarks>The caller must check for overflow (x = Int64.MinValue, y = -1)</remarks>
+        </member>
+        <member name="M:Microsoft.Scripting.Utils.MathUtils.FloorRemainder(System.Int32,System.Int32)">
+            <summary>
+            Calculates the remainder of floor division of two 32-bit signed integers.
+            </summary>
+            <param name="x">Dividend.</param>
+            <param name="y">Divisor.</param>
+            <returns>The remainder of of floor division of the specified numbers, or <code>x - (int)Floor((double)x/(double)y) * y</code>.</returns>
+            <exception cref="T:System.DivideByZeroException"><paramref name="y"/> is 0.</exception>
+        </member>
+        <member name="M:Microsoft.Scripting.Utils.MathUtils.FloorRemainder(System.Int64,System.Int64)">
+            <summary>
+            Calculates the remainder of floor division of two 32-bit signed integers.
+            </summary>
+            <param name="x">Dividend.</param>
+            <param name="y">Divisor.</param>
+            <returns>The remainder of of floor division of the specified numbers, or <code>x - (int)Floor((double)x/(double)y) * y</code>.</returns>
+            <exception cref="T:System.DivideByZeroException"><paramref name="y"/> is 0.</exception>
+        </member>
+        <member name="M:Microsoft.Scripting.Utils.MathUtils.RoundAwayFromZero(System.Double)">
+            <summary>
+            Behaves like Math.Round(value, MidpointRounding.AwayFromZero)
+            Needed because CoreCLR doesn't support this particular overload of Math.Round
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Utils.MathUtils.RoundAwayFromZero(System.Double,System.Int32)">
+            <summary>
+            Behaves like Math.Round(value, precision, MidpointRounding.AwayFromZero)
+            However, it works correctly on negative precisions and cases where precision is
+            outside of the [-15, 15] range.
+            
+            (This function is also needed because CoreCLR lacks this overload.)
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Utils.MathUtils.EvalPolynomial(System.Double,System.Double[])">
+            <summary>
+            Evaluates a polynomial in v0 where the coefficients are ordered in increasing degree
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Utils.MathUtils.EvalPolynomial(System.Double,System.Double[],System.Boolean)">
+            <summary>
+            Evaluates a polynomial in v0 where the coefficients are ordered in increasing degree
+            if reverse is false, and increasing degree if reverse is true.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Utils.MathUtils.SinPi(System.Double)">
+            <summary>
+            A numerically precise version of sin(v0 * pi)
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Utils.MathUtils.AbsSinPi(System.Double)">
+            <summary>
+            A numerically precise version of |sin(v0 * pi)|
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Utils.MathUtils.GammaRationalFunc(System.Double)">
+            <summary>
+            Take the quotient of the 2 polynomials forming the Lanczos approximation
+            with N=13 and G=13.144565
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Utils.MathUtils.PositiveGamma(System.Double)">
+            <summary>
+            Computes the Gamma function on positive values, using the Lanczos approximation.
+            Lanczos parameters are N=13 and G=13.144565.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Utils.MathUtils.PositiveLGamma(System.Double)">
+            <summary>
+            Computes the Log-Gamma function on positive values, using the Lanczos approximation.
+            Lanczos parameters are N=13 and G=13.144565.
+            </summary>
+        </member>
+        <member name="T:Microsoft.Scripting.Utils.Publisher`2">
+            <summary>
+            Thread safe dictionary that allows lazy-creation where readers will block for
+            the creation of the lazily created value.  Call GetOrCreateValue w/ a key
+            and a callback function.  If the value exists it is returned, if not the create
+            callback is called (w/o any locks held).  The create call back will only be called
+            once for each key.  
+            </summary>
+        </member>
+        <member name="T:Microsoft.Scripting.Utils.Publisher`2.PublishInfo`1">
+            <summary>
+            Helper class which stores the published value
+            </summary>
+        </member>
+        <member name="T:Microsoft.Scripting.Utils.SynchronizedDictionary`2">
+            <summary>
+            Dictionary[TKey, TValue] is not thread-safe in the face of concurrent reads and writes. SynchronizedDictionary
+            provides a thread-safe implementation. It holds onto a Dictionary[TKey, TValue] instead of inheriting from
+            it so that users who need to do manual synchronization can access the underlying Dictionary[TKey, TValue].
+            </summary>
+        </member>
+        <member name="P:Microsoft.Scripting.Utils.SynchronizedDictionary`2.UnderlyingDictionary">
+            <summary>
+            This returns the raw unsynchronized Dictionary[TKey, TValue]. Users are responsible for locking
+            on it before accessing it. Also, it should not be arbitrarily handed out to other code since deadlocks
+            can be caused if other code incorrectly locks on it.
+            </summary>
+        </member>
+        <member name="T:Microsoft.Scripting.Utils.ThreadLocal`1">
+            <summary>
+            Provides fast strongly typed thread local storage.  This is significantly faster than
+            Thread.GetData/SetData.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Utils.ThreadLocal`1.#ctor(System.Boolean)">
+            <summary>
+            True if the caller will guarantee that all cleanup happens as the thread
+            unwinds.
+            
+            This is typically used in a case where the thread local is surrounded by
+            a try/finally block.  The try block pushes some state, the finally block
+            restores the previous state.  Therefore when the thread exits the thread
+            local is back to it's original state.  This allows the ThreadLocal object
+            to not check the current owning thread on retrieval.
+            </summary>
+        </member>
+        <member name="P:Microsoft.Scripting.Utils.ThreadLocal`1.Value">
+            <summary>
+            Gets or sets the value for the current thread.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Utils.ThreadLocal`1.GetOrCreate(System.Func{`0})">
+            <summary>
+            Gets the current value if its not == null or calls the provided function
+            to create a new value.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Utils.ThreadLocal`1.Update(System.Func{`0,`0})">
+            <summary>
+            Calls the provided update function with the current value and
+            replaces the current value with the result of the function.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Utils.ThreadLocal`1.Update(`0)">
+            <summary>
+            Replaces the current value with a new one and returns the old value.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Utils.ThreadLocal`1.GetStorageInfo">
+            <summary>
+            Gets the StorageInfo for the current thread.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Utils.ThreadLocal`1.RetryOrCreateStorageInfo(Microsoft.Scripting.Utils.ThreadLocal{`0}.StorageInfo[])">
+            <summary>
+            Called when the fast path storage lookup fails. if we encountered the Empty storage 
+            during the initial fast check then spin until we hit non-empty storage and try the fast 
+            path again.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Utils.ThreadLocal`1.CreateStorageInfo">
+            <summary>
+            Creates the StorageInfo for the thread when one isn't already present.
+            </summary>
+        </member>
+        <member name="T:Microsoft.Scripting.Utils.ThreadLocal`1.StorageInfo">
+            <summary>
+            Helper class for storing the value.  We need to track if a ManagedThreadId
+            has been re-used so we also store the thread which owns the value.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Utils.TypeUtils.GetNumericConversionOrder(System.TypeCode,System.Int32@,System.Int32@)">
+            <summary>
+            Returns a numerical code of the size of a type.  All types get both a horizontal
+            and vertical code.  Types that are lower in both dimensions have implicit conversions
+            to types that are higher in both dimensions.
+            </summary>
+        </member>
+        <member name="T:Microsoft.Scripting.Utils.ValueArray`1">
+            <summary>
+            Represents an array that has value equality.
+            </summary>
+        </member>
+        <member name="T:Microsoft.Scripting.Utils.WeakCollection`1">
+            <summary>
+            Simple class for tracking a list of items and enumerating over them.
+            The items are stored in weak references; if the objects are collected,
+            they will not be seen when enumerating.
+            </summary>
+            <typeparam name="T">The type of the collection element.</typeparam>
+        </member>
+        <member name="T:Microsoft.Scripting.Utils.WeakDictionary`2">
+            <summary>
+            Similar to Dictionary[TKey,TValue], but it also ensures that the keys will not be kept alive
+            if the only reference is from this collection. The value will be kept alive as long as the key
+            is alive.
+            
+            This currently has a limitation that the caller is responsible for ensuring that an object used as 
+            a key is not also used as a value in *any* instance of a WeakHash. Otherwise, it will result in the
+            object being kept alive forever. This effectively means that the owner of the WeakHash should be the
+            only one who has access to the object used as a value.
+            
+            Currently, there is also no guarantee of how long the values will be kept alive even after the keys
+            get collected. This could be fixed by triggerring CheckCleanup() to be called on every garbage-collection
+            by having a dummy watch-dog object with a finalizer which calls CheckCleanup().
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Utils.WeakDictionary`2.CheckCleanup">
+            <summary>
+            Check if any of the keys have gotten collected
+            
+            Currently, there is also no guarantee of how long the values will be kept alive even after the keys
+            get collected. This could be fixed by triggerring CheckCleanup() to be called on every garbage-collection
+            by having a dummy watch-dog object with a finalizer which calls CheckCleanup().
+            </summary>
+        </member>
+        <member name="T:Microsoft.Scripting.Utils.WeakHandle">
+            <summary>
+            Changes the semantics of GC handle to return <c>null</c> instead of throwing 
+            an <see cref="T:System.InvalidOperationException"/>.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Utils.ArrayUtils.ToArray``1(System.Collections.Generic.ICollection{``0})">
+            <summary>
+            Converts a generic ICollection of T into an array of T.  
+            
+            If the collection is already an  array of T the original collection is returned.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Utils.ArrayUtils.ToArray``2(System.Collections.Generic.ICollection{``0},System.Func{``0,``1})">
+            <summary>
+            Converts a generic ICollection of T into an array of R using a given conversion.  
+            
+            If the collection is already an array of R the original collection is returned.
+            </summary>
+        </member>
+        <member name="T:Microsoft.Scripting.Utils.CheckedDictionaryEnumerator">
+            <summary>
+            Not all .NET enumerators throw exceptions if accessed in an invalid state. This type
+            can be used to throw exceptions from enumerators implemented in IronPython.
+            </summary>
+        </member>
+        <member name="T:Microsoft.Scripting.Utils.EnumerableWrapper">
+            <summary>
+            Allows wrapping of proxy types (like COM RCWs) to expose their IEnumerable functionality
+            which is supported after casting to IEnumerable, even though Reflection will not indicate 
+            IEnumerable as a supported interface
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Utils.ContractUtils.RequiresArrayIndex``1(System.Collections.Generic.IList{``0},System.Int32,System.String)">
+            <summary>
+            Requires the specified index to point inside the array.
+            </summary>
+            <exception cref="T:System.ArgumentNullException">Array is <c>null</c>.</exception>
+            <exception cref="T:System.ArgumentOutOfRangeException">Index is outside the array.</exception>
+        </member>
+        <member name="M:Microsoft.Scripting.Utils.ContractUtils.RequiresArrayIndex(System.Int32,System.Int32,System.String)">
+            <summary>
+            Requires the specified index to point inside the array.
+            </summary>
+            <exception cref="T:System.ArgumentOutOfRangeException">Index is outside the array.</exception>
+        </member>
+        <member name="M:Microsoft.Scripting.Utils.ContractUtils.RequiresArrayInsertIndex``1(System.Collections.Generic.IList{``0},System.Int32,System.String)">
+            <summary>
+            Requires the specified index to point inside the array or at the end
+            </summary>
+            <exception cref="T:System.ArgumentNullException">Array is <c>null</c>.</exception>
+            <exception cref="T:System.ArgumentOutOfRangeException">Index is outside the array.</exception>
+        </member>
+        <member name="M:Microsoft.Scripting.Utils.ContractUtils.RequiresArrayInsertIndex(System.Int32,System.Int32,System.String)">
+            <summary>
+            Requires the specified index to point inside the array or at the end
+            </summary>
+            <exception cref="T:System.ArgumentNullException">Array is <c>null</c>.</exception>
+            <exception cref="T:System.ArgumentOutOfRangeException">Index is outside the array.</exception>
+        </member>
+        <member name="M:Microsoft.Scripting.Utils.ContractUtils.RequiresArrayRange``1(System.Collections.Generic.IList{``0},System.Int32,System.Int32,System.String,System.String)">
+            <summary>
+            Requires the range [offset, offset + count] to be a subset of [0, array.Count].
+            </summary>
+            <exception cref="T:System.ArgumentOutOfRangeException">Offset or count are out of range.</exception>
+        </member>
+        <member name="M:Microsoft.Scripting.Utils.ContractUtils.RequiresArrayRange(System.Int32,System.Int32,System.Int32,System.String,System.String)">
+            <summary>
+            Requires the range [offset, offset + count] to be a subset of [0, array.Count].
+            </summary>
+            <exception cref="T:System.ArgumentOutOfRangeException">Offset or count are out of range.</exception>
+        </member>
+        <member name="M:Microsoft.Scripting.Utils.ContractUtils.RequiresListRange(System.Collections.IList,System.Int32,System.Int32,System.String,System.String)">
+            <summary>
+            Requires the range [offset, offset + count] to be a subset of [0, array.Count].
+            </summary>
+            <exception cref="T:System.ArgumentNullException">Array is <c>null</c>.</exception>
+            <exception cref="T:System.ArgumentOutOfRangeException">Offset or count are out of range.</exception>
+        </member>
+        <member name="M:Microsoft.Scripting.Utils.ContractUtils.RequiresArrayRange(System.String,System.Int32,System.Int32,System.String,System.String)">
+            <summary>
+            Requires the range [offset, offset + count] to be a subset of [0, array.Count].
+            </summary>
+            <exception cref="T:System.ArgumentNullException">String is <c>null</c>.</exception>
+            <exception cref="T:System.ArgumentOutOfRangeException">Offset or count are out of range.</exception>
+        </member>
+        <member name="M:Microsoft.Scripting.Utils.ContractUtils.RequiresNotNullItems``1(System.Collections.Generic.IList{``0},System.String)">
+            <summary>
+            Requires the array and all its items to be non-null.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Utils.ContractUtils.RequiresNotNullItems``1(System.Collections.Generic.IEnumerable{``0},System.String)">
+            <summary>
+            Requires the enumerable collection and all its items to be non-null.
+            </summary>
+        </member>
+        <member name="T:Microsoft.Scripting.Utils.DictionaryUnionEnumerator">
+            <summary>
+            Presents a flat enumerable view of multiple dictionaries
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Utils.IOUtils.SeekLine(System.IO.TextReader,System.Int32)">
+            <summary>
+            Seeks the first character of a specified line in the text stream.
+            </summary>
+            <param name="reader">The reader.</param>
+            <param name="line">Line number. The current position is assumed to be line #1.</param>
+            <returns>
+            Returns <c>true</c> if the line is found, <b>false</b> otherwise.
+            </returns>
+        </member>
+        <member name="M:Microsoft.Scripting.Utils.IOUtils.ReadTo(System.IO.TextReader,System.Char)">
+            <summary>
+            Reads characters to a string until end position or a terminator is reached. 
+            Doesn't include the terminator into the resulting string.
+            Returns <c>null</c>, if the reader is at the end position.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Utils.IOUtils.SeekTo(System.IO.TextReader,System.Char)">
+            <summary>
+            Reads characters until end position or a terminator is reached.
+            Returns <c>true</c> if the character has been found (the reader is positioned right behind the character), 
+            <c>false</c> otherwise.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Utils.ReflectionUtils.CreateDelegate(System.Reflection.MethodInfo,System.Type)">
+            <summary>
+            Creates an open delegate for the given (dynamic)method.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Utils.ReflectionUtils.CreateDelegate(System.Reflection.MethodInfo,System.Type,System.Object)">
+            <summary>
+            Creates a closed delegate for the given (dynamic)method.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Utils.ReflectionUtils.GetObjectCallSiteDelegateType(System.Int32)">
+            <summary>
+            Gets a Func of CallSite, object * paramCnt, object delegate type
+            that's suitable for use in a non-strongly typed call site.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Utils.ReflectionUtils.IsMandatory(System.Reflection.ParameterInfo)">
+            <summary>
+            Returns <c>true</c> if the specified parameter is mandatory, i.e. is not optional and doesn't have a default value.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Utils.ReflectionUtils.Ancestors(System.Type)">
+            <summary>
+            Yields all ancestors of the given type including the type itself.
+            Does not include implemented interfaces.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Utils.ReflectionUtils.GetDeclaredInterfaces(System.Type)">
+            <summary>
+            Like Type.GetInterfaces, but only returns the interfaces implemented by this type
+            and not its parents.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Utils.ReflectionUtils.GetVisibleExtensionMethodGroups(System.Reflection.Assembly,System.Boolean)">
+            <summary>
+            Enumerates extension methods in given assembly. Groups the methods by declaring namespace.
+            Uses a global cache if <paramref name="useCache"/> is true.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Utils.ReflectionUtils.BindGenericParameters(System.Type,System.Type,System.Func{System.Type,System.Type,System.Boolean})">
+            <summary>
+            Binds occurances of generic parameters in <paramref name="openType"/> against corresponding types in <paramref name="closedType"/>.
+            Invokes <paramref name="binder"/>(parameter, type) for each such binding.
+            Returns false if the <paramref name="openType"/> is structurally different from <paramref name="closedType"/> or if the binder returns false.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Utils.ExtensionMethodInfo.IsExtensionOf(System.Type)">
+            <summary>
+            Determines if a given type matches the type that the method extends. 
+            The match might be non-trivial if the extended type is an open generic type with constraints.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Utils.StringUtils.SplitWords(System.String,System.Boolean,System.Int32)">
+            <summary>
+            Splits text and optionally indents first lines - breaks along words, not characters.
+            </summary>
+        </member>
+        <member name="T:Microsoft.Scripting.Runtime.DynamicXamlReader">
+            <summary>
+            Provides services for loading XAML and binding events to dynamic language code definitions.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Runtime.DynamicXamlReader.LoadComponent(System.Object,Microsoft.Scripting.Runtime.DynamicOperations,System.IO.Stream,System.Xaml.XamlSchemaContext)">
+            <summary>
+            Loads XAML from the specified stream and returns the deserialized object.  Any event handlers
+            are bound to methods defined in the provided Scope and converted using the provided DynamicOperations
+            object.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Runtime.DynamicXamlReader.LoadComponent(System.Object,Microsoft.Scripting.Runtime.DynamicOperations,System.String,System.Xaml.XamlSchemaContext)">
+            <summary>
+            Loads XAML from the specified filename and returns the deserialized object.  Any event handlers
+            are bound to methods defined in the provided Scope and converted using the provided DynamicOperations
+            object.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Runtime.DynamicXamlReader.LoadComponent(System.Object,Microsoft.Scripting.Runtime.DynamicOperations,System.Xml.XmlReader,System.Xaml.XamlSchemaContext)">
+            <summary>
+            Loads XAML from the specified XmlReader and returns the deserialized object.  Any event handlers
+            are bound to methods defined in the provided Scope and converted using the provided DynamicOperations
+            object.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Runtime.DynamicXamlReader.LoadComponent(System.Object,Microsoft.Scripting.Runtime.DynamicOperations,System.IO.TextReader,System.Xaml.XamlSchemaContext)">
+            <summary>
+            Loads XAML from the specified TextReader and returns the deserialized object.  Any event handlers
+            are bound to methods defined in the provided Scope and converted using the provided DynamicOperations
+            object.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Runtime.DynamicXamlReader.LoadComponent(System.Object,Microsoft.Scripting.Runtime.DynamicOperations,System.Xaml.XamlXmlReader)">
+            <summary>
+            Loads XAML from the specified XamlXmlReader and returns the deserialized object.  Any event handlers
+            are bound to methods defined in the provided Scope and converted using the provided DynamicOperations
+            object.
+            </summary>
+        </member>
+        <member name="P:Microsoft.Scripting.Runtime.DynamicXamlReader.DynamicWriter.Names">
+            <summary>
+            Returns the list of x:Name'd objects that we saw and should set on the root object.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Runtime.DynamicXamlReader.DynamicWriter.Adder(System.Object,System.Object)">
+            <summary>
+            Dummy, should never be called
+            </summary>
+        </member>
+        <member name="T:Microsoft.Scripting.Runtime.LightThrowingAttribute">
+            <summary>
+            Marks a method which may return a light exception.  Such
+            methods need to have their return value checked and the exception
+            will need to be thrown if the caller is not light exception aware.
+            </summary>
+        </member>
+        <member name="T:Microsoft.Scripting.Runtime.LightExceptions">
+            <summary>
+            Provides support for light exceptions.  These exceptions are propagated by
+            returning an instance of a private wrapper class containing the exception.  Code
+            which is aware of light exceptions will branch to apporiate exception handling
+            blocks when in a try and otherwise return the value up the stack.  This avoids 
+            using the underlying CLR exception mechanism with overhead such as creating stack 
+            traces.
+            
+            When a light exception reaches the boundary of code which is not light exception
+            aware the caller must check to see if a light exception is being thrown and if
+            so raise a .NET exception.
+            
+            This class provides methods for re-writing expression trees to support light exceptions,
+            methods to create light throw objects, check if an object is a light
+            throw object, and turn such an object back into a .NET Exception which can be thrown.
+            
+            Light exceptions also don't build up stack traces or interoperate with filter blocks
+            via 2-pass exception handling.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Runtime.LightExceptions.Rewrite(System.Linq.Expressions.Expression)">
+            <summary>
+            Rewrites the provided expression to support light exceptions.  
+            
+            Calls to the returned expression, if not from other light-weight aware calls,
+            need to call GetLightException on return to see if an exception was thrown
+            and if so throw it.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Runtime.LightExceptions.RewriteLazy(System.Linq.Expressions.Expression)">
+            <summary>
+            Returns a new expression which will lazily reduce to a light
+            expression re-written version of the same expression.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Runtime.LightExceptions.RewriteExternal(System.Linq.Expressions.Expression)">
+            <summary>
+            Returns a new expression which is re-written for light exceptions
+            but will throw an exception if it escapes the expression.  If this
+            expression is part of a larger experssion which is later re-written 
+            for light exceptions then it will propagate the light exception up.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Runtime.LightExceptions.Throw(System.Exception)">
+            <summary>
+            Returns an object which represents a light exception.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Runtime.LightExceptions.Throw(System.Linq.Expressions.Expression)">
+            <summary>
+            Returns an object which represents a light exception.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Runtime.LightExceptions.Throw(System.Linq.Expressions.Expression,System.Type)">
+            <summary>
+            Returns an object which represents a light exception.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Runtime.LightExceptions.Throw(System.Dynamic.DynamicMetaObjectBinder,System.Linq.Expressions.Expression)">
+            <summary>
+            If the binder supports light exceptions then a light exception throwing expression is returned.
+            
+            Otherwise a normal throwing expression is returned.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Runtime.LightExceptions.Throw(System.Dynamic.DynamicMetaObjectBinder,System.Linq.Expressions.Expression,System.Type)">
+            <summary>
+            If the binder supports light exceptions then a light exception throwing expression is returned.
+            
+            Otherwise a normal throwing expression is returned.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Runtime.LightExceptions.CheckAndThrow(System.Object)">
+            <summary>
+            Throws the exception if the value represents a light exception
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Runtime.LightExceptions.CheckAndThrow(System.Linq.Expressions.Expression)">
+            <summary>
+            Wraps the expression in a check and rethrow.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Runtime.LightExceptions.IsLightException(System.Object)">
+            <summary>
+            Checks to see if the provided value is a light exception.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Runtime.LightExceptions.GetLightException(System.Object)">
+            <summary>
+            Gets the light exception from an object which may contain a light
+            exception.  Returns null if the object is not a light exception.
+            
+            Used for throwing the exception at non-light exception boundaries.  
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Runtime.LightExceptions.SupportsLightThrow(System.Runtime.CompilerServices.CallSiteBinder)">
+            <summary>
+            Returns true if the call site binder is a light exception binder and supports
+            light throws.  Returns false otherwise.
+            </summary>
+            <param name="binder"></param>
+            <returns></returns>
+        </member>
+        <member name="T:Microsoft.Scripting.Runtime.LightExceptions.LightException">
+            <summary>
+            Sealed wrapper class to indicate something is a light exception.
+            </summary>
+        </member>
+        <member name="T:Microsoft.Scripting.Runtime.ArgumentArray">
+            <summary>
+            Wraps all arguments passed to a dynamic site with more arguments than can be accepted by a Func/Action delegate.
+            The binder generating a rule for such a site should unwrap the arguments first and then perform a binding to them.
+            </summary>
+        </member>
+        <member name="T:Microsoft.Scripting.Runtime.DynamicDelegateCreator">
+            <summary>
+            Provides support for converting objects to delegates using the DLR binders
+            available by the provided language context.
+            
+            Primarily this supports converting objects implementing IDynamicMetaObjectProvider
+            to the appropriate delegate type.  
+            
+            If the provided object is already a delegate of the appropriate type then the 
+            delegate will simply be returned.
+            </summary>
+        </member>
+        <member name="F:Microsoft.Scripting.Runtime.DynamicDelegateCreator._dynamicDelegateCache">
+            <summary> Table of dynamically generated delegates which are shared based upon method signature. </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Runtime.DynamicDelegateCreator.GetDelegate(System.Object,System.Type)">
+            <summary>
+            Creates a delegate with a given signature that could be used to invoke this object from non-dynamic code (w/o code context).
+            A stub is created that makes appropriate conversions/boxing and calls the object.
+            The stub should be executed within a context of this object's language.
+            </summary>
+            <returns>The converted delegate.</returns>
+            <exception cref="T:Microsoft.Scripting.ArgumentTypeException">The object is either a subclass of Delegate but not the requested type or does not implement IDynamicMetaObjectProvider.</exception>
+        </member>
+        <member name="T:Microsoft.Scripting.Runtime.DynamicNull">
+            <summary>
+            Represents the type of a null value.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Runtime.DynamicNull.#ctor">
+            <summary>
+            Private constructor is never called since 'null' is the only valid instance.
+            </summary>
+        </member>
+        <member name="T:Microsoft.Scripting.Runtime.ScriptingRuntimeHelpers">
+            <summary>
+            These are some generally useful helper methods. Currently the only methods are those to
+            cached boxed representations of commonly used primitive types so that they can be shared.
+            This is useful to most dynamic languages that use object as a universal type.
+            
+            The methods in RuntimeHelepers are caleld by the generated code. From here the methods may
+            dispatch to other parts of the runtime to get bulk of the work done, but the entry points
+            should be here.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Runtime.ScriptingRuntimeHelpers.ShiftParamsArray``1(``0[],System.Int32)">
+            <summary>
+            Used by prologue code that is injected in lambdas to ensure that delegate signature matches what 
+            lambda body expects. Such code typically unwraps subset of the params array manually, 
+            but then passes the rest in bulk if lambda body also expects params array.
+            
+            This calls ArrayUtils.ShiftLeft, but performs additional checks that
+            ArrayUtils.ShiftLeft assumes.
+            </summary>
+        </member>
+        <member name="F:Microsoft.Scripting.Runtime.ScriptingRuntimeHelpers.True">
+            <summary>
+            A singleton boxed boolean true.
+            </summary>
+        </member>
+        <member name="F:Microsoft.Scripting.Runtime.ScriptingRuntimeHelpers.False">
+             <summary>
+            A singleton boxed boolean false.
+             </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Runtime.ScriptingRuntimeHelpers.Int32ToObject(System.Int32)">
+            <summary>
+            Gets a singleton boxed value for the given integer if possible, otherwise boxes the integer.
+            </summary>
+            <param name="value">The value to box.</param>
+            <returns>The boxed value.</returns>
+        </member>
+        <member name="M:Microsoft.Scripting.Runtime.ScriptingRuntimeHelpers.CreateInstance``1">
+            <summary>
+            Helper method to create an instance.  Work around for Silverlight where Activator.CreateInstance
+            is SecuritySafeCritical.
+            
+            TODO: Why can't we just emit the right thing for default(T)?
+            It's always null for reference types and it's well defined for value types
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Runtime.ScriptingRuntimeHelpers.GetEventHandlerType(System.Reflection.EventInfo)">
+            <summary>
+            EventInfo.EventHandlerType getter is marked SecuritySafeCritical in CoreCLR
+            This method is to get to the property without using Reflection
+            </summary>
+            <param name="eventInfo"></param>
+            <returns></returns>
+        </member>
+        <member name="M:Microsoft.Scripting.Runtime.ScriptingRuntimeHelpers.InterpretedCallSiteTest(System.Boolean,System.Object)">
+            <summary>
+            Provides the test to see if an interpreted call site should switch over to being compiled.
+            </summary>
+        </member>
+        <member name="T:Microsoft.Scripting.Runtime.CompilerContext">
+            <summary>
+            Represents the context that is flowed for doing Compiler.  Languages can derive
+            from this class to provide additional contextual information.
+            </summary>
+        </member>
+        <member name="F:Microsoft.Scripting.Runtime.CompilerContext._sourceUnit">
+            <summary>
+            Source unit currently being compiled in the CompilerContext
+            </summary>
+        </member>
+        <member name="F:Microsoft.Scripting.Runtime.CompilerContext._errors">
+            <summary>
+            Current error sink.
+            </summary>
+        </member>
+        <member name="F:Microsoft.Scripting.Runtime.CompilerContext._parserSink">
+            <summary>
+            Sink for parser callbacks (e.g. brace matching, etc.).
+            </summary>
+        </member>
+        <member name="F:Microsoft.Scripting.Runtime.CompilerContext._options">
+            <summary>
+            Compiler specific options.
+            </summary>
+        </member>
+        <member name="T:Microsoft.Scripting.Runtime.IConvertibleMetaObject">
+            <summary>
+            Indicates that a DynamicMetaObject might be convertible to a CLR type.
+            </summary>
+        </member>
+        <member name="T:Microsoft.Scripting.Runtime.IRestrictedMetaObject">
+            <summary>
+            Indicates that a MetaObject is already representing a restricted type.  Useful
+            when we're already restricted to a known type but this isn't captured in
+            the type info (e.g. the type is not sealed).
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Runtime.MetaObjectExtensions.GetLimitType(System.Dynamic.DynamicMetaObject)">
+             <summary>
+            Returns Microsoft.Scripting.Runtime.DynamicNull if the object contains a null value,
+            otherwise, returns self.LimitType
+             </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Runtime.MetaObjectExtensions.GetRuntimeType(System.Dynamic.DynamicMetaObject)">
+             <summary>
+            Returns Microsoft.Scripting.Runtime.DynamicNull if the object contains a null value,
+            otherwise, returns self.RuntimeType
+             </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Runtime.TokenizerBuffer.Seek(System.Int32)">
+            <summary>
+            Sets the current position inside current token or one character behind it.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Runtime.TokenizerBuffer.SeekRelative(System.Int32)">
+            <summary>
+            Sets the current position inside current token or one character behind it.
+            A relative displacement with respect to the current position in the token is specified.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Runtime.TokenizerBuffer.MarkMultiLineTokenEnd">
+            <summary>
+            Marks token end. Enables to read the current token.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Runtime.TokenizerBuffer.DiscardToken">
+            <summary>
+            Marks token start. It means the buffer can drop the current token.
+            Can be called even if no token has been read yet.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Runtime.TokenizerBuffer.ReadLine">
+            <summary>
+            Reads till the end of line and returns the character that stopped the reading.
+            The returned character is not skipped.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Runtime.TokenizerBuffer.ResizeInternal(System.Char[]@,System.Int32,System.Int32,System.Int32)">
+            <summary>
+            Resizes an array to a speficied new size and copies a portion of the original array into its beginning.
+            </summary>
+        </member>
+        <member name="T:Microsoft.Scripting.Runtime.BinderOps">
+            <summary>
+            Helper methods that calls are generated to from the default DLR binders.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Runtime.BinderOps.GetCombinedParameters(System.Object[],System.Object)">
+            <summary>
+            Helper function to combine an object array with a sequence of additional parameters that has been splatted for a function call.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Runtime.BinderOps.GetEventHandlerType(System.Reflection.EventInfo)">
+            <summary>
+            EventInfo.EventHandlerType getter is marked SecuritySafeCritical in CoreCLR
+            This method is to get to the property without using Reflection
+            </summary>
+            <param name="eventInfo"></param>
+            <returns></returns>
+        </member>
+        <member name="T:Microsoft.Scripting.Runtime.Cast">
+            <summary>
+            Implements explicit casts supported by the runtime.
+            </summary>
+            <summary>
+            Implements explicit casts supported by the runtime.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Runtime.Cast.Explicit(System.Object,System.Type)">
+            <summary>
+            Explicitly casts the object to a given type (and returns it as object)
+            </summary>
+        </member>
+        <member name="T:Microsoft.Scripting.Runtime.DelegateInfo">
+            <summary>
+            Used as the value for the ScriptingRuntimeHelpers.GetDelegate method caching system
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Runtime.DelegateInfo.EmitClrCallStub(Microsoft.Scripting.Generation.ILGen)">
+            <summary>
+            Generates stub to receive the CLR call and then call the dynamic language code.
+            </summary>
+        </member>
+        <member name="T:Microsoft.Scripting.Runtime.DelegateSignatureInfo">
+            <summary>
+            Used as the key for the LanguageContext.GetDelegate method caching system
+            </summary>
+        </member>
+        <member name="T:Microsoft.Scripting.Runtime.ISlice">
+            <summary>
+            A useful interface for taking slices of numeric arrays, inspired by Python's Slice objects.
+            </summary>
+        </member>
+        <member name="P:Microsoft.Scripting.Runtime.ISlice.Start">
+            <summary>
+            The starting index of the slice or null if no first index defined
+            </summary>
+        </member>
+        <member name="P:Microsoft.Scripting.Runtime.ISlice.Stop">
+            <summary>
+            The ending index of the slice or null if no ending index defined
+            </summary>
+        </member>
+        <member name="P:Microsoft.Scripting.Runtime.ISlice.Step">
+            <summary>
+            The length of step to take
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Runtime.IdDispenser.GetObject(System.Int64)">
+            <summary>
+            Given an ID returns the object associated with that ID.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Runtime.IdDispenser.GetId(System.Object)">
+            <summary>
+            Gets a unique ID for an object
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Runtime.IdDispenser.Cleanup">
+            <summary>
+            Goes over the hashtable and removes empty entries 
+            </summary>
+        </member>
+        <member name="T:Microsoft.Scripting.Runtime.IdDispenser.Wrapper">
+            <summary>
+            Weak-ref wrapper caches the weak reference, our hash code, and the object ID.
+            </summary>
+        </member>
+        <member name="T:Microsoft.Scripting.Runtime.IdDispenser.WrapperComparer">
+            <summary>
+            WrapperComparer treats Wrapper as transparent envelope 
+            </summary>
+        </member>
+        <member name="T:Microsoft.Scripting.Runtime.LanguageBoundTextContentProvider">
+            <summary>
+            Internal class which binds a LanguageContext, StreamContentProvider, and Encoding together to produce
+            a TextContentProvider which reads binary data with the correct language semantics.
+            </summary>
+        </member>
+        <member name="T:Microsoft.Scripting.Runtime.LocalsDictionary">
+            <summary>
+            Creates a dictionary of locals in this scope
+            </summary>
+        </member>
+        <member name="T:Microsoft.Scripting.Runtime.PositionTrackingWriter">
+            <summary>
+            Efficiently tracks (line,column) information as text is added, and
+            collects line mappings between the original and generated source code
+            so we can generate correct debugging information later
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Runtime.PositionTrackingWriter.MapLocation(System.CodeDom.CodeLinePragma)">
+            <summary>
+            Marks the current position of the writer as corresponding to the
+            original location passed in
+            </summary>
+            <param name="linePragma">the line pragma corresponding to the 
+            current position in the generated code</param>
+        </member>
+        <member name="T:Microsoft.Scripting.Runtime.IExpressionSerializable">
+            <summary>
+            Enables an object to be serializable to an Expression tree.  The expression tree can then
+            be emitted into an assembly enabling the de-serialization of the object.
+            </summary>
+        </member>
+        <member name="F:Microsoft.Scripting.Runtime.BinderType.Normal">
+            <summary>
+            The MethodBinder will perform normal method binding.
+            </summary>
+        </member>
+        <member name="F:Microsoft.Scripting.Runtime.BinderType.BinaryOperator">
+            <summary>
+            The MethodBinder will return the languages definition of NotImplemented if the arguments are
+            incompatible with the signature.
+            </summary>
+        </member>
+        <member name="F:Microsoft.Scripting.Runtime.BinderType.Constructor">
+            <summary>
+            The MethodBinder will set properties/fields for unused keyword arguments on the instance 
+            that gets returned from the method.
+            </summary>
+        </member>
+        <member name="T:Microsoft.Scripting.Runtime.DlrMainCallTarget">
+            <summary>
+            The delegate representing the DLR Main function
+            </summary>
+        </member>
+        <member name="T:Microsoft.Scripting.Runtime.CustomStringDictionary">
+            <summary>
+            Abstract base class used for optimized thread-safe dictionaries which have a set
+            of pre-defined string keys.
+            
+            Implementers derive from this class and override the GetExtraKeys, TrySetExtraValue, 
+            and TryGetExtraValue methods. When looking up a value first the extra keys will be 
+            searched using the optimized Try*ExtraValue functions.  If the value isn't found there
+            then the value is stored in the underlying .NET dictionary.
+            
+            This dictionary can store object values in addition to string values.  It also supports
+            null keys.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Runtime.CustomStringDictionary.GetExtraKeys">
+            <summary>
+            Gets a list of the extra keys that are cached by the the optimized implementation
+            of the module.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Runtime.CustomStringDictionary.TrySetExtraValue(System.String,System.Object)">
+            <summary>
+            Try to set the extra value and return true if the specified key was found in the 
+            list of extra values.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Runtime.CustomStringDictionary.TryGetExtraValue(System.String,System.Object@)">
+            <summary>
+            Try to get the extra value and returns true if the specified key was found in the
+            list of extra values.  Returns true even if the value is Uninitialized.
+            </summary>
+        </member>
+        <member name="T:Microsoft.Scripting.Runtime.DlrCachedCodeAttribute">
+            <summary>
+            An attribute that is applied to saved ScriptCode's to be used to re-create the ScriptCode
+            from disk.
+            </summary>
+        </member>
+        <member name="P:Microsoft.Scripting.Runtime.CachedOptimizedCodeAttribute.Names">
+            <summary>
+            Gets names stored in optimized scope. 
+            </summary>
+        </member>
+        <member name="T:Microsoft.Scripting.Runtime.DocumentationAttribute">
+            <summary>
+            Provides a mechanism for providing documentation stored in an assembly as metadata.  
+            
+            Applying this attribute will enable documentation to be provided to the user at run-time
+            even if XML Documentation files are unavailable.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Runtime.ExceptionHelpers.UpdateForRethrow(System.Exception)">
+            <summary>
+            Updates an exception before it's getting re-thrown so
+            we can present a reasonable stack trace to the user.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Runtime.ExceptionHelpers.GetExceptionStackTraces(System.Exception)">
+            <summary>
+            Returns all the stack traces associates with an exception
+            </summary>
+        </member>
+        <member name="T:Microsoft.Scripting.Runtime.ExtensionTypeAttribute">
+            <summary>
+            Marks a class in the assembly as being an extension type for another type.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Runtime.ExtensionTypeAttribute.#ctor(System.Type,System.Type)">
+            <summary>
+            Marks a type in the assembly as being an extension type for another type.
+            </summary>
+            <param name="extends">The type which is being extended</param>
+            <param name="extensionType">The type which provides the extension members.</param>
+        </member>
+        <member name="P:Microsoft.Scripting.Runtime.ExtensionTypeAttribute.ExtensionType">
+            <summary>
+            The type which contains extension members which are added to the type being extended.
+            </summary>
+        </member>
+        <member name="P:Microsoft.Scripting.Runtime.ExtensionTypeAttribute.Extends">
+            <summary>
+            The type which is being extended by the extension type.
+            </summary>
+        </member>
+        <member name="T:Microsoft.Scripting.Runtime.IMembersList">
+            <summary>
+            Provides a list of all the members of an instance.  
+            </summary>
+        </member>
+        <member name="T:Microsoft.Scripting.Runtime.ModuleChangeEventArgs">
+            <summary>
+            Event args for when a ScriptScope has had its contents changed.  
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Runtime.ModuleChangeEventArgs.#ctor(System.String,Microsoft.Scripting.Runtime.ModuleChangeType)">
+            <summary>
+            Creates a new ModuleChangeEventArgs object with the specified name and type.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Runtime.ModuleChangeEventArgs.#ctor(System.String,Microsoft.Scripting.Runtime.ModuleChangeType,System.Object)">
+            <summary>
+            Creates a nwe ModuleChangeEventArgs with the specified name, type, and changed value.
+            </summary>
+        </member>
+        <member name="P:Microsoft.Scripting.Runtime.ModuleChangeEventArgs.Name">
+            <summary>
+            Gets the name of the symbol that has changed.
+            </summary>
+        </member>
+        <member name="P:Microsoft.Scripting.Runtime.ModuleChangeEventArgs.ChangeType">
+            <summary>
+            Gets the way in which the symbol has changed: Set or Delete.
+            </summary>
+        </member>
+        <member name="P:Microsoft.Scripting.Runtime.ModuleChangeEventArgs.Value">
+            <summary>
+            The the symbol has been set provides the new value.
+            </summary>
+        </member>
+        <member name="T:Microsoft.Scripting.Runtime.ModuleChangeType">
+            <summary>
+            The way in which a module has changed : Set or Delete
+            </summary>
+        </member>
+        <member name="F:Microsoft.Scripting.Runtime.ModuleChangeType.Set">
+            <summary>
+            A new value has been set in the module (or a previous value has changed).
+            </summary>
+        </member>
+        <member name="F:Microsoft.Scripting.Runtime.ModuleChangeType.Delete">
+            <summary>
+            A value has been removed from the module.
+            </summary>
+        </member>
+        <member name="T:Microsoft.Scripting.Runtime.NullTextContentProvider">
+            <summary>
+            A NullTextContentProvider to be provided when we have a pre-compiled ScriptCode which doesn't
+            have source code associated with it.
+            </summary>
+        </member>
+        <member name="T:Microsoft.Scripting.Runtime.OperationFailed">
+            <summary>
+            Singleton instance returned from an operator method when the operator method cannot provide a value.
+            </summary>
+        </member>
+        <member name="T:Microsoft.Scripting.Runtime.OperatorSlotAttribute">
+            <summary>
+            Represents an ops-extension method which is added as an operator.
+            
+            The name must be a well-formed name such as "Add" that matches the CLS
+            naming conventions for adding overloads associated with op_* methods.
+            </summary>
+        </member>
+        <member name="T:Microsoft.Scripting.Runtime.PropertyMethodAttribute">
+            <summary>
+            Represents an ops-extension method which is used to implement a property.
+            </summary>
+        </member>
+        <member name="T:Microsoft.Scripting.Runtime.ReflectionCache">
+            <summary>
+            Provides a cache of reflection members.  Only one set of values is ever handed out per a 
+            specific request.
+            </summary>
+        </member>
+        <member name="T:Microsoft.Scripting.Runtime.ReflectionCache.MethodBaseCache">
+            <summary>
+            TODO: Make me private again
+            </summary>
+        </member>
+        <member name="T:Microsoft.Scripting.Runtime.StaticExtensionMethodAttribute">
+            <summary>
+            Indicates an extension method should be added as a static method, not a instance method.
+            </summary>
+        </member>
+        <member name="T:Microsoft.Scripting.SourceFileInformation">
+            <summary>
+            Stores information needed to emit debugging symbol information for a
+            source file, in particular the file name and unique language identifier
+            </summary>
+        </member>
+        <member name="P:Microsoft.Scripting.SourceFileInformation.FileName">
+            <summary>
+            The source file name
+            </summary>
+        </member>
+        <member name="P:Microsoft.Scripting.SourceFileInformation.LanguageGuid">
+            <summary>
+            Returns the language's unique identifier, if any
+            </summary>
+        </member>
+        <member name="P:Microsoft.Scripting.SourceFileInformation.VendorGuid">
+            <summary>
+            Returns the language vendor's unique identifier, if any
+            </summary>
+        </member>
+        <member name="T:Microsoft.Scripting.ComInterop.ArgBuilder">
+            <summary>
+            ArgBuilder provides an argument value used by the MethodBinder.  One ArgBuilder exists for each
+            physical parameter defined on a method.  
+            
+            Contrast this with ParameterWrapper which represents the logical argument passed to the method.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.ComInterop.ArgBuilder.Marshal(System.Linq.Expressions.Expression)">
+            <summary>
+            Provides the Expression which provides the value to be passed to the argument.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.ComInterop.ArgBuilder.MarshalToRef(System.Linq.Expressions.Expression)">
+            <summary>
+            Provides the Expression which provides the value to be passed to the argument.
+            This method is called when result is intended to be used ByRef.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.ComInterop.ArgBuilder.UnmarshalFromRef(System.Linq.Expressions.Expression)">
+            <summary>
+            Provides an Expression which will update the provided value after a call to the method.
+            May return null if no update is required.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.ComInterop.BoundDispEvent.TryBinaryOperation(System.Dynamic.BinaryOperationBinder,System.Object,System.Object@)">
+            <summary>
+            Provides the implementation of performing AddAssign and SubtractAssign binary operations.
+            </summary>
+            <param name="binder">The binder provided by the call site.</param>
+            <param name="handler">The handler for the operation.</param>
+            <param name="result">The result of the operation.</param>
+            <returns>true if the operation is complete, false if the call site should determine behavior.</returns>
+        </member>
+        <member name="M:Microsoft.Scripting.ComInterop.BoundDispEvent.InPlaceAdd(System.Object)">
+            <summary>
+            Adds a handler to an event.
+            </summary>
+            <param name="handler">The handler to be added.</param>
+            <returns>The original event with handler added.</returns>
+        </member>
+        <member name="M:Microsoft.Scripting.ComInterop.BoundDispEvent.InPlaceSubtract(System.Object)">
+            <summary>
+            Removes handler from the event.
+            </summary>
+            <param name="handler">The handler to be removed.</param>
+            <returns>The original event with handler removed.</returns>
+        </member>
+        <member name="T:Microsoft.Scripting.ComInterop.ComBinder">
+            <summary>
+            Provides helper methods to bind COM objects dynamically.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.ComInterop.ComBinder.IsComObject(System.Object)">
+            <summary>
+            Determines if an object is a COM object.
+            </summary>
+            <param name="value">The object to test.</param>
+            <returns>true if the object is a COM object, false otherwise.</returns>
+        </member>
+        <member name="M:Microsoft.Scripting.ComInterop.ComBinder.TryBindGetMember(System.Dynamic.GetMemberBinder,System.Dynamic.DynamicMetaObject,System.Dynamic.DynamicMetaObject@,System.Boolean)">
+            <summary>
+            Tries to perform binding of the dynamic get member operation.
+            </summary>
+            <param name="binder">An instance of the <see cref="T:System.Dynamic.GetMemberBinder"/> that represents the details of the dynamic operation.</param>
+            <param name="instance">The target of the dynamic operation. </param>
+            <param name="result">The new <see cref="T:System.Dynamic.DynamicMetaObject"/> representing the result of the binding.</param>
+            <param name="delayInvocation">true if member evaluation may be delayed.</param>
+            <returns>true if operation was bound successfully; otherwise, false.</returns>
+        </member>
+        <member name="M:Microsoft.Scripting.ComInterop.ComBinder.TryBindGetMember(System.Dynamic.GetMemberBinder,System.Dynamic.DynamicMetaObject,System.Dynamic.DynamicMetaObject@)">
+            <summary>
+            Tries to perform binding of the dynamic get member operation.
+            </summary>
+            <param name="binder">An instance of the <see cref="T:System.Dynamic.GetMemberBinder"/> that represents the details of the dynamic operation.</param>
+            <param name="instance">The target of the dynamic operation. </param>
+            <param name="result">The new <see cref="T:System.Dynamic.DynamicMetaObject"/> representing the result of the binding.</param>
+            <returns>true if operation was bound successfully; otherwise, false.</returns>
+        </member>
+        <member name="M:Microsoft.Scripting.ComInterop.ComBinder.TryBindSetMember(System.Dynamic.SetMemberBinder,System.Dynamic.DynamicMetaObject,System.Dynamic.DynamicMetaObject,System.Dynamic.DynamicMetaObject@)">
+            <summary>
+            Tries to perform binding of the dynamic set member operation.
+            </summary>
+            <param name="binder">An instance of the <see cref="T:System.Dynamic.SetMemberBinder"/> that represents the details of the dynamic operation.</param>
+            <param name="instance">The target of the dynamic operation.</param>
+            <param name="value">The <see cref="T:System.Dynamic.DynamicMetaObject"/> representing the value for the set member operation.</param>
+            <param name="result">The new <see cref="T:System.Dynamic.DynamicMetaObject"/> representing the result of the binding.</param>
+            <returns>true if operation was bound successfully; otherwise, false.</returns>
+        </member>
+        <member name="M:Microsoft.Scripting.ComInterop.ComBinder.TryBindInvoke(System.Dynamic.InvokeBinder,System.Dynamic.DynamicMetaObject,System.Dynamic.DynamicMetaObject[],System.Dynamic.DynamicMetaObject@)">
+            <summary>
+            Tries to perform binding of the dynamic invoke operation.
+            </summary>    
+            <param name="binder">An instance of the <see cref="T:System.Dynamic.InvokeBinder"/> that represents the details of the dynamic operation.</param>
+            <param name="instance">The target of the dynamic operation. </param>
+            <param name="args">An array of <see cref="T:System.Dynamic.DynamicMetaObject"/> instances - arguments to the invoke member operation.</param>
+            <param name="result">The new <see cref="T:System.Dynamic.DynamicMetaObject"/> representing the result of the binding.</param>
+            <returns>true if operation was bound successfully; otherwise, false.</returns>
+        </member>
+        <member name="M:Microsoft.Scripting.ComInterop.ComBinder.TryBindInvokeMember(System.Dynamic.InvokeMemberBinder,System.Dynamic.DynamicMetaObject,System.Dynamic.DynamicMetaObject[],System.Dynamic.DynamicMetaObject@)">
+            <summary>
+            Tries to perform binding of the dynamic invoke member operation.
+            </summary>
+            <param name="binder">An instance of the <see cref="T:System.Dynamic.InvokeMemberBinder"/> that represents the details of the dynamic operation.</param>
+            <param name="instance">The target of the dynamic operation. </param>
+            <param name="args">An array of <see cref="T:System.Dynamic.DynamicMetaObject"/> instances - arguments to the invoke member operation.</param>
+            <param name="result">The new <see cref="T:System.Dynamic.DynamicMetaObject"/> representing the result of the binding.</param>
+            <returns>true if operation was bound successfully; otherwise, false.</returns>
+        </member>
+        <member name="M:Microsoft.Scripting.ComInterop.ComBinder.TryBindGetIndex(System.Dynamic.GetIndexBinder,System.Dynamic.DynamicMetaObject,System.Dynamic.DynamicMetaObject[],System.Dynamic.DynamicMetaObject@)">
+            <summary>
+            Tries to perform binding of the dynamic get index operation.
+            </summary>
+            <param name="binder">An instance of the <see cref="T:System.Dynamic.GetIndexBinder"/> that represents the details of the dynamic operation.</param>
+            <param name="instance">The target of the dynamic operation. </param>
+            <param name="args">An array of <see cref="T:System.Dynamic.DynamicMetaObject"/> instances - arguments to the invoke member operation.</param>
+            <param name="result">The new <see cref="T:System.Dynamic.DynamicMetaObject"/> representing the result of the binding.</param>
+            <returns>true if operation was bound successfully; otherwise, false.</returns>
+        </member>
+        <member name="M:Microsoft.Scripting.ComInterop.ComBinder.TryBindSetIndex(System.Dynamic.SetIndexBinder,System.Dynamic.DynamicMetaObject,System.Dynamic.DynamicMetaObject[],System.Dynamic.DynamicMetaObject,System.Dynamic.DynamicMetaObject@)">
+            <summary>
+            Tries to perform binding of the dynamic set index operation.
+            </summary>
+            <param name="binder">An instance of the <see cref="T:System.Dynamic.SetIndexBinder"/> that represents the details of the dynamic operation.</param>
+            <param name="instance">The target of the dynamic operation. </param>
+            <param name="args">An array of <see cref="T:System.Dynamic.DynamicMetaObject"/> instances - arguments to the invoke member operation.</param>
+            <param name="value">The <see cref="T:System.Dynamic.DynamicMetaObject"/> representing the value for the set index operation.</param>
+            <param name="result">The new <see cref="T:System.Dynamic.DynamicMetaObject"/> representing the result of the binding.</param>
+            <returns>true if operation was bound successfully; otherwise, false.</returns>
+        </member>
+        <member name="M:Microsoft.Scripting.ComInterop.ComBinder.TryConvert(System.Dynamic.ConvertBinder,System.Dynamic.DynamicMetaObject,System.Dynamic.DynamicMetaObject@)">
+            <summary>
+            Tries to perform binding of the dynamic Convert operation.
+            </summary>
+            <param name="binder">An instance of the <see cref="T:System.Dynamic.ConvertBinder"/> that represents the details of the dynamic operation.</param>
+            <param name="instance">The target of the dynamic operation.</param>
+            <param name="result">The new <see cref="T:System.Dynamic.DynamicMetaObject"/> representing the result of the binding.</param>
+            <returns>true if operation was bound successfully; otherwise, false.</returns>
+        </member>
+        <member name="M:Microsoft.Scripting.ComInterop.ComBinder.GetDynamicMemberNames(System.Object)">
+            <summary>
+            Gets the member names associated with the object.
+            This function can operate only with objects for which <see cref="M:Microsoft.Scripting.ComInterop.ComBinder.IsComObject(System.Object)"/> returns true.
+            </summary>
+            <param name="value">The object for which member names are requested.</param>
+            <returns>The collection of member names.</returns>
+        </member>
+        <member name="M:Microsoft.Scripting.ComInterop.ComBinder.GetDynamicDataMemberNames(System.Object)">
+            <summary>
+            Gets the member names of the data-like members associated with the object.
+            This function can operate only with objects for which <see cref="M:Microsoft.Scripting.ComInterop.ComBinder.IsComObject(System.Object)"/> returns true.
+            </summary>
+            <param name="value">The object for which member names are requested.</param>
+            <returns>The collection of member names.</returns>
+        </member>
+        <member name="M:Microsoft.Scripting.ComInterop.ComBinder.GetDynamicDataMembers(System.Object,System.Collections.Generic.IEnumerable{System.String})">
+            <summary>
+            Gets the data-like members and associated data for an object.
+            This function can operate only with objects for which <see cref="M:Microsoft.Scripting.ComInterop.ComBinder.IsComObject(System.Object)"/> returns true.
+            </summary>
+            <param name="value">The object for which data members are requested.</param>
+            <param name="names">The enumeration of names of data members for which to retrieve values.</param>
+            <returns>The collection of pairs that represent data member's names and their data.</returns>
+        </member>
+        <member name="T:Microsoft.Scripting.ComInterop.ComBinder.ComGetMemberBinder">
+            <summary>
+            Special binder that indicates special semantics for COM GetMember operation.
+            </summary>
+        </member>
+        <member name="T:Microsoft.Scripting.ComInterop.ComEventSink">
+            <summary>
+            This class implements an event sink for a particular RCW.
+            Unlike the implementation of events in TlbImp'd assemblies,
+            we will create only one event sink per RCW (theoretically RCW might have
+            several ComEventSink evenk sinks - but all these implement different source intefaces).
+            Each ComEventSink contains a list of ComEventSinkMethod objects - which represent
+            a single method on the source interface an a multicast delegate to redirect 
+            the calls. Notice that we are chaining multicast delegates so that same 
+            ComEventSinkMedhod can invoke multiple event handlers).
+            
+            ComEventSink implements an IDisposable pattern to Unadvise from the connection point.
+            Typically, when RCW is finalized the corresponding Dispose will be triggered by 
+            ComEventSinksContainer finalizer. Notice that lifetime of ComEventSinksContainer
+            is bound to the lifetime of the RCW. 
+            </summary>
+        </member>
+        <member name="T:Microsoft.Scripting.ComInterop.ComEventSink.ComEventSinkMethod">
+            <summary>
+            Contains a methods DISPID (in a string formatted of "[DISPID=N]"
+            and a chained list of delegates to invoke
+            </summary>
+        </member>
+        <member name="T:Microsoft.Scripting.ComInterop.ComEventSinkProxy">
+            <summary>
+            ComEventSinkProxy class is responsible for handling QIs for sourceIid 
+            on instances of ComEventSink.
+            
+            Background: When a COM even sink advises to a connection point it is 
+            supposed to hand over the dispinterface. Now, some hosts will trust
+            the COM client to pass the correct pointer, but some will not.
+            E.g. Excel's implementation of Connection Points will not cause a
+            QI on the pointer that has been passed, however Word will QI the
+            pointer to return the required interface.
+            
+            ComEventSink does not, strongly speaking, implements the interface 
+            that it claims to implement - it is just "faking" it by using IReflect.
+            Thus, Word's QIs on the pointer passed to ICP::Advise would fail. To
+            prevent this we take advangate of RealProxy's ability of
+            "dressing up" like other classes and hence successfully respond to QIs 
+            for interfaces that it does not really support( it is OK to say 
+            "I implement this interface" for event sinks only since the common 
+            practice is to use IDistpach.Invoke when calling into event sinks). 
+            </summary>
+        </member>
+        <member name="T:Microsoft.Scripting.ComInterop.ComEventSinksContainer">
+            <summary>
+            ComEventSinksContainer is just a regular list with a finalizer.
+            This list is usually attached as a custom data for RCW object and 
+            is finalized whenever RCW is finalized.
+            </summary>
+        </member>
+        <member name="T:Microsoft.Scripting.ComInterop.IDispatchMethodIndices">
+            <summary>
+            Layout of the IDispatch vtable
+            </summary>
+        </member>
+        <member name="T:Microsoft.Scripting.ComInterop.ComInvokeAction">
+            <summary>
+            Invokes the object. If it falls back, just produce an error.
+            </summary>
+        </member>
+        <member name="T:Microsoft.Scripting.ComInterop.SplatInvokeBinder">
+            <summary>
+            Splats the arguments to another nested dynamic site, which does the
+            real invocation of the IDynamicMetaObjectProvider. 
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.ComInterop.ComInvokeBinder.MakeIDispatchInvokeTarget">
+            <summary>
+            Create a stub for the target of the optimized lopop.
+            </summary>
+            <returns></returns>
+        </member>
+        <member name="M:Microsoft.Scripting.ComInterop.ComInvokeBinder.MakeArgumentExpressions">
+            <summary>
+            Gets expressions to access all the arguments. This includes the instance argument.
+            </summary>
+        </member>
+        <member name="T:Microsoft.Scripting.ComInterop.ComObject">
+            <summary>
+            This is a helper class for runtime-callable-wrappers of COM instances. We create one instance of this type
+            for every generic RCW instance.
+            </summary>
+        </member>
+        <member name="F:Microsoft.Scripting.ComInterop.ComObject._rcw">
+            <summary>
+            The runtime-callable wrapper
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.ComInterop.ComObject.ObjectToComObject(System.Object)">
+            <summary>
+            This is the factory method to get the ComObject corresponding to an RCW
+            </summary>
+            <returns></returns>
+        </member>
+        <member name="T:Microsoft.Scripting.ComInterop.ComParamDesc">
+            <summary>
+            The parameter description of a method defined in a type library
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.ComInterop.ComParamDesc.#ctor(System.Runtime.InteropServices.ComTypes.ELEMDESC@,System.String)">
+            <summary>
+            Creates a representation for the paramter of a COM method
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.ComInterop.ComParamDesc.#ctor(System.Runtime.InteropServices.ComTypes.ELEMDESC@)">
+            <summary>
+            Creates a representation for the return value of a COM method
+            TODO: Return values should be represented by a different type
+            </summary>
+        </member>
+        <member name="P:Microsoft.Scripting.ComInterop.ComParamDesc.DefaultValue">
+            <summary>
+            DBNull.Value if there is no default value
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.ComInterop.ComRuntimeHelpers.GetITypeInfoFromIDispatch(Microsoft.Scripting.ComInterop.IDispatch,System.Boolean)">
+            <summary>
+            Look for typeinfo using IDispatch.GetTypeInfo
+            </summary>
+            <param name="dispatch"></param>
+            <param name="throwIfMissingExpectedTypeInfo">
+            Some COM objects just dont expose typeinfo. In these cases, this method will return null.
+            Some COM objects do intend to expose typeinfo, but may not be able to do so if the type-library is not properly 
+            registered. This will be considered as acceptable or as an error condition depending on throwIfMissingExpectedTypeInfo</param>
+            <returns></returns>
+        </member>
+        <member name="M:Microsoft.Scripting.ComInterop.ComRuntimeHelpers.CheckIfMissingTypeInfoIsExpected(System.Int32,System.Boolean)">
+            <summary>
+            This method should be called when typeinfo is not available for an object. The function
+            will check if the typeinfo is expected to be missing. This can include error cases where
+            the same error is guaranteed to happen all the time, on all machines, under all circumstances.
+            In such cases, we just have to operate without the typeinfo.
+            
+            However, if accessing the typeinfo is failing in a transient way, we might want to throw
+            an exception so that we will eagerly predictably indicate the problem.
+            </summary>
+        </member>
+        <member name="T:Microsoft.Scripting.ComInterop.UnsafeMethods">
+            <summary>
+            This class contains methods that either cannot be expressed in C#, or which require writing unsafe code.
+            Callers of these methods need to use them extremely carefully as incorrect use could cause GC-holes
+            and other problems.
+            </summary>
+            
+        </member>
+        <member name="M:Microsoft.Scripting.ComInterop.UnsafeMethods.AssertByrefPointsToStack(System.IntPtr)">
+            <summary>
+            Ensure that "value" is a local variable in some caller's frame. So converting
+            the byref to an IntPtr is a safe operation. Alternatively, we could also allow 
+            allowed "value"  to be a pinned object.
+            </summary>
+        </member>
+        <member name="T:Microsoft.Scripting.ComInterop.UnsafeMethods.IUnknownReleaseDelegate">
+            <summary>
+            We will emit an indirect call to an unmanaged function pointer from the vtable of the given interface pointer. 
+            This approach can take only ~300 instructions on x86 compared with ~900 for Marshal.Release. We are relying on 
+            the JIT-compiler to do pinvoke-stub-inlining and calling the pinvoke target directly.
+            </summary>
+        </member>
+        <member name="T:Microsoft.Scripting.ComInterop.UnsafeMethods.IDispatchInvokeDelegate">
+            <summary>
+            We will emit an indirect call to an unmanaged function pointer from the vtable of the given IDispatch interface pointer. 
+            It is not possible to express this in C#. Using an indirect pinvoke call allows us to do our own marshalling. 
+            We can allocate the Variant arguments cheaply on the stack. We are relying on the JIT-compiler to do 
+            pinvoke-stub-inlining and calling the pinvoke target directly.
+            The alternative of calling via a managed interface declaration of IDispatch would have a performance
+            penalty of going through a CLR stub that would have to re-push the arguments on the stack, etc.
+            Marshal.GetDelegateForFunctionPointer could be used here, but its too expensive (~2000 instructions on x86).
+            </summary>
+        </member>
+        <member name="T:Microsoft.Scripting.ComInterop.ComTypeLibDesc">
+            <summary>
+            Cached information from a TLB. Only information that is required is saved. CoClasses are used
+            for event hookup. Enums are stored for accessing symbolic names from scripts. 
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.ComInterop.ComTypeLibDesc.CreateFromGuid(System.Guid)">
+            <summary>
+            Reads the latest registered type library for the corresponding GUID,
+            reads definitions of CoClass'es and Enum's from this library
+            and creates a IDynamicMetaObjectProvider that allows to instantiate coclasses
+            and get actual values for the enums.
+            </summary>
+            <param name="typeLibGuid">Type Library Guid</param>
+            <returns>ComTypeLibDesc object</returns>
+        </member>
+        <member name="M:Microsoft.Scripting.ComInterop.ComTypeLibDesc.CreateFromObject(System.Object)">
+            <summary>
+            Gets an ITypeLib object from OLE Automation compatible RCW ,
+            reads definitions of CoClass'es and Enum's from this library
+            and creates a IDynamicMetaObjectProvider that allows to instantiate coclasses
+            and get actual values for the enums.
+            </summary>
+            <param name="rcw">OLE automation compatible RCW</param>
+            <returns>ComTypeLibDesc object</returns>
+        </member>
+        <member name="T:Microsoft.Scripting.ComInterop.DispCallable">
+            <summary>
+            This represents a bound dispmember on a IDispatch object.
+            </summary>
+        </member>
+        <member name="T:Microsoft.Scripting.ComInterop.ExcepInfo">
+            <summary>
+            This is similar to ComTypes.EXCEPINFO, but lets us do our own custom marshaling
+            </summary>
+        </member>
+        <member name="T:Microsoft.Scripting.ComInterop.IDispatchComObject">
+            <summary>
+            An object that implements IDispatch
+            
+            This currently has the following issues:
+            1. If we prefer ComObjectWithTypeInfo over IDispatchComObject, then we will often not
+               IDispatchComObject since implementations of IDispatch often rely on a registered type library. 
+               If we prefer IDispatchComObject over ComObjectWithTypeInfo, users get a non-ideal experience.
+            2. IDispatch cannot distinguish between properties and methods with 0 arguments (and non-0 
+               default arguments?). So obj.foo() is ambiguous as it could mean invoking method foo, 
+               or it could mean invoking the function pointer returned by property foo.
+               We are attempting to find whether we need to call a method or a property by examining
+               the ITypeInfo associated with the IDispatch. ITypeInfo tell's use what parameters the method
+               expects, is it a method or a property, what is the default property of the object, how to 
+               create an enumerator for collections etc.
+            3. IronPython processes the signature and converts ref arguments into return values. 
+               However, since the signature of a DispMethod is not available beforehand, this conversion 
+               is not possible. There could be other signature conversions that may be affected. How does 
+               VB6 deal with ref arguments and IDispatch?
+               
+            We also support events for IDispatch objects:
+            Background:
+            COM objects support events through a mechanism known as Connect Points.
+            Connection Points are separate objects created off the actual COM 
+            object (this is to prevent circular references between event sink
+            and event source). When clients want to sink events generated  by 
+            COM object they would implement callback interfaces (aka source 
+            interfaces) and hand it over (advise) to the Connection Point. 
+            
+            Implementation details:
+            When IDispatchComObject.TryGetMember request is received we first check
+            whether the requested member is a property or a method. If this check
+            fails we will try to determine whether an event is requested. To do 
+            so we will do the following set of steps:
+            1. Verify the COM object implements IConnectionPointContainer
+            2. Attempt to find COM object's coclass's description
+               a. Query the object for IProvideClassInfo interface. Go to 3, if found
+               b. From object's IDispatch retrieve primary interface description
+               c. Scan coclasses declared in object's type library.
+               d. Find coclass implementing this particular primary interface 
+            3. Scan coclass for all its source interfaces.
+            4. Check whether to any of the methods on the source interfaces matches 
+            the request name
+            
+            Once we determine that TryGetMember requests an event we will return
+            an instance of BoundDispEvent class. This class has InPlaceAdd and
+            InPlaceSubtract operators defined. Calling InPlaceAdd operator will:
+            1. An instance of ComEventSinksContainer class is created (unless 
+            RCW already had one). This instance is hanged off the RCW in attempt
+            to bind the lifetime of event sinks to the lifetime of the RCW itself,
+            meaning event sink will be collected once the RCW is collected (this
+            is the same way event sinks lifetime is controlled by PIAs).
+            Notice: ComEventSinksContainer contains a Finalizer which will go and
+            unadvise all event sinks.
+            Notice: ComEventSinksContainer is a list of ComEventSink objects. 
+            2. Unless we have already created a ComEventSink for the required 
+            source interface, we will create and advise a new ComEventSink. Each
+            ComEventSink implements a single source interface that COM object 
+            supports. 
+            3. ComEventSink contains a map between method DISPIDs to  the 
+            multicast delegate that will be invoked when the event is raised.
+            4. ComEventSink implements IReflect interface which is exposed as
+            custom IDispatch to COM consumers. This allows us to intercept calls
+            to IDispatch.Invoke and apply custom logic - in particular we will
+            just find and invoke the multicast delegate corresponding to the invoked
+            dispid.
+             </summary>
+        </member>
+        <member name="T:Microsoft.Scripting.ComInterop.NullArgBuilder">
+            <summary>
+            ArgBuilder which always produces null.  
+            </summary>
+        </member>
+        <member name="T:Microsoft.Scripting.ComInterop.SimpleArgBuilder">
+            <summary>
+            SimpleArgBuilder produces the value produced by the user as the argument value.  It
+            also tracks information about the original parameter and is used to create extended
+            methods for params arrays and param dictionary functions.
+            </summary>
+        </member>
+        <member name="T:Microsoft.Scripting.ComInterop.VarEnumSelector">
+            <summary>
+            If a managed user type (as opposed to a primitive type or a COM object) is passed as an argument to a COM call, we need
+            to determine the VarEnum type we will marshal it as. We have the following options:
+            1.	Raise an exception. Languages with their own version of primitive types would not be able to call
+                COM methods using the language's types (for eg. strings in IronRuby are not System.String). An explicit
+                cast would be needed.
+            2.	We could marshal it as VT_DISPATCH. Then COM code will be able to access all the APIs in a late-bound manner,
+                but old COM components will probably malfunction if they expect a primitive type.
+            3.	We could guess which primitive type is the closest match. This will make COM components be as easily 
+                accessible as .NET methods.
+            4.	We could use the type library to check what the expected type is. However, the type library may not be available.
+            
+            VarEnumSelector implements option # 3
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.ComInterop.VarEnumSelector.GetManagedMarshalType(System.Runtime.InteropServices.VarEnum)">
+            <summary>
+            Gets the managed type that an object needs to be coverted to in order for it to be able
+            to be represented as a Variant.
+            
+            In general, there is a many-to-many mapping between Type and VarEnum. However, this method
+            returns a simple mapping that is needed for the current implementation. The reason for the 
+            many-to-many relation is:
+            1. Int32 maps to VT_I4 as well as VT_ERROR, and Decimal maps to VT_DECIMAL and VT_CY. However,
+               this changes if you throw the wrapper types into the mix.
+            2. There is no Type to represent COM types. __ComObject is a private type, and Object is too
+               general.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.ComInterop.VarEnumSelector.CreateComPrimitiveTypeFamilies">
+            <summary>
+            Creates a family of COM types such that within each family, there is a completely non-lossy
+            conversion from a type to an earlier type in the family.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.ComInterop.VarEnumSelector.GetConversionsToComPrimitiveTypeFamilies(System.Type)">
+            <summary>
+            Get the (one representative type for each) primitive type families that the argument can be converted to
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.ComInterop.VarEnumSelector.CheckForAmbiguousMatch(System.Type,System.Collections.Generic.List{System.Runtime.InteropServices.VarEnum})">
+            <summary>
+            If there is more than one type family that the argument can be converted to, we will throw a
+            AmbiguousMatchException instead of randomly picking a winner.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.ComInterop.VarEnumSelector.TryGetPrimitiveComTypeViaConversion(System.Type,System.Runtime.InteropServices.VarEnum@)">
+            <summary>
+            Is there a unique primitive type that has the best conversion for the argument
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.ComInterop.VarEnumSelector.GetVariantBuilder(System.Type)">
+            <summary>
+            Get the COM Variant type that argument should be marshaled as for a call to COM
+            </summary>
+        </member>
+        <member name="T:Microsoft.Scripting.ComInterop.Variant">
+            <summary>
+            Variant is the basic COM type for late-binding. It can contain any other COM data type.
+            This type definition precisely matches the unmanaged data layout so that the struct can be passed
+            to and from COM calls.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.ComInterop.Variant.IsPrimitiveType(System.Runtime.InteropServices.VarEnum)">
+            <summary>
+            Primitive types are the basic COM types. It includes valuetypes like ints, but also reference types
+            like BStrs. It does not include composite types like arrays and user-defined COM types (IUnknown/IDispatch).
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.ComInterop.Variant.ToObject">
+            <summary>
+            Get the managed object representing the Variant.
+            </summary>
+            <returns></returns>
+        </member>
+        <member name="M:Microsoft.Scripting.ComInterop.Variant.Clear">
+            <summary>
+            Release any unmanaged memory associated with the Variant
+            </summary>
+            <returns></returns>
+        </member>
+        <member name="T:Microsoft.Scripting.ComInterop.VariantBuilder">
+            <summary>
+            VariantBuilder handles packaging of arguments into a Variant for a call to IDispatch.Invoke
+            </summary>
+        </member>
+        <member name="T:Microsoft.Scripting.Strings">
+            <summary>
+               Strongly-typed and parameterized string factory.
+            </summary>
+            <summary>
+               Strongly-typed and parameterized string factory.
+            </summary>
+        </member>
+        <member name="P:Microsoft.Scripting.Strings.ComObjectExpected">
+            <summary>
+            A string like  "COM object is expected."
+            </summary>
+        </member>
+        <member name="P:Microsoft.Scripting.Strings.CannotCall">
+            <summary>
+            A string like  "Cannot perform call."
+            </summary>
+        </member>
+        <member name="P:Microsoft.Scripting.Strings.COMObjectDoesNotSupportEvents">
+            <summary>
+            A string like  "COM object does not support events."
+            </summary>
+        </member>
+        <member name="P:Microsoft.Scripting.Strings.COMObjectDoesNotSupportSourceInterface">
+            <summary>
+            A string like  "COM object does not support specified source interface."
+            </summary>
+        </member>
+        <member name="P:Microsoft.Scripting.Strings.SetComObjectDataFailed">
+            <summary>
+            A string like  "Marshal.SetComObjectData failed."
+            </summary>
+        </member>
+        <member name="P:Microsoft.Scripting.Strings.MethodShouldNotBeCalled">
+            <summary>
+            A string like  "This method exists only to keep the compiler happy."
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Strings.UnexpectedVarEnum(System.Object)">
+            <summary>
+            A string like  "Unexpected VarEnum {0}."
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Strings.DispBadParamCount(System.Object)">
+            <summary>
+            A string like  "Error while invoking {0}."
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Strings.DispMemberNotFound(System.Object)">
+            <summary>
+            A string like  "Error while invoking {0}."
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Strings.DispNoNamedArgs(System.Object)">
+            <summary>
+            A string like  "Error while invoking {0}. Named arguments are not supported."
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Strings.DispOverflow(System.Object)">
+            <summary>
+            A string like  "Error while invoking {0}."
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Strings.DispTypeMismatch(System.Object,System.Object)">
+            <summary>
+            A string like  "Could not convert argument {0} for call to {1}."
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Strings.DispParamNotOptional(System.Object)">
+            <summary>
+            A string like  "Error while invoking {0}. A required parameter was omitted."
+            </summary>
+        </member>
+        <member name="P:Microsoft.Scripting.Strings.CannotRetrieveTypeInformation">
+            <summary>
+            A string like  "ResolveComReference.CannotRetrieveTypeInformation."
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Strings.GetIDsOfNamesInvalid(System.Object)">
+            <summary>
+            A string like  "IDispatch::GetIDsOfNames behaved unexpectedly for {0}."
+            </summary>
+        </member>
+        <member name="P:Microsoft.Scripting.Strings.UnsupportedEnumType">
+            <summary>
+            A string like  "Attempting to wrap an unsupported enum type."
+            </summary>
+        </member>
+        <member name="P:Microsoft.Scripting.Strings.UnsupportedHandlerType">
+            <summary>
+            A string like  "Attempting to pass an event handler of an unsupported type."
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Strings.CouldNotGetDispId(System.Object,System.Object)">
+            <summary>
+            A string like  "Could not get dispatch ID for {0} (error: {1})."
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Strings.AmbiguousConversion(System.Object,System.Object)">
+            <summary>
+            A string like  "There are valid conversions from {0} to {1}."
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Strings.VariantGetAccessorNYI(System.Object)">
+            <summary>
+            A string like  "Variant.GetAccessor cannot handle {0}."
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Strings.InvalidOperation_ContainsGenericParameters(System.Object,System.Object)">
+            <summary>
+            A string like  "Cannot access member {1} declared on type {0} because the type contains generic parameters."
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Strings.MissingType(System.Object)">
+            <summary>
+            A string like  "Type '{0}' is missing or cannot be loaded."
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Strings.StaticAccessFromInstanceError(System.Object,System.Object)">
+            <summary>
+            A string like  "static property "{0}" of "{1}" can only be read through a type, not an instance"
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Strings.StaticAssignmentFromInstanceError(System.Object,System.Object)">
+            <summary>
+            A string like  "static property "{0}" of "{1}" can only be assigned to through a type, not an instance"
+            </summary>
+        </member>
+        <member name="P:Microsoft.Scripting.Strings.MethodPreconditionViolated">
+            <summary>
+            A string like  "Method precondition violated"
+            </summary>
+        </member>
+        <member name="P:Microsoft.Scripting.Strings.InvalidArgumentValue">
+            <summary>
+            A string like  "Invalid argument value"
+            </summary>
+        </member>
+        <member name="P:Microsoft.Scripting.Strings.NonEmptyStringRequired">
+            <summary>
+            A string like  "Non-empty string required"
+            </summary>
+        </member>
+        <member name="P:Microsoft.Scripting.Strings.NonEmptyCollectionRequired">
+            <summary>
+            A string like  "Non-empty collection required"
+            </summary>
+        </member>
+        <member name="P:Microsoft.Scripting.Strings.MustBeExceptionInstance">
+            <summary>
+            A string like  "must by an Exception instance"
+            </summary>
+        </member>
+        <member name="P:Microsoft.Scripting.Strings.TypeOfTestMustBeBool">
+            <summary>
+            A string like  "Type of test must be bool"
+            </summary>
+        </member>
+        <member name="P:Microsoft.Scripting.Strings.TypeOfExpressionMustBeBool">
+            <summary>
+            A string like  "Type of the expression must be bool"
+            </summary>
+        </member>
+        <member name="P:Microsoft.Scripting.Strings.EmptyStringIsInvalidPath">
+            <summary>
+            A string like  "Empty string is not a valid path."
+            </summary>
+        </member>
+        <member name="P:Microsoft.Scripting.Strings.InvalidDelegate">
+            <summary>
+            A string like  "Invalid delegate type (Invoke method not found)."
+            </summary>
+        </member>
+        <member name="P:Microsoft.Scripting.Strings.ExpectedStaticProperty">
+            <summary>
+            A string like  "expected only static property"
+            </summary>
+        </member>
+        <member name="P:Microsoft.Scripting.Strings.PropertyDoesNotExist">
+            <summary>
+            A string like  "Property doesn't exist on the provided type"
+            </summary>
+        </member>
+        <member name="P:Microsoft.Scripting.Strings.FieldDoesNotExist">
+            <summary>
+            A string like  "Field doesn't exist on provided type"
+            </summary>
+        </member>
+        <member name="P:Microsoft.Scripting.Strings.TypeDoesNotHaveConstructorForTheSignature">
+            <summary>
+            A string like  "Type doesn't have constructor with a given signature"
+            </summary>
+        </member>
+        <member name="P:Microsoft.Scripting.Strings.TypeDoesNotHaveMethodForName">
+            <summary>
+            A string like  "Type doesn't have a method with a given name."
+            </summary>
+        </member>
+        <member name="P:Microsoft.Scripting.Strings.TypeDoesNotHaveMethodForNameSignature">
+            <summary>
+            A string like  "Type doesn't have a method with a given name and signature."
+            </summary>
+        </member>
+        <member name="P:Microsoft.Scripting.Strings.CountCannotBeNegative">
+            <summary>
+            A string like  "Count must be non-negative."
+            </summary>
+        </member>
+        <member name="P:Microsoft.Scripting.Strings.ArrayTypeMustBeArray">
+            <summary>
+            A string like  "arrayType must be an array type"
+            </summary>
+        </member>
+        <member name="P:Microsoft.Scripting.Strings.MustHaveCodeOrTarget">
+            <summary>
+            A string like  "Either code or target must be specified."
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Strings.TypeParameterIsNotDelegate(System.Object)">
+            <summary>
+            A string like  "Type parameter is {0}. Expected a delegate."
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Strings.InvalidCast(System.Object,System.Object)">
+            <summary>
+            A string like  "Cannot cast from type '{0}' to type '{1}"
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Strings.UnknownMemberType(System.Object)">
+            <summary>
+            A string like  "unknown member type: '{0}'. "
+            </summary>
+        </member>
+        <member name="P:Microsoft.Scripting.Strings.FirstArgumentMustBeCallSite">
+            <summary>
+            A string like  "RuleBuilder can only be used with delegates whose first argument is CallSite."
+            </summary>
+        </member>
+        <member name="P:Microsoft.Scripting.Strings.NoInstanceForCall">
+            <summary>
+            A string like  "no instance for call."
+            </summary>
+        </member>
+        <member name="P:Microsoft.Scripting.Strings.MissingTest">
+            <summary>
+            A string like  "Missing Test."
+            </summary>
+        </member>
+        <member name="P:Microsoft.Scripting.Strings.MissingTarget">
+            <summary>
+            A string like  "Missing Target."
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Strings.NonGenericWithGenericGroup(System.Object)">
+            <summary>
+            A string like  "The operation requires a non-generic type for {0}, but this represents generic types only"
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Strings.InvalidOperation(System.Object)">
+            <summary>
+            A string like  "Invalid operation: '{0}'"
+            </summary>
+        </member>
+        <member name="P:Microsoft.Scripting.Strings.FinallyAlreadyDefined">
+            <summary>
+            A string like  "Finally already defined."
+            </summary>
+        </member>
+        <member name="P:Microsoft.Scripting.Strings.CannotHaveFaultAndFinally">
+            <summary>
+            A string like  "Can not have fault and finally."
+            </summary>
+        </member>
+        <member name="P:Microsoft.Scripting.Strings.FaultAlreadyDefined">
+            <summary>
+            A string like  "Fault already defined."
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Strings.CantCreateDefaultTypeFor(System.Object)">
+            <summary>
+            A string like  "Cannot create default value for type {0}."
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Strings.UnhandledConvert(System.Object)">
+            <summary>
+            A string like  "Unhandled convert: {0}"
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Strings.NoCallableMethods(System.Object,System.Object)">
+            <summary>
+            A string like  "{0}.{1} has no publiclly visible method."
+            </summary>
+        </member>
+        <member name="P:Microsoft.Scripting.Strings.GlobalsMustBeUnique">
+            <summary>
+            A string like  "Global/top-level local variable names must be unique."
+            </summary>
+        </member>
+        <member name="P:Microsoft.Scripting.Strings.GenNonSerializableBinder">
+            <summary>
+            A string like  "Generating code from non-serializable CallSiteBinder."
+            </summary>
+        </member>
+        <member name="P:Microsoft.Scripting.Strings.InvalidPath">
+            <summary>
+            A string like  "pecified path is invalid."
+            </summary>
+        </member>
+        <member name="P:Microsoft.Scripting.Strings.DictionaryNotHashable">
+            <summary>
+            A string like  "Dictionaries are not hashable."
+            </summary>
+        </member>
+        <member name="P:Microsoft.Scripting.Strings.LanguageRegistered">
+            <summary>
+            A string like  "language already registered."
+            </summary>
+        </member>
+        <member name="P:Microsoft.Scripting.Strings.MethodOrOperatorNotImplemented">
+            <summary>
+            A string like  "The method or operation is not implemented."
+            </summary>
+        </member>
+        <member name="P:Microsoft.Scripting.Strings.NoException">
+            <summary>
+            A string like  "No exception."
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Strings.ExtensionMustBePublic(System.Object)">
+            <summary>
+            A string like  "Extension type {0} must be public."
+            </summary>
+        </member>
+        <member name="P:Microsoft.Scripting.Strings.AlreadyInitialized">
+            <summary>
+            A string like  "Already initialized."
+            </summary>
+        </member>
+        <member name="P:Microsoft.Scripting.Strings.MustReturnScopeExtension">
+            <summary>
+            A string like  "CreateScopeExtension must return a scope extension."
+            </summary>
+        </member>
+        <member name="P:Microsoft.Scripting.Strings.InvalidParamNumForService">
+            <summary>
+            A string like  "Invalid number of parameters for the service."
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Strings.InvalidArgumentType(System.Object,System.Object)">
+            <summary>
+            A string like  "Invalid type of argument {0}; expecting {1}."
+            </summary>
+        </member>
+        <member name="P:Microsoft.Scripting.Strings.CannotChangeNonCachingValue">
+            <summary>
+            A string like  "Cannot change non-caching value."
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Strings.FieldReadonly(System.Object)">
+            <summary>
+            A string like  "Field {0} is read-only"
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Strings.PropertyReadonly(System.Object)">
+            <summary>
+            A string like  "Property {0} is read-only"
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Strings.UnexpectedEvent(System.Object,System.Object,System.Object,System.Object)">
+            <summary>
+            A string like  "Expected event from {0}.{1}, got event from {2}.{3}."
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Strings.ExpectedBoundEvent(System.Object)">
+            <summary>
+            A string like  "expected bound event, got {0}."
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Strings.UnexpectedType(System.Object,System.Object)">
+            <summary>
+            A string like  "Expected type {0}, got {1}."
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Strings.MemberWriteOnly(System.Object)">
+            <summary>
+            A string like  "can only write to member {0}."
+            </summary>
+        </member>
+        <member name="P:Microsoft.Scripting.Strings.NoCodeToCompile">
+            <summary>
+            A string like  "No code to compile."
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Strings.InvalidStreamType(System.Object)">
+            <summary>
+            A string like  "Invalid stream type: {0}."
+            </summary>
+        </member>
+        <member name="P:Microsoft.Scripting.Strings.QueueEmpty">
+            <summary>
+            A string like  "Queue empty."
+            </summary>
+        </member>
+        <member name="P:Microsoft.Scripting.Strings.EnumerationNotStarted">
+            <summary>
+            A string like  "Enumeration has not started. Call MoveNext."
+            </summary>
+        </member>
+        <member name="P:Microsoft.Scripting.Strings.EnumerationFinished">
+            <summary>
+            A string like  "Enumeration already finished."
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Strings.CantAddCasing(System.Object)">
+            <summary>
+            A string like  "can't add another casing for identifier {0}"
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Strings.CantAddIdentifier(System.Object)">
+            <summary>
+            A string like  "can't add new identifier {0}"
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Strings.InvalidCtorImplementation(System.Object,System.Object)">
+            <summary>
+            A string like  "Type '{0}' doesn't provide a suitable public constructor or its implementation is faulty: {1}"
+            </summary>
+        </member>
+        <member name="P:Microsoft.Scripting.Strings.InvalidOutputDir">
+            <summary>
+            A string like  "Invalid output directory."
+            </summary>
+        </member>
+        <member name="P:Microsoft.Scripting.Strings.InvalidAsmNameOrExtension">
+            <summary>
+            A string like  "Invalid assembly name or file extension."
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Strings.CanotEmitConstant(System.Object,System.Object)">
+            <summary>
+            A string like  "Cannot emit constant {0} ({1})"
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Strings.NoImplicitCast(System.Object,System.Object)">
+            <summary>
+            A string like  "No implicit cast from {0} to {1}"
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Strings.NoExplicitCast(System.Object,System.Object)">
+            <summary>
+            A string like  "No explicit cast from {0} to {1}"
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Strings.NameNotDefined(System.Object)">
+            <summary>
+            A string like  "name '{0}' not defined"
+            </summary>
+        </member>
+        <member name="P:Microsoft.Scripting.Strings.NoDefaultValue">
+            <summary>
+            A string like  "No default value for a given type."
+            </summary>
+        </member>
+        <member name="P:Microsoft.Scripting.Strings.UnknownLanguageProviderType">
+            <summary>
+            A string like  "Specified language provider type is not registered."
+            </summary>
+        </member>
+        <member name="P:Microsoft.Scripting.Strings.CantReadProperty">
+            <summary>
+            A string like  "can't read from property"
+            </summary>
+        </member>
+        <member name="P:Microsoft.Scripting.Strings.CantWriteProperty">
+            <summary>
+            A string like  "can't write to property"
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Strings.IllegalNew_GenericParams(System.Object)">
+            <summary>
+            A string like  "Cannot create instance of {0} because it contains generic parameters"
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Strings.VerificationException(System.Object,System.Object,System.Object)">
+            <summary>
+            A string like  "Non-verifiable assembly generated: {0}:\nAssembly preserved as {1}\nError text:\n{2}\n"
+            </summary>
+        </member>
+        <member name="T:Microsoft.Scripting.Error">
+            <summary>
+               Strongly-typed and parameterized exception factory.
+            </summary>
+            <summary>
+               Strongly-typed and parameterized exception factory.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Error.COMObjectDoesNotSupportEvents">
+            <summary>
+            ArgumentException with message like "COM object does not support events."
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Error.COMObjectDoesNotSupportSourceInterface">
+            <summary>
+            ArgumentException with message like "COM object does not support specified source interface."
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Error.SetComObjectDataFailed">
+            <summary>
+            InvalidOperationException with message like "Marshal.SetComObjectData failed."
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Error.MethodShouldNotBeCalled">
+            <summary>
+            InvalidOperationException with message like "This method exists only to keep the compiler happy."
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Error.UnexpectedVarEnum(System.Object)">
+            <summary>
+            InvalidOperationException with message like "Unexpected VarEnum {0}."
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Error.DispBadParamCount(System.Object)">
+            <summary>
+            System.Reflection.TargetParameterCountException with message like "Error while invoking {0}."
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Error.DispMemberNotFound(System.Object)">
+            <summary>
+            MissingMemberException with message like "Error while invoking {0}."
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Error.DispNoNamedArgs(System.Object)">
+            <summary>
+            ArgumentException with message like "Error while invoking {0}. Named arguments are not supported."
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Error.DispOverflow(System.Object)">
+            <summary>
+            OverflowException with message like "Error while invoking {0}."
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Error.DispTypeMismatch(System.Object,System.Object)">
+            <summary>
+            ArgumentException with message like "Could not convert argument {0} for call to {1}."
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Error.DispParamNotOptional(System.Object)">
+            <summary>
+            ArgumentException with message like "Error while invoking {0}. A required parameter was omitted."
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Error.CannotRetrieveTypeInformation">
+            <summary>
+            InvalidOperationException with message like "ResolveComReference.CannotRetrieveTypeInformation."
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Error.GetIDsOfNamesInvalid(System.Object)">
+            <summary>
+            ArgumentException with message like "IDispatch::GetIDsOfNames behaved unexpectedly for {0}."
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Error.UnsupportedEnumType">
+            <summary>
+            InvalidOperationException with message like "Attempting to wrap an unsupported enum type."
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Error.UnsupportedHandlerType">
+            <summary>
+            InvalidOperationException with message like "Attempting to pass an event handler of an unsupported type."
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Error.CouldNotGetDispId(System.Object,System.Object)">
+            <summary>
+            MissingMemberException with message like "Could not get dispatch ID for {0} (error: {1})."
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Error.AmbiguousConversion(System.Object,System.Object)">
+            <summary>
+            System.Reflection.AmbiguousMatchException with message like "There are valid conversions from {0} to {1}."
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Error.VariantGetAccessorNYI(System.Object)">
+            <summary>
+            NotImplementedException with message like "Variant.GetAccessor cannot handle {0}."
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Error.MustHaveCodeOrTarget">
+            <summary>
+            ArgumentException with message like "Either code or target must be specified."
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Error.TypeParameterIsNotDelegate(System.Object)">
+            <summary>
+            InvalidOperationException with message like "Type parameter is {0}. Expected a delegate."
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Error.InvalidCast(System.Object,System.Object)">
+            <summary>
+            InvalidOperationException with message like "Cannot cast from type '{0}' to type '{1}"
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Error.UnknownMemberType(System.Object)">
+            <summary>
+            InvalidOperationException with message like "unknown member type: '{0}'. "
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Error.FirstArgumentMustBeCallSite">
+            <summary>
+            InvalidOperationException with message like "RuleBuilder can only be used with delegates whose first argument is CallSite."
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Error.NoInstanceForCall">
+            <summary>
+            InvalidOperationException with message like "no instance for call."
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Error.MissingTest">
+            <summary>
+            InvalidOperationException with message like "Missing Test."
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Error.MissingTarget">
+            <summary>
+            InvalidOperationException with message like "Missing Target."
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Error.NonGenericWithGenericGroup(System.Object)">
+            <summary>
+            TypeLoadException with message like "The operation requires a non-generic type for {0}, but this represents generic types only"
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Error.InvalidOperation(System.Object)">
+            <summary>
+            ArgumentException with message like "Invalid operation: '{0}'"
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Error.FinallyAlreadyDefined">
+            <summary>
+            InvalidOperationException with message like "Finally already defined."
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Error.CannotHaveFaultAndFinally">
+            <summary>
+            InvalidOperationException with message like "Can not have fault and finally."
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Error.FaultAlreadyDefined">
+            <summary>
+            InvalidOperationException with message like "Fault already defined."
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Error.CantCreateDefaultTypeFor(System.Object)">
+            <summary>
+            ArgumentException with message like "Cannot create default value for type {0}."
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Error.UnhandledConvert(System.Object)">
+            <summary>
+            ArgumentException with message like "Unhandled convert: {0}"
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Error.NoCallableMethods(System.Object,System.Object)">
+            <summary>
+            InvalidOperationException with message like "{0}.{1} has no publiclly visible method."
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Error.GlobalsMustBeUnique">
+            <summary>
+            ArgumentException with message like "Global/top-level local variable names must be unique."
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Error.GenNonSerializableBinder">
+            <summary>
+            ArgumentException with message like "Generating code from non-serializable CallSiteBinder."
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Error.InvalidPath">
+            <summary>
+            ArgumentException with message like "pecified path is invalid."
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Error.DictionaryNotHashable">
+            <summary>
+            ArgumentTypeException with message like "Dictionaries are not hashable."
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Error.LanguageRegistered">
+            <summary>
+            InvalidOperationException with message like "language already registered."
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Error.MethodOrOperatorNotImplemented">
+            <summary>
+            NotImplementedException with message like "The method or operation is not implemented."
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Error.NoException">
+            <summary>
+            InvalidOperationException with message like "No exception."
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Error.ExtensionMustBePublic(System.Object)">
+            <summary>
+            ArgumentException with message like "Extension type {0} must be public."
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Error.AlreadyInitialized">
+            <summary>
+            InvalidOperationException with message like "Already initialized."
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Error.MustReturnScopeExtension">
+            <summary>
+            InvalidImplementationException with message like "CreateScopeExtension must return a scope extension."
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Error.InvalidParamNumForService">
+            <summary>
+            ArgumentException with message like "Invalid number of parameters for the service."
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Error.InvalidArgumentType(System.Object,System.Object)">
+            <summary>
+            ArgumentException with message like "Invalid type of argument {0}; expecting {1}."
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Error.CannotChangeNonCachingValue">
+            <summary>
+            ArgumentException with message like "Cannot change non-caching value."
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Error.FieldReadonly(System.Object)">
+            <summary>
+            MissingMemberException with message like "Field {0} is read-only"
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Error.PropertyReadonly(System.Object)">
+            <summary>
+            MissingMemberException with message like "Property {0} is read-only"
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Error.UnexpectedEvent(System.Object,System.Object,System.Object,System.Object)">
+            <summary>
+            ArgumentException with message like "Expected event from {0}.{1}, got event from {2}.{3}."
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Error.ExpectedBoundEvent(System.Object)">
+            <summary>
+            ArgumentTypeException with message like "expected bound event, got {0}."
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Error.UnexpectedType(System.Object,System.Object)">
+            <summary>
+            ArgumentTypeException with message like "Expected type {0}, got {1}."
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Error.MemberWriteOnly(System.Object)">
+            <summary>
+            MemberAccessException with message like "can only write to member {0}."
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Error.NoCodeToCompile">
+            <summary>
+            InvalidOperationException with message like "No code to compile."
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Error.InvalidStreamType(System.Object)">
+            <summary>
+            ArgumentException with message like "Invalid stream type: {0}."
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Error.QueueEmpty">
+            <summary>
+            InvalidOperationException with message like "Queue empty."
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Error.EnumerationNotStarted">
+            <summary>
+            InvalidOperationException with message like "Enumeration has not started. Call MoveNext."
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Error.EnumerationFinished">
+            <summary>
+            InvalidOperationException with message like "Enumeration already finished."
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Error.CantAddCasing(System.Object)">
+            <summary>
+            InvalidOperationException with message like "can't add another casing for identifier {0}"
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Error.CantAddIdentifier(System.Object)">
+            <summary>
+            InvalidOperationException with message like "can't add new identifier {0}"
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Error.InvalidOutputDir">
+            <summary>
+            ArgumentException with message like "Invalid output directory."
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Error.InvalidAsmNameOrExtension">
+            <summary>
+            ArgumentException with message like "Invalid assembly name or file extension."
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Error.CanotEmitConstant(System.Object,System.Object)">
+            <summary>
+            ArgumentException with message like "Cannot emit constant {0} ({1})"
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Error.NoImplicitCast(System.Object,System.Object)">
+            <summary>
+            ArgumentException with message like "No implicit cast from {0} to {1}"
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Error.NoExplicitCast(System.Object,System.Object)">
+            <summary>
+            ArgumentException with message like "No explicit cast from {0} to {1}"
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Error.NameNotDefined(System.Object)">
+            <summary>
+            MissingMemberException with message like "name '{0}' not defined"
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Error.NoDefaultValue">
+            <summary>
+            ArgumentException with message like "No default value for a given type."
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Error.UnknownLanguageProviderType">
+            <summary>
+            ArgumentException with message like "Specified language provider type is not registered."
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Error.CantReadProperty">
+            <summary>
+            InvalidOperationException with message like "can't read from property"
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Error.CantWriteProperty">
+            <summary>
+            InvalidOperationException with message like "can't write to property"
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Error.IllegalNew_GenericParams(System.Object)">
+            <summary>
+            ArgumentException with message like "Cannot create instance of {0} because it contains generic parameters"
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Error.VerificationException(System.Object,System.Object,System.Object)">
+            <summary>
+            System.Security.VerificationException with message like "Non-verifiable assembly generated: {0}:\nAssembly preserved as {1}\nError text:\n{2}\n"
+            </summary>
+        </member>
+        <member name="T:Microsoft.Scripting.Hosting.Shell.ICommandDispatcher">
+            <summary>
+            Used to dispatch a single interactive command. It can be used to control things like which Thread
+            the command is executed on, how long the command is allowed to execute, etc
+            </summary>
+        </member>
+        <member name="T:Microsoft.Scripting.Hosting.Shell.Remote.ConsoleRestartManager">
+             <summary>
+             Supports detecting the remote runtime being killed, and starting up a new one.
+             
+             Threading model:
+             
+             ConsoleRestartManager creates a separate thread on which to create and execute the consoles. 
+             There are usually atleast three threads involved:
+             
+             1. Main app thread: Instantiates ConsoleRestartManager and accesses its APIs. This thread has to stay 
+                responsive to user input and so the ConsoleRestartManager APIs cannot be long-running or blocking.
+                Since the remote runtime process can terminate asynchronously, the current RemoteConsoleHost can 
+                change at any time (if auto-restart is enabled). The app should typically not care which instance of 
+                RemoteConsoleHost is currently being used. The flowchart of this thread is:
+                    Create ConsoleRestartManager
+                    ConsoleRestartManager.Start
+                    Loop:
+                        Respond to user input | Send user input to console for execution | BreakExecution | RestartConsole | GetMemberNames
+                    ConsoleRestartManager.Terminate
+                TODO: Currently, BreakExecution and GetMemberNames are called by the main thread synchronously.
+                Since they execute code in the remote runtime, they could take arbitrarily long. We should change
+                this so that the main app thread can never be blocked indefinitely.
+            
+             2. Console thread: Dedicated thread for creating RemoteConsoleHosts and executing code (which could
+                take a long time or block indefinitely).
+                    Wait for ConsoleRestartManager.Start to be called
+                    Loop:
+                        Create RemoteConsoleHost
+                        Wait for signal for:
+                             Execute code | RestartConsole | Process.Exited
+            
+             3. CompletionPort async callbacks:
+                    Process.Exited | Process.OutputDataReceived | Process.ErrorDataReceived
+             
+             4. Finalizer thred
+                Some objects may have a Finalize method (which possibly calls Dispose). Not many (if any) types
+                should have a Finalize method.
+             
+             </summary>
+        </member>
+        <member name="F:Microsoft.Scripting.Hosting.Shell.Remote.ConsoleRestartManager._accessLock">
+            <summary>
+            Accessing _remoteConsoleHost from a thread other than console thread can result in race.
+            If _remoteConsoleHost is accessed while holding _accessLock, it is guaranteed to be
+            null or non-disposed.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Hosting.Shell.Remote.ConsoleRestartManager.#ctor(System.Boolean)">
+            <summary>
+            This is created on the "creating thread", and goes on standby. Start needs to be called for activation.
+            </summary>
+            <param name="exitOnNormalExit">A host might want one of two behaviors:
+            1. Keep the REPL loop alive indefinitely, even when a specific instance of the RemoteConsoleHost terminates normally
+            2. Close the REPL loop when an instance of the RemoteConsoleHost terminates normally, and restart the loop
+               only if the instance terminates abnormally.</param>
+        </member>
+        <member name="M:Microsoft.Scripting.Hosting.Shell.Remote.ConsoleRestartManager.Start">
+            <summary>
+            Needs to be called for activation.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Hosting.Shell.Remote.ConsoleRestartManager.Terminate">
+            <summary>
+            Request (from another thread) the console REPL loop to terminate
+            </summary>
+        </member>
+        <member name="T:Microsoft.Scripting.Hosting.Shell.Remote.RemoteCommandDispatcher">
+            <summary>
+            This allows the RemoteConsoleHost to abort a long-running operation. The RemoteConsoleHost itself
+            does not know which ThreadPool thread might be processing the remote call, and so it needs
+            cooperation from the remote runtime server.
+            </summary>
+        </member>
+        <member name="F:Microsoft.Scripting.Hosting.Shell.Remote.RemoteCommandDispatcher.OutputCompleteMarker">
+            <summary>
+            Since OnOutputDataReceived is sent async, it can arrive late. The remote console
+            cannot know if all output from the current command has been received. So
+            RemoteCommandDispatcher writes out a marker to indicate the end of the output
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Hosting.Shell.Remote.RemoteCommandDispatcher.AbortCommand">
+            <summary>
+            Aborts the current active call to Execute by doing Thread.Abort
+            </summary>
+            <returns>true if a Thread.Abort was actually called. false if there is no active call to Execute</returns>
+        </member>
+        <member name="T:Microsoft.Scripting.Hosting.Shell.Remote.RemoteConsoleCommandLine">
+            <summary>
+            Customize the CommandLine for remote scenarios
+            </summary>
+        </member>
+        <member name="T:Microsoft.Scripting.Hosting.Shell.Remote.RemoteConsoleCommandLine.RemoteConsoleCommandDispatcher">
+            <summary>
+            CommandDispatcher to ensure synchronize output from the remote runtime
+            </summary>
+        </member>
+        <member name="T:Microsoft.Scripting.Hosting.Shell.Remote.RemoteConsoleHost">
+            <summary>
+            ConsoleHost where the ScriptRuntime is hosted in a separate process (referred to as the remote runtime server)
+            
+            The RemoteConsoleHost spawns the remote runtime server and specifies an IPC channel name to use to communicate
+            with each other. The remote runtime server creates and initializes a ScriptRuntime and a ScriptEngine, and publishes
+            it over the specified IPC channel at a well-known URI. Note that the RemoteConsoleHost cannot easily participate
+            in the initialization of the ScriptEngine as classes like LanguageContext are not remotable.
+            
+            The RemoteConsoleHost then starts the interactive loop and executes commands on the ScriptEngine over the remoting channel.
+            The RemoteConsoleHost listens to stdout of the remote runtime server and echos it locally to the user.
+            </summary>
+        </member>
+        <member name="E:Microsoft.Scripting.Hosting.Shell.Remote.RemoteConsoleHost.RemoteRuntimeExited">
+            <summary>
+            Called if the remote runtime process exits by itself. ie. without the remote console killing it.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Hosting.Shell.Remote.RemoteConsoleHost.CustomizeRemoteRuntimeStartInfo(System.Diagnostics.ProcessStartInfo)">
+            <summary>
+            Allows the console to customize the environment variables, working directory, etc.
+            </summary>
+            <param name="processInfo">At the least, processInfo.FileName should be initialized</param>
+        </member>
+        <member name="M:Microsoft.Scripting.Hosting.Shell.Remote.RemoteConsoleHost.AbortCommand">
+            <summary>
+            Aborts the current active call to Execute by doing Thread.Abort
+            </summary>
+            <returns>true if a Thread.Abort was actually called. false if there is no active call to Execute</returns>
+        </member>
+        <member name="T:Microsoft.Scripting.Hosting.Shell.Remote.RemoteRuntimeServer">
+            <summary>
+            The remote runtime server uses this class to publish an initialized ScriptEngine and ScriptRuntime 
+            over a remoting channel.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Hosting.Shell.Remote.RemoteRuntimeServer.StartServer(System.String,Microsoft.Scripting.Hosting.ScriptScope)">
+            <summary>
+            Publish objects so that the host can use it, and then block indefinitely (until the input stream is open).
+            
+            Note that we should publish only one object, and then have other objects be accessible from it. Publishing
+            multiple objects can cause problems if the client does a call like "remoteProxy1(remoteProxy2)" as remoting
+            will not be able to know if the server object for both the proxies is on the same server.
+            </summary>
+            <param name="remoteRuntimeChannelName">The IPC channel that the remote console expects to use to communicate with the ScriptEngine</param>
+            <param name="scope">A intialized ScriptScope that is ready to start processing script commands</param>
+        </member>
+        <member name="T:Microsoft.Scripting.Hosting.Shell.CommandLine">
+            <summary>
+            Command line hosting service.
+            </summary>
+        </member>
+        <member name="P:Microsoft.Scripting.Hosting.Shell.CommandLine.Scope">
+            <summary>
+            Scope is not remotable, and this only works in the same AppDomain.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Hosting.Shell.CommandLine.Run(Microsoft.Scripting.Hosting.ScriptEngine,Microsoft.Scripting.Hosting.Shell.IConsole,Microsoft.Scripting.Hosting.Shell.ConsoleOptions)">
+            <summary>
+            Executes the comand line - depending upon the options provided we will
+            either run a single file, a single command, or enter the interactive loop.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Hosting.Shell.CommandLine.Run">
+            <summary>
+            Runs the command line.  Languages can override this to provide custom behavior other than:
+                1. Running a single command
+                2. Running a file
+                3. Entering the interactive console loop.
+            </summary>
+            <returns></returns>
+        </member>
+        <member name="M:Microsoft.Scripting.Hosting.Shell.CommandLine.RunFile(Microsoft.Scripting.Hosting.ScriptSource)">
+            <summary>
+            Runs the specified filename
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Hosting.Shell.CommandLine.RunInteractive">
+            <summary>
+            Starts the interactive loop.  Performs any initialization necessary before
+            starting the loop and then calls RunInteractiveLoop to start the loop.
+            
+            Returns the exit code when the interactive loop is completed.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Hosting.Shell.CommandLine.RunInteractiveLoop">
+            <summary>
+            Runs the interactive loop.  Repeatedly parse and run interactive actions
+            until an exit code is received.  If any exceptions are unhandled displays
+            them to the console
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Hosting.Shell.CommandLine.TryInteractiveAction">
+            <summary>
+            Attempts to run a single interaction and handle any language-specific
+            exceptions.  Base classes can override this and call the base implementation
+            surrounded with their own exception handling.
+            
+            Returns null if successful and execution should continue, or an exit code.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Hosting.Shell.CommandLine.RunOneInteraction">
+            <summary>
+            Parses a single interactive command or a set of statements and executes it.  
+            
+            Returns null if successful and execution should continue, or the appropiate exit code.
+            
+            We check if the code read is an interactive command or statements is by checking for NewLine
+            If the code contains NewLine, it's a set of statements (most probably from SendToConsole)
+            If the code does not contain a NewLine, it's an interactive command typed by the user at the prompt
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Hosting.Shell.CommandLine.TreatAsBlankLine(System.String,System.Int32)">
+            <summary>
+            Private helper function to see if we should treat the current input as a blank link.
+            
+            We do this if we only have auto-indent text.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Hosting.Shell.CommandLine.ReadStatement(System.Boolean@)">
+            <summary>
+            Read a statement, which can potentially be a multiple-line statement suite (like a class declaration).
+            </summary>
+            <param name="continueInteraction">Should the console session continue, or did the user indicate 
+            that it should be terminated?</param>
+            <returns>Expression to evaluate. null for empty input</returns>
+        </member>
+        <member name="M:Microsoft.Scripting.Hosting.Shell.CommandLine.GetNextAutoIndentSize(System.String)">
+            <summary>
+            Gets the next level for auto-indentation
+            </summary>
+        </member>
+        <member name="T:Microsoft.Scripting.Hosting.Shell.ConsoleHost">
+            <summary>
+            Core functionality to implement an interactive console. This should be derived for concrete implementations
+            </summary>
+        </member>
+        <member name="P:Microsoft.Scripting.Hosting.Shell.ConsoleHost.ExeName">
+            <summary>
+            Console Host entry-point .exe name.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Hosting.Shell.ConsoleHost.Terminate(System.Int32)">
+            <summary>
+            Request (from another thread) the console REPL loop to terminate
+            </summary>
+            <param name="exitCode">The caller can specify the exitCode corresponding to the event triggering
+            the termination. This will be returned from CommandLine.Run</param>
+        </member>
+        <member name="M:Microsoft.Scripting.Hosting.Shell.ConsoleHost.Run(System.String[])">
+            <summary>
+            To be called from entry point.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Hosting.Shell.ConsoleHostOptionsParser.Parse(System.String[])">
+            <exception cref="T:Microsoft.Scripting.Hosting.Shell.InvalidOptionException"></exception>
+        </member>
+        <member name="M:Microsoft.Scripting.Hosting.Shell.ConsoleHostOptionsParser.ParseOption(System.String,System.String@,System.String@)">
+            <summary>
+            name == null means that the argument doesn't specify an option; the value contains the entire argument
+            name == "" means that the option name is empty (argument separator); the value is null then
+            </summary>
+        </member>
+        <member name="P:Microsoft.Scripting.Hosting.Shell.ConsoleOptions.Command">
+            <summary>
+            Literal script command given using -c option
+            </summary>
+        </member>
+        <member name="P:Microsoft.Scripting.Hosting.Shell.ConsoleOptions.FileName">
+            <summary>
+            Filename to execute passed on the command line options.
+            </summary>
+        </member>
+        <member name="P:Microsoft.Scripting.Hosting.Shell.ConsoleOptions.PrintVersion">
+            <summary>
+            Only print the version of the script interpreter and exit
+            </summary>
+        </member>
+        <member name="T:Microsoft.Scripting.Hosting.Shell.IConsole">
+            <summary>
+            Handles input and output for the console. It is comparable to System.IO.TextReader, 
+            System.IO.TextWriter, System.Console, etc
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Hosting.Shell.IConsole.ReadLine(System.Int32)">
+            <summary>
+            Read a single line of interactive input, or a block of multi-line statements.
+            
+            An event-driven GUI console can implement this method by creating a thread that
+            blocks and waits for an event indicating that input is available
+            </summary>
+            <param name="autoIndentSize">The indentation level to be used for the current suite of a compound statement.
+            The console can ignore this argument if it does not want to support auto-indentation</param>
+            <returns>null if the input stream has been closed. A string with a command to execute otherwise.
+            It can be a multi-line string which should be processed as block of statements
+            </returns>
+        </member>
+        <member name="M:Microsoft.Scripting.Hosting.Shell.OptionsParser.Parse(System.String[],Microsoft.Scripting.Hosting.ScriptRuntimeSetup,Microsoft.Scripting.Hosting.LanguageSetup,Microsoft.Scripting.PlatformAdaptationLayer)">
+            <exception cref="T:Microsoft.Scripting.Hosting.Shell.InvalidOptionException">On error.</exception>
+        </member>
+        <member name="T:Microsoft.Scripting.Hosting.Shell.SuperConsole.History">
+            <summary>
+            Class managing the command history.
+            </summary>
+        </member>
+        <member name="T:Microsoft.Scripting.Hosting.Shell.SuperConsole.SuperConsoleOptions">
+            <summary>
+            List of available options
+            </summary>
+        </member>
+        <member name="T:Microsoft.Scripting.Hosting.Shell.SuperConsole.Cursor">
+            <summary>
+            Cursor position management
+            </summary>
+        </member>
+        <member name="F:Microsoft.Scripting.Hosting.Shell.SuperConsole.Cursor._anchorTop">
+            <summary>
+            Beginning position of the cursor - top coordinate.
+            </summary>
+        </member>
+        <member name="F:Microsoft.Scripting.Hosting.Shell.SuperConsole.Cursor._anchorLeft">
+            <summary>
+            Beginning position of the cursor - left coordinate.
+            </summary>
+        </member>
+        <member name="F:Microsoft.Scripting.Hosting.Shell.SuperConsole._input">
+            <summary>
+            The console input buffer.
+            </summary>
+        </member>
+        <member name="F:Microsoft.Scripting.Hosting.Shell.SuperConsole._current">
+            <summary>
+            Current position - index into the input buffer
+            </summary>
+        </member>
+        <member name="F:Microsoft.Scripting.Hosting.Shell.SuperConsole._autoIndentSize">
+            <summary>
+            The number of white-spaces displayed for the auto-indenation of the current line
+            </summary>
+        </member>
+        <member name="F:Microsoft.Scripting.Hosting.Shell.SuperConsole._rendered">
+            <summary>
+            Length of the output currently rendered on screen.
+            </summary>
+        </member>
+        <member name="F:Microsoft.Scripting.Hosting.Shell.SuperConsole._history">
+            <summary>
+            Command history
+            </summary>
+        </member>
+        <member name="F:Microsoft.Scripting.Hosting.Shell.SuperConsole._options">
+            <summary>
+            Tab options available in current context
+            </summary>
+        </member>
+        <member name="F:Microsoft.Scripting.Hosting.Shell.SuperConsole._cursor">
+            <summary>
+            Cursort anchor - position of cursor when the routine was called
+            </summary>
+        </member>
+        <member name="F:Microsoft.Scripting.Hosting.Shell.SuperConsole._commandLine">
+            <summary>
+            The command line that this console is attached to.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Hosting.Shell.SuperConsole.DisplayNextOption(System.ConsoleKeyInfo,System.Boolean)">
+            <summary>
+            Displays the next option in the option list,
+            or beeps if no options available for current input prefix.
+            If no input prefix, simply print tab.
+            </summary>
+            <param name="key"></param>
+            <param name="prefix"></param>
+        </member>
+        <member name="M:Microsoft.Scripting.Hosting.Shell.SuperConsole.OnEnter(System.Boolean)">
+            <summary>
+            Handle the enter key. Adds the current input (if not empty) to the history.
+            </summary>
+            <param name="inputChanged"></param>
+            <returns>The input string.</returns>
+        </member>
+        <member name="P:Microsoft.Scripting.Interpreter.CallInstruction.ArgumentCount">
+            <summary>
+            The number of arguments including "this" for instance methods.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Interpreter.CallInstruction.Create(System.Reflection.MethodInfo)">
+            <exception cref="T:System.Security.SecurityException">Instruction can't be created due to insufficient privileges.</exception>
+        </member>
+        <member name="M:Microsoft.Scripting.Interpreter.CallInstruction.Create(System.Reflection.MethodInfo,System.Reflection.ParameterInfo[])">
+            <exception cref="T:System.Security.SecurityException">Instruction can't be created due to insufficient privileges.</exception>
+        </member>
+        <member name="M:Microsoft.Scripting.Interpreter.CallInstruction.TryGetParameterOrReturnType(System.Reflection.MethodInfo,System.Reflection.ParameterInfo[],System.Int32)">
+            <summary>
+            Gets the next type or null if no more types are available.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Interpreter.CallInstruction.SlowCreate(System.Reflection.MethodInfo,System.Reflection.ParameterInfo[])">
+            <summary>
+            Uses reflection to create new instance of the appropriate ReflectedCaller
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Interpreter.CallInstruction.FastCreate(System.Reflection.MethodInfo,System.Reflection.ParameterInfo[])">
+            <summary>
+            Fast creation works if we have a known primitive types for the entire
+            method siganture.  If we have any non-primitive types then FastCreate
+            falls back to SlowCreate which works for all types.
+            
+            Fast creation is fast because it avoids using reflection (MakeGenericType
+            and Activator.CreateInstance) to create the types.  It does this through
+            calling a series of generic methods picking up each strong type of the
+            signature along the way.  When it runs out of types it news up the 
+            appropriate CallInstruction with the strong-types that have been built up.
+            
+            One relaxation is that for return types which are non-primitive types
+            we can fallback to object due to relaxed delegates.
+            </summary>
+        </member>
+        <member name="T:Microsoft.Scripting.Interpreter.GotoInstruction">
+            <summary>
+            This instruction implements a goto expression that can jump out of any expression. 
+            It pops values (arguments) from the evaluation stack that the expression tree nodes in between 
+            the goto expression and the target label node pushed and not consumed yet. 
+            A goto expression can jump into a node that evaluates arguments only if it carries 
+            a value and jumps right after the first argument (the carried value will be used as the first argument). 
+            Goto can jump into an arbitrary child of a BlockExpression since the block doesn’t accumulate values 
+            on evaluation stack as its child expressions are being evaluated.
+            
+            Goto needs to execute any finally blocks on the way to the target label.
+            <example>
+            { 
+                f(1, 2, try { g(3, 4, try { goto L } finally { ... }, 6) } finally { ... }, 7, 8)
+                L: ... 
+            }
+            </example>
+            The goto expression here jumps to label L while having 4 items on evaluation stack (1, 2, 3 and 4). 
+            The jump needs to execute both finally blocks, the first one on stack level 4 the 
+            second one on stack level 2. So, it needs to jump the first finally block, pop 2 items from the stack, 
+            run second finally block and pop another 2 items from the stack and set instruction pointer to label L.
+            
+            Goto also needs to rethrow ThreadAbortException iff it jumps out of a catch handler and 
+            the current thread is in "abort requested" state.
+            </summary>
+        </member>
+        <member name="T:Microsoft.Scripting.Interpreter.EnterFinallyInstruction">
+            <summary>
+            The first instruction of finally block.
+            </summary>
+        </member>
+        <member name="T:Microsoft.Scripting.Interpreter.LeaveFinallyInstruction">
+            <summary>
+            The last instruction of finally block.
+            </summary>
+        </member>
+        <member name="T:Microsoft.Scripting.Interpreter.LeaveExceptionHandlerInstruction">
+            <summary>
+            The last instruction of a catch exception handler.
+            </summary>
+        </member>
+        <member name="T:Microsoft.Scripting.Interpreter.LeaveFaultInstruction">
+            <summary>
+            The last instruction of a fault exception handler.
+            </summary>
+        </member>
+        <member name="T:Microsoft.Scripting.Interpreter.DynamicSplatInstruction">
+            <summary>
+            Implements dynamic call site with many arguments. Wraps the arguments into <see cref="T:Microsoft.Scripting.Runtime.ArgumentArray"/>.
+            </summary>
+        </member>
+        <member name="T:Microsoft.Scripting.Interpreter.LabelInfo">
+            <summary>
+            Contains compiler state corresponding to a LabelTarget
+            See also LabelScopeInfo.
+            </summary>
+        </member>
+        <member name="P:Microsoft.Scripting.Interpreter.LabelScopeInfo.CanJumpInto">
+            <summary>
+            Returns true if we can jump into this node
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Interpreter.InstructionList.SetDebugCookie(System.Object)">
+            <summary>
+            Attaches a cookie to the last emitted instruction.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Interpreter.InstructionList.CreateDynamicInstruction(System.Type,System.Runtime.CompilerServices.CallSiteBinder)">
+            <exception cref="T:System.Security.SecurityException">Instruction can't be created due to insufficient privileges.</exception>
+        </member>
+        <member name="T:Microsoft.Scripting.Interpreter.LightDelegateCreator">
+            <summary>
+            Manages creation of interpreted delegates. These delegates will get
+            compiled if they are executed often enough.
+            </summary>
+        </member>
+        <member name="P:Microsoft.Scripting.Interpreter.LightDelegateCreator.SameDelegateType">
+            <summary>
+            true if the compiled delegate has the same type as the lambda;
+            false if the type was changed for interpretation.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Interpreter.LightDelegateCreator.CreateCompiledDelegate(System.Runtime.CompilerServices.StrongBox{System.Object}[])">
+            <summary>
+            Used by LightLambda to get the compiled delegate.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Interpreter.LightDelegateCreator.Compile(System.Object)">
+            <summary>
+            Create a compiled delegate for the LightLambda, and saves it so
+            future calls to Run will execute the compiled code instead of
+            interpreting.
+            </summary>
+        </member>
+        <member name="E:Microsoft.Scripting.Interpreter.LightLambda.Compile">
+            <summary>
+            Provides notification that the LightLambda has been compiled.
+            </summary>
+        </member>
+        <member name="T:Microsoft.Scripting.Interpreter.Interpreter">
+            <summary>
+            A simple forth-style stack machine for executing Expression trees
+            without the need to compile to IL and then invoke the JIT.  This trades
+            off much faster compilation time for a slower execution performance.
+            For code that is only run a small number of times this can be a 
+            sweet spot.
+            
+            The core loop in the interpreter is the RunInstructions method.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Interpreter.Interpreter.Run(Microsoft.Scripting.Interpreter.InterpretedFrame)">
+            <summary>
+            Runs instructions within the given frame.
+            </summary>
+            <remarks>
+            Interpreted stack frames are linked via Parent reference so that each CLR frame of this method corresponds 
+            to an interpreted stack frame in the chain. It is therefore possible to combine CLR stack traces with 
+            interpreted stack traces by aligning interpreted frames to the frames of this method.
+            Each group of subsequent frames of Run method corresponds to a single interpreted frame.
+            </remarks>
+        </member>
+        <member name="T:Microsoft.Scripting.Interpreter.LightLambdaClosureVisitor">
+            <summary>
+            Visits a LambdaExpression, replacing the constants with direct accesses
+            to their StrongBox fields. This is very similar to what
+            ExpressionQuoter does for LambdaCompiler.
+            
+            Also inserts debug information tracking similar to what the interpreter
+            would do.
+            </summary>
+        </member>
+        <member name="F:Microsoft.Scripting.Interpreter.LightLambdaClosureVisitor._closureVars">
+            <summary>
+            Local variable mapping.
+            </summary>
+        </member>
+        <member name="F:Microsoft.Scripting.Interpreter.LightLambdaClosureVisitor._closureArray">
+            <summary>
+            The variable that holds onto the StrongBox{object}[] closure from
+            the interpreter
+            </summary>
+        </member>
+        <member name="F:Microsoft.Scripting.Interpreter.LightLambdaClosureVisitor._shadowedVars">
+            <summary>
+            A stack of variables that are defined in nested scopes. We search
+            this first when resolving a variable in case a nested scope shadows
+            one of our variable instances.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Interpreter.LightLambdaClosureVisitor.BindLambda(System.Linq.Expressions.LambdaExpression,System.Collections.Generic.Dictionary{System.Linq.Expressions.ParameterExpression,Microsoft.Scripting.Interpreter.LocalVariable})">
+            <summary>
+            Walks the lambda and produces a higher order function, which can be
+            used to bind the lambda to a closure array from the interpreter.
+            </summary>
+            <param name="lambda">The lambda to bind.</param>
+            <param name="closureVariables">Variables which are being accessed defined in the outer scope.</param>
+            <returns>A delegate that can be called to produce a delegate bound to the passed in closure array.</returns>
+        </member>
+        <member name="T:Microsoft.Scripting.Interpreter.LightLambdaClosureVisitor.MergedRuntimeVariables">
+            <summary>
+            Provides a list of variables, supporing read/write of the values
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Interpreter.LocalVariables.CopyLocals">
+            <summary>
+            Gets a copy of the local variables which are defined in the current scope.
+            </summary>
+            <returns></returns>
+        </member>
+        <member name="M:Microsoft.Scripting.Interpreter.LocalVariables.ContainsVariable(System.Linq.Expressions.ParameterExpression)">
+            <summary>
+            Checks to see if the given variable is defined within the current local scope.
+            </summary>
+        </member>
+        <member name="P:Microsoft.Scripting.Interpreter.LocalVariables.ClosureVariables">
+            <summary>
+            Gets the variables which are defined in an outer scope and available within the current scope.
+            </summary>
+        </member>
+        <member name="T:Microsoft.Scripting.Interpreter.LocalVariables.VariableScope">
+            <summary>
+            Tracks where a variable is defined and what range of instructions it's used in
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Interpreter.InterpretedFrame.GroupStackFrames(System.Collections.Generic.IEnumerable{System.Diagnostics.StackFrame})">
+            <summary>
+            A single interpreted frame might be represented by multiple subsequent Interpreter.Run CLR frames.
+            This method filters out the duplicate CLR frames.
+            </summary>
+        </member>
+        <member name="T:Microsoft.Scripting.Math.BigInteger">
+            <summary>
+            arbitrary precision integers
+            </summary>
+        </member>
+        <member name="P:Microsoft.Scripting.Math.BigInteger.Sign">
+            <summary>
+            Return the sign of this BigInteger: -1, 0, or 1.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Math.BigInteger.Log">
+            <summary>
+            Calculates the natural logarithm of the BigInteger.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Math.BigInteger.Log10">
+            <summary>
+            Calculates log base 10 of a BigInteger.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.Math.BigInteger.ToByteArray">
+            <summary>
+            Return the value of this BigInteger as a little-endian twos-complement
+            byte array, using the fewest number of bytes possible. If the value is zero,
+            return an array of one byte whose element is 0x00.
+            </summary>
+        </member>
+        <member name="T:Microsoft.Scripting.Math.Complex64">
+            <summary>
+            Implementation of the complex number data type.
+            </summary>
+        </member>
+        <member name="T:Microsoft.Scripting.MultiRuntimeAwareAttribute">
+            <summary>
+            marks a field, class, or struct as being safe to have statics which can be accessed
+            from multiple runtimes.
+            
+            Static fields which are not read-only or marked with this attribute will be flagged 
+            by a test which looks for state being shared between runtimes.  Before applying this
+            attribute you should ensure that it is safe to share the state.  This is typically
+            state which is lazy initialized or state which is caching values which are identical
+            in all runtimes and are immutable.
+            </summary>
+        </member>
+        <member name="T:Microsoft.Scripting.PerfTrack">
+            <summary>
+            This class is useful for quickly collecting performance counts for expensive
+            operations.  Usually this means operations involving either reflection or
+            code gen.  Long-term we need to see if this can be plugged better into the
+            standard performance counter architecture.
+            </summary>
+        </member>
+        <member name="F:Microsoft.Scripting.PerfTrack.Categories.Temporary">
+            <summary>
+            temporary categories for quick investigation, use a custom key if you
+            need to track multiple items, and if you want to keep it then create 
+            a new Categories entry and rename all your temporary entries.
+            </summary>
+        </member>
+        <member name="T:Microsoft.Scripting.ICustomScriptCodeData">
+            <summary>
+            Gets custom data to be serialized when saving script codes to disk.
+            </summary>
+        </member>
+        <member name="T:Microsoft.Scripting.SavableScriptCode">
+            <summary>
+            ScriptCode is an instance of compiled code that is bound to a specific LanguageContext
+            but not a specific ScriptScope. The code can be re-executed multiple times in different
+            scopes. Hosting API counterpart for this class is <c>CompiledCode</c>.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.SavableScriptCode.SaveToAssembly(System.String,Microsoft.Scripting.SavableScriptCode[])">
+            <summary>
+            This takes an assembly name including extension and saves the provided ScriptCode objects into the assembly.  
+            
+            The provided script codes can constitute code from multiple languages.  The assemblyName can be either a fully qualified 
+            or a relative path.  The DLR will simply save the assembly to the desired location.  The assembly is created by the DLR and 
+            if a file already exists than an exception is raised.  
+            
+            The DLR determines the internal format of the ScriptCode and the DLR can feel free to rev this as appropriate.  
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.SavableScriptCode.LoadFromAssembly(Microsoft.Scripting.Runtime.ScriptDomainManager,System.Reflection.Assembly)">
+            <summary>
+            This will take an assembly object which the user has loaded and return a new set of ScriptCode’s which have 
+            been loaded into the provided ScriptDomainManager.  
+            
+            If the language associated with the ScriptCode’s has not already been loaded the DLR will load the 
+            LanguageContext into the ScriptDomainManager based upon the saved LanguageContext type.  
+            
+            If the LanguageContext or the version of the DLR the language was compiled against is unavailable a 
+            TypeLoadException will be raised unless policy has been applied by the administrator to redirect bindings.
+            </summary>
+        </member>
+        <member name="T:Microsoft.Scripting.DebugOptions">
+            <summary>
+            This class holds onto internal debugging options used in this assembly. 
+            These options can be set via environment variables DLR_{option-name}.
+            Boolean options map "true" to true and other values to false.
+            
+            These options are for internal debugging only, and should not be
+            exposed through any public APIs.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.MutableTuple.SetNestedValue(System.Int32,System.Int32,System.Object)">
+            <summary>
+            Sets the value at the given index for a tuple of the given size.  This set supports
+            walking through nested tuples to get the correct final index.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.MutableTuple.GetNestedValue(System.Int32,System.Int32)">
+            <summary>
+            Gets the value at the given index for a tuple of the given size.  This get
+            supports walking through nested tuples to get the correct final index.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.MutableTuple.GetTupleType(System.Int32)">
+            <summary>
+            Gets the unbound generic Tuple type which has at lease size slots or null if a large enough tuple is not available.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.MutableTuple.MakeTupleType(System.Type[])">
+            <summary>
+            Creates a generic tuple with the specified types.  
+            
+            If the number of slots fits within the maximum tuple size then we simply 
+            create a single tuple.  If it's greater then we create nested tuples 
+            (e.g. a Tuple`2 which contains a Tuple`128 and a Tuple`8 if we had a size of 136).
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.MutableTuple.GetSize(System.Type)">
+            <summary>
+            Gets the number of usable slots in the provided Tuple type including slots available in nested tuples.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.MutableTuple.MakeTuple(System.Type,System.Object[])">
+            <summary>
+            Creates a new instance of tupleType with the specified args.  If the tuple is a nested
+            tuple the values are added in their nested forms.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.MutableTuple.GetTupleValues(Microsoft.Scripting.MutableTuple)">
+            <summary>
+            Gets the values from a tuple including unpacking nested values.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.MutableTuple.GetAccessPath(System.Type,System.Int32)">
+            <summary>
+            Gets the series of properties that needs to be accessed to access a logical item in a potentially nested tuple.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.MutableTuple.GetAccessProperties(System.Type,System.Int32,System.Int32)">
+            <summary>
+            Gets the series of properties that needs to be accessed to access a logical item in a potentially nested tuple.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Scripting.MutableTuple.Create(System.Linq.Expressions.Expression[])">
+            <summary>
+            Provides an expression for creating a tuple with the specified values.
+            </summary>
+        </member>
+        <member name="T:Microsoft.Scripting.FileStreamContentProvider">
+            <summary>
+            Provides a StreamContentProvider for a stream of content backed by a file on disk.
+            </summary>
+        </member>
+    </members>
+</doc>