Diff of /trunk/cforge/packages/IronPython-2.7.7/Platforms/Net45/Microsoft.Dynamic.xml [000000] .. [r31]  Maximize  Restore

Switch to unified view

a b/trunk/cforge/packages/IronPython-2.7.7/Platforms/Net45/Microsoft.Dynamic.xml
1
<?xml version="1.0"?>
2
<doc>
3
    <assembly>
4
        <name>Microsoft.Dynamic</name>
5
    </assembly>
6
    <members>
7
        <member name="P:Microsoft.Scripting.Actions.Calls.ActualArguments.Count">
8
            <summary>
9
            The number of arguments not counting the collapsed ones.
10
            </summary>
11
        </member>
12
        <member name="P:Microsoft.Scripting.Actions.Calls.ActualArguments.VisibleCount">
13
            <summary>
14
            Gets the total number of visible arguments passed to the call site including collapsed ones.
15
            </summary>
16
        </member>
17
        <member name="M:Microsoft.Scripting.Actions.Calls.ActualArguments.TryBindNamedArguments(Microsoft.Scripting.Actions.Calls.MethodCandidate,Microsoft.Scripting.Actions.Calls.ArgumentBinding@,Microsoft.Scripting.Actions.Calls.CallFailure@)">
18
            <summary>
19
            Binds named arguments to the parameters. Returns a permutation of indices that captures the relationship between 
20
            named arguments and their corresponding parameters. Checks for duplicate and unbound named arguments.
21
            
22
            Ensures that for all i: namedArgs[i] binds to parameters[args.Length + bindingPermutation[i]] 
23
            </summary>
24
        </member>
25
        <member name="T:Microsoft.Scripting.Actions.Calls.ArgBuilder">
26
            <summary>
27
            ArgBuilder provides an argument value used by the MethodBinder.  One ArgBuilder exists for each
28
            physical parameter defined on a method.  
29
            
30
            Contrast this with ParameterWrapper which represents the logical argument passed to the method.
31
            </summary>
32
        </member>
33
        <member name="P:Microsoft.Scripting.Actions.Calls.ArgBuilder.ConsumedArgumentCount">
34
            <summary>
35
            The number of actual arguments consumed by this builder.
36
            </summary>
37
        </member>
38
        <member name="M:Microsoft.Scripting.Actions.Calls.ArgBuilder.ToExpression(Microsoft.Scripting.Actions.Calls.OverloadResolver,Microsoft.Scripting.Actions.Calls.RestrictedArguments,System.Boolean[])">
39
            <summary>
40
            Provides the Expression which provides the value to be passed to the argument.
41
            If <c>null</c> is returned the argument is skipped (not passed to the callee).
42
            </summary>
43
        </member>
44
        <member name="P:Microsoft.Scripting.Actions.Calls.ArgBuilder.Type">
45
            <summary>
46
            Returns the type required for the argument or null if the ArgBuilder
47
            does not consume a type.
48
            </summary>
49
        </member>
50
        <member name="M:Microsoft.Scripting.Actions.Calls.ArgBuilder.UpdateFromReturn(Microsoft.Scripting.Actions.Calls.OverloadResolver,Microsoft.Scripting.Actions.Calls.RestrictedArguments)">
51
            <summary>
52
            Provides an Expression which will update the provided value after a call to the method.  May
53
            return null if no update is required.
54
            </summary>
55
        </member>
56
        <member name="M:Microsoft.Scripting.Actions.Calls.ArgBuilder.ToReturnExpression(Microsoft.Scripting.Actions.Calls.OverloadResolver)">
57
            <summary>
58
            If the argument produces a return value (e.g. a ref or out value) this provides
59
            the additional value to be returned.
60
            </summary>
61
        </member>
62
        <member name="P:Microsoft.Scripting.Actions.Calls.ArgBuilder.ByRefArgument">
63
            <summary>
64
            An assignable value that is passed to a byref parameter
65
            After the call it will contain the updated value
66
            </summary>
67
        </member>
68
        <member name="T:Microsoft.Scripting.Actions.Calls.BindingResult">
69
            <summary>
70
            Indicates the specific type of failure, if any, from binding to a method.
71
            </summary>
72
        </member>
73
        <member name="F:Microsoft.Scripting.Actions.Calls.BindingResult.Success">
74
            <summary>
75
            The binding succeeded.  Only one method was applicable or had the best conversion.  
76
            </summary>
77
        </member>
78
        <member name="F:Microsoft.Scripting.Actions.Calls.BindingResult.AmbiguousMatch">
79
            <summary>
80
            More than one method was applicable for the provided parameters and no method was considered the best.
81
            </summary>
82
        </member>
83
        <member name="F:Microsoft.Scripting.Actions.Calls.BindingResult.IncorrectArgumentCount">
84
            <summary>
85
            There are no overloads that match the number of parameters required for the call
86
            </summary>
87
        </member>
88
        <member name="F:Microsoft.Scripting.Actions.Calls.BindingResult.CallFailure">
89
            <summary>
90
            None of the target method(s) can successfully be called.  The failure can be due to:
91
                1. Arguments could not be successfully converted for the call
92
                2. Keyword arguments could not be assigned to positional arguments
93
                3. Keyword arguments could be assigned but would result in an argument being assigned 
94
                   multiple times (keyword and positional arguments conflit or dupliate keyword arguments).
95
            </summary>
96
        </member>
97
        <member name="F:Microsoft.Scripting.Actions.Calls.BindingResult.InvalidArguments">
98
            <summary>
99
            Actual arguments cannot be constructed.
100
            </summary>
101
        </member>
102
        <member name="F:Microsoft.Scripting.Actions.Calls.BindingResult.NoCallableMethod">
103
            <summary>
104
            No method is callable. For example, all methods have an unbound generic parameter.
105
            </summary>
106
        </member>
107
        <member name="T:Microsoft.Scripting.Actions.Calls.BindingTarget">
108
            <summary>
109
            Encapsulates the result of an attempt to bind to one or methods using the OverloadResolver.
110
            
111
            Users should first check the Result property to see if the binding was successful or
112
            to determine the specific type of failure that occured.  If the binding was successful
113
            MakeExpression can then be called to create an expression which calls the method.
114
            If the binding was a failure callers can then create a custom error message based upon
115
            the reason the call failed.
116
            </summary>
117
        </member>
118
        <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)">
119
            <summary>
120
            Creates a new BindingTarget when the method binding has succeeded.
121
            </summary>
122
        </member>
123
        <member name="M:Microsoft.Scripting.Actions.Calls.BindingTarget.#ctor(System.String,System.Int32,System.Int32[])">
124
            <summary>
125
            Creates a new BindingTarget when the method binding has failed due to an incorrect argument count
126
            </summary>
127
        </member>
128
        <member name="M:Microsoft.Scripting.Actions.Calls.BindingTarget.#ctor(System.String,System.Int32,Microsoft.Scripting.Actions.Calls.CallFailure[])">
129
            <summary>
130
            Creates a new BindingTarget when the method binding has failued due to 
131
            one or more parameters which could not be converted.
132
            </summary>
133
        </member>
134
        <member name="M:Microsoft.Scripting.Actions.Calls.BindingTarget.#ctor(System.String,System.Int32,Microsoft.Scripting.Actions.Calls.MethodCandidate[])">
135
            <summary>
136
            Creates a new BindingTarget when the match was ambiguous
137
            </summary>
138
        </member>
139
        <member name="M:Microsoft.Scripting.Actions.Calls.BindingTarget.#ctor(System.String,Microsoft.Scripting.Actions.Calls.BindingResult)">
140
            <summary>
141
            Other failure.
142
            </summary>
143
        </member>
144
        <member name="P:Microsoft.Scripting.Actions.Calls.BindingTarget.Result">
145
            <summary>
146
            Gets the result of the attempt to bind.
147
            </summary>
148
        </member>
149
        <member name="M:Microsoft.Scripting.Actions.Calls.BindingTarget.MakeExpression">
150
            <summary>
151
            Gets an Expression which calls the binding target if the method binding succeeded.
152
            
153
            Throws InvalidOperationException if the binding failed.
154
            </summary>
155
        </member>
156
        <member name="P:Microsoft.Scripting.Actions.Calls.BindingTarget.Method">
157
            <summary>
158
            Returns the method if the binding succeeded, or null if no method was applicable.
159
            </summary>
160
        </member>
161
        <member name="P:Microsoft.Scripting.Actions.Calls.BindingTarget.Overload">
162
            <summary>
163
            Returns the selected overload if the binding succeeded, or null if no one was applicable.
164
            </summary>
165
        </member>
166
        <member name="P:Microsoft.Scripting.Actions.Calls.BindingTarget.Name">
167
            <summary>
168
            Gets the name of the method as supplied to the OverloadResolver.
169
            </summary>
170
        </member>
171
        <member name="P:Microsoft.Scripting.Actions.Calls.BindingTarget.MethodCandidate">
172
            <summary>
173
            Returns the MethodTarget if the binding succeeded, or null if no method was applicable.
174
            </summary>
175
        </member>
176
        <member name="P:Microsoft.Scripting.Actions.Calls.BindingTarget.AmbiguousMatches">
177
            <summary>
178
            Returns the methods which don't have any matches or null if Result == BindingResult.AmbiguousMatch
179
            </summary>
180
        </member>
181
        <member name="P:Microsoft.Scripting.Actions.Calls.BindingTarget.CallFailures">
182
            <summary>
183
            Returns the methods and their associated conversion failures if Result == BindingResult.CallFailure.
184
            </summary>
185
        </member>
186
        <member name="P:Microsoft.Scripting.Actions.Calls.BindingTarget.ExpectedArgumentCount">
187
            <summary>
188
            Returns the acceptable number of arguments which can be passed to the method if Result == BindingResult.IncorrectArgumentCount.
189
            </summary>
190
        </member>
191
        <member name="P:Microsoft.Scripting.Actions.Calls.BindingTarget.ActualArgumentCount">
192
            <summary>
193
            Returns the total number of arguments provided to the call. 0 if the call succeeded or failed for a reason other
194
            than argument count mismatch.
195
            </summary>
196
        </member>
197
        <member name="P:Microsoft.Scripting.Actions.Calls.BindingTarget.RestrictedArguments">
198
            <summary>
199
            Gets the MetaObjects which we originally did binding against in their restricted form.
200
            
201
            The members of the array correspond to each of the arguments.  All members of the array
202
            have a value.
203
            </summary>
204
        </member>
205
        <member name="P:Microsoft.Scripting.Actions.Calls.BindingTarget.ReturnType">
206
            <summary>
207
            Returns the return type of the binding, or null if no method was applicable.
208
            </summary>
209
        </member>
210
        <member name="P:Microsoft.Scripting.Actions.Calls.BindingTarget.NarrowingLevel">
211
            <summary>
212
            Returns the NarrowingLevel of the method if the call succeeded.  If the call
213
            failed returns NarrowingLevel.None.
214
            </summary>
215
        </member>
216
        <member name="P:Microsoft.Scripting.Actions.Calls.BindingTarget.Success">
217
            <summary>
218
            Returns true if the binding was succesful, false if it failed.
219
            
220
            This is an alias for BindingTarget.Result == BindingResult.Success.
221
            </summary>
222
        </member>
223
        <member name="T:Microsoft.Scripting.Actions.Calls.CallFailure">
224
            <summary>
225
            Represents the reason why a call to a specific method could not be performed by the OverloadResolver.
226
            
227
            The reason for the failure is specified by the CallFailureReason property.  Once this property
228
            has been consulted the other properties can be consulted for more detailed information regarding
229
            the failure.
230
            
231
            If reason is ConversionFailure the ConversionResults property will be non-null.
232
            If reason is UnassignableKeyword the KeywordArguments property will be non-null and include
233
                the keywords which could not be assigned.
234
            If reason is DuplicateKeyword the KeywordArguments property will be non-null and include
235
                the keywords which were duplicated (either by the keywords themselves or by positional
236
                arguments).
237
                
238
            MethodTarget is always set and indicates the method which failed to bind.
239
            </summary>
240
        </member>
241
        <member name="P:Microsoft.Scripting.Actions.Calls.CallFailure.Candidate">
242
            <summary>
243
            Gets the MethodTarget which the call failed for.
244
            </summary>
245
        </member>
246
        <member name="P:Microsoft.Scripting.Actions.Calls.CallFailure.Reason">
247
            <summary>
248
            Gets the reason for the call failure which determines the other 
249
            properties of the CallFailure which should be consulted.
250
            </summary>
251
        </member>
252
        <member name="P:Microsoft.Scripting.Actions.Calls.CallFailure.ConversionResults">
253
            <summary>
254
            Gets a list of ConversionResult's for each parameter indicating
255
            whether the conversion was successful or failed and the types
256
            being converted.
257
            </summary>
258
        </member>
259
        <member name="P:Microsoft.Scripting.Actions.Calls.CallFailure.KeywordArguments">
260
            <summary>
261
            Gets the list of keyword arguments that were either dupliated or
262
            unassignable.
263
            </summary>
264
        </member>
265
        <member name="F:Microsoft.Scripting.Actions.Calls.CallFailureReason.None">
266
            <summary>
267
            Default value, their was no CallFailure.
268
            </summary>
269
        </member>
270
        <member name="F:Microsoft.Scripting.Actions.Calls.CallFailureReason.ConversionFailure">
271
            <summary>
272
            One of more parameters failed to be converted
273
            </summary>
274
        </member>
275
        <member name="F:Microsoft.Scripting.Actions.Calls.CallFailureReason.UnassignableKeyword">
276
            <summary>
277
            One or more keyword arguments could not be successfully assigned to a positional argument
278
            </summary>
279
        </member>
280
        <member name="F:Microsoft.Scripting.Actions.Calls.CallFailureReason.DuplicateKeyword">
281
            <summary>
282
            One or more keyword arguments were duplicated or would have taken the spot of a 
283
            provided positional argument.
284
            </summary>
285
        </member>
286
        <member name="F:Microsoft.Scripting.Actions.Calls.CallFailureReason.TypeInference">
287
            <summary>
288
            Type arguments could not be inferred
289
            </summary>
290
        </member>
291
        <member name="T:Microsoft.Scripting.Actions.Calls.CandidateSet">
292
            <summary>
293
            Represents a collection of MethodCandidate's which all accept the
294
            same number of logical parameters.  For example a params method
295
            and a method with 3 parameters would both be a CandidateSet for 3 parameters.
296
            </summary>
297
        </member>
298
        <member name="T:Microsoft.Scripting.Actions.Calls.ConversionResult">
299
            <summary>
300
            Represents information about a failure to convert an argument from one
301
            type to another.
302
            </summary>
303
        </member>
304
        <member name="P:Microsoft.Scripting.Actions.Calls.ConversionResult.Arg">
305
            <summary>
306
            Value of the argument or null if it is not available.
307
            </summary>
308
        </member>
309
        <member name="P:Microsoft.Scripting.Actions.Calls.ConversionResult.ArgType">
310
            <summary>
311
            Argument actual type or its limit type if the value not known.
312
            DynamicNull if the argument value is null.
313
            </summary>
314
        </member>
315
        <member name="T:Microsoft.Scripting.Actions.Calls.DefaultArgBuilder">
316
            <summary>
317
            ArgBuilder which provides a default parameter value for a method call.
318
            </summary>
319
        </member>
320
        <member name="P:Microsoft.Scripting.Actions.Calls.InstanceBuilder.ConsumedArgumentCount">
321
            <summary>
322
            The number of actual arguments consumed by this builder.
323
            </summary>
324
        </member>
325
        <member name="T:Microsoft.Scripting.Actions.Calls.KeywordArgBuilder">
326
            <summary>
327
            ArgBuilder which provides a value for a keyword argument.  
328
            
329
            The KeywordArgBuilder calculates its position at emit time using it's initial 
330
            offset within the keyword arguments, the number of keyword arguments, and the 
331
            total number of arguments provided by the user.  It then delegates to an 
332
            underlying ArgBuilder which only receives the single correct argument.
333
            
334
            Delaying the calculation of the position to emit time allows the method binding to be 
335
            done without knowing the exact the number of arguments provided by the user. Hence,
336
            the method binder can be dependent only on the set of method overloads and keyword names,
337
            but not the user arguments. While the number of user arguments could be determined
338
            upfront, the current MethodBinder does not have this design.
339
            </summary>
340
        </member>
341
        <member name="M:Microsoft.Scripting.Actions.Calls.KeywordArgBuilder.BuilderExpectsSingleParameter(Microsoft.Scripting.Actions.Calls.ArgBuilder)">
342
            <summary>
343
            The underlying builder should expect a single parameter as KeywordArgBuilder is responsible
344
            for calculating the correct parameter to use
345
            </summary>
346
            <param name="builder"></param>
347
        </member>
348
        <member name="T:Microsoft.Scripting.Actions.Calls.KeywordConstructorReturnBuilder">
349
            <summary>
350
            Updates fields/properties of the returned value with unused keyword parameters.
351
            </summary>
352
        </member>
353
        <member name="T:Microsoft.Scripting.Actions.Calls.MethodCandidate">
354
             <summary>
355
             MethodCandidate represents the different possible ways of calling a method or a set of method overloads.
356
             A single method can result in multiple MethodCandidates. Some reasons include:
357
             - Every optional parameter or parameter with a default value will result in a candidate
358
             - The presence of ref and out parameters will add a candidate for languages which want to return the updated values as return values.
359
             - ArgumentKind.List and ArgumentKind.Dictionary can result in a new candidate per invocation since the list might be different every time.
360
            
361
             Each MethodCandidate represents the parameter type for the candidate using ParameterWrapper.
362
             </summary>
363
        </member>
364
        <member name="M:Microsoft.Scripting.Actions.Calls.MethodCandidate.MakeParamsExtended(System.Int32,System.Collections.Generic.IList{System.String})">
365
            <summary>
366
            Builds a new MethodCandidate which takes count arguments and the provided list of keyword arguments.
367
            
368
            The basic idea here is to figure out which parameters map to params or a dictionary params and
369
            fill in those spots w/ extra ParameterWrapper's.  
370
            </summary>
371
        </member>
372
        <member name="T:Microsoft.Scripting.Actions.Calls.NarrowingLevel">
373
            <summary>
374
            Narrowing conversions are conversions that cannot be proved to always succeed, conversions that are 
375
            known to possibly lose information, and conversions across domains of types sufficiently different 
376
            to merit narrowing notation like casts. 
377
            
378
            Its upto every language to define the levels for conversions. The narrowling levels can be used by
379
            for method overload resolution, where the overload is based on the parameter types (and not the number 
380
            of parameters).
381
            </summary>
382
        </member>
383
        <member name="F:Microsoft.Scripting.Actions.Calls.NarrowingLevel.None">
384
            <summary>
385
            Conversions at this level do not do any narrowing. Typically, this will include
386
            implicit numeric conversions, Type.IsAssignableFrom, StringBuilder to string, etc.
387
            </summary>
388
        </member>
389
        <member name="F:Microsoft.Scripting.Actions.Calls.NarrowingLevel.One">
390
            <summary>
391
            Language defined prefered narrowing conversion.  First level that introduces narrowing
392
            conversions.
393
            </summary>
394
        </member>
395
        <member name="F:Microsoft.Scripting.Actions.Calls.NarrowingLevel.Two">
396
            <summary>
397
            Language defined preferred narrowing conversion.  Second level that introduces narrowing
398
            conversions and should have more conversions than One.
399
            </summary>
400
        </member>
401
        <member name="F:Microsoft.Scripting.Actions.Calls.NarrowingLevel.Three">
402
            <summary>
403
            Language defined preferred narrowing conversion.  Third level that introduces narrowing
404
            conversions and should have more conversions that Two.
405
            </summary>
406
        </member>
407
        <member name="F:Microsoft.Scripting.Actions.Calls.NarrowingLevel.All">
408
            <summary>
409
            A somewhat meaningful conversion is possible, but it will quite likely be lossy.
410
            For eg. BigInteger to an Int32, Boolean to Int32, one-char string to a char,
411
            larger number type to a smaller numeric type (where there is no overflow), etc
412
            </summary>
413
        </member>
414
        <member name="T:Microsoft.Scripting.Actions.Calls.OutArgBuilder">
415
            <summary>
416
            Builds the argument for an out argument when not passed a StrongBox.  The out parameter
417
            is returned as an additional return value.
418
            </summary>
419
        </member>
420
        <member name="T:Microsoft.Scripting.Actions.Calls.OverloadInfo">
421
            <summary>
422
            Defines a method overload abstraction for the purpose of overload resolution. 
423
            It provides the overload resolver the metadata it needs to perform the resolution.
424
            </summary>
425
            <remarks>
426
            WARNING: This is a temporary API that will undergo breaking changes in future versions.
427
            </remarks>
428
        </member>
429
        <member name="P:Microsoft.Scripting.Actions.Calls.OverloadInfo.ReturnParameter">
430
            <summary>
431
            Null for constructors.
432
            </summary>
433
        </member>
434
        <member name="P:Microsoft.Scripting.Actions.Calls.OverloadInfo.IsVariadic">
435
            <summary>
436
            The method arity can vary, i.e. the method has params array or params dict parameters.
437
            </summary>
438
        </member>
439
        <member name="T:Microsoft.Scripting.Actions.Calls.ReflectionOverloadInfo">
440
            <summary>
441
            Represents a method overload that is bound to a <see cref="T:System.Reflection.MethodBase"/>.
442
            </summary>
443
            <remarks>
444
            Not thread safe.
445
            WARNING: This is a temporary API that will undergo breaking changes in future versions. 
446
            </remarks>
447
        </member>
448
        <member name="T:Microsoft.Scripting.Actions.Calls.OverloadResolver">
449
            <summary>
450
            Provides binding and overload resolution to .NET methods.
451
            
452
            MethodBinder's can be used for:
453
                generating new AST code for calling a method 
454
                calling a method via reflection at runtime
455
                (not implemented) performing an abstract call
456
                
457
            MethodBinder's support default arguments, optional arguments, by-ref (in and out), and keyword arguments.
458
            
459
            Implementation Details:
460
            
461
            The MethodBinder works by building up a CandidateSet for each number of effective arguments that can be
462
            passed to a set of overloads.  For example a set of overloads such as:
463
                foo(object a, object b, object c)
464
                foo(int a, int b)
465
                
466
            would have 2 target sets - one for 3 parameters and one for 2 parameters.  For parameter arrays
467
            we fallback and create the appropriately sized CandidateSet on demand.
468
            
469
            Each CandidateSet consists of a set of MethodCandidate's.  Each MethodCandidate knows the flattened
470
            parameters that could be received.  For example for a function such as:
471
                foo(params int[] args)
472
                
473
            When this method is in a CandidateSet of size 3 the MethodCandidate takes 3 parameters - all of them
474
            ints; if it's in a CandidateSet of size 4 it takes 4 parameters.  Effectively a MethodCandidate is 
475
            a simplified view that allows all arguments to be treated as required positional arguments.
476
            
477
            Each MethodCandidate in turn refers to a MethodTarget.  The MethodTarget is composed of a set
478
            of ArgBuilder's and a ReturnBuilder which know how to consume the positional arguments and pass
479
            them to the appropriate argument of the destination method.  This includes routing keyword
480
            arguments to the correct position, providing the default values for optional arguments, etc...
481
            
482
            After binding is finished the MethodCandidates are thrown away and a BindingTarget is returned. 
483
            The BindingTarget indicates whether the binding was successful and if not any additional information
484
            that should be reported to the user about the failed binding.  It also exposes the MethodTarget which
485
            allows consumers to get the flattened list of required parameters for the call.  MethodCandidates
486
            are not exposed and are an internal implementation detail of the MethodBinder.
487
            </summary>
488
        </member>
489
        <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)">
490
            <summary>
491
            Resolves a method overload and returns back a BindingTarget.
492
            
493
            The BindingTarget can then be tested for the success or particular type of
494
            failure that prevents the method from being called. If successfully bound the BindingTarget
495
            contains a list of argument meta-objects with additional restrictions that ensure the selection
496
            of the particular overload.
497
            </summary>
498
        </member>
499
        <member name="M:Microsoft.Scripting.Actions.Calls.OverloadResolver.AllowMemberInitialization(Microsoft.Scripting.Actions.Calls.OverloadInfo)">
500
            <summary>
501
            Checks to see if the language allows named arguments to be bound to instance fields or
502
            properties and turned into setters. By default this is only allowed on contructors.
503
            </summary>
504
        </member>
505
        <member name="M:Microsoft.Scripting.Actions.Calls.OverloadResolver.GetByRefArrayExpression(System.Linq.Expressions.Expression)">
506
            <summary>
507
            Gets an expression that evaluates to the result of GetByRefArray operation.
508
            </summary>
509
        </member>
510
        <member name="M:Microsoft.Scripting.Actions.Calls.OverloadResolver.BindToUnexpandedParams(Microsoft.Scripting.Actions.Calls.MethodCandidate)">
511
            <summary>
512
            Allow to bind an array/dictionary instance or a null reference to params array/dictionary parameter.
513
            </summary>
514
        </member>
515
        <member name="M:Microsoft.Scripting.Actions.Calls.OverloadResolver.MapSpecialParameters(Microsoft.Scripting.Actions.Calls.ParameterMapping)">
516
            <summary>
517
            Called before arguments binding.
518
            </summary>
519
            <returns>
520
            A bitmask that indicates (set bits) the parameters that were mapped by this method.
521
            A default mapping will be constructed for the remaining parameters (cleared bits).
522
            </returns>
523
        </member>
524
        <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)">
525
            <summary>
526
            Return null if arguments cannot be constructed and overload resolution should produce an error.
527
            </summary>
528
        </member>
529
        <member name="M:Microsoft.Scripting.Actions.Calls.OverloadResolver.IsOverloadedOnParameter(System.Int32,System.Int32,System.Collections.Generic.IList{Microsoft.Scripting.Actions.Calls.ApplicableCandidate})">
530
            <summary>
531
            Determines whether given overloads are overloaded on index-th parameter (the types of the index-th parameters are the same).
532
            </summary>
533
        </member>
534
        <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)">
535
            <summary>
536
            Selects the best (of two) candidates for conversion from actualType
537
            </summary>
538
        </member>
539
        <member name="M:Microsoft.Scripting.Actions.Calls.OverloadResolver.PreferConvert(System.Type,System.Type)">
540
            <summary>
541
            Provides ordering for two parameter types if there is no conversion between the two parameter types.
542
            </summary>
543
        </member>
544
        <member name="M:Microsoft.Scripting.Actions.Calls.OverloadResolver.GetSplattedItemExpression(System.Linq.Expressions.Expression)">
545
            <summary>
546
            The method is called each time an item of lazily splatted argument is needed.
547
            </summary>
548
        </member>
549
        <member name="M:Microsoft.Scripting.Actions.Calls.ParameterMapping.MapParameterReduceByRef(System.Reflection.ParameterInfo)">
550
            <summary>
551
            Maps out parameters to return args and ref parameters to ones that don't accept StrongBox.
552
            </summary>
553
        </member>
554
        <member name="T:Microsoft.Scripting.Actions.Calls.ParameterWrapper">
555
            <summary>
556
            ParameterWrapper represents the logical view of a parameter. For eg. the byref-reduced signature
557
            of a method with byref parameters will be represented using a ParameterWrapper of the underlying
558
            element type, since the logical view of the byref-reduced signature is that the argument will be
559
            passed by value (and the updated value is included in the return value).
560
            
561
            Contrast this with ArgBuilder which represents the real physical argument passed to the method.
562
            </summary>
563
        </member>
564
        <member name="M:Microsoft.Scripting.Actions.Calls.ParameterWrapper.#ctor(System.Type,System.String,System.Boolean)">
565
            <summary>
566
            ParameterInfo is not available.
567
            </summary>
568
        </member>
569
        <member name="P:Microsoft.Scripting.Actions.Calls.ParameterWrapper.IsParamsArray">
570
            <summary>
571
            True if the wrapper represents a params-array parameter (false for parameters created by expansion of a params-array).
572
            </summary>
573
        </member>
574
        <member name="P:Microsoft.Scripting.Actions.Calls.ParameterWrapper.IsParamsDict">
575
            <summary>
576
            True if the wrapper represents a params-dict parameter (false for parameters created by expansion of a params-dict).
577
            </summary>
578
        </member>
579
        <member name="M:Microsoft.Scripting.Actions.Calls.ParameterWrapper.Expand">
580
            <summary>
581
            Creates a parameter that represents an expanded item of params-array.
582
            </summary>
583
        </member>
584
        <member name="T:Microsoft.Scripting.Actions.Calls.ParamsDictArgBuilder">
585
            <summary>
586
            Builds the parameter for a params dictionary argument - this collects all the extra name/value
587
            pairs provided to the function into a SymbolDictionary which is passed to the function.
588
            </summary>
589
        </member>
590
        <member name="T:Microsoft.Scripting.Actions.Calls.ReferenceArgBuilder">
591
            <summary>
592
            An argument that the user wants to explicitly pass by-reference (with copy-in copy-out semantics).
593
            The user passes a StrongBox[T] object whose value will get updated when the call returns.
594
            </summary>
595
        </member>
596
        <member name="P:Microsoft.Scripting.Actions.Calls.RestrictedArguments.HasUntypedRestrictions">
597
            <summary>
598
            True if there are restrictions beyond just simple type restrictions
599
            </summary>
600
        </member>
601
        <member name="M:Microsoft.Scripting.Actions.Calls.ReturnBuilder.#ctor(System.Type)">
602
            <summary>
603
            Creates a ReturnBuilder
604
            </summary>
605
            <param name="returnType">the type the ReturnBuilder will leave on the stack</param>
606
        </member>
607
        <member name="T:Microsoft.Scripting.Actions.Calls.ReturnReferenceArgBuilder">
608
            <summary>
609
            Builds a parameter for a reference argument when a StrongBox has not been provided.  The
610
            updated return value is returned as one of the resulting return values.
611
            </summary>
612
        </member>
613
        <member name="T:Microsoft.Scripting.Actions.Calls.SimpleArgBuilder">
614
            <summary>
615
            SimpleArgBuilder produces the value produced by the user as the argument value.  It
616
            also tracks information about the original parameter and is used to create extended
617
            methods for params arrays and param dictionary functions.
618
            </summary>
619
        </member>
620
        <member name="M:Microsoft.Scripting.Actions.Calls.SimpleArgBuilder.#ctor(System.Type,System.Int32,System.Boolean,System.Boolean)">
621
            <summary>
622
            Parameter info is not available for this argument.
623
            </summary>
624
        </member>
625
        <member name="M:Microsoft.Scripting.Actions.Calls.SimpleArgBuilder.#ctor(System.Reflection.ParameterInfo,System.Int32)">
626
            <summary>
627
            Type and whether the parameter is a params-array or params-dictionary is derived from info.
628
            </summary>
629
        </member>
630
        <member name="M:Microsoft.Scripting.Actions.Calls.TypeInferer.GetGenericArgumentsForInferedMethod(Microsoft.Scripting.Actions.Calls.OverloadInfo,System.Collections.Generic.Dictionary{System.Type,System.Type})">
631
            <summary>
632
            Gets the generic arguments for method based upon the constraints discovered during
633
            type inference.  Returns null if not all generic arguments had their types inferred.
634
            </summary>
635
        </member>
636
        <member name="M:Microsoft.Scripting.Actions.Calls.TypeInferer.CreateNewArgBuilders(Microsoft.Scripting.Actions.Calls.MethodCandidate,Microsoft.Scripting.Actions.Calls.OverloadInfo)">
637
            <summary>
638
            Creates a new set of arg builders for the given generic method definition which target the new
639
            parameters.
640
            </summary>
641
        </member>
642
        <member name="M:Microsoft.Scripting.Actions.Calls.TypeInferer.CreateNewWrappers(Microsoft.Scripting.Actions.Calls.MethodCandidate,Microsoft.Scripting.Actions.Calls.OverloadInfo,Microsoft.Scripting.Actions.Calls.OverloadInfo)">
643
            <summary>
644
            Creates a new list of ParameterWrappers for the generic method replacing the old parameters with the new ones.
645
            </summary>
646
        </member>
647
        <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}})">
648
            <summary>
649
            Gets the generic type arguments sorted so that the type arguments
650
            that are depended upon by other type arguments are sorted before
651
            their dependencies.
652
            </summary>
653
        </member>
654
        <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)">
655
            <summary>
656
            Checks to see if the x type parameter is dependent upon the y type parameter.
657
            </summary>
658
        </member>
659
        <member name="M:Microsoft.Scripting.Actions.Calls.TypeInferer.GetDependencyMapping(Microsoft.Scripting.Actions.Calls.OverloadInfo)">
660
            <summary>
661
            Builds a mapping based upon generic parameter constraints between related generic
662
            parameters.  This is then used to sort the generic parameters so that we can process
663
            the least dependent parameters first.  For example given the method:
664
            
665
            void Foo{T0, T1}(T0 x, T1 y) where T0 : T1 
666
            
667
            We need to first infer the type information for T1 before we infer the type information
668
            for T0 so that we can ensure the constraints are correct.
669
            </summary>
670
        </member>
671
        <member name="M:Microsoft.Scripting.Actions.Calls.TypeInferer.GetArgumentToInputMapping(Microsoft.Scripting.Actions.Calls.MethodCandidate,System.Collections.Generic.IList{System.Dynamic.DynamicMetaObject})">
672
            <summary>
673
            Returns a mapping from generic type parameter to the input DMOs which map to it.
674
            </summary>
675
        </member>
676
        <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)">
677
            <summary>
678
            Adds any additional ArgumentInputs entries for the given object and parameter type.
679
            </summary>
680
        </member>
681
        <member name="M:Microsoft.Scripting.Actions.Calls.TypeInferer.CollectGenericParameters(System.Type,System.Collections.Generic.List{System.Type})">
682
            <summary>
683
            Walks the nested generic hierarchy to construct all of the generic parameters referred
684
            to by this type.  For example if getting the generic parameters for the x parameter on
685
            the method:
686
            
687
            void Foo{T0, T1}(Dictionary{T0, T1} x);
688
            
689
            We would add both typeof(T0) and typeof(T1) to the list of generic arguments.
690
            </summary>
691
        </member>
692
        <member name="T:Microsoft.Scripting.Actions.Calls.TypeInferer.ArgumentInputs">
693
            <summary>
694
            Maps a single type parameter to the possible parameters and DynamicMetaObjects
695
            we can get inference from.  For example for the signature:
696
            
697
            void Foo{T0, T1}(T0 x, T1 y, IList{T1} z);
698
            
699
            We would have one ArgumentInput for T0 which holds onto the DMO providing the argument
700
            value for x.  We would also have one ArgumentInput for T1 which holds onto the 2 DMOs
701
            for y and z.  Associated with y would be a GenericParameterInferer and associated with
702
            z would be a ConstructedParameterInferer.
703
            </summary>
704
        </member>
705
        <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})">
706
            <summary>
707
            Provides generic type inference for a single parameter.
708
            </summary>
709
            <remarks>
710
            For example: 
711
              M{T}(T x)
712
              M{T}(IList{T} x)
713
              M{T}(ref T x)
714
              M{T}(T[] x)
715
              M{T}(ref Dictionary{T,T}[] x)
716
            </remarks>
717
        </member>
718
        <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})">
719
            <summary>
720
            Provides generic type inference for a single parameter.
721
            </summary>
722
            <remarks>
723
            For example: 
724
              M{T}(T x)
725
              M{T}(IList{T} x)
726
              M{T}(ref T x)
727
              M{T}(T[] x)
728
              M{T}(ref Dictionary{T,T}[] x)
729
            </remarks>
730
        </member>
731
        <member name="M:Microsoft.Scripting.Actions.Calls.TypeInferer.ConstraintsViolated(System.Type,System.Type,System.Collections.Generic.Dictionary{System.Type,System.Type})">
732
            <summary>
733
            Checks if the constraints are violated by the given input for the specified generic method parameter.
734
            
735
            This method must be supplied with a mapping for any dependent generic method type parameters which
736
            this one can be constrained to.  For example for the signature "void Foo{T0, T1}(T0 x, T1 y) where T0 : T1".
737
            we cannot know if the constraints are violated unless we know what we have calculated T1 to be.
738
            </summary>
739
        </member>
740
        <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@)">
741
            <summary>
742
            Finds all occurences of <c>genericParameter</c> in <c>openType</c> and the corresponding concrete types in <c>closedType</c>.
743
            Returns true iff all occurences of the generic parameter in the open type correspond to the same concrete type in the closed type 
744
            and this type satisfies given <c>constraints</c>. Returns the concrete type in <c>match</c> if so.
745
            </summary>
746
        </member>
747
        <member name="T:Microsoft.Scripting.Actions.Calls.IInferableInvokable">
748
            <summary>
749
            Implemented by DynamicMetaObject subclasses when the associated object
750
            can participate in generic method type inference.  This interface
751
            is used when the inference engine is attempting to perform type inference
752
            for a parameter which is typed to a delegate type.
753
            </summary>
754
        </member>
755
        <member name="M:Microsoft.Scripting.Actions.Calls.IInferableInvokable.GetInferredType(System.Type,System.Type)">
756
            <summary>
757
            Returns the type inferred for parameterType when performing
758
            inference for a conversion to delegateType.
759
            </summary>
760
        </member>
761
        <member name="T:Microsoft.Scripting.Actions.Calls.InferenceResult">
762
            <summary>
763
            Provides information about the result of a custom object which dynamically
764
            infers back types.
765
            
766
            Currently only used for invokable objects to feedback the types for a delegate
767
            type.
768
            </summary>
769
        </member>
770
        <member name="T:Microsoft.Scripting.Actions.ConversionResultKind">
771
            <summary>
772
            Determines the result of a conversion action.  The result can either result in an exception, a value that
773
            has been successfully converted or default(T), or a true/false result indicating if the value can be converted.
774
            </summary>
775
        </member>
776
        <member name="F:Microsoft.Scripting.Actions.ConversionResultKind.ImplicitCast">
777
            <summary>
778
            Attempts to perform available implicit conversions and throws if there are no available conversions.
779
            </summary>
780
        </member>
781
        <member name="F:Microsoft.Scripting.Actions.ConversionResultKind.ExplicitCast">
782
            <summary>
783
            Attempst to perform available implicit and explicit conversions and throws if there are no available conversions.
784
            </summary>
785
        </member>
786
        <member name="F:Microsoft.Scripting.Actions.ConversionResultKind.ImplicitTry">
787
            <summary>
788
            Attempts to perform available implicit conversions and returns default(ReturnType) if no conversions can be performed.
789
            
790
            If the return type of the rule is a value type then the return value will be zero-initialized.  If the return type
791
            of the rule is object or another class then the return type will be null (even if the conversion is to a value type).
792
            This enables ImplicitTry to be used to do TryConvertTo even if the type is value type (and the difference between
793
            null and a real value can be distinguished).
794
            </summary>
795
        </member>
796
        <member name="F:Microsoft.Scripting.Actions.ConversionResultKind.ExplicitTry">
797
            <summary>
798
            Attempts to perform available implicit and explicit conversions and returns default(ReturnType) if no conversions 
799
            can be performed.
800
            
801
            If the return type of the rule is a value type then the return value will be zero-initialized.  If the return type
802
            of the rule is object or another class then the return type will be null (even if the conversion is to a value type).
803
            This enables ExplicitTry to be used to do TryConvertTo even if the type is value type (and the difference between
804
            null and a real value can be distinguished).
805
            </summary>
806
        </member>
807
        <member name="T:Microsoft.Scripting.Actions.DefaultBinder">
808
            <summary>
809
            Provides binding semantics for a language.  This include conversions as well as support
810
            for producing rules for actions.  These optimized rules are used for calling methods, 
811
            performing operators, and getting members using the ActionBinder's conversion semantics.
812
            </summary>
813
        </member>
814
        <member name="M:Microsoft.Scripting.Actions.DefaultBinder.GetIndex(Microsoft.Scripting.Actions.Calls.OverloadResolverFactory,System.Dynamic.DynamicMetaObject[])">
815
            <summary>
816
            Creates the MetaObject for indexing directly into arrays or indexing into objects which have
817
            default members.  Returns null if we're not an indexing operation.
818
            </summary>
819
        </member>
820
        <member name="M:Microsoft.Scripting.Actions.DefaultBinder.SetIndex(Microsoft.Scripting.Actions.Calls.OverloadResolverFactory,System.Dynamic.DynamicMetaObject[])">
821
            <summary>
822
            Creates the MetaObject for indexing directly into arrays or indexing into objects which have
823
            default members.  Returns null if we're not an indexing operation.
824
            </summary>
825
        </member>
826
        <member name="M:Microsoft.Scripting.Actions.DefaultBinder.MakeGeneralOperatorRule(System.String,Microsoft.Scripting.Actions.Calls.OverloadResolverFactory,System.Dynamic.DynamicMetaObject[])">
827
            <summary>
828
            Creates the meta object for the rest of the operations: comparisons and all other
829
            ExpressionType.  If the operation cannot be completed a MetaObject which indicates an
830
            error will be returned.
831
            </summary>
832
        </member>
833
        <member name="M:Microsoft.Scripting.Actions.DefaultBinder.MakeGeneralOperatorRule(System.Linq.Expressions.ExpressionType,Microsoft.Scripting.Actions.Calls.OverloadResolverFactory,System.Dynamic.DynamicMetaObject[])">
834
            <summary>
835
            Creates the meta object for the rest of the operations: comparisons and all other
836
            ExpressionType.  If the operation cannot be completed a MetaObject which indicates an
837
            error will be returned.
838
            </summary>
839
        </member>
840
        <member name="M:Microsoft.Scripting.Actions.DefaultBinder.TryNullComparisonRule(System.Dynamic.DynamicMetaObject[])">
841
            <summary>
842
            Produces a rule for comparing a value to null - supports comparing object references and nullable types.
843
            </summary>
844
        </member>
845
        <member name="M:Microsoft.Scripting.Actions.DefaultBinder.TryConvertToObject(System.Type,System.Type,System.Dynamic.DynamicMetaObject,System.Dynamic.BindingRestrictions)">
846
            <summary>
847
            Checks if the conversion is to object and produces a target if it is.
848
            </summary>
849
        </member>
850
        <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)">
851
            <summary>
852
            Checks if any conversions are available and if so builds the target for that conversion.
853
            </summary>
854
        </member>
855
        <member name="M:Microsoft.Scripting.Actions.DefaultBinder.TryAssignableConversion(System.Type,System.Type,System.Dynamic.BindingRestrictions,System.Dynamic.DynamicMetaObject)">
856
            <summary>
857
            Checks if the conversion can be handled by a simple cast.
858
            </summary>
859
        </member>
860
        <member name="M:Microsoft.Scripting.Actions.DefaultBinder.TryUserDefinedConversion(Microsoft.Scripting.Actions.ConversionResultKind,System.Type,System.Type,System.Dynamic.BindingRestrictions,System.Dynamic.DynamicMetaObject)">
861
            <summary>
862
            Checks if the conversion can be handled by calling a user-defined conversion method.
863
            </summary>
864
        </member>
865
        <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)">
866
            <summary>
867
            Helper that checkes both types to see if either one defines the specified conversion
868
            method.
869
            </summary>
870
        </member>
871
        <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)">
872
            <summary>
873
            Checks if any of the members of the MemberGroup provide the applicable conversion and 
874
            if so uses it to build a conversion rule.
875
            </summary>
876
        </member>
877
        <member name="M:Microsoft.Scripting.Actions.DefaultBinder.TryExtensibleConversion(System.Type,System.Type,System.Dynamic.BindingRestrictions,System.Dynamic.DynamicMetaObject)">
878
            <summary>
879
            Checks if the conversion is to applicable by extracting the value from Extensible of T.
880
            </summary>
881
        </member>
882
        <member name="M:Microsoft.Scripting.Actions.DefaultBinder.TryImplicitNumericConversion(System.Type,System.Type,System.Dynamic.BindingRestrictions,System.Dynamic.DynamicMetaObject)">
883
            <summary>
884
            Checks if there's an implicit numeric conversion for primitive data types.
885
            </summary>
886
        </member>
887
        <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)">
888
            <summary>
889
            Checks if there's a conversion to/from Nullable of T.
890
            </summary>
891
        </member>
892
        <member name="M:Microsoft.Scripting.Actions.DefaultBinder.TryNullConversion(System.Type,System.Type,System.Dynamic.BindingRestrictions)">
893
            <summary>
894
            Checks to see if there's a conversion of null to a reference type
895
            </summary>
896
        </member>
897
        <member name="M:Microsoft.Scripting.Actions.DefaultBinder.MakeErrorTarget(System.Type,Microsoft.Scripting.Actions.ConversionResultKind,System.Dynamic.BindingRestrictions,System.Dynamic.DynamicMetaObject)">
898
            <summary>
899
            Helper to produce an error when a conversion cannot occur
900
            </summary>
901
        </member>
902
        <member name="M:Microsoft.Scripting.Actions.DefaultBinder.MakeBoxingTarget(System.Dynamic.DynamicMetaObject,System.Dynamic.BindingRestrictions)">
903
            <summary>
904
            Helper to produce a rule which just boxes a value type
905
            </summary>
906
        </member>
907
        <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)">
908
            <summary>
909
            Helper to produce a conversion rule by calling the helper method to do the convert
910
            </summary>
911
        </member>
912
        <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)">
913
            <summary>
914
            Helper to produce a conversion rule by calling the helper method to do the convert
915
            </summary>
916
        </member>
917
        <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)">
918
            <summary>
919
            Helper to produce a conversion rule by calling the method to do the convert.  This version takes the parameter
920
            to be passed to the conversion function and we call it w/ our own value or w/ our Extensible.Value.
921
            </summary>
922
        </member>
923
        <member name="M:Microsoft.Scripting.Actions.DefaultBinder.WrapForThrowingTry(Microsoft.Scripting.Actions.ConversionResultKind,System.Boolean,System.Linq.Expressions.Expression,System.Type)">
924
            <summary>
925
            Helper to wrap explicit conversion call into try/catch incase it throws an exception.  If
926
            it throws the default value is returned.
927
            </summary>
928
        </member>
929
        <member name="M:Microsoft.Scripting.Actions.DefaultBinder.MakeSimpleConversionTarget(System.Type,System.Dynamic.BindingRestrictions,System.Dynamic.DynamicMetaObject)">
930
            <summary>
931
            Helper to produce a rule when no conversion is required (the strong type of the expression
932
            input matches the type we're converting to or has an implicit conversion at the IL level)
933
            </summary>
934
        </member>
935
        <member name="M:Microsoft.Scripting.Actions.DefaultBinder.MakeSimpleExtensibleConversionTarget(System.Type,System.Dynamic.BindingRestrictions,System.Dynamic.DynamicMetaObject)">
936
            <summary>
937
            Helper to produce a rule when no conversion is required from an extensible type's
938
            underlying storage to the type we're converting to.  The type of extensible type
939
            matches the type we're converting to or has an implicit conversion at the IL level.
940
            </summary>
941
        </member>
942
        <member name="M:Microsoft.Scripting.Actions.DefaultBinder.MakeExtensibleTarget(System.Type,System.Dynamic.BindingRestrictions,System.Dynamic.DynamicMetaObject)">
943
            <summary>
944
            Helper to extract the value from an Extensible of T
945
            </summary>
946
        </member>
947
        <member name="M:Microsoft.Scripting.Actions.DefaultBinder.MakeNullToNullableOfTTarget(System.Type,System.Dynamic.BindingRestrictions)">
948
            <summary>
949
            Helper to convert a null value to nullable of T
950
            </summary>
951
        </member>
952
        <member name="M:Microsoft.Scripting.Actions.DefaultBinder.MakeTToNullableOfTTarget(System.Type,System.Type,System.Dynamic.BindingRestrictions,System.Dynamic.DynamicMetaObject)">
953
            <summary>
954
            Helper to produce the rule for converting T to Nullable of T
955
            </summary>
956
        </member>
957
        <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)">
958
            <summary>
959
            Helper to produce the rule for converting T to Nullable of T
960
            </summary>
961
        </member>
962
        <member name="M:Microsoft.Scripting.Actions.DefaultBinder.GetTryConvertReturnValue(System.Type)">
963
            <summary>
964
            Returns a value which indicates failure when a OldConvertToAction of ImplicitTry or
965
            ExplicitTry.
966
            </summary>
967
        </member>
968
        <member name="M:Microsoft.Scripting.Actions.DefaultBinder.GetExtensibleValue(System.Type,System.Dynamic.DynamicMetaObject)">
969
            <summary>
970
            Helper to extract the Value of an Extensible of T from the
971
            expression being converted.
972
            </summary>
973
        </member>
974
        <member name="M:Microsoft.Scripting.Actions.DefaultBinder.GetUnderlyingType(System.Type)">
975
            <summary>
976
            Helper that checks if fromType is an Extensible of T or a subtype of 
977
            Extensible of T and if so returns the T.  Otherwise it returns fromType.
978
            
979
            This is used to treat extensible types the same as their underlying types.
980
            </summary>
981
        </member>
982
        <member name="M:Microsoft.Scripting.Actions.DefaultBinder.MakeNullTarget(System.Type,System.Dynamic.BindingRestrictions)">
983
            <summary>
984
            Creates a target which returns null for a reference type.
985
            </summary>
986
        </member>
987
        <member name="M:Microsoft.Scripting.Actions.DefaultBinder.MakeOperatorDeleteMemberBody(Microsoft.Scripting.Actions.DefaultBinder.SetOrDeleteMemberInfo,System.Dynamic.DynamicMetaObject,System.Type,System.String)">
988
            <summary> if a member-injector is defined-on or registered-for this type call it </summary>
989
        </member>
990
        <member name="T:Microsoft.Scripting.Actions.DefaultBinder.SetOrDeleteMemberInfo">
991
            <summary>
992
            Helper class for flowing information about the GetMember request.
993
            </summary>
994
        </member>
995
        <member name="M:Microsoft.Scripting.Actions.DefaultBinder.GetMember(System.String,System.Dynamic.DynamicMetaObject)">
996
            <summary>
997
            Builds a MetaObject for performing a member get.  Supports all built-in .NET members, the OperatorMethod 
998
            GetBoundMember, and StrongBox instances.
999
            </summary>
1000
            <param name="name">
1001
            The name of the member to retrieve.  This name is not processed by the DefaultBinder and
1002
            is instead handed off to the GetMember API which can do name mangling, case insensitive lookups, etc...
1003
            </param>
1004
            <param name="target">
1005
            The MetaObject from which the member is retrieved.
1006
            </param>
1007
            <returns>
1008
            Returns a DynamicMetaObject which represents the value that will be returned when the member is accessed.
1009
            
1010
            The returned DynamicMetaObject may be strongly typed to a value type which needs boxing before being
1011
            returned from a standard DLR GetMemberBinder.  The language is responsible for performing any boxing
1012
            so that it has an opportunity to perform custom boxing.
1013
            </returns>
1014
        </member>
1015
        <member name="M:Microsoft.Scripting.Actions.DefaultBinder.GetMember(System.String,System.Dynamic.DynamicMetaObject,Microsoft.Scripting.Actions.Calls.OverloadResolverFactory)">
1016
            <summary>
1017
            Builds a MetaObject for performing a member get.  Supports all built-in .NET members, the OperatorMethod 
1018
            GetBoundMember, and StrongBox instances.
1019
            </summary>
1020
            <param name="name">
1021
            The name of the member to retrieve.  This name is not processed by the DefaultBinder and
1022
            is instead handed off to the GetMember API which can do name mangling, case insensitive lookups, etc...
1023
            </param>
1024
            <param name="target">
1025
            The MetaObject from which the member is retrieved.
1026
            </param>
1027
            <param name="resolverFactory">
1028
            Provides overload resolution and method binding for any calls which need to be performed for the GetMember.
1029
            </param>
1030
            <returns>
1031
            Returns a DynamicMetaObject which represents the value that will be returned when the member is accessed.
1032
            
1033
            The returned DynamicMetaObject may be strongly typed to a value type which needs boxing before being
1034
            returned from a standard DLR GetMemberBinder.  The language is responsible for performing any boxing
1035
            so that it has an opportunity to perform custom boxing.
1036
            </returns>
1037
        </member>
1038
        <member name="M:Microsoft.Scripting.Actions.DefaultBinder.GetMember(System.String,System.Dynamic.DynamicMetaObject,Microsoft.Scripting.Actions.Calls.OverloadResolverFactory,System.Boolean,System.Dynamic.DynamicMetaObject)">
1039
            <summary>
1040
            Builds a MetaObject for performing a member get.  Supports all built-in .NET members, the OperatorMethod 
1041
            GetBoundMember, and StrongBox instances.
1042
            </summary>
1043
            <param name="name">
1044
            The name of the member to retrieve.  This name is not processed by the DefaultBinder and
1045
            is instead handed off to the GetMember API which can do name mangling, case insensitive lookups, etc...
1046
            </param>
1047
            <param name="target">
1048
            The MetaObject from which the member is retrieved.
1049
            </param>
1050
            <param name="resolverFactory">
1051
            An OverloadResolverFactory which can be used for performing overload resolution and method binding.
1052
            </param>
1053
            <param name="isNoThrow">
1054
            True if the operation should return Operation.Failed on failure, false if it
1055
            should return the exception produced by MakeMissingMemberError.
1056
            </param>
1057
            <param name="errorSuggestion">
1058
            The meta object to be used if the get results in an error.
1059
            </param>
1060
            <returns>
1061
            Returns a DynamicMetaObject which represents the value that will be returned when the member is accessed.
1062
            
1063
            The returned DynamicMetaObject may be strongly typed to a value type which needs boxing before being
1064
            returned from a standard DLR GetMemberBinder.  The language is responsible for performing any boxing
1065
            so that it has an opportunity to perform custom boxing.
1066
            </returns>
1067
        </member>
1068
        <member name="M:Microsoft.Scripting.Actions.DefaultBinder.GetMember(System.String,System.Dynamic.DynamicMetaObject,System.Boolean,System.Dynamic.DynamicMetaObject)">
1069
            <summary>
1070
            Builds a MetaObject for performing a member get.  Supports all built-in .NET members, the OperatorMethod 
1071
            GetBoundMember, and StrongBox instances.
1072
            </summary>
1073
            <param name="name">
1074
            The name of the member to retrieve.  This name is not processed by the DefaultBinder and
1075
            is instead handed off to the GetMember API which can do name mangling, case insensitive lookups, etc...
1076
            </param>
1077
            <param name="target">
1078
            The MetaObject from which the member is retrieved.
1079
            </param>
1080
            <param name="isNoThrow">
1081
            True if the operation should return Operation.Failed on failure, false if it
1082
            should return the exception produced by MakeMissingMemberError.
1083
            </param>
1084
            <param name="errorSuggestion">
1085
            The meta object to be used if the get results in an error.
1086
            </param>
1087
            <returns>
1088
            Returns a DynamicMetaObject which represents the value that will be returned when the member is accessed.
1089
            
1090
            The returned DynamicMetaObject may be strongly typed to a value type which needs boxing before being
1091
            returned from a standard DLR GetMemberBinder.  The language is responsible for performing any boxing
1092
            so that it has an opportunity to perform custom boxing.
1093
            </returns>
1094
        </member>
1095
        <member name="M:Microsoft.Scripting.Actions.DefaultBinder.MakeOperatorGetMemberBody(Microsoft.Scripting.Actions.DefaultBinder.GetMemberInfo,System.Dynamic.DynamicMetaObject,System.Type,System.String)">
1096
            <summary> if a member-injector is defined-on or registered-for this type call it </summary>
1097
        </member>
1098
        <member name="T:Microsoft.Scripting.Actions.DefaultBinder.GetMemberInfo">
1099
            <summary>
1100
            Helper class for flowing information about the GetMember request.
1101
            </summary>
1102
        </member>
1103
        <member name="M:Microsoft.Scripting.Actions.DefaultBinder.Call(Microsoft.Scripting.Actions.CallSignature,System.Dynamic.DynamicMetaObject,System.Dynamic.DynamicMetaObject[])">
1104
            <summary>
1105
            Provides default binding for performing a call on the specified meta objects.
1106
            </summary>
1107
            <param name="signature">The signature describing the call</param>
1108
            <param name="target">The meta object to be called.</param>
1109
            <param name="args">
1110
            Additional meta objects are the parameters for the call as specified by the CallSignature in the CallAction.
1111
            </param>
1112
            <returns>A MetaObject representing the call or the error.</returns>
1113
        </member>
1114
        <member name="M:Microsoft.Scripting.Actions.DefaultBinder.Call(Microsoft.Scripting.Actions.CallSignature,Microsoft.Scripting.Actions.Calls.OverloadResolverFactory,System.Dynamic.DynamicMetaObject,System.Dynamic.DynamicMetaObject[])">
1115
            <summary>
1116
            Provides default binding for performing a call on the specified meta objects.
1117
            </summary>
1118
            <param name="signature">The signature describing the call</param>
1119
            <param name="target">The meta object to be called.</param>
1120
            <param name="args">
1121
            Additional meta objects are the parameters for the call as specified by the CallSignature in the CallAction.
1122
            </param>
1123
            <param name="resolverFactory">Overload resolver factory.</param>
1124
            <returns>A MetaObject representing the call or the error.</returns>
1125
        </member>
1126
        <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[])">
1127
            <summary>
1128
            Provides default binding for performing a call on the specified meta objects.
1129
            </summary>
1130
            <param name="signature">The signature describing the call</param>
1131
            <param name="target">The meta object to be called.</param>
1132
            <param name="args">
1133
            Additional meta objects are the parameters for the call as specified by the CallSignature in the CallAction.
1134
            </param>
1135
            <param name="resolverFactory">Overload resolver factory.</param>
1136
            <param name="errorSuggestion">The result should the object be uncallable.</param>
1137
            <returns>A MetaObject representing the call or the error.</returns>
1138
        </member>
1139
        <member name="M:Microsoft.Scripting.Actions.DefaultBinder.GetTargetInfo(System.Dynamic.DynamicMetaObject,System.Dynamic.DynamicMetaObject[])">
1140
            <summary>
1141
            Gets a TargetInfo object for performing a call on this object.  
1142
            
1143
            If this object is a delegate we bind to the Invoke method.
1144
            If this object is a MemberGroup or MethodGroup we bind to the methods in the member group.
1145
            If this object is a BoundMemberTracker we bind to the methods with the bound instance.
1146
            If the underlying type has defined an operator Call method we'll bind to that method.
1147
            </summary>
1148
        </member>
1149
        <member name="M:Microsoft.Scripting.Actions.DefaultBinder.TryGetMethodGroupTargets(System.Dynamic.DynamicMetaObject,System.Dynamic.DynamicMetaObject[],Microsoft.Scripting.Actions.MethodGroup)">
1150
            <summary>
1151
            Binds to the methods in a method group.
1152
            </summary>
1153
        </member>
1154
        <member name="M:Microsoft.Scripting.Actions.DefaultBinder.TryGetMemberGroupTargets(System.Dynamic.DynamicMetaObject,System.Dynamic.DynamicMetaObject[],Microsoft.Scripting.Actions.MemberGroup)">
1155
            <summary>
1156
            Binds to the methods in a member group.  
1157
            
1158
            TODO: We should really only have either MemberGroup or MethodGroup, not both.
1159
            </summary>
1160
        </member>
1161
        <member name="M:Microsoft.Scripting.Actions.DefaultBinder.TryGetBoundMemberTargets(System.Dynamic.DynamicMetaObject,System.Dynamic.DynamicMetaObject[],Microsoft.Scripting.Actions.BoundMemberTracker)">
1162
            <summary>
1163
            Binds to the BoundMemberTracker and uses the instance in the tracker and restricts
1164
            based upon the object instance type.
1165
            </summary>
1166
        </member>
1167
        <member name="M:Microsoft.Scripting.Actions.DefaultBinder.TryGetDelegateTargets(System.Dynamic.DynamicMetaObject,System.Dynamic.DynamicMetaObject[],System.Delegate)">
1168
            <summary>
1169
            Binds to the Invoke method on a delegate if this is a delegate type.
1170
            </summary>
1171
        </member>
1172
        <member name="M:Microsoft.Scripting.Actions.DefaultBinder.TryGetOperatorTargets(System.Dynamic.DynamicMetaObject,System.Dynamic.DynamicMetaObject[],System.Object)">
1173
            <summary>
1174
            Attempts to bind to an operator Call method.
1175
            </summary>
1176
        </member>
1177
        <member name="T:Microsoft.Scripting.Actions.DefaultBinder.TargetInfo">
1178
            <summary>
1179
            Encapsulates information about the target of the call.  This includes an implicit instance for the call,
1180
            the methods that we'll be calling as well as any restrictions required to perform the call.
1181
            </summary>
1182
        </member>
1183
        <member name="M:Microsoft.Scripting.Actions.DefaultBinder.CallMethod(Microsoft.Scripting.Actions.DefaultOverloadResolver,System.Collections.Generic.IList{System.Reflection.MethodBase})">
1184
            <summary>
1185
            Performs binding against a set of overloaded methods using the specified arguments.  The arguments are
1186
            consumed as specified by the CallSignature object.
1187
            </summary>
1188
            <param name="resolver">Overload resolver.</param>
1189
            <param name="targets">The methods to be called</param>
1190
            <returns>A meta object which results from the call.</returns>
1191
        </member>
1192
        <member name="M:Microsoft.Scripting.Actions.DefaultBinder.CallMethod(Microsoft.Scripting.Actions.DefaultOverloadResolver,System.Collections.Generic.IList{System.Reflection.MethodBase},System.String)">
1193
            <summary>
1194
            Performs binding against a set of overloaded methods using the specified arguments.  The arguments are
1195
            consumed as specified by the CallSignature object.
1196
            </summary>
1197
            <param name="resolver">Overload resolver.</param>
1198
            <param name="targets">The methods to be called</param>
1199
            <param name="name">The name of the method or null to use the name from targets.</param>
1200
            <returns>A meta object which results from the call.</returns>
1201
        </member>
1202
        <member name="M:Microsoft.Scripting.Actions.DefaultBinder.CallMethod(Microsoft.Scripting.Actions.DefaultOverloadResolver,System.Collections.Generic.IList{System.Reflection.MethodBase},System.Dynamic.BindingRestrictions)">
1203
            <summary>
1204
            Performs binding against a set of overloaded methods using the specified arguments.  The arguments are
1205
            consumed as specified by the CallSignature object.
1206
            </summary>
1207
            <param name="resolver">Overload resolver.</param>
1208
            <param name="targets">The methods to be called</param>
1209
            <param name="restrictions">Additional restrictions which should be applied to the resulting MetaObject.</param>
1210
            <returns>A meta object which results from the call.</returns>
1211
        </member>
1212
        <member name="M:Microsoft.Scripting.Actions.DefaultBinder.CallMethod(Microsoft.Scripting.Actions.DefaultOverloadResolver,System.Collections.Generic.IList{System.Reflection.MethodBase},System.Dynamic.BindingRestrictions,System.String)">
1213
            <summary>
1214
            Performs binding against a set of overloaded methods using the specified arguments.  The arguments are
1215
            consumed as specified by the CallSignature object.
1216
            </summary>
1217
            <param name="resolver">Overload resolver.</param>
1218
            <param name="targets">The methods to be called</param>
1219
            <param name="restrictions">Additional restrictions which should be applied to the resulting MetaObject.</param>
1220
            <param name="name">The name of the method or null to use the name from targets.</param>
1221
            <returns>A meta object which results from the call.</returns>
1222
        </member>
1223
        <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@)">
1224
            <summary>
1225
            Performs binding against a set of overloaded methods using the specified arguments.  The arguments are
1226
            consumed as specified by the CallSignature object.
1227
            </summary>
1228
            <param name="minLevel">TODO.</param>
1229
            <param name="maxLevel">TODO.</param>
1230
            <param name="resolver">Overload resolver.</param>
1231
            <param name="targets">The methods to be called</param>
1232
            <param name="restrictions">Additional restrictions which should be applied to the resulting MetaObject.</param>
1233
            <param name="target">The resulting binding target which can be used for producing error information.</param>
1234
            <param name="name">The name of the method or null to use the name from targets.</param>
1235
            <returns>A meta object which results from the call.</returns>
1236
        </member>
1237
        <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})">
1238
            <summary>
1239
            Makes test for param arrays and param dictionary parameters.
1240
            </summary>
1241
        </member>
1242
        <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})">
1243
            <summary>
1244
            Pulls out the right argument to build the splat test.  MakeParamsTest makes the actual test.
1245
            </summary>
1246
        </member>
1247
        <member name="M:Microsoft.Scripting.Actions.DefaultBinder.MakeParamsTest(System.Dynamic.DynamicMetaObject,System.Boolean)">
1248
            <summary>
1249
            Builds the restrictions for calling with a splatted argument array.  Ensures that the
1250
            argument is still an ICollection of object and that it has the same number of arguments.
1251
            </summary>
1252
        </member>
1253
        <member name="M:Microsoft.Scripting.Actions.DefaultBinder.MakeParamsDictionaryTest(System.Collections.Generic.IList{System.Dynamic.DynamicMetaObject},System.Boolean)">
1254
            <summary>
1255
            Builds the restrictions for calling with keyword arguments.  The restrictions include
1256
            tests on the individual keys of the dictionary to ensure they have the same names.
1257
            </summary>
1258
        </member>
1259
        <member name="M:Microsoft.Scripting.Actions.DefaultBinder.SetMember(System.String,System.Dynamic.DynamicMetaObject,System.Dynamic.DynamicMetaObject)">
1260
            <summary>
1261
            Builds a MetaObject for performing a member get.  Supports all built-in .NET members, the OperatorMethod 
1262
            GetBoundMember, and StrongBox instances.
1263
            </summary>
1264
            <param name="name">
1265
            The name of the member to retrieve.  This name is not processed by the DefaultBinder and
1266
            is instead handed off to the GetMember API which can do name mangling, case insensitive lookups, etc...
1267
            </param>
1268
            <param name="target">
1269
            The MetaObject from which the member is retrieved.
1270
            </param>
1271
            <param name="value">
1272
            The value being assigned to the target member.
1273
            </param>
1274
        </member>
1275
        <member name="M:Microsoft.Scripting.Actions.DefaultBinder.SetMember(System.String,System.Dynamic.DynamicMetaObject,System.Dynamic.DynamicMetaObject,Microsoft.Scripting.Actions.Calls.OverloadResolverFactory)">
1276
            <summary>
1277
            Builds a MetaObject for performing a member get.  Supports all built-in .NET members, the OperatorMethod 
1278
            GetBoundMember, and StrongBox instances.
1279
            </summary>
1280
            <param name="name">
1281
            The name of the member to retrieve.  This name is not processed by the DefaultBinder and
1282
            is instead handed off to the GetMember API which can do name mangling, case insensitive lookups, etc...
1283
            </param>
1284
            <param name="target">
1285
            The MetaObject from which the member is retrieved.
1286
            </param>
1287
            <param name="value">
1288
            The value being assigned to the target member.
1289
            </param>
1290
            <param name="resolverFactory">
1291
            Provides overload resolution and method binding for any calls which need to be performed for the SetMember.
1292
            </param>
1293
        </member>
1294
        <member name="M:Microsoft.Scripting.Actions.DefaultBinder.SetMember(System.String,System.Dynamic.DynamicMetaObject,System.Dynamic.DynamicMetaObject,System.Dynamic.DynamicMetaObject)">
1295
            <summary>
1296
            Builds a MetaObject for performing a member get.  Supports all built-in .NET members, the OperatorMethod 
1297
            GetBoundMember, and StrongBox instances.
1298
            </summary>
1299
            <param name="name">
1300
            The name of the member to retrieve.  This name is not processed by the DefaultBinder and
1301
            is instead handed off to the GetMember API which can do name mangling, case insensitive lookups, etc...
1302
            </param>
1303
            <param name="target">
1304
            The MetaObject from which the member is retrieved.
1305
            </param>
1306
            <param name="value">
1307
            The value being assigned to the target member.
1308
            </param>
1309
            <param name="errorSuggestion">
1310
            Provides a DynamicMetaObject that is to be used as the result if the member cannot be set.  If null then then a language
1311
            specific error code is provided by ActionBinder.MakeMissingMemberErrorForAssign which can be overridden by the language.
1312
            </param>
1313
        </member>
1314
        <member name="M:Microsoft.Scripting.Actions.DefaultBinder.SetMember(System.String,System.Dynamic.DynamicMetaObject,System.Dynamic.DynamicMetaObject,System.Dynamic.DynamicMetaObject,Microsoft.Scripting.Actions.Calls.OverloadResolverFactory)">
1315
            <summary>
1316
            Builds a MetaObject for performing a member get.  Supports all built-in .NET members, the OperatorMethod 
1317
            GetBoundMember, and StrongBox instances.
1318
            </summary>
1319
            <param name="name">
1320
            The name of the member to retrieve.  This name is not processed by the DefaultBinder and
1321
            is instead handed off to the GetMember API which can do name mangling, case insensitive lookups, etc...
1322
            </param>
1323
            <param name="target">
1324
            The MetaObject from which the member is retrieved.
1325
            </param>
1326
            <param name="value">
1327
            The value being assigned to the target member.
1328
            </param>
1329
            <param name="resolverFactory">
1330
            Provides overload resolution and method binding for any calls which need to be performed for the SetMember.
1331
            </param>
1332
            <param name="errorSuggestion">
1333
            Provides a DynamicMetaObject that is to be used as the result if the member cannot be set.  If null then then a language
1334
            specific error code is provided by ActionBinder.MakeMissingMemberErrorForAssign which can be overridden by the language.
1335
            </param>
1336
        </member>
1337
        <member name="M:Microsoft.Scripting.Actions.DefaultBinder.MakeOperatorSetMemberBody(Microsoft.Scripting.Actions.DefaultBinder.SetOrDeleteMemberInfo,System.Dynamic.DynamicMetaObject,System.Dynamic.DynamicMetaObject,System.Type,System.String)">
1338
            <summary> if a member-injector is defined-on or registered-for this type call it </summary>
1339
        </member>
1340
        <member name="M:Microsoft.Scripting.Actions.DefaultBinder.MakeUndeletableMemberError(System.Type,System.String)">
1341
            <summary>
1342
            Provides a way for the binder to provide a custom error message when lookup fails.  Just
1343
            doing this for the time being until we get a more robust error return mechanism.
1344
            </summary>
1345
        </member>
1346
        <member name="M:Microsoft.Scripting.Actions.DefaultBinder.MakeNonPublicMemberGetError(Microsoft.Scripting.Actions.Calls.OverloadResolverFactory,Microsoft.Scripting.Actions.MemberTracker,System.Type,System.Dynamic.DynamicMetaObject)">
1347
            <summary>
1348
            Called when the user is accessing a protected or private member on a get.
1349
            
1350
            The default implementation allows access to the fields or properties using reflection.
1351
            </summary>
1352
        </member>
1353
        <member name="M:Microsoft.Scripting.Actions.DefaultBinder.MakeReadOnlyMemberError(System.Type,System.String)">
1354
            <summary>
1355
            Provides a way for the binder to provide a custom error message when lookup fails.  Just
1356
            doing this for the time being until we get a more robust error return mechanism.
1357
            </summary>
1358
        </member>
1359
        <member name="T:Microsoft.Scripting.Actions.ErrorMetaObject">
1360
            <summary>
1361
            A MetaObject which was produced as the result of a failed binding.
1362
            </summary>
1363
        </member>
1364
        <member name="T:Microsoft.Scripting.Actions.Interceptor">
1365
            <summary>
1366
            Interceptor prototype. The interceptor is a call site binder that wraps
1367
            a real call site binder and can perform arbitrary operations on the expression
1368
            trees that the wrapped binder produces:
1369
              * Dumping the trees
1370
              * Additional rewriting
1371
              * Static compilation
1372
              * ...
1373
            </summary>
1374
        </member>
1375
        <member name="M:Microsoft.Scripting.Actions.DynamicSiteHelpers.IsInvisibleDlrStackFrame(System.Reflection.MethodBase)">
1376
            <summary>
1377
            Returns true if the method should not be displayed in the stack frame.
1378
            </summary>
1379
        </member>
1380
        <member name="T:Microsoft.Scripting.Actions.MemberRequestKind">
1381
            <summary>
1382
            Specifies the action for which the default binder is requesting a member.
1383
            </summary>
1384
        </member>
1385
        <member name="T:Microsoft.Scripting.Actions.ILightExceptionBinder">
1386
             <summary>
1387
             Implemented by binders which support light exceptions.  Dynamic objects
1388
             binding against a binder which implements this interface can check 
1389
             SupportsLightThrow to see if the binder currently supports safely 
1390
             returning a light exception.  Light exceptions can be created with
1391
             LightException.Throw.
1392
            
1393
             Binders also need to implement GetlightBinder.  This method
1394
             returns a new call site binder which may return light  exceptions if 
1395
             the binder supports them.
1396
             </summary>
1397
        </member>
1398
        <member name="P:Microsoft.Scripting.Actions.ILightExceptionBinder.SupportsLightThrow">
1399
            <summary>
1400
            Returns true if a callsite binding against this binder can
1401
            return light exceptions.
1402
            </summary>
1403
        </member>
1404
        <member name="M:Microsoft.Scripting.Actions.ILightExceptionBinder.GetLightExceptionBinder">
1405
            <summary>
1406
            Gets a binder which will support light exception if one is
1407
            available.
1408
            </summary>
1409
        </member>
1410
        <member name="T:Microsoft.Scripting.Actions.ComboActionRewriter">
1411
            <summary>
1412
            A tree rewriter which will find dynamic sites which consume dynamic sites and
1413
            turn them into a single combo dynamic site.  The combo dynamic site will then run the
1414
            individual meta binders and produce the resulting code in a single dynamic site.
1415
            </summary>
1416
        </member>
1417
        <member name="T:Microsoft.Scripting.Actions.ComboActionRewriter.ComboDynamicSiteExpression">
1418
            <summary>
1419
            A reducible node which we use to generate the combo dynamic sites.  Each time we encounter
1420
            a dynamic site we replace it with a ComboDynamicSiteExpression.  When a child of a dynamic site
1421
            turns out to be a ComboDynamicSiteExpression we will then merge the child with the parent updating
1422
            the binding mapping info.  If any of the inputs cause side effects then we'll stop the combination.
1423
            </summary>
1424
        </member>
1425
        <member name="T:Microsoft.Scripting.Actions.ComboBinder">
1426
            <summary>
1427
            A binder which can combine multiple binders into a single dynamic site.  The creator
1428
            of this needs to perform the mapping of parameters, constants, and sub-site expressions
1429
            and provide a List of BinderMappingInfo representing this data.  From there the ComboBinder
1430
            just processes the list to create the resulting code.
1431
            </summary>
1432
        </member>
1433
        <member name="T:Microsoft.Scripting.Actions.ParameterMappingInfo">
1434
            <summary>
1435
            Provides a mapping for inputs of combo action expressions.  The input can map
1436
            to either an input of the new dynamic site, an input of a previous DynamicExpression,
1437
            or a ConstantExpression which has been pulled out of the dynamic site arguments.
1438
            </summary>
1439
        </member>
1440
        <member name="T:Microsoft.Scripting.Actions.BinderMappingInfo">
1441
            <summary>
1442
            Contains the mapping information for a single Combo Binder.  This includes the original
1443
            meta-binder and the mapping of parameters, sub-sites, and constants into the binding.
1444
            </summary>
1445
        </member>
1446
        <member name="T:Microsoft.Scripting.Actions.ConditionalBuilder">
1447
            <summary>
1448
            Builds up a series of conditionals when the False clause isn't yet known.  We can
1449
            keep appending conditions and if true's.  Each subsequent true branch becomes the
1450
            false branch of the previous condition and body.  Finally a non-conditional terminating
1451
            branch must be added.
1452
            </summary>
1453
        </member>
1454
        <member name="M:Microsoft.Scripting.Actions.ConditionalBuilder.AddCondition(System.Linq.Expressions.Expression,System.Linq.Expressions.Expression)">
1455
            <summary>
1456
            Adds a new conditional and body.  The first call this becomes the top-level
1457
            conditional, subsequent calls will have it added as false statement of the
1458
            previous conditional.
1459
            </summary>
1460
        </member>
1461
        <member name="M:Microsoft.Scripting.Actions.ConditionalBuilder.FinishCondition(System.Linq.Expressions.Expression)">
1462
            <summary>
1463
            Adds the non-conditional terminating node.
1464
            </summary>
1465
        </member>
1466
        <member name="M:Microsoft.Scripting.Actions.ConditionalBuilder.FinishError(System.Linq.Expressions.Expression)">
1467
            <summary>
1468
            Adds the non-conditional terminating node.
1469
            </summary>
1470
        </member>
1471
        <member name="M:Microsoft.Scripting.Actions.ConditionalBuilder.GetMetaObject(System.Dynamic.DynamicMetaObject[])">
1472
            <summary>
1473
            Gets the resulting meta object for the full body.  FinishCondition
1474
            must have been called.
1475
            </summary>
1476
        </member>
1477
        <member name="M:Microsoft.Scripting.Actions.ConditionalBuilder.AddVariable(System.Linq.Expressions.ParameterExpression)">
1478
            <summary>
1479
            Adds a variable which will be scoped at the level of the final expression.
1480
            </summary>
1481
        </member>
1482
        <member name="T:Microsoft.Scripting.Actions.NoSideEffectsAttribute">
1483
            <summary>
1484
            Marks a method as not having side effects.  used by the combo binder
1485
            to allow calls to methods.
1486
            </summary>
1487
        </member>
1488
        <member name="T:Microsoft.Scripting.Actions.OperatorInfo">
1489
            <summary>
1490
            OperatorInfo provides a mapping from DLR ExpressionType to their associated .NET methods.
1491
            </summary>
1492
        </member>
1493
        <member name="M:Microsoft.Scripting.Actions.OperatorInfo.GetOperatorInfo(System.Linq.Expressions.ExpressionType)">
1494
            <summary>
1495
            Given an operator returns the OperatorInfo associated with the operator or null
1496
            </summary>
1497
        </member>
1498
        <member name="P:Microsoft.Scripting.Actions.OperatorInfo.Operator">
1499
            <summary>
1500
            The operator the OperatorInfo provides info for.
1501
            </summary>
1502
        </member>
1503
        <member name="P:Microsoft.Scripting.Actions.OperatorInfo.Name">
1504
            <summary>
1505
            The primary method name associated with the method.  This method name is
1506
            usally in the form of op_Operator (e.g. op_Addition).
1507
            </summary>
1508
        </member>
1509
        <member name="P:Microsoft.Scripting.Actions.OperatorInfo.AlternateName">
1510
            <summary>
1511
            The secondary method name associated with the method.  This method name is
1512
            usually a standard .NET method name with pascal casing (e.g. Add).
1513
            </summary>
1514
        </member>
1515
        <member name="T:Microsoft.Scripting.Actions.ActionBinder">
1516
            <summary>
1517
            Provides binding semantics for a language.  This include conversions as well as support
1518
            for producing rules for actions.  These optimized rules are used for calling methods, 
1519
            performing operators, and getting members using the ActionBinder's conversion semantics.
1520
            </summary>
1521
        </member>
1522
        <member name="P:Microsoft.Scripting.Actions.ActionBinder.PrivateBinding">
1523
            <summary>
1524
            Determines if the binder should allow access to non-public members.
1525
            
1526
            By default the binder does not allow access to non-public members.  Base classes
1527
            can inherit and override this value to customize whether or not private binding
1528
            is available.
1529
            </summary>
1530
        </member>
1531
        <member name="M:Microsoft.Scripting.Actions.ActionBinder.Convert(System.Object,System.Type)">
1532
            <summary>
1533
            Converts an object at runtime into the specified type.
1534
            </summary>
1535
        </member>
1536
        <member name="M:Microsoft.Scripting.Actions.ActionBinder.CanConvertFrom(System.Type,System.Type,System.Boolean,Microsoft.Scripting.Actions.Calls.NarrowingLevel)">
1537
            <summary>
1538
            Determines if a conversion exists from fromType to toType at the specified narrowing level.
1539
            toNotNullable is true if the target variable doesn't allow null values.
1540
            </summary>
1541
        </member>
1542
        <member name="M:Microsoft.Scripting.Actions.ActionBinder.PreferConvert(System.Type,System.Type)">
1543
            <summary>
1544
            Provides ordering for two parameter types if there is no conversion between the two parameter types.
1545
            </summary>
1546
        </member>
1547
        <member name="M:Microsoft.Scripting.Actions.ActionBinder.ConvertExpression(System.Linq.Expressions.Expression,System.Type,Microsoft.Scripting.Actions.ConversionResultKind,Microsoft.Scripting.Actions.Calls.OverloadResolverFactory)">
1548
            <summary>
1549
            Converts the provided expression to the given type.  The expression is safe to evaluate multiple times.
1550
            </summary>
1551
        </member>
1552
        <member name="M:Microsoft.Scripting.Actions.ActionBinder.GetMember(Microsoft.Scripting.Actions.MemberRequestKind,System.Type,System.String)">
1553
            <summary>
1554
            Gets the members that are visible from the provided type of the specified name.
1555
            
1556
            The default implemetnation first searches the type, then the flattened heirachy of the type, and then
1557
            registered extension methods.
1558
            </summary>
1559
        </member>
1560
        <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)">
1561
            <summary>
1562
            Called when a set is attempting to assign to a field or property from a derived class through the base class.
1563
            
1564
            The default behavior is to allow the assignment.
1565
            </summary>
1566
        </member>
1567
        <member name="M:Microsoft.Scripting.Actions.ActionBinder.MakeStaticPropertyInstanceAccessError(Microsoft.Scripting.Actions.PropertyTracker,System.Boolean,System.Collections.Generic.IList{System.Dynamic.DynamicMetaObject})">
1568
            <summary>
1569
            Creates an ErrorInfo object when a static property is accessed from an instance member.  The default behavior is throw
1570
            an exception indicating that static members properties be accessed via an instance.  Languages can override this to 
1571
            customize the exception, message, or to produce an ErrorInfo object which reads or writes to the property being accessed.
1572
            </summary>
1573
            <param name="tracker">The static property being accessed through an instance</param>
1574
            <param name="isAssignment">True if the user is assigning to the property, false if the user is reading from the property</param>
1575
            <param name="parameters">The parameters being used to access the property.  This includes the instance as the first entry, any index parameters, and the
1576
            value being assigned as the last entry if isAssignment is true.</param>
1577
            <returns></returns>
1578
        </member>
1579
        <member name="M:Microsoft.Scripting.Actions.ActionBinder.MakeMissingMemberError(System.Type,System.Dynamic.DynamicMetaObject,System.String)">
1580
            <summary>
1581
            Provides a way for the binder to provide a custom error message when lookup fails.  Just
1582
            doing this for the time being until we get a more robust error return mechanism.
1583
            
1584
            Deprecated, use the non-generic version instead
1585
            </summary>
1586
        </member>
1587
        <member name="M:Microsoft.Scripting.Actions.ActionBinder.GetAllExtensionMembers(System.Type,System.String)">
1588
            <summary>
1589
            Gets the extension members of the given name from the provided type.  Base classes are also
1590
            searched for their extension members.  Once any of the types in the inheritance hierarchy
1591
            provide an extension member the search is stopped.
1592
            </summary>
1593
        </member>
1594
        <member name="M:Microsoft.Scripting.Actions.ActionBinder.GetExtensionMembers(System.Type,System.String)">
1595
            <summary>
1596
            Gets the extension members of the given name from the provided type.  Subclasses of the
1597
            type and their extension members are not searched.
1598
            </summary>
1599
        </member>
1600
        <member name="M:Microsoft.Scripting.Actions.ActionBinder.ReturnMemberTracker(System.Type,Microsoft.Scripting.Actions.MemberTracker)">
1601
            <summary>
1602
            Provides an opportunity for languages to replace all MemberTracker's with their own type.
1603
            
1604
            Alternatlely a language can expose MemberTracker's directly.
1605
            </summary>
1606
            <param name="memberTracker">The member which is being returned to the user.</param>
1607
            <param name="type">Tthe type which the memberTrack was accessed from</param>
1608
            <returns></returns>
1609
        </member>
1610
        <member name="T:Microsoft.Scripting.Actions.Argument">
1611
            <summary>
1612
            TODO: Alternatively, it should be sufficient to remember indices for this, list, dict and block.
1613
            </summary>
1614
        </member>
1615
        <member name="T:Microsoft.Scripting.Actions.ArgumentType">
1616
            <summary>
1617
            Convention for an individual argument at a callsite.
1618
            
1619
            Multiple different callsites can match against a single declaration. 
1620
            Some argument kinds can be "unrolled" into multiple arguments, such as list and dictionary. 
1621
            </summary>
1622
        </member>
1623
        <member name="F:Microsoft.Scripting.Actions.ArgumentType.Simple">
1624
            <summary>
1625
            Simple unnamed positional argument.
1626
            In Python: foo(1,2,3) are all simple arguments.
1627
            </summary>
1628
        </member>
1629
        <member name="F:Microsoft.Scripting.Actions.ArgumentType.Named">
1630
            <summary>
1631
            Argument with associated name at the callsite
1632
            In Python: foo(a=1)
1633
            </summary>
1634
        </member>
1635
        <member name="F:Microsoft.Scripting.Actions.ArgumentType.List">
1636
            <summary>
1637
            Argument containing a list of arguments. 
1638
            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).
1639
                 it could also match 'def foo(*l)' with 1 declared argument such that l=(1,4,3)
1640
            </summary>
1641
        </member>
1642
        <member name="F:Microsoft.Scripting.Actions.ArgumentType.Dictionary">
1643
            <summary>
1644
            Argument containing a dictionary of named arguments.
1645
            In Python: foo(**{'a':1, 'b':2})
1646
            </summary>
1647
        </member>
1648
        <member name="T:Microsoft.Scripting.Actions.CallSignature">
1649
            <summary>
1650
            Richly represents the signature of a callsite.
1651
            </summary>
1652
        </member>
1653
        <member name="F:Microsoft.Scripting.Actions.CallSignature._infos">
1654
            <summary>
1655
            Array of additional meta information about the arguments, such as named arguments.
1656
            Null for a simple signature that's just an expression list. eg: foo(a*b,c,d)
1657
            </summary>
1658
        </member>
1659
        <member name="F:Microsoft.Scripting.Actions.CallSignature._argumentCount">
1660
            <summary>
1661
            Number of arguments in the signature.
1662
            </summary>
1663
        </member>
1664
        <member name="P:Microsoft.Scripting.Actions.CallSignature.IsSimple">
1665
            <summary>
1666
            All arguments are unnamed and matched by position. 
1667
            </summary>
1668
        </member>
1669
        <member name="M:Microsoft.Scripting.Actions.CallSignature.HasKeywordArgument">
1670
            <summary>
1671
            True if the OldCallAction includes an ArgumentInfo of ArgumentKind.Dictionary or ArgumentKind.Named.
1672
            </summary>
1673
        </member>
1674
        <member name="M:Microsoft.Scripting.Actions.CallSignature.GetProvidedPositionalArgumentCount">
1675
            <summary>
1676
            Gets the number of positional arguments the user provided at the call site.
1677
            </summary>
1678
        </member>
1679
        <member name="T:Microsoft.Scripting.Actions.CustomTracker">
1680
            <summary>
1681
            A custom member tracker which enables languages to plug in arbitrary
1682
            members into the lookup process.
1683
            </summary>
1684
        </member>
1685
        <member name="T:Microsoft.Scripting.Actions.ErrorInfo">
1686
            <summary>
1687
            Encapsulates information about the result that should be produced when 
1688
            a OldDynamicAction cannot be performed.  The ErrorInfo can hold one of:
1689
                an expression which creates an Exception to be thrown 
1690
                an expression which produces a value which should be returned 
1691
                    directly to the user and represents an error has occured (for
1692
                    example undefined in JavaScript)
1693
                an expression which produces a value which should be returned
1694
                    directly to the user but does not actually represent an error.
1695
            
1696
            ErrorInfo's are produced by an ActionBinder in response to a failed
1697
            binding.  
1698
            </summary>
1699
        </member>
1700
        <member name="M:Microsoft.Scripting.Actions.ErrorInfo.#ctor(System.Linq.Expressions.Expression,Microsoft.Scripting.Actions.ErrorInfoKind)">
1701
            <summary>
1702
            Private constructor - consumers must use static From* factories
1703
            to create ErrorInfo objects.
1704
            </summary>
1705
        </member>
1706
        <member name="M:Microsoft.Scripting.Actions.ErrorInfo.FromException(System.Linq.Expressions.Expression)">
1707
            <summary>
1708
            Creates a new ErrorInfo which represents an exception that should
1709
            be thrown.
1710
            </summary>
1711
        </member>
1712
        <member name="M:Microsoft.Scripting.Actions.ErrorInfo.FromValue(System.Linq.Expressions.Expression)">
1713
            <summary>
1714
            Creates a new ErrorInfo which represents a value which should be
1715
            returned to the user.
1716
            </summary>
1717
        </member>
1718
        <member name="M:Microsoft.Scripting.Actions.ErrorInfo.FromValueNoError(System.Linq.Expressions.Expression)">
1719
            <summary>
1720
            Crates a new ErrorInfo which represents a value which should be returned
1721
            to the user but does not represent an error.
1722
            </summary>
1723
            <param name="resultValue"></param>
1724
            <returns></returns>
1725
        </member>
1726
        <member name="F:Microsoft.Scripting.Actions.ErrorInfoKind.Exception">
1727
            <summary>
1728
            The ErrorInfo expression produces an exception
1729
            </summary>
1730
        </member>
1731
        <member name="F:Microsoft.Scripting.Actions.ErrorInfoKind.Error">
1732
            <summary>
1733
            The ErrorInfo expression produces a value which represents the error (e.g. undefined)
1734
            </summary>
1735
        </member>
1736
        <member name="F:Microsoft.Scripting.Actions.ErrorInfoKind.Success">
1737
            <summary>
1738
            The ErrorInfo expression produces a value which is not an error
1739
            </summary>
1740
        </member>
1741
        <member name="P:Microsoft.Scripting.Actions.EventTracker.IsStatic">
1742
            <summary>
1743
            Doesn't need to check PrivateBinding setting: no method that is part of the event is public the entire event is private. 
1744
            If the code has already a reference to the event tracker instance for a private event its "static-ness" is not influenced 
1745
            by private-binding setting.
1746
            </summary>
1747
        </member>
1748
        <member name="M:Microsoft.Scripting.Actions.EventTracker.GetComHandlerList(System.Object)">
1749
            <summary>
1750
            Gets the stub list for a COM Object.  For COM objects we store the stub list
1751
            directly on the object using the Marshal APIs.  This allows us to not have
1752
            any circular references to deal with via weak references which are challenging
1753
            in the face of COM.
1754
            </summary>
1755
        </member>
1756
        <member name="T:Microsoft.Scripting.Actions.EventTracker.HandlerList">
1757
            <summary>
1758
            Holds on a list of delegates hooked to the event. 
1759
            We need the list because we cannot enumerate the delegates hooked to CLR event and we need to do so in 
1760
            handler removal (we need to do custom delegate comparison there). If BCL enables the enumeration we could remove this.
1761
            </summary>
1762
        </member>
1763
        <member name="F:Microsoft.Scripting.Actions.EventTracker.ComHandlerList._handlers">
1764
            <summary>
1765
            Storage for the handlers - a key value pair of the callable object and the delegate handler.
1766
            </summary>
1767
        </member>
1768
        <member name="F:Microsoft.Scripting.Actions.EventTracker.NormalHandlerList._handlers">
1769
            <summary>
1770
            Storage for the handlers - a key value pair of the callable object and the delegate handler.
1771
            
1772
            The delegate handler is closed over the callable object.  Therefore as long as the object is alive the
1773
            delegate will stay alive and so will the callable object.  That means it's fine to have a weak reference
1774
            to both of these objects.
1775
            </summary>
1776
        </member>
1777
        <member name="T:Microsoft.Scripting.Actions.ExtensionMethodTracker">
1778
            <summary>
1779
            Represents extension method.
1780
            </summary>
1781
        </member>
1782
        <member name="F:Microsoft.Scripting.Actions.ExtensionMethodTracker._declaringType">
1783
            <summary>
1784
            The declaring type of the extension (the type this extension method extends)
1785
            </summary>
1786
        </member>
1787
        <member name="P:Microsoft.Scripting.Actions.ExtensionMethodTracker.DeclaringType">
1788
            <summary>
1789
            The declaring type of the extension method. Since this is an extension method,
1790
            the declaring type is in fact the type this extension method extends,
1791
            not Method.DeclaringType
1792
            </summary>
1793
        </member>
1794
        <member name="T:Microsoft.Scripting.Actions.MemberGroup">
1795
            <summary>
1796
            MemberGroups are a collection of MemberTrackers which are commonly produced
1797
            on-demand to talk about the available members.  They can consist of a mix of
1798
            different member types or multiple membes of the same type.
1799
            
1800
            The most common source of MemberGroups is from ActionBinder.GetMember.  From here
1801
            the DLR will perform binding to the MemberTrackers frequently producing the value
1802
            resulted from the user.  If the result of the action produces a member it's self
1803
            the ActionBinder can provide the value exposed to the user via ReturnMemberTracker.
1804
            
1805
            ActionBinder provides default functionality for both getting members from a type
1806
            as well as exposing the members to the user.  Getting members from the type maps
1807
            closely to reflection and exposing them to the user exposes the MemberTrackers
1808
            directly.
1809
            </summary>
1810
        </member>
1811
        <member name="T:Microsoft.Scripting.Actions.MemberTracker">
1812
            <summary>
1813
            Represents a logical member of a type.  The member could either be real concrete member on a type or
1814
            an extension member.
1815
            
1816
            This seperates the "physical" members that .NET knows exist on types from the members that
1817
            logically exist on a type.  It also provides other abstractions above the level of .NET reflection
1818
            such as MemberGroups and NamespaceTracker's.
1819
            
1820
            It also provides a wrapper around the reflection APIs which cannot be extended from partial trust.
1821
            </summary>
1822
        </member>
1823
        <member name="T:Microsoft.Scripting.Actions.MemberTracker.MemberKey">
1824
            <summary>
1825
            We ensure we only produce one MemberTracker for each member which logically lives on the declaring type.  So 
1826
            for example if you get a member from a derived class which is declared on the base class it should be the same 
1827
            as getting the member from the base class.  That’s easy enough until you get into extension members – here there
1828
            might be one extension member which is being applied to multiple types.  Therefore we need to take into account the 
1829
            extension type when ensuring that we only have 1 MemberTracker ever created.
1830
            </summary>
1831
        </member>
1832
        <member name="P:Microsoft.Scripting.Actions.MemberTracker.MemberType">
1833
            <summary>
1834
            The type of member tracker.
1835
            </summary>
1836
        </member>
1837
        <member name="P:Microsoft.Scripting.Actions.MemberTracker.DeclaringType">
1838
            <summary>
1839
            The logical declaring type of the member.
1840
            </summary>
1841
        </member>
1842
        <member name="P:Microsoft.Scripting.Actions.MemberTracker.Name">
1843
            <summary>
1844
            The name of the member.
1845
            </summary>
1846
        </member>
1847
        <member name="M:Microsoft.Scripting.Actions.MemberTracker.GetValue(Microsoft.Scripting.Actions.Calls.OverloadResolverFactory,Microsoft.Scripting.Actions.ActionBinder,System.Type)">
1848
            <summary>
1849
            Gets the expression that creates the value.  
1850
            
1851
            Returns null if it's an error to get the value.  The caller can then call GetErrorForGet to get 
1852
            the correct error Expression (or null if they should provide a default).
1853
            </summary>
1854
        </member>
1855
        <member name="M:Microsoft.Scripting.Actions.MemberTracker.SetValue(Microsoft.Scripting.Actions.Calls.OverloadResolverFactory,Microsoft.Scripting.Actions.ActionBinder,System.Type,System.Dynamic.DynamicMetaObject)">
1856
            <summary>
1857
            Gets an expression that assigns a value to the left hand side.
1858
            
1859
            Returns null if it's an error to assign to.  The caller can then call GetErrorForSet to
1860
            get the correct error Expression (or null if a default error should be provided).
1861
            </summary>
1862
        </member>
1863
        <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)">
1864
            <summary>
1865
            Gets an expression that assigns a value to the left hand side.
1866
            
1867
            Returns null if it's an error to assign to.  The caller can then call GetErrorForSet to
1868
            get the correct error Expression (or null if a default error should be provided).
1869
            </summary>
1870
        </member>
1871
        <member name="M:Microsoft.Scripting.Actions.MemberTracker.Call(Microsoft.Scripting.Actions.Calls.OverloadResolverFactory,Microsoft.Scripting.Actions.ActionBinder,System.Dynamic.DynamicMetaObject[])">
1872
            <summary>
1873
            Gets an expression that performs a call on the object using the specified arguments.
1874
            
1875
            Returns null if it's an error to perform the specific operation.  The caller can then call 
1876
            GetErrorsForDoCall to get the correct error Expression (or null if a default error should be provided).
1877
            </summary>
1878
        </member>
1879
        <member name="M:Microsoft.Scripting.Actions.MemberTracker.GetError(Microsoft.Scripting.Actions.ActionBinder,System.Type)">
1880
            <summary>
1881
            Returns the error associated with getting the value.  
1882
            
1883
            A null return value indicates that the default error message should be provided by the caller.
1884
            </summary>
1885
        </member>
1886
        <member name="M:Microsoft.Scripting.Actions.MemberTracker.GetBoundError(Microsoft.Scripting.Actions.ActionBinder,System.Dynamic.DynamicMetaObject,System.Type)">
1887
            <summary>
1888
            Returns the error associated with accessing this member via a bound instance.
1889
            
1890
            A null return value indicates that the default error message should be provided by the caller.
1891
            </summary>
1892
        </member>
1893
        <member name="M:Microsoft.Scripting.Actions.MemberTracker.GetBoundValue(Microsoft.Scripting.Actions.Calls.OverloadResolverFactory,Microsoft.Scripting.Actions.ActionBinder,System.Type,System.Dynamic.DynamicMetaObject)">
1894
            <summary>
1895
            Helper for getting values that have been bound.  Called from BoundMemberTracker.  Custom member
1896
            trackers can override this to provide their own behaviors when bound to an instance.
1897
            </summary>
1898
        </member>
1899
        <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)">
1900
            <summary>
1901
            Helper for setting values that have been bound.  Called from BoundMemberTracker.  Custom member
1902
            trackers can override this to provide their own behaviors when bound to an instance.
1903
            </summary>
1904
        </member>
1905
        <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)">
1906
            <summary>
1907
            Helper for setting values that have been bound.  Called from BoundMemberTracker.  Custom member
1908
            trackers can override this to provide their own behaviors when bound to an instance.
1909
            </summary>
1910
        </member>
1911
        <member name="M:Microsoft.Scripting.Actions.MemberTracker.BindToInstance(System.Dynamic.DynamicMetaObject)">
1912
            <summary>
1913
            Binds the member tracker to the specified instance rturning a new member tracker if binding 
1914
            is possible.  If binding is not possible the existing member tracker will be returned.  For example
1915
            binding to a static field results in returning the original MemberTracker.  Binding to an instance
1916
            field results in a new BoundMemberTracker which will get GetBoundValue/SetBoundValue to pass the
1917
            instance through.
1918
            </summary>
1919
        </member>
1920
        <member name="T:Microsoft.Scripting.Actions.MethodGroup">
1921
            <summary>
1922
            MethodGroup's represent a unique collection of method's.  Typically this
1923
            unique set is all the methods which are overloaded by the same name including
1924
            methods with different arity.  These methods represent a single logically
1925
            overloaded element of a .NET type.
1926
            
1927
            The base DLR binders will produce MethodGroup's when provided with a MemberGroup
1928
            which contains only methods.  The MethodGroup's will be unique instances per
1929
            each unique group of methods.
1930
            </summary>
1931
        </member>
1932
        <member name="M:Microsoft.Scripting.Actions.MethodGroup.MakeGenericMethod(System.Type[])">
1933
            <summary>
1934
            Returns a BuiltinFunction bound to the provided type arguments.  Returns null if the binding
1935
            cannot be performed.
1936
            </summary>
1937
        </member>
1938
        <member name="T:Microsoft.Scripting.Actions.NamespaceTracker">
1939
            <summary>
1940
            NamespaceTracker represent a CLS namespace.
1941
            </summary>
1942
        </member>
1943
        <member name="M:Microsoft.Scripting.Actions.NamespaceTracker.LoadAllTypes">
1944
            <summary>
1945
            Loads all the types from all assemblies that contribute to the current namespace (but not child namespaces)
1946
            </summary>
1947
        </member>
1948
        <member name="M:Microsoft.Scripting.Actions.NamespaceTracker.GetOrMakePackageHierarchy(System.Reflection.Assembly,System.String)">
1949
            <summary>
1950
            Populates the tree with nodes for each part of the namespace
1951
            </summary>
1952
            <param name="assem"></param>
1953
            <param name="fullNamespace">Full namespace name. It can be null (for top-level types)</param>
1954
            <returns></returns>
1955
        </member>
1956
        <member name="M:Microsoft.Scripting.Actions.NamespaceTracker.CheckForUnlistedType(System.String)">
1957
            <summary>
1958
            As a fallback, so if the type does exist in any assembly. This would happen if a new type was added
1959
            that was not in the hardcoded list of types. 
1960
            This code is not accurate because:
1961
            1. We dont deal with generic types (TypeCollision). 
1962
            2. Previous calls to GetCustomMemberNames (eg. "from foo import *" in Python) would not have included this type.
1963
            3. This does not deal with new namespaces added to the assembly
1964
            </summary>
1965
        </member>
1966
        <member name="T:Microsoft.Scripting.Actions.NamespaceTracker.TypeNames">
1967
            <summary>
1968
            This stores all the public non-nested type names in a single namespace and from a single assembly.
1969
            This allows inspection of the namespace without eagerly loading all the types. Eagerly loading
1970
            types slows down startup, increases working set, and is semantically incorrect as it can trigger
1971
            TypeLoadExceptions sooner than required.
1972
            </summary>
1973
        </member>
1974
        <member name="T:Microsoft.Scripting.Actions.PropertyTracker">
1975
            <summary>
1976
            Represents a logical Property as a member of a Type.  This Property can either be a real 
1977
            concrete Property on a type (implemented with a ReflectedPropertyTracker) or an extension
1978
            property (implemented with an ExtensionPropertyTracker).
1979
            </summary>
1980
        </member>
1981
        <member name="T:Microsoft.Scripting.Actions.TopNamespaceTracker">
1982
            <summary>
1983
            Represents the top reflected package which contains extra information such as
1984
            all the assemblies loaded and the built-in modules.
1985
            </summary>
1986
        </member>
1987
        <member name="M:Microsoft.Scripting.Actions.TopNamespaceTracker.TryGetPackage(System.String)">
1988
            <summary>
1989
            returns the package associated with the specified namespace and
1990
            updates the associated module to mark the package as imported.
1991
            </summary>
1992
        </member>
1993
        <member name="M:Microsoft.Scripting.Actions.TopNamespaceTracker.LoadAssembly(System.Reflection.Assembly)">
1994
            <summary>
1995
            Ensures that the assembly is loaded
1996
            </summary>
1997
            <param name="assem"></param>
1998
            <returns>true if the assembly was loaded for the first time. 
1999
            false if the assembly had already been loaded before</returns>
2000
        </member>
2001
        <member name="M:Microsoft.Scripting.Actions.TopNamespaceTracker.PublishComTypes(System.Reflection.Assembly)">
2002
            <summary>
2003
            When an (interop) assembly is loaded, we scan it to discover the GUIDs of COM interfaces so that we can
2004
            associate the type definition with COM objects with that GUID.
2005
            Since scanning all loaded assemblies can be expensive, in the future, we might consider a more explicit 
2006
            user binder to trigger scanning of COM types.
2007
            </summary>
2008
        </member>
2009
        <member name="F:Microsoft.Scripting.Actions.TrackerTypes.Constructor">
2010
            <summary> Specifies that the member is a constructor, representing a ConstructorTracker </summary>
2011
        </member>
2012
        <member name="F:Microsoft.Scripting.Actions.TrackerTypes.Event">
2013
            <summary> Specifies that the member is an event, representing a EventTracker </summary>
2014
        </member>
2015
        <member name="F:Microsoft.Scripting.Actions.TrackerTypes.Field">
2016
            <summary> Specifies that the member is a field, representing a FieldTracker </summary>
2017
        </member>
2018
        <member name="F:Microsoft.Scripting.Actions.TrackerTypes.Method">
2019
            <summary> Specifies that the member is a method, representing a MethodTracker </summary>
2020
        </member>
2021
        <member name="F:Microsoft.Scripting.Actions.TrackerTypes.Property">
2022
            <summary> Specifies that the member is a property, representing a PropertyTracker </summary>
2023
        </member>
2024
        <member name="F:Microsoft.Scripting.Actions.TrackerTypes.Type">
2025
            <summary> Specifies that the member is a property, representing a TypeTracker </summary>
2026
        </member>
2027
        <member name="F:Microsoft.Scripting.Actions.TrackerTypes.Namespace">
2028
            <summary> Specifies that the member is a namespace, representing a NamespaceTracker </summary>
2029
        </member>
2030
        <member name="F:Microsoft.Scripting.Actions.TrackerTypes.MethodGroup">
2031
            <summary> Specifies that the member is a group of method overloads, representing a MethodGroup</summary>
2032
        </member>
2033
        <member name="F:Microsoft.Scripting.Actions.TrackerTypes.TypeGroup">
2034
            <summary> Specifies that the member is a group of types that very by arity, representing a TypeGroup</summary>
2035
        </member>
2036
        <member name="F:Microsoft.Scripting.Actions.TrackerTypes.Custom">
2037
            <summary> Specifies that the member is a custom meber, represetning a CustomTracker </summary>
2038
        </member>
2039
        <member name="F:Microsoft.Scripting.Actions.TrackerTypes.Bound">
2040
            <summary> Specifies that the member is a bound to an instance, representing a BoundMemberTracker</summary>        
2041
        </member>
2042
        <member name="T:Microsoft.Scripting.Actions.TypeGroup">
2043
            <summary>
2044
            A TypeCollision is used when we have a collision between
2045
            two types with the same name.  Currently this is only possible w/ generic
2046
            methods that should logically have arity as a portion of their name. For eg:
2047
                 System.EventHandler and System.EventHandler[T]
2048
                 System.Nullable and System.Nullable[T]
2049
                 System.IComparable and System.IComparable[T]
2050
            
2051
            The TypeCollision provides an indexer but also is a real type.  When used
2052
            as a real type it is the non-generic form of the type.
2053
            
2054
            The indexer allows the user to disambiguate between the generic and
2055
            non-generic versions.  Therefore users must always provide additional
2056
            information to get the generic version.
2057
            </summary>
2058
        </member>
2059
        <member name="M:Microsoft.Scripting.Actions.TypeGroup.UpdateTypeEntity(Microsoft.Scripting.Actions.TypeTracker,Microsoft.Scripting.Actions.TypeTracker)">
2060
            <param name="existingTypeEntity">The merged list so far. Could be null</param>
2061
            <param name="newType">The new type(s) to add to the merged list</param>
2062
            <returns>The merged list.  Could be a TypeTracker or TypeGroup</returns>
2063
        </member>
2064
        <member name="M:Microsoft.Scripting.Actions.TypeGroup.GetGenericArity(System.Type)">
2065
            <summary> Gets the arity of generic parameters</summary>
2066
        </member>
2067
        <member name="M:Microsoft.Scripting.Actions.TypeGroup.GetNonGenericType">
2068
            <exception cref="T:System.TypeLoadException">No non-generic type is represented by this group.</exception>
2069
        </member>
2070
        <member name="P:Microsoft.Scripting.Actions.TypeGroup.DeclaringType">
2071
            <summary>
2072
            This returns the DeclaringType of all the types in the TypeGroup
2073
            </summary>
2074
        </member>
2075
        <member name="P:Microsoft.Scripting.Actions.TypeGroup.Name">
2076
            <summary>
2077
            This returns the base name of the TypeGroup (the name shared by all types minus arity)
2078
            </summary>
2079
        </member>
2080
        <member name="P:Microsoft.Scripting.Actions.TypeGroup.Type">
2081
            <summary>
2082
            This will return the result only for the non-generic type if one exists, and will throw 
2083
            an exception if all types in the TypeGroup are generic
2084
            </summary>
2085
        </member>
2086
        <member name="P:Microsoft.Scripting.Actions.TypeGroup.IsPublic">
2087
            <summary>
2088
            This will return the result only for the non-generic type if one exists, and will throw 
2089
            an exception if all types in the TypeGroup are generic
2090
            </summary>
2091
        </member>
2092
        <member name="M:Microsoft.Scripting.Actions.TypeTracker.op_Explicit(Microsoft.Scripting.Actions.TypeTracker)~System.Type">
2093
            <summary>
2094
            Enables implicit Type to TypeTracker conversions accross dynamic languages.
2095
            </summary>
2096
        </member>
2097
        <member name="M:Microsoft.Scripting.Ast.BlockBuilder.ToExpression">
2098
            <summary>
2099
            Returns <c>null</c> if no expression was added into the builder.
2100
            If only a single expression was added returns it.
2101
            Otherwise returns a <see cref="T:System.Linq.Expressions.BlockExpression"/> containing the expressions added to the builder.
2102
            </summary>
2103
        </member>
2104
        <member name="P:Microsoft.Scripting.Ast.ExpressionCollectionBuilder`1.Expressions">
2105
            <summary>
2106
            If the number of items added to the builder is greater than 4 returns a read-only collection builder containing all the items.
2107
            Returns <c>null</c> otherwise.
2108
            </summary>
2109
        </member>
2110
        <member name="T:Microsoft.Scripting.Ast.FinallyFlowControlExpression">
2111
            <summary>
2112
            Wrapping a tree in this node enables jumps from finally blocks
2113
            It does this by generating control-flow logic in the tree
2114
            
2115
            Reducing this node requires a full tree walk of its body
2116
            (but not nested lambdas)
2117
            
2118
            WARNING: this node cannot contain jumps across blocks, because it
2119
            assumes any unknown jumps are jumps to an outer scope.
2120
            </summary>
2121
        </member>
2122
        <member name="T:Microsoft.Scripting.Ast.Utils">
2123
            <summary>
2124
            Factory methods.
2125
            </summary>
2126
        </member>
2127
        <member name="M:Microsoft.Scripting.Ast.Utils.IsAssignment(System.Linq.Expressions.ExpressionType)">
2128
            <summary>
2129
            Determines whether specified expression type represents an assignment.
2130
            </summary>
2131
            <returns>
2132
            True if the expression type represents an assignment.
2133
            </returns>
2134
            <remarks>
2135
            Note that some other nodes can also assign to variables, members or array items:
2136
            MemberInit, NewArrayInit, Call with ref params, New with ref params, Dynamic with ref params.
2137
            </remarks>
2138
        </member>
2139
        <member name="M:Microsoft.Scripting.Ast.Utils.GetLValueAccess(System.Linq.Expressions.ExpressionType)">
2140
            <summary>
2141
            Determines if the left child of the given expression is read or written to or both.
2142
            </summary>
2143
        </member>
2144
        <member name="M:Microsoft.Scripting.Ast.Utils.Void(System.Linq.Expressions.Expression)">
2145
            <summary>
2146
            Converts an expression to a void type.
2147
            </summary>
2148
            <param name="expression">An <see cref="T:System.Linq.Expressions.Expression"/> to convert to void. </param>
2149
            <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>
2150
        </member>
2151
        <member name="M:Microsoft.Scripting.Ast.Utils.Box(System.Linq.Expressions.Expression)">
2152
            <summary>
2153
            Returns an expression that boxes a given value. Uses boxed objects cache for Int32 and Boolean types.
2154
            </summary>
2155
        </member>
2156
        <member name="M:Microsoft.Scripting.Ast.Utils.Generator(System.Linq.Expressions.LabelTarget,System.Linq.Expressions.Expression)">
2157
            <summary>
2158
            Creates a generator with type IEnumerable{T}, where T is the label.Type
2159
            </summary>
2160
        </member>
2161
        <member name="M:Microsoft.Scripting.Ast.Utils.TransformEnumerable(System.Linq.Expressions.Expression,System.Collections.ObjectModel.ReadOnlyCollection{System.Linq.Expressions.ParameterExpression})">
2162
            
2163
        </member>
2164
        <member name="M:Microsoft.Scripting.Ast.Utils.Coalesce(System.Linq.Expressions.Expression,System.Linq.Expressions.Expression,System.Linq.Expressions.ParameterExpression@)">
2165
            <summary>
2166
            Null coalescing expression
2167
            {result} ::= ((tmp = {_left}) == null) ? {right} : tmp
2168
            '??' operator in C#.
2169
            </summary>
2170
        </member>
2171
        <member name="M:Microsoft.Scripting.Ast.Utils.CoalesceTrue(System.Linq.Expressions.Expression,System.Linq.Expressions.Expression,System.Reflection.MethodInfo,System.Linq.Expressions.ParameterExpression@)">
2172
            <summary>
2173
            True coalescing expression.
2174
            {result} ::= IsTrue(tmp = {left}) ? {right} : tmp
2175
            Generalized AND semantics.
2176
            </summary>
2177
        </member>
2178
        <member name="M:Microsoft.Scripting.Ast.Utils.CoalesceFalse(System.Linq.Expressions.Expression,System.Linq.Expressions.Expression,System.Reflection.MethodInfo,System.Linq.Expressions.ParameterExpression@)">
2179
            <summary>
2180
            False coalescing expression.
2181
            {result} ::= IsTrue(tmp = {left}) ? tmp : {right}
2182
            Generalized OR semantics.
2183
            </summary>
2184
        </member>
2185
        <member name="M:Microsoft.Scripting.Ast.Utils.CoalesceTrue(Microsoft.Scripting.Ast.LambdaBuilder,System.Linq.Expressions.Expression,System.Linq.Expressions.Expression,System.Reflection.MethodInfo)">
2186
            <summary>
2187
            True coalescing expression.
2188
            {result} ::= IsTrue(tmp = {left}) ? {right} : tmp
2189
            Generalized AND semantics.
2190
            </summary>
2191
        </member>
2192
        <member name="M:Microsoft.Scripting.Ast.Utils.CoalesceFalse(Microsoft.Scripting.Ast.LambdaBuilder,System.Linq.Expressions.Expression,System.Linq.Expressions.Expression,System.Reflection.MethodInfo)">
2193
            <summary>
2194
            False coalescing expression.
2195
            {result} ::= IsTrue(tmp = {left}) ? tmp : {right}
2196
            Generalized OR semantics.
2197
            </summary>
2198
        </member>
2199
        <member name="M:Microsoft.Scripting.Ast.Utils.WeakConstant(System.Object)">
2200
            <summary>
2201
            Wraps the given value in a WeakReference and returns a tree that will retrieve
2202
            the value from the WeakReference.
2203
            </summary>
2204
        </member>
2205
        <member name="M:Microsoft.Scripting.Ast.Utils.Lambda(System.Type,System.String)">
2206
            <summary>
2207
            Creates new instance of the LambdaBuilder with the specified name and return type.
2208
            </summary>
2209
            <param name="returnType">Return type of the lambda being built.</param>
2210
            <param name="name">Name for the lambda being built.</param>
2211
            <returns>new LambdaBuilder instance</returns>
2212
        </member>
2213
        <member name="M:Microsoft.Scripting.Ast.Utils.SimpleCallHelper(System.Reflection.MethodInfo,System.Linq.Expressions.Expression[])">
2214
            <summary>
2215
            The helper to create the AST method call node. Will add conversions (Utils.Convert)
2216
            to parameters and instance if necessary.
2217
            </summary>
2218
        </member>
2219
        <member name="M:Microsoft.Scripting.Ast.Utils.SimpleCallHelper(System.Linq.Expressions.Expression,System.Reflection.MethodInfo,System.Linq.Expressions.Expression[])">
2220
            <summary>
2221
            The helper to create the AST method call node. Will add conversions (Utils.Convert)
2222
            to parameters and instance if necessary.
2223
            </summary>
2224
        </member>
2225
        <member name="M:Microsoft.Scripting.Ast.Utils.ComplexCallHelper(System.Reflection.MethodInfo,System.Linq.Expressions.Expression[])">
2226
            <summary>
2227
            The complex call helper to create the AST method call node.
2228
            Will add conversions (Expression.Convert()), deals with default parameter values and params arrays.
2229
            </summary>
2230
        </member>
2231
        <member name="T:Microsoft.Scripting.Ast.FlowControlRewriter">
2232
            <summary>
2233
            The purpose of this rewriter is simple: ETs do not allow jumps (break, continue, return, goto)
2234
            that would go through a finally/fault. So we replace them with code that instead stores a flag,
2235
            and then jumps to the end of the finally/fault. At the end of the try-finally, we emit a switch
2236
            that then jumps to the correct label.
2237
            
2238
            A few things that make this more complicated:
2239
            
2240
              1. If a finally contains a jump out, then jumps in the try/catch need to be replaced as well.
2241
                 It's to support cases like this:
2242
                     # returns 234
2243
                     def foo():
2244
                         try: return 123
2245
                         finally: return 234 
2246
                 
2247
                 We need to replace the "return 123" because after it jumps, we'll go to the finally, which
2248
                 might decide to jump again, but once the IL finally exits, it ignores the finally jump and
2249
                 keeps going with the original jump. The moral of the story is: if any jumps in finally are
2250
                 rewritten, try/catch jumps must be also.
2251
                 
2252
             2. To generate better code, we only have one state variable, so if we have to jump out of
2253
                multiple finallys we just keep jumping. It looks sort of like this:
2254
                  foo:
2255
                  try { ... } finally {
2256
                      try { ... } finally {
2257
                        ...
2258
                        if (...) {
2259
                            // was: goto foo;
2260
                            $flow = 1; goto endInnerFinally; 
2261
                        }
2262
                        ...
2263
                        endInnerFinally:
2264
                      }
2265
                      switch ($flow) {
2266
                          case 1: goto endOuterFinally;
2267
                      }
2268
                      ...
2269
                      endOuterFinally:
2270
                  }
2271
                  switch ($flow) {
2272
                    case 1: $flow = 0; goto foo;
2273
                  }
2274
                  ...
2275
            
2276
            </summary>
2277
        </member>
2278
        <member name="T:Microsoft.Scripting.Ast.ILightExceptionAwareExpression">
2279
            <summary>
2280
            Implemented by expressions which can provide a version which is aware of light exceptions.  
2281
            
2282
            Normally these expressions will simply reduce to a version which throws a real exception.
2283
            When the expression is used inside of a region of code which supports light exceptions
2284
            the light exception re-writer will call ReduceForLightExceptions.  The expression can
2285
            then return a new expression which can return a light exception rather than throwing
2286
            a real .NET exception.
2287
            </summary>
2288
        </member>
2289
        <member name="T:Microsoft.Scripting.Ast.LightCheckAndThrowExpression">
2290
            <summary>
2291
            Provides a method call to a method which may return light exceptions. 
2292
            
2293
            The call is to a method which supports light exceptions.  When reducing
2294
            an additional check and throw is added.  When a block code of is re-written
2295
            for light exceptions this instead reduces to not throw a .NET exception.
2296
            </summary>
2297
        </member>
2298
        <member name="T:Microsoft.Scripting.Ast.LightThrowExpression">
2299
            <summary>
2300
            Expression which produces a light exception value.  This should be constructed
2301
            with the expression which creates the exception and this method will then call
2302
            a helper method which wraps the exception in our internal light exception class.
2303
            </summary>
2304
        </member>
2305
        <member name="T:Microsoft.Scripting.Ast.LightExceptionRewriter">
2306
            <summary>
2307
            Internal re-writer class which creates code which is light exception aware.
2308
            </summary>
2309
        </member>
2310
        <member name="T:Microsoft.Scripting.Ast.LightExceptionRewriter.LightExceptionRewrittenCode">
2311
            <summary>
2312
            Class used to be avoid overhead of creating expression trees when we're usually 
2313
            </summary>
2314
        </member>
2315
        <member name="M:Microsoft.Scripting.Ast.LightExceptionRewriter.CheckExpression(System.Linq.Expressions.Expression,System.Type)">
2316
            <summary>
2317
            Adds light exception handling to the provided expression which
2318
            is light exception aware.
2319
            </summary>
2320
        </member>
2321
        <member name="T:Microsoft.Scripting.Ast.GeneratorExpression">
2322
            <summary>
2323
            A parameterless generator, that is of type IEnumerable, IEnumerable{T},
2324
            IEnumerator, or IEnumerator{T}. Its body can contain a series of
2325
            YieldExpressions. Each call into MoveNext on the enumerator reenters
2326
            the generator, and executes until it reaches a YieldReturn or YieldBreak
2327
            expression
2328
            </summary>
2329
        </member>
2330
        <member name="P:Microsoft.Scripting.Ast.GeneratorExpression.Target">
2331
            <summary>
2332
            The label used by YieldBreak and YieldReturn expressions to yield
2333
            from this generator
2334
            </summary>
2335
        </member>
2336
        <member name="P:Microsoft.Scripting.Ast.GeneratorExpression.Body">
2337
            <summary>
2338
            The body of the generator, which can contain YieldBreak and
2339
            YieldReturn expressions
2340
            </summary>
2341
        </member>
2342
        <member name="P:Microsoft.Scripting.Ast.GeneratorExpression.RewriteAssignments">
2343
            <summary>
2344
            Indicates whether the lhs instances are preserved when assignments
2345
            are made to expressions containing yields.
2346
            </summary>
2347
        </member>
2348
        <member name="T:Microsoft.Scripting.Ast.GeneratorRewriter">
2349
            <summary>
2350
            When finding a yield return or yield break, this rewriter flattens out
2351
            containing blocks, scopes, and expressions with stack state. All
2352
            scopes encountered have their variables promoted to the generator's
2353
            closure, so they survive yields.
2354
            </summary>
2355
        </member>
2356
        <member name="M:Microsoft.Scripting.Ast.GeneratorRewriter.MakeAssign(System.Linq.Expressions.ParameterExpression,System.Linq.Expressions.Expression)">
2357
            <summary>
2358
            Makes an assignment to this variable. Pushes the assignment as far
2359
            into the right side as possible, to allow jumps into it.
2360
            </summary>
2361
        </member>
2362
        <member name="M:Microsoft.Scripting.Ast.GeneratorRewriter.IsConstant(System.Linq.Expressions.Expression)">
2363
            <summary>
2364
            Returns true if the expression remains constant no matter when it is evaluated.
2365
            </summary>
2366
        </member>
2367
        <member name="T:Microsoft.Scripting.Ast.YieldExpression">
2368
            <summary>
2369
            Represents either a YieldBreak or YieldReturn in a GeneratorExpression
2370
            If Value is non-null, it's a YieldReturn; otherwise it's a YieldBreak
2371
            and executing it will stop enumeration of the generator, causing
2372
            MoveNext to return false.
2373
            </summary>
2374
        </member>
2375
        <member name="P:Microsoft.Scripting.Ast.YieldExpression.Value">
2376
            <summary>
2377
            The value yieled from this expression, if it is a yield return
2378
            </summary>
2379
        </member>
2380
        <member name="P:Microsoft.Scripting.Ast.YieldExpression.Target">
2381
            <summary>
2382
            The label used to yield from this generator
2383
            </summary>
2384
        </member>
2385
        <member name="T:Microsoft.Scripting.Ast.LambdaBuilder">
2386
            <summary>
2387
            The builder for creating the LambdaExpression node.
2388
            
2389
            Since the nodes require that parameters and variables are created
2390
            before hand and then passed to the factories creating LambdaExpression
2391
            this builder keeps track of the different pieces and at the end creates
2392
            the LambdaExpression.
2393
            
2394
            TODO: This has some functionality related to CodeContext that should be
2395
            removed, in favor of languages handling their own local scopes
2396
            </summary>
2397
        </member>
2398
        <member name="P:Microsoft.Scripting.Ast.LambdaBuilder.Name">
2399
            <summary>
2400
            The name of the lambda.
2401
            Currently anonymous/unnamed lambdas are not allowed.
2402
            </summary>
2403
        </member>
2404
        <member name="P:Microsoft.Scripting.Ast.LambdaBuilder.ReturnType">
2405
            <summary>
2406
            Return type of the lambda being created.
2407
            </summary>
2408
        </member>
2409
        <member name="P:Microsoft.Scripting.Ast.LambdaBuilder.Locals">
2410
            <summary>
2411
            List of lambda's local variables for direct manipulation.
2412
            </summary>
2413
        </member>
2414
        <member name="P:Microsoft.Scripting.Ast.LambdaBuilder.Parameters">
2415
            <summary>
2416
            List of lambda's parameters for direct manipulation
2417
            </summary>
2418
        </member>
2419
        <member name="P:Microsoft.Scripting.Ast.LambdaBuilder.ParamsArray">
2420
            <summary>
2421
            The params array argument, if any.
2422
            </summary>
2423
        </member>
2424
        <member name="P:Microsoft.Scripting.Ast.LambdaBuilder.Body">
2425
            <summary>
2426
            The body of the lambda. This must be non-null.
2427
            </summary>
2428
        </member>
2429
        <member name="P:Microsoft.Scripting.Ast.LambdaBuilder.Dictionary">
2430
            <summary>
2431
            The generated lambda should have dictionary of locals
2432
            instead of allocating them directly on the CLR stack.
2433
            </summary>
2434
        </member>
2435
        <member name="P:Microsoft.Scripting.Ast.LambdaBuilder.Visible">
2436
            <summary>
2437
            The scope is visible (default). Invisible if false.
2438
            </summary>
2439
        </member>
2440
        <member name="M:Microsoft.Scripting.Ast.LambdaBuilder.Parameter(System.Type,System.String)">
2441
            <summary>
2442
            Creates a parameter on the lambda with a given name and type.
2443
            
2444
            Parameters maintain the order in which they are created,
2445
            however custom ordering is possible via direct access to
2446
            Parameters collection.
2447
            </summary>
2448
        </member>
2449
        <member name="M:Microsoft.Scripting.Ast.LambdaBuilder.ClosedOverParameter(System.Type,System.String)">
2450
            <summary>
2451
            Creates a parameter on the lambda with a given name and type.
2452
            
2453
            Parameters maintain the order in which they are created,
2454
            however custom ordering is possible via direct access to
2455
            Parameters collection.
2456
            </summary>
2457
        </member>
2458
        <member name="M:Microsoft.Scripting.Ast.LambdaBuilder.AddParameters(System.Linq.Expressions.ParameterExpression[])">
2459
            <summary>
2460
            adds existing parameter to the lambda.
2461
            
2462
            Parameters maintain the order in which they are created,
2463
            however custom ordering is possible via direct access to
2464
            Parameters collection.
2465
            </summary>
2466
        </member>
2467
        <member name="M:Microsoft.Scripting.Ast.LambdaBuilder.CreateHiddenParameter(System.String,System.Type)">
2468
            <summary>
2469
            Creates a hidden parameter on the lambda with a given name and type.
2470
            
2471
            Parameters maintain the order in which they are created,
2472
            however custom ordering is possible via direct access to
2473
            Parameters collection.
2474
            </summary>
2475
        </member>
2476
        <member name="M:Microsoft.Scripting.Ast.LambdaBuilder.CreateParamsArray(System.Type,System.String)">
2477
            <summary>
2478
            Creates a params array argument on the labmda.
2479
            
2480
            The params array argument is added to the signature immediately. Before the lambda is
2481
            created, the builder validates that it is still the last (since the caller can modify
2482
            the order of parameters explicitly by maniuplating the parameter list)
2483
            </summary>
2484
        </member>
2485
        <member name="M:Microsoft.Scripting.Ast.LambdaBuilder.ClosedOverVariable(System.Type,System.String)">
2486
            <summary>
2487
            Creates a local variable with specified name and type.
2488
            TODO: simplify by pushing logic into callers
2489
            </summary>
2490
        </member>
2491
        <member name="M:Microsoft.Scripting.Ast.LambdaBuilder.Variable(System.Type,System.String)">
2492
            <summary>
2493
            Creates a local variable with specified name and type.
2494
            TODO: simplify by pushing logic into callers
2495
            </summary>
2496
        </member>
2497
        <member name="M:Microsoft.Scripting.Ast.LambdaBuilder.HiddenVariable(System.Type,System.String)">
2498
            <summary>
2499
            Creates a temporary variable with specified name and type.
2500
            </summary>
2501
        </member>
2502
        <member name="M:Microsoft.Scripting.Ast.LambdaBuilder.AddHiddenVariable(System.Linq.Expressions.ParameterExpression)">
2503
            <summary>
2504
            Adds the temporary variable to the list of variables maintained
2505
            by the builder. This is useful in cases where the variable is
2506
            created outside of the builder.
2507
            </summary>
2508
        </member>
2509
        <member name="M:Microsoft.Scripting.Ast.LambdaBuilder.MakeLambda(System.Type)">
2510
            <summary>
2511
            Creates the LambdaExpression from the builder.
2512
            After this operation, the builder can no longer be used to create other instances.
2513
            </summary>
2514
            <param name="lambdaType">Desired type of the lambda. </param>
2515
            <returns>New LambdaExpression instance.</returns>
2516
        </member>
2517
        <member name="M:Microsoft.Scripting.Ast.LambdaBuilder.MakeLambda">
2518
            <summary>
2519
            Creates the LambdaExpression from the builder.
2520
            After this operation, the builder can no longer be used to create other instances.
2521
            </summary>
2522
            <returns>New LambdaExpression instance.</returns>
2523
        </member>
2524
        <member name="M:Microsoft.Scripting.Ast.LambdaBuilder.MakeGenerator(System.Linq.Expressions.LabelTarget,System.Type)">
2525
            <summary>
2526
            Creates the generator LambdaExpression from the builder.
2527
            After this operation, the builder can no longer be used to create other instances.
2528
            </summary>
2529
            <returns>New LambdaExpression instance.</returns>
2530
        </member>
2531
        <member name="M:Microsoft.Scripting.Ast.LambdaBuilder.EnsureSignature(System.Type)">
2532
            <summary>
2533
            Fixes up lambda body and parameters to match the signature of the given delegate if needed.
2534
            </summary>
2535
            <param name="delegateType"></param>
2536
        </member>
2537
        <member name="M:Microsoft.Scripting.Ast.LambdaBuilder.Validate">
2538
            <summary>
2539
            Validates that the builder has enough information to create the lambda.
2540
            </summary>
2541
        </member>
2542
        <member name="T:Microsoft.Scripting.Debugging.CompilerServices.DebugLambdaInfo">
2543
            <summary>
2544
            Used by compilers to provide additional debug information about LambdaExpression to DebugContext
2545
            </summary>
2546
        </member>
2547
        <member name="T:Microsoft.Scripting.Debugging.CompilerServices.IDebugCompilerSupport">
2548
            <summary>
2549
            Implemented by compilers to allow the traceback engine to get additional information.
2550
            </summary>
2551
        </member>
2552
        <member name="T:Microsoft.Scripting.Debugging.CompilerServices.DebugContext">
2553
            <summary>
2554
            Provides services to compilers for instrumenting code with tracebacks.
2555
            </summary>
2556
        </member>
2557
        <member name="M:Microsoft.Scripting.Debugging.CompilerServices.DebugContext.CreateInstance">
2558
            <summary>
2559
            Creates a new instance of DebugContext
2560
            </summary>
2561
        </member>
2562
        <member name="M:Microsoft.Scripting.Debugging.CompilerServices.DebugContext.TransformLambda(System.Linq.Expressions.LambdaExpression,Microsoft.Scripting.Debugging.CompilerServices.DebugLambdaInfo)">
2563
            <summary>
2564
            Transforms a LambdaExpression to a debuggable LambdaExpression
2565
            </summary>
2566
        </member>
2567
        <member name="M:Microsoft.Scripting.Debugging.CompilerServices.DebugContext.TransformLambda(System.Linq.Expressions.LambdaExpression)">
2568
            <summary>
2569
            Transforms a LambdaExpression to a debuggable LambdaExpression
2570
            </summary>
2571
        </member>
2572
        <member name="M:Microsoft.Scripting.Debugging.CompilerServices.DebugContext.ResetSourceFile(System.String)">
2573
            <summary>
2574
            Resets a state associated with a source file that's maintained in the DebugContext
2575
            </summary>
2576
        </member>
2577
        <member name="P:Microsoft.Scripting.Debugging.CompilerServices.DebugContext.Threads">
2578
            <summary>
2579
            Threads
2580
            </summary>
2581
        </member>
2582
        <member name="P:Microsoft.Scripting.Debugging.CompilerServices.DebugContext.DebugCallback">
2583
            <summary>
2584
            Hook
2585
            </summary>
2586
        </member>
2587
        <member name="P:Microsoft.Scripting.Debugging.DebugFrame.Thread">
2588
            <summary>
2589
            Thread
2590
            </summary>
2591
        </member>
2592
        <member name="P:Microsoft.Scripting.Debugging.DebugFrame.StackDepth">
2593
            <summary>
2594
            FrameOrder
2595
            </summary>
2596
        </member>
2597
        <member name="P:Microsoft.Scripting.Debugging.DebugFrame.Variables">
2598
            <summary>
2599
            Variables
2600
            </summary>
2601
        </member>
2602
        <member name="P:Microsoft.Scripting.Debugging.DebugFrame.CurrentSequencePointIndex">
2603
            <summary>
2604
            CurrentSequencePointIndex
2605
            </summary>
2606
        </member>
2607
        <member name="M:Microsoft.Scripting.Debugging.DebugFrame.ReplaceLiftedLocals(System.Runtime.CompilerServices.IRuntimeVariables)">
2608
            <summary>
2609
            // This method is called from the generator to update the frame with generator's locals
2610
            </summary>
2611
        </member>
2612
        <member name="M:Microsoft.Scripting.Debugging.DebugFrame.RemapToGenerator(System.Int32)">
2613
            <summary>
2614
            Remaps the frame's state to use the generator for execution.
2615
            </summary>
2616
            <param name="version">Int32.MaxValue to map to latest version</param>
2617
        </member>
2618
        <member name="T:Microsoft.Scripting.Debugging.DebuggableLambdaBuilder">
2619
            <summary>
2620
            DebuggableLambdaBuilder is used to transform a DLR expression tree into a debuggable lambda expression.
2621
            </summary>
2622
        </member>
2623
        <member name="T:Microsoft.Scripting.Debugging.DebugGenerator`1">
2624
            <summary>
2625
            Used to wrap a lambda that was already a generator prior to transform.
2626
            </summary>
2627
        </member>
2628
        <member name="T:Microsoft.Scripting.Debugging.DebugInfoRewriter">
2629
            <summary>
2630
            Used to rewrite expressions containing DebugInfoExpressions.
2631
            </summary>
2632
        </member>
2633
        <member name="T:Microsoft.Scripting.Debugging.DebugSourceSpan">
2634
            <summary>
2635
            Combines source file and span.  Also provides Contains and Intersects functionality.
2636
            </summary>
2637
        </member>
2638
        <member name="T:Microsoft.Scripting.Debugging.DebugRuntimeVariables">
2639
            <summary>
2640
            Implementation of IDebugRuntimeVariables, which wraps IRuntimeVariables + FunctionInfo/DebugMarker
2641
            </summary>
2642
        </member>
2643
        <member name="T:Microsoft.Scripting.Debugging.DefaultDebugThread">
2644
            <summary>
2645
            Default implementation of BaseDebugThread, which uses DLR's RuntimeVariablesExpression for lifting locals.
2646
            </summary>
2647
        </member>
2648
        <member name="T:Microsoft.Scripting.Debugging.DefaultDebugThreadFactory">
2649
            <summary>
2650
            Default implementation of IDebugThreadFactory, which uses DLR's RuntimeVariablesExpression for lifting locals.
2651
            </summary>
2652
        </member>
2653
        <member name="P:Microsoft.Scripting.Debugging.FunctionInfo.SequencePoints">
2654
            <summary>
2655
            SequencePoints
2656
            </summary>
2657
        </member>
2658
        <member name="P:Microsoft.Scripting.Debugging.FunctionInfo.Name">
2659
            <summary>
2660
            Name
2661
            </summary>
2662
        </member>
2663
        <member name="P:Microsoft.Scripting.Debugging.FunctionInfo.CustomPayload">
2664
            <summary>
2665
            CustomPayload
2666
            </summary>
2667
        </member>
2668
        <member name="M:Microsoft.Scripting.Debugging.FunctionInfo.GetTraceLocations">
2669
            <summary>
2670
            GetTraceLocations
2671
            </summary>
2672
            <returns></returns>
2673
        </member>
2674
        <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)">
2675
            <summary>
2676
            Callback that is fired by the traceback engine
2677
            </summary>
2678
        </member>
2679
        <member name="T:Microsoft.Scripting.Debugging.LambdaWalker">
2680
            <summary>
2681
            Used to extract locals information from expressions.
2682
            </summary>
2683
        </member>
2684
        <member name="T:Microsoft.Scripting.Debugging.ErrorStrings">
2685
            <summary>
2686
               Strongly-typed and parameterized string factory.
2687
            </summary>
2688
        </member>
2689
        <member name="T:Microsoft.Scripting.Debugging.IDebugRuntimeVariables">
2690
            <summary>
2691
            IDebugRuntimeVariables is used to wrap IRuntimeVariables and add properties for retrieving
2692
            FunctionInfo and DebugMarker from debuggable labmdas.
2693
            </summary>
2694
        </member>
2695
        <member name="T:Microsoft.Scripting.Debugging.IDebugThreadFactory">
2696
            <summary>
2697
            IDebugThreadFactory is used to abstract how frames and local variables are maintained at run/debug time.
2698
            </summary>
2699
        </member>
2700
        <member name="T:Microsoft.Scripting.Debugging.ScopedRuntimeVariables">
2701
            <summary>
2702
            Implements IRuntimeVariables in a way that preserves scoping within the lambda.
2703
            </summary>
2704
        </member>
2705
        <member name="T:Microsoft.Scripting.Debugging.TracePipeline">
2706
            <summary>
2707
            TraceSession.
2708
            
2709
            Basically holds a list of last encountered DebugFrame instances 
2710
            (one per running thread).
2711
            </summary>
2712
        </member>
2713
        <member name="T:Microsoft.Scripting.Debugging.VariableInfo">
2714
            <summary>
2715
            Used to provide information about locals/parameters at debug time.
2716
            </summary>
2717
        </member>
2718
        <member name="P:Microsoft.Scripting.Debugging.VariableInfo.VariableType">
2719
            <summary>
2720
            Type
2721
            </summary>
2722
        </member>
2723
        <member name="P:Microsoft.Scripting.Debugging.VariableInfo.Name">
2724
            <summary>
2725
            Name
2726
            </summary>
2727
        </member>
2728
        <member name="P:Microsoft.Scripting.Debugging.VariableInfo.IsParameter">
2729
            <summary>
2730
            Parameter
2731
            </summary>
2732
        </member>
2733
        <member name="T:Microsoft.Scripting.Generation.FieldBuilderExpression">
2734
            <summary>
2735
            Provides a simple expression which enables embedding FieldBuilder's
2736
            in an AST before the type is complete.
2737
            </summary>
2738
        </member>
2739
        <member name="M:Microsoft.Scripting.Generation.ConstantCheck.Check(System.Linq.Expressions.Expression,System.Object)">
2740
            <summary>
2741
            Tests to see if the expression is a constant with the given value.
2742
            </summary>
2743
            <param name="expression">The expression to examine</param>
2744
            <param name="value">The constant value to check for.</param>
2745
            <returns>true/false</returns>
2746
        </member>
2747
        <member name="M:Microsoft.Scripting.Generation.ConstantCheck.IsConstant(System.Linq.Expressions.Expression,System.Object)">
2748
            <summary>
2749
            Tests to see if the expression is a constant with the given value.
2750
            </summary>
2751
            <param name="e">The expression to examine</param>
2752
            <param name="value">The constant value to check for.</param>
2753
            <returns>true/false</returns>
2754
        </member>
2755
        <member name="M:Microsoft.Scripting.Generation.ILGen.BeginCatchBlock(System.Type)">
2756
            <summary>
2757
            Begins a catch block.
2758
            </summary>
2759
        </member>
2760
        <member name="M:Microsoft.Scripting.Generation.ILGen.BeginExceptFilterBlock">
2761
            <summary>
2762
            Begins an exception block for a filtered exception.
2763
            </summary>
2764
        </member>
2765
        <member name="M:Microsoft.Scripting.Generation.ILGen.BeginExceptionBlock">
2766
            <summary>
2767
            Begins an exception block for a non-filtered exception.
2768
            </summary>
2769
            <returns></returns>
2770
        </member>
2771
        <member name="M:Microsoft.Scripting.Generation.ILGen.BeginFaultBlock">
2772
            <summary>
2773
            Begins an exception fault block
2774
            </summary>
2775
        </member>
2776
        <member name="M:Microsoft.Scripting.Generation.ILGen.BeginFinallyBlock">
2777
            <summary>
2778
            Begins a finally block
2779
            </summary>
2780
        </member>
2781
        <member name="M:Microsoft.Scripting.Generation.ILGen.EndExceptionBlock">
2782
            <summary>
2783
            Ends an exception block.
2784
            </summary>
2785
        </member>
2786
        <member name="M:Microsoft.Scripting.Generation.ILGen.BeginScope">
2787
            <summary>
2788
            Begins a lexical scope.
2789
            </summary>
2790
        </member>
2791
        <member name="M:Microsoft.Scripting.Generation.ILGen.EndScope">
2792
            <summary>
2793
            Ends a lexical scope.
2794
            </summary>
2795
        </member>
2796
        <member name="M:Microsoft.Scripting.Generation.ILGen.DeclareLocal(System.Type)">
2797
            <summary>
2798
            Declares a local variable of the specified type.
2799
            </summary>
2800
        </member>
2801
        <member name="M:Microsoft.Scripting.Generation.ILGen.DeclareLocal(System.Type,System.Boolean)">
2802
            <summary>
2803
            Declares a local variable of the specified type, optionally
2804
            pinning the object referred to by the variable.
2805
            </summary>
2806
        </member>
2807
        <member name="M:Microsoft.Scripting.Generation.ILGen.DefineLabel">
2808
            <summary>
2809
            Declares a new label.
2810
            </summary>
2811
        </member>
2812
        <member name="M:Microsoft.Scripting.Generation.ILGen.MarkLabel(System.Reflection.Emit.Label)">
2813
            <summary>
2814
            Marks the label at the current position.
2815
            </summary>
2816
        </member>
2817
        <member name="M:Microsoft.Scripting.Generation.ILGen.Emit(System.Reflection.Emit.OpCode)">
2818
            <summary>
2819
            Emits an instruction.
2820
            </summary>
2821
        </member>
2822
        <member name="M:Microsoft.Scripting.Generation.ILGen.Emit(System.Reflection.Emit.OpCode,System.Byte)">
2823
            <summary>
2824
            Emits an instruction with a byte argument.
2825
            </summary>
2826
        </member>
2827
        <member name="M:Microsoft.Scripting.Generation.ILGen.Emit(System.Reflection.Emit.OpCode,System.Reflection.ConstructorInfo)">
2828
            <summary>
2829
            Emits an instruction with the metadata token for the specified contructor.
2830
            </summary>
2831
        </member>
2832
        <member name="M:Microsoft.Scripting.Generation.ILGen.Emit(System.Reflection.Emit.OpCode,System.Double)">
2833
            <summary>
2834
            Emits an instruction with a double argument.
2835
            </summary>
2836
        </member>
2837
        <member name="M:Microsoft.Scripting.Generation.ILGen.Emit(System.Reflection.Emit.OpCode,System.Reflection.FieldInfo)">
2838
            <summary>
2839
            Emits an instruction with the metadata token for the specified field.
2840
            </summary>
2841
        </member>
2842
        <member name="M:Microsoft.Scripting.Generation.ILGen.Emit(System.Reflection.Emit.OpCode,System.Single)">
2843
            <summary>
2844
            Emits an instruction with a float argument.
2845
            </summary>
2846
        </member>
2847
        <member name="M:Microsoft.Scripting.Generation.ILGen.Emit(System.Reflection.Emit.OpCode,System.Int32)">
2848
            <summary>
2849
            Emits an instruction with an int argument.
2850
            </summary>
2851
        </member>
2852
        <member name="M:Microsoft.Scripting.Generation.ILGen.Emit(System.Reflection.Emit.OpCode,System.Reflection.Emit.Label)">
2853
            <summary>
2854
            Emits an instruction with a label argument.
2855
            </summary>
2856
        </member>
2857
        <member name="M:Microsoft.Scripting.Generation.ILGen.Emit(System.Reflection.Emit.OpCode,System.Reflection.Emit.Label[])">
2858
            <summary>
2859
            Emits an instruction with multiple target labels (switch).
2860
            </summary>
2861
        </member>
2862
        <member name="M:Microsoft.Scripting.Generation.ILGen.Emit(System.Reflection.Emit.OpCode,System.Reflection.Emit.LocalBuilder)">
2863
            <summary>
2864
            Emits an instruction with a reference to a local variable.
2865
            </summary>
2866
        </member>
2867
        <member name="M:Microsoft.Scripting.Generation.ILGen.Emit(System.Reflection.Emit.OpCode,System.Int64)">
2868
            <summary>
2869
            Emits an instruction with a long argument.
2870
            </summary>
2871
        </member>
2872
        <member name="M:Microsoft.Scripting.Generation.ILGen.Emit(System.Reflection.Emit.OpCode,System.Reflection.MethodInfo)">
2873
            <summary>
2874
            Emits an instruction with the metadata token for a specified method.
2875
            </summary>
2876
        </member>
2877
        <member name="M:Microsoft.Scripting.Generation.ILGen.Emit(System.Reflection.Emit.OpCode,System.SByte)">
2878
            <summary>
2879
            Emits an instruction with a signed byte argument.
2880
            </summary>
2881
        </member>
2882
        <member name="M:Microsoft.Scripting.Generation.ILGen.Emit(System.Reflection.Emit.OpCode,System.Int16)">
2883
            <summary>
2884
            Emits an instruction with a short argument.
2885
            </summary>
2886
        </member>
2887
        <member name="M:Microsoft.Scripting.Generation.ILGen.Emit(System.Reflection.Emit.OpCode,System.Reflection.Emit.SignatureHelper)">
2888
            <summary>
2889
            Emits an instruction with a signature token.
2890
            </summary>
2891
        </member>
2892
        <member name="M:Microsoft.Scripting.Generation.ILGen.Emit(System.Reflection.Emit.OpCode,System.String)">
2893
            <summary>
2894
            Emits an instruction with a string argument.
2895
            </summary>
2896
        </member>
2897
        <member name="M:Microsoft.Scripting.Generation.ILGen.Emit(System.Reflection.Emit.OpCode,System.Type)">
2898
            <summary>
2899
            Emits an instruction with the metadata token for a specified type argument.
2900
            </summary>
2901
        </member>
2902
        <member name="M:Microsoft.Scripting.Generation.ILGen.EmitCall(System.Reflection.Emit.OpCode,System.Reflection.MethodInfo,System.Type[])">
2903
            <summary>
2904
            Emits a call or a virtual call to the varargs method.
2905
            </summary>
2906
        </member>
2907
        <member name="M:Microsoft.Scripting.Generation.ILGen.EmitCalli(System.Reflection.Emit.OpCode,System.Runtime.InteropServices.CallingConvention,System.Type,System.Type[])">
2908
            <summary>
2909
            Emits an unmanaged indirect call instruction.
2910
            </summary>
2911
        </member>
2912
        <member name="M:Microsoft.Scripting.Generation.ILGen.EmitCalli(System.Reflection.Emit.OpCode,System.Reflection.CallingConventions,System.Type,System.Type[],System.Type[])">
2913
            <summary>
2914
            Emits a managed indirect call instruction.
2915
            </summary>
2916
        </member>
2917
        <member name="M:Microsoft.Scripting.Generation.ILGen.MarkSequencePoint(System.Diagnostics.SymbolStore.ISymbolDocumentWriter,System.Int32,System.Int32,System.Int32,System.Int32)">
2918
            <summary>
2919
            Marks a sequence point.
2920
            </summary>
2921
        </member>
2922
        <member name="M:Microsoft.Scripting.Generation.ILGen.UsingNamespace(System.String)">
2923
            <summary>
2924
            Specifies the namespace to be used in evaluating locals and watches for the
2925
                current active lexical scope.
2926
            </summary>
2927
        </member>
2928
        <member name="M:Microsoft.Scripting.Generation.ILGen.EmitLoadValueIndirect(System.Type)">
2929
            <summary>
2930
            Emits a Ldind* instruction for the appropriate type
2931
            </summary>
2932
        </member>
2933
        <member name="M:Microsoft.Scripting.Generation.ILGen.EmitStoreValueIndirect(System.Type)">
2934
            <summary>
2935
            Emits a Stind* instruction for the appropriate type.
2936
            </summary>
2937
        </member>
2938
        <member name="M:Microsoft.Scripting.Generation.ILGen.EmitStoreElement(System.Type)">
2939
            <summary>
2940
            Emits a Stelem* instruction for the appropriate type.
2941
            </summary>
2942
        </member>
2943
        <member name="M:Microsoft.Scripting.Generation.ILGen.EmitBoxing(System.Type)">
2944
            <summary>
2945
            Boxes the value of the stack. No-op for reference types. Void is
2946
            converted to a null reference. For almost all value types this
2947
            method will box them in the standard way. Int32 and Boolean are
2948
            handled with optimized conversions that reuse the same object for
2949
            small values. For Int32 this is purely a performance optimization.
2950
            For Boolean this is use to ensure that True and False are always
2951
            the same objects.
2952
            </summary>
2953
        </member>
2954
        <member name="M:Microsoft.Scripting.Generation.ILGen.EmitArray``1(System.Collections.Generic.IList{``0})">
2955
            <summary>
2956
            Emits an array of constant values provided in the given list.
2957
            The array is strongly typed.
2958
            </summary>
2959
        </member>
2960
        <member name="M:Microsoft.Scripting.Generation.ILGen.EmitArray(System.Type,System.Int32,Microsoft.Scripting.Generation.EmitArrayHelper)">
2961
            <summary>
2962
            Emits an array of values of count size.  The items are emitted via the callback
2963
            which is provided with the current item index to emit.
2964
            </summary>
2965
        </member>
2966
        <member name="M:Microsoft.Scripting.Generation.ILGen.EmitArray(System.Type)">
2967
            <summary>
2968
            Emits an array construction code.  
2969
            The code assumes that bounds for all dimensions
2970
            are already emitted.
2971
            </summary>
2972
        </member>
2973
        <member name="M:Microsoft.Scripting.Generation.ILGen.EmitDefault(System.Type)">
2974
            <summary>
2975
            Emits default(T)
2976
            Semantics match C# compiler behavior
2977
            </summary>
2978
        </member>
2979
        <member name="T:Microsoft.Scripting.Generation.KeyedQueue`2">
2980
            <summary>
2981
            A simple dictionary of queues, keyed off a particular type
2982
            This is useful for storing free lists of variables
2983
            </summary>
2984
        </member>
2985
        <member name="P:Microsoft.Scripting.Generation.Snippets.SnippetsDirectory">
2986
            <summary>
2987
            Directory where snippet assembly will be saved if SaveSnippets is set.
2988
            </summary>
2989
        </member>
2990
        <member name="P:Microsoft.Scripting.Generation.Snippets.SaveSnippets">
2991
            <summary>
2992
            Save snippets to an assembly (see also SnippetsDirectory, SnippetsFileName).
2993
            </summary>
2994
        </member>
2995
        <member name="P:Microsoft.Scripting.Generation.TypeGen.TypeInitializer">
2996
            <summary>
2997
            Gets the Compiler associated with the Type Initializer (cctor) creating it if necessary.
2998
            </summary>
2999
        </member>
3000
        <member name="T:Microsoft.Scripting.Generation.MethodSignatureInfo">
3001
            <summary>
3002
            Helper class to remove methods w/ identical signatures.  Used for GetDefaultMembers
3003
            which returns members from all types in the hierarchy.
3004
            </summary>
3005
        </member>
3006
        <member name="M:Microsoft.Scripting.Generation.CompilerHelpers.IsConstructor(System.Reflection.MethodBase)">
3007
            <summary>
3008
            True if the MethodBase is method which is going to construct an object
3009
            </summary>
3010
        </member>
3011
        <member name="M:Microsoft.Scripting.Generation.CompilerHelpers.GetType(System.Object)">
3012
            <summary>
3013
            Returns the System.Type for any object, including null.  The type of null
3014
            is represented by None.Type and all other objects just return the 
3015
            result of Object.GetType
3016
            </summary>
3017
        </member>
3018
        <member name="M:Microsoft.Scripting.Generation.CompilerHelpers.GetTypes(System.Object[])">
3019
            <summary>
3020
            Simply returns a Type[] from calling GetType on each element of args.
3021
            </summary>
3022
        </member>
3023
        <member name="M:Microsoft.Scripting.Generation.CompilerHelpers.TypesEqual(System.Collections.IList,System.Int32,System.Type[])">
3024
            <summary>
3025
            EMITTED
3026
            Used by default method binder to check types of splatted arguments.
3027
            </summary>
3028
        </member>
3029
        <member name="M:Microsoft.Scripting.Generation.CompilerHelpers.TryGetCallableMethod(System.Type,System.Reflection.MethodInfo)">
3030
            <summary>
3031
            Given a MethodInfo which may be declared on a non-public type this attempts to
3032
            return a MethodInfo which will dispatch to the original MethodInfo but is declared
3033
            on a public type.
3034
            
3035
            Returns the original method if the method if a public version cannot be found.
3036
            </summary>
3037
        </member>
3038
        <member name="M:Microsoft.Scripting.Generation.CompilerHelpers.FilterNonVisibleMembers(System.Type,System.Collections.Generic.IEnumerable{System.Reflection.MemberInfo})">
3039
            <summary>
3040
            Non-public types can have public members that we find when calling type.GetMember(...).  This
3041
            filters out the non-visible members by attempting to resolve them to the correct visible type.
3042
            
3043
            If no correct visible type can be found then the member is not visible and we won't call it.
3044
            </summary>
3045
        </member>
3046
        <member name="M:Microsoft.Scripting.Generation.CompilerHelpers.MemberEquals(System.Reflection.MemberInfo,System.Reflection.MemberInfo)">
3047
            <summary>
3048
            Sees if two MemberInfos point to the same underlying construct in IL.  This
3049
            ignores the ReflectedType property which exists on MemberInfos which
3050
            causes direct comparisons to be false even if they are the same member.
3051
            </summary>
3052
        </member>
3053
        <member name="M:Microsoft.Scripting.Generation.CompilerHelpers.GetTryConvertReturnValue(System.Type)">
3054
            <summary>
3055
            Returns a value which indicates failure when a OldConvertToAction of ImplicitTry or
3056
            ExplicitTry.
3057
            </summary>
3058
        </member>
3059
        <member name="M:Microsoft.Scripting.Generation.CompilerHelpers.LightCompile(System.Linq.Expressions.LambdaExpression)">
3060
            <summary>
3061
            Creates an interpreted delegate for the lambda.
3062
            </summary>
3063
            <param name="lambda">The lambda to compile.</param>
3064
            <returns>A delegate which can interpret the lambda.</returns>
3065
        </member>
3066
        <member name="M:Microsoft.Scripting.Generation.CompilerHelpers.LightCompile(System.Linq.Expressions.LambdaExpression,System.Int32)">
3067
            <summary>
3068
            Creates an interpreted delegate for the lambda.
3069
            </summary>
3070
            <param name="lambda">The lambda to compile.</param>
3071
            <param name="compilationThreshold">The number of iterations before the interpreter starts compiling</param>
3072
            <returns>A delegate which can interpret the lambda.</returns>
3073
        </member>
3074
        <member name="M:Microsoft.Scripting.Generation.CompilerHelpers.LightCompile``1(System.Linq.Expressions.Expression{``0})">
3075
            <summary>
3076
            Creates an interpreted delegate for the lambda.
3077
            </summary>
3078
            <typeparam name="T">The lambda's delegate type.</typeparam>
3079
            <param name="lambda">The lambda to compile.</param>
3080
            <returns>A delegate which can interpret the lambda.</returns>
3081
        </member>
3082
        <member name="M:Microsoft.Scripting.Generation.CompilerHelpers.LightCompile``1(System.Linq.Expressions.Expression{``0},System.Int32)">
3083
            <summary>
3084
            Creates an interpreted delegate for the lambda.
3085
            </summary>
3086
            <param name="lambda">The lambda to compile.</param>
3087
            <param name="compilationThreshold">The number of iterations before the interpreter starts compiling</param>
3088
            <returns>A delegate which can interpret the lambda.</returns>
3089
        </member>
3090
        <member name="M:Microsoft.Scripting.Generation.CompilerHelpers.CompileToMethod(System.Linq.Expressions.LambdaExpression,System.Reflection.Emit.MethodBuilder,System.Boolean)">
3091
            <summary>
3092
            Compiles the lambda into a method definition.
3093
            </summary>
3094
            <param name="lambda">the lambda to compile</param>
3095
            <param name="method">A <see cref="T:System.Reflection.Emit.MethodBuilder"/> which will be used to hold the lambda's IL.</param>
3096
            <param name="emitDebugSymbols">A parameter that indicates if debugging information should be emitted to a PDB symbol store.</param>
3097
        </member>
3098
        <member name="M:Microsoft.Scripting.Generation.CompilerHelpers.Compile``1(System.Linq.Expressions.Expression{``0},System.Boolean)">
3099
            <summary>
3100
            Compiles the LambdaExpression.
3101
            
3102
            If the lambda is compiled with emitDebugSymbols, it will be
3103
            generated into a TypeBuilder. Otherwise, this method is the same as
3104
            calling LambdaExpression.Compile()
3105
            
3106
            This is a workaround for a CLR limitiation: DynamicMethods cannot
3107
            have debugging information.
3108
            </summary>
3109
            <param name="lambda">the lambda to compile</param>
3110
            <param name="emitDebugSymbols">true to generate a debuggable method, false otherwise</param>
3111
            <returns>the compiled delegate</returns>
3112
        </member>
3113
        <member name="M:Microsoft.Scripting.Generation.CompilerHelpers.CompileToMethod``1(System.Linq.Expressions.Expression{``0},System.Runtime.CompilerServices.DebugInfoGenerator,System.Boolean)">
3114
            <summary>
3115
            Compiles the LambdaExpression, emitting it into a new type, and
3116
            optionally making it debuggable.
3117
            
3118
            This is a workaround for a CLR limitiation: DynamicMethods cannot
3119
            have debugging information.
3120
            </summary>
3121
            <param name="lambda">the lambda to compile</param>
3122
            <param name="debugInfoGenerator">Debugging information generator used by the compiler to mark sequence points and annotate local variables.</param>
3123
            <param name="emitDebugSymbols">True if debug symbols (PDBs) are emitted by the <paramref name="debugInfoGenerator"/>.</param>
3124
            <returns>the compiled delegate</returns>
3125
        </member>
3126
        <member name="T:Microsoft.Scripting.Generation.CompilerHelpers.DebuggableCodeRewriter">
3127
            <summary>
3128
            Removes all live objects and places them in static fields of a type.
3129
            </summary>
3130
        </member>
3131
        <member name="M:Microsoft.Scripting.Generation.CompilerHelpers.Reduce(System.Linq.Expressions.DynamicExpression)">
3132
            <summary>
3133
            Reduces the provided DynamicExpression into site.Target(site, *args).
3134
            </summary>
3135
        </member>
3136
        <member name="T:Microsoft.Scripting.Generation.ToDiskRewriter">
3137
            <summary>
3138
            Serializes constants and dynamic sites so the code can be saved to disk
3139
            </summary>
3140
        </member>
3141
        <member name="T:Microsoft.Scripting.Utils.TypeMemberCache`1">
3142
            <summary>
3143
            Caches type member lookup.
3144
            </summary>
3145
            <remarks>
3146
            When enumerating members (methods, properties, events) of a type (declared or inherited) Reflection enumerates all
3147
            runtime members of the type and its base types and caches the result.
3148
            When looking for a member of a specific name Reflection still enumerates all and filters out those that don't match the name.
3149
            That's inefficient when looking for members of multiple names one by one.
3150
            Instead we build a map of name to member list and then answer subsequent queries by simply looking up the dictionary.
3151
            </remarks>
3152
        </member>
3153
        <member name="T:Microsoft.Scripting.Utils.CacheDict`2">
3154
            <summary>
3155
            Provides a dictionary-like object used for caches which holds onto a maximum
3156
            number of elements specified at construction time.
3157
            
3158
            This class is not thread safe.
3159
            </summary>
3160
        </member>
3161
        <member name="M:Microsoft.Scripting.Utils.CacheDict`2.#ctor(System.Int32)">
3162
            <summary>
3163
            Creates a dictionary-like object used for caches.
3164
            </summary>
3165
            <param name="maxSize">The maximum number of elements to store.</param>
3166
        </member>
3167
        <member name="M:Microsoft.Scripting.Utils.CacheDict`2.TryGetValue(`0,`1@)">
3168
            <summary>
3169
            Tries to get the value associated with 'key', returning true if it's found and
3170
            false if it's not present.
3171
            </summary>
3172
        </member>
3173
        <member name="M:Microsoft.Scripting.Utils.CacheDict`2.Add(`0,`1)">
3174
            <summary>
3175
            Adds a new element to the cache, replacing and moving it to the front if the
3176
            element is already present.
3177
            </summary>
3178
        </member>
3179
        <member name="P:Microsoft.Scripting.Utils.CacheDict`2.Item(`0)">
3180
            <summary>
3181
            Returns the value associated with the given key, or throws KeyNotFoundException
3182
            if the key is not present.
3183
            </summary>
3184
        </member>
3185
        <member name="M:Microsoft.Scripting.Utils.CollectionExtensions.ToReadOnly``1(System.Collections.Generic.IEnumerable{``0})">
3186
            <summary>
3187
            Wraps the provided enumerable into a ReadOnlyCollection{T}
3188
            
3189
            Copies all of the data into a new array, so the data can't be
3190
            changed after creation. The exception is if the enumerable is
3191
            already a ReadOnlyCollection{T}, in which case we just return it.
3192
            </summary>
3193
        </member>
3194
        <member name="T:Microsoft.Scripting.Utils.CopyOnWriteList`1">
3195
            <summary>
3196
            List optimized for few writes and multiple reads. It provides thread-safe read and write access. 
3197
            Iteration is not thread-safe by default, but GetCopyForRead allows for iteration 
3198
            without taking a lock.
3199
            </summary>
3200
        </member>
3201
        <member name="M:Microsoft.Scripting.Utils.CopyOnWriteList`1.GetCopyForRead">
3202
            <summary>
3203
            Gets a copy of the contents of the list. The copy will not change even if the original
3204
            CopyOnWriteList object is modified. This method should be used to iterate the list in
3205
            a thread-safe way if no lock is taken. Iterating on the original list is not guaranteed 
3206
            to be thread-safe.
3207
            </summary>
3208
            <returns>The returned copy should not be modified by the caller.</returns>
3209
        </member>
3210
        <member name="M:Microsoft.Scripting.Utils.DynamicUtils.GetExpressions(System.Dynamic.DynamicMetaObject[])">
3211
            <summary>
3212
            Returns the list of expressions represented by the <see cref="T:System.Dynamic.DynamicMetaObject"/> instances.
3213
            </summary>
3214
            <param name="objects">An array of <see cref="T:System.Dynamic.DynamicMetaObject"/> instances to extract expressions from.</param>
3215
            <returns>The array of expressions.</returns>
3216
        </member>
3217
        <member name="M:Microsoft.Scripting.Utils.DynamicUtils.ObjectToMetaObject(System.Object,System.Linq.Expressions.Expression)">
3218
            <summary>
3219
            Creates an instance of <see cref="T:System.Dynamic.DynamicMetaObject"/> for a runtime value and the expression that represents it during the binding process.
3220
            </summary>
3221
            <param name="argValue">The runtime value to be represented by the <see cref="T:System.Dynamic.DynamicMetaObject"/>.</param>
3222
            <param name="parameterExpression">An expression to represent this <see cref="T:System.Dynamic.DynamicMetaObject"/> during the binding process.</param>
3223
            <returns>The new instance of <see cref="T:System.Dynamic.DynamicMetaObject"/>.</returns>
3224
        </member>
3225
        <member name="M:Microsoft.Scripting.Utils.DynamicUtils.LightBind``1(System.Dynamic.DynamicMetaObjectBinder,System.Object[],System.Int32)">
3226
            <summary>
3227
            Produces an interpreted binding using the given binder which falls over to a compiled
3228
            binding after hitCount tries.
3229
            
3230
            This method should be called whenever an interpreted binding is required.  Sometimes it will
3231
            return a compiled binding if a previous binding was produced and it's hit count was exhausted.
3232
            In this case the binder will not be called back for a new binding - the previous one will
3233
            be used.
3234
            </summary>
3235
            <typeparam name="T">The delegate type being used for the call site</typeparam>
3236
            <param name="binder">The binder used for the call site</param>
3237
            <param name="compilationThreshold">The number of calls before the binder should switch to a compiled mode.</param>
3238
            <param name="args">The arguments that are passed for the binding (as received in a BindDelegate call)</param>
3239
            <returns>A delegate which represents the interpreted binding.</returns>
3240
        </member>
3241
        <member name="T:Microsoft.Scripting.Utils.DynamicUtils.GenericInterpretedBinder`1.InterpretedRuleHitCheckExpression">
3242
            <summary>
3243
            Expression which reduces to the normal test but under the interpreter adds a count down
3244
            check which enables compiling when the count down is reached.
3245
            </summary>
3246
        </member>
3247
        <member name="T:Microsoft.Scripting.Utils.CachedBindingInfo">
3248
            <summary>
3249
            Base class for storing information about the binding that a specific rule is applicable for.
3250
            
3251
            We have a derived generic class but this class enables us to refer to it w/o having the
3252
            generic type information around.
3253
            
3254
            This class tracks both the count down to when we should compile.  When we compile we
3255
            take the Expression[T] that was used before and compile it.  While this is happening
3256
            we continue to allow the interpreted code to run.  When the compilation is complete we
3257
            store a thread static which tells us what binding failed and the current rule is no
3258
            longer functional.  Finally the language binder will call us again and we'll retrieve
3259
            and return the compiled overload.
3260
            </summary>
3261
        </member>
3262
        <member name="T:Microsoft.Scripting.Utils.HybridReferenceDictionary`2">
3263
            <summary>
3264
            A hybrid dictionary which compares based upon object identity.
3265
            </summary>
3266
        </member>
3267
        <member name="M:Microsoft.Scripting.Utils.MathUtils.FloorDivideUnchecked(System.Int32,System.Int32)">
3268
            <summary>
3269
            Calculates the quotient of two 32-bit signed integers rounded towards negative infinity.
3270
            </summary>
3271
            <param name="x">Dividend.</param>
3272
            <param name="y">Divisor.</param>
3273
            <returns>The quotient of the specified numbers rounded towards negative infinity, or <code>(int)Floor((double)x/(double)y)</code>.</returns>
3274
            <exception cref="T:System.DivideByZeroException"><paramref name="y"/> is 0.</exception>
3275
            <remarks>The caller must check for overflow (x = Int32.MinValue, y = -1)</remarks>
3276
        </member>
3277
        <member name="M:Microsoft.Scripting.Utils.MathUtils.FloorDivideUnchecked(System.Int64,System.Int64)">
3278
            <summary>
3279
            Calculates the quotient of two 32-bit signed integers rounded towards negative infinity.
3280
            </summary>
3281
            <param name="x">Dividend.</param>
3282
            <param name="y">Divisor.</param>
3283
            <returns>The quotient of the specified numbers rounded towards negative infinity, or <code>(int)Floor((double)x/(double)y)</code>.</returns>
3284
            <exception cref="T:System.DivideByZeroException"><paramref name="y"/> is 0.</exception>
3285
            <remarks>The caller must check for overflow (x = Int64.MinValue, y = -1)</remarks>
3286
        </member>
3287
        <member name="M:Microsoft.Scripting.Utils.MathUtils.FloorRemainder(System.Int32,System.Int32)">
3288
            <summary>
3289
            Calculates the remainder of floor division of two 32-bit signed integers.
3290
            </summary>
3291
            <param name="x">Dividend.</param>
3292
            <param name="y">Divisor.</param>
3293
            <returns>The remainder of of floor division of the specified numbers, or <code>x - (int)Floor((double)x/(double)y) * y</code>.</returns>
3294
            <exception cref="T:System.DivideByZeroException"><paramref name="y"/> is 0.</exception>
3295
        </member>
3296
        <member name="M:Microsoft.Scripting.Utils.MathUtils.FloorRemainder(System.Int64,System.Int64)">
3297
            <summary>
3298
            Calculates the remainder of floor division of two 32-bit signed integers.
3299
            </summary>
3300
            <param name="x">Dividend.</param>
3301
            <param name="y">Divisor.</param>
3302
            <returns>The remainder of of floor division of the specified numbers, or <code>x - (int)Floor((double)x/(double)y) * y</code>.</returns>
3303
            <exception cref="T:System.DivideByZeroException"><paramref name="y"/> is 0.</exception>
3304
        </member>
3305
        <member name="M:Microsoft.Scripting.Utils.MathUtils.RoundAwayFromZero(System.Double)">
3306
            <summary>
3307
            Behaves like Math.Round(value, MidpointRounding.AwayFromZero)
3308
            Needed because CoreCLR doesn't support this particular overload of Math.Round
3309
            </summary>
3310
        </member>
3311
        <member name="M:Microsoft.Scripting.Utils.MathUtils.RoundAwayFromZero(System.Double,System.Int32)">
3312
            <summary>
3313
            Behaves like Math.Round(value, precision, MidpointRounding.AwayFromZero)
3314
            However, it works correctly on negative precisions and cases where precision is
3315
            outside of the [-15, 15] range.
3316
            
3317
            (This function is also needed because CoreCLR lacks this overload.)
3318
            </summary>
3319
        </member>
3320
        <member name="M:Microsoft.Scripting.Utils.MathUtils.EvalPolynomial(System.Double,System.Double[])">
3321
            <summary>
3322
            Evaluates a polynomial in v0 where the coefficients are ordered in increasing degree
3323
            </summary>
3324
        </member>
3325
        <member name="M:Microsoft.Scripting.Utils.MathUtils.EvalPolynomial(System.Double,System.Double[],System.Boolean)">
3326
            <summary>
3327
            Evaluates a polynomial in v0 where the coefficients are ordered in increasing degree
3328
            if reverse is false, and increasing degree if reverse is true.
3329
            </summary>
3330
        </member>
3331
        <member name="M:Microsoft.Scripting.Utils.MathUtils.SinPi(System.Double)">
3332
            <summary>
3333
            A numerically precise version of sin(v0 * pi)
3334
            </summary>
3335
        </member>
3336
        <member name="M:Microsoft.Scripting.Utils.MathUtils.AbsSinPi(System.Double)">
3337
            <summary>
3338
            A numerically precise version of |sin(v0 * pi)|
3339
            </summary>
3340
        </member>
3341
        <member name="M:Microsoft.Scripting.Utils.MathUtils.GammaRationalFunc(System.Double)">
3342
            <summary>
3343
            Take the quotient of the 2 polynomials forming the Lanczos approximation
3344
            with N=13 and G=13.144565
3345
            </summary>
3346
        </member>
3347
        <member name="M:Microsoft.Scripting.Utils.MathUtils.PositiveGamma(System.Double)">
3348
            <summary>
3349
            Computes the Gamma function on positive values, using the Lanczos approximation.
3350
            Lanczos parameters are N=13 and G=13.144565.
3351
            </summary>
3352
        </member>
3353
        <member name="M:Microsoft.Scripting.Utils.MathUtils.PositiveLGamma(System.Double)">
3354
            <summary>
3355
            Computes the Log-Gamma function on positive values, using the Lanczos approximation.
3356
            Lanczos parameters are N=13 and G=13.144565.
3357
            </summary>
3358
        </member>
3359
        <member name="T:Microsoft.Scripting.Utils.Publisher`2">
3360
            <summary>
3361
            Thread safe dictionary that allows lazy-creation where readers will block for
3362
            the creation of the lazily created value.  Call GetOrCreateValue w/ a key
3363
            and a callback function.  If the value exists it is returned, if not the create
3364
            callback is called (w/o any locks held).  The create call back will only be called
3365
            once for each key.  
3366
            </summary>
3367
        </member>
3368
        <member name="T:Microsoft.Scripting.Utils.Publisher`2.PublishInfo`1">
3369
            <summary>
3370
            Helper class which stores the published value
3371
            </summary>
3372
        </member>
3373
        <member name="T:Microsoft.Scripting.Utils.SynchronizedDictionary`2">
3374
            <summary>
3375
            Dictionary[TKey, TValue] is not thread-safe in the face of concurrent reads and writes. SynchronizedDictionary
3376
            provides a thread-safe implementation. It holds onto a Dictionary[TKey, TValue] instead of inheriting from
3377
            it so that users who need to do manual synchronization can access the underlying Dictionary[TKey, TValue].
3378
            </summary>
3379
        </member>
3380
        <member name="P:Microsoft.Scripting.Utils.SynchronizedDictionary`2.UnderlyingDictionary">
3381
            <summary>
3382
            This returns the raw unsynchronized Dictionary[TKey, TValue]. Users are responsible for locking
3383
            on it before accessing it. Also, it should not be arbitrarily handed out to other code since deadlocks
3384
            can be caused if other code incorrectly locks on it.
3385
            </summary>
3386
        </member>
3387
        <member name="T:Microsoft.Scripting.Utils.ThreadLocal`1">
3388
            <summary>
3389
            Provides fast strongly typed thread local storage.  This is significantly faster than
3390
            Thread.GetData/SetData.
3391
            </summary>
3392
        </member>
3393
        <member name="M:Microsoft.Scripting.Utils.ThreadLocal`1.#ctor(System.Boolean)">
3394
            <summary>
3395
            True if the caller will guarantee that all cleanup happens as the thread
3396
            unwinds.
3397
            
3398
            This is typically used in a case where the thread local is surrounded by
3399
            a try/finally block.  The try block pushes some state, the finally block
3400
            restores the previous state.  Therefore when the thread exits the thread
3401
            local is back to it's original state.  This allows the ThreadLocal object
3402
            to not check the current owning thread on retrieval.
3403
            </summary>
3404
        </member>
3405
        <member name="P:Microsoft.Scripting.Utils.ThreadLocal`1.Value">
3406
            <summary>
3407
            Gets or sets the value for the current thread.
3408
            </summary>
3409
        </member>
3410
        <member name="M:Microsoft.Scripting.Utils.ThreadLocal`1.GetOrCreate(System.Func{`0})">
3411
            <summary>
3412
            Gets the current value if its not == null or calls the provided function
3413
            to create a new value.
3414
            </summary>
3415
        </member>
3416
        <member name="M:Microsoft.Scripting.Utils.ThreadLocal`1.Update(System.Func{`0,`0})">
3417
            <summary>
3418
            Calls the provided update function with the current value and
3419
            replaces the current value with the result of the function.
3420
            </summary>
3421
        </member>
3422
        <member name="M:Microsoft.Scripting.Utils.ThreadLocal`1.Update(`0)">
3423
            <summary>
3424
            Replaces the current value with a new one and returns the old value.
3425
            </summary>
3426
        </member>
3427
        <member name="M:Microsoft.Scripting.Utils.ThreadLocal`1.GetStorageInfo">
3428
            <summary>
3429
            Gets the StorageInfo for the current thread.
3430
            </summary>
3431
        </member>
3432
        <member name="M:Microsoft.Scripting.Utils.ThreadLocal`1.RetryOrCreateStorageInfo(Microsoft.Scripting.Utils.ThreadLocal{`0}.StorageInfo[])">
3433
            <summary>
3434
            Called when the fast path storage lookup fails. if we encountered the Empty storage 
3435
            during the initial fast check then spin until we hit non-empty storage and try the fast 
3436
            path again.
3437
            </summary>
3438
        </member>
3439
        <member name="M:Microsoft.Scripting.Utils.ThreadLocal`1.CreateStorageInfo">
3440
            <summary>
3441
            Creates the StorageInfo for the thread when one isn't already present.
3442
            </summary>
3443
        </member>
3444
        <member name="T:Microsoft.Scripting.Utils.ThreadLocal`1.StorageInfo">
3445
            <summary>
3446
            Helper class for storing the value.  We need to track if a ManagedThreadId
3447
            has been re-used so we also store the thread which owns the value.
3448
            </summary>
3449
        </member>
3450
        <member name="M:Microsoft.Scripting.Utils.TypeUtils.GetNumericConversionOrder(System.TypeCode,System.Int32@,System.Int32@)">
3451
            <summary>
3452
            Returns a numerical code of the size of a type.  All types get both a horizontal
3453
            and vertical code.  Types that are lower in both dimensions have implicit conversions
3454
            to types that are higher in both dimensions.
3455
            </summary>
3456
        </member>
3457
        <member name="T:Microsoft.Scripting.Utils.ValueArray`1">
3458
            <summary>
3459
            Represents an array that has value equality.
3460
            </summary>
3461
        </member>
3462
        <member name="T:Microsoft.Scripting.Utils.WeakCollection`1">
3463
            <summary>
3464
            Simple class for tracking a list of items and enumerating over them.
3465
            The items are stored in weak references; if the objects are collected,
3466
            they will not be seen when enumerating.
3467
            </summary>
3468
            <typeparam name="T">The type of the collection element.</typeparam>
3469
        </member>
3470
        <member name="T:Microsoft.Scripting.Utils.WeakDictionary`2">
3471
            <summary>
3472
            Similar to Dictionary[TKey,TValue], but it also ensures that the keys will not be kept alive
3473
            if the only reference is from this collection. The value will be kept alive as long as the key
3474
            is alive.
3475
            
3476
            This currently has a limitation that the caller is responsible for ensuring that an object used as 
3477
            a key is not also used as a value in *any* instance of a WeakHash. Otherwise, it will result in the
3478
            object being kept alive forever. This effectively means that the owner of the WeakHash should be the
3479
            only one who has access to the object used as a value.
3480
            
3481
            Currently, there is also no guarantee of how long the values will be kept alive even after the keys
3482
            get collected. This could be fixed by triggerring CheckCleanup() to be called on every garbage-collection
3483
            by having a dummy watch-dog object with a finalizer which calls CheckCleanup().
3484
            </summary>
3485
        </member>
3486
        <member name="M:Microsoft.Scripting.Utils.WeakDictionary`2.CheckCleanup">
3487
            <summary>
3488
            Check if any of the keys have gotten collected
3489
            
3490
            Currently, there is also no guarantee of how long the values will be kept alive even after the keys
3491
            get collected. This could be fixed by triggerring CheckCleanup() to be called on every garbage-collection
3492
            by having a dummy watch-dog object with a finalizer which calls CheckCleanup().
3493
            </summary>
3494
        </member>
3495
        <member name="T:Microsoft.Scripting.Utils.WeakHandle">
3496
            <summary>
3497
            Changes the semantics of GC handle to return <c>null</c> instead of throwing 
3498
            an <see cref="T:System.InvalidOperationException"/>.
3499
            </summary>
3500
        </member>
3501
        <member name="M:Microsoft.Scripting.Utils.ArrayUtils.ToArray``1(System.Collections.Generic.ICollection{``0})">
3502
            <summary>
3503
            Converts a generic ICollection of T into an array of T.  
3504
            
3505
            If the collection is already an  array of T the original collection is returned.
3506
            </summary>
3507
        </member>
3508
        <member name="M:Microsoft.Scripting.Utils.ArrayUtils.ToArray``2(System.Collections.Generic.ICollection{``0},System.Func{``0,``1})">
3509
            <summary>
3510
            Converts a generic ICollection of T into an array of R using a given conversion.  
3511
            
3512
            If the collection is already an array of R the original collection is returned.
3513
            </summary>
3514
        </member>
3515
        <member name="T:Microsoft.Scripting.Utils.CheckedDictionaryEnumerator">
3516
            <summary>
3517
            Not all .NET enumerators throw exceptions if accessed in an invalid state. This type
3518
            can be used to throw exceptions from enumerators implemented in IronPython.
3519
            </summary>
3520
        </member>
3521
        <member name="T:Microsoft.Scripting.Utils.EnumerableWrapper">
3522
            <summary>
3523
            Allows wrapping of proxy types (like COM RCWs) to expose their IEnumerable functionality
3524
            which is supported after casting to IEnumerable, even though Reflection will not indicate 
3525
            IEnumerable as a supported interface
3526
            </summary>
3527
        </member>
3528
        <member name="M:Microsoft.Scripting.Utils.ContractUtils.RequiresArrayIndex``1(System.Collections.Generic.IList{``0},System.Int32,System.String)">
3529
            <summary>
3530
            Requires the specified index to point inside the array.
3531
            </summary>
3532
            <exception cref="T:System.ArgumentNullException">Array is <c>null</c>.</exception>
3533
            <exception cref="T:System.ArgumentOutOfRangeException">Index is outside the array.</exception>
3534
        </member>
3535
        <member name="M:Microsoft.Scripting.Utils.ContractUtils.RequiresArrayIndex(System.Int32,System.Int32,System.String)">
3536
            <summary>
3537
            Requires the specified index to point inside the array.
3538
            </summary>
3539
            <exception cref="T:System.ArgumentOutOfRangeException">Index is outside the array.</exception>
3540
        </member>
3541
        <member name="M:Microsoft.Scripting.Utils.ContractUtils.RequiresArrayInsertIndex``1(System.Collections.Generic.IList{``0},System.Int32,System.String)">
3542
            <summary>
3543
            Requires the specified index to point inside the array or at the end
3544
            </summary>
3545
            <exception cref="T:System.ArgumentNullException">Array is <c>null</c>.</exception>
3546
            <exception cref="T:System.ArgumentOutOfRangeException">Index is outside the array.</exception>
3547
        </member>
3548
        <member name="M:Microsoft.Scripting.Utils.ContractUtils.RequiresArrayInsertIndex(System.Int32,System.Int32,System.String)">
3549
            <summary>
3550
            Requires the specified index to point inside the array or at the end
3551
            </summary>
3552
            <exception cref="T:System.ArgumentNullException">Array is <c>null</c>.</exception>
3553
            <exception cref="T:System.ArgumentOutOfRangeException">Index is outside the array.</exception>
3554
        </member>
3555
        <member name="M:Microsoft.Scripting.Utils.ContractUtils.RequiresArrayRange``1(System.Collections.Generic.IList{``0},System.Int32,System.Int32,System.String,System.String)">
3556
            <summary>
3557
            Requires the range [offset, offset + count] to be a subset of [0, array.Count].
3558
            </summary>
3559
            <exception cref="T:System.ArgumentOutOfRangeException">Offset or count are out of range.</exception>
3560
        </member>
3561
        <member name="M:Microsoft.Scripting.Utils.ContractUtils.RequiresArrayRange(System.Int32,System.Int32,System.Int32,System.String,System.String)">
3562
            <summary>
3563
            Requires the range [offset, offset + count] to be a subset of [0, array.Count].
3564
            </summary>
3565
            <exception cref="T:System.ArgumentOutOfRangeException">Offset or count are out of range.</exception>
3566
        </member>
3567
        <member name="M:Microsoft.Scripting.Utils.ContractUtils.RequiresListRange(System.Collections.IList,System.Int32,System.Int32,System.String,System.String)">
3568
            <summary>
3569
            Requires the range [offset, offset + count] to be a subset of [0, array.Count].
3570
            </summary>
3571
            <exception cref="T:System.ArgumentNullException">Array is <c>null</c>.</exception>
3572
            <exception cref="T:System.ArgumentOutOfRangeException">Offset or count are out of range.</exception>
3573
        </member>
3574
        <member name="M:Microsoft.Scripting.Utils.ContractUtils.RequiresArrayRange(System.String,System.Int32,System.Int32,System.String,System.String)">
3575
            <summary>
3576
            Requires the range [offset, offset + count] to be a subset of [0, array.Count].
3577
            </summary>
3578
            <exception cref="T:System.ArgumentNullException">String is <c>null</c>.</exception>
3579
            <exception cref="T:System.ArgumentOutOfRangeException">Offset or count are out of range.</exception>
3580
        </member>
3581
        <member name="M:Microsoft.Scripting.Utils.ContractUtils.RequiresNotNullItems``1(System.Collections.Generic.IList{``0},System.String)">
3582
            <summary>
3583
            Requires the array and all its items to be non-null.
3584
            </summary>
3585
        </member>
3586
        <member name="M:Microsoft.Scripting.Utils.ContractUtils.RequiresNotNullItems``1(System.Collections.Generic.IEnumerable{``0},System.String)">
3587
            <summary>
3588
            Requires the enumerable collection and all its items to be non-null.
3589
            </summary>
3590
        </member>
3591
        <member name="T:Microsoft.Scripting.Utils.DictionaryUnionEnumerator">
3592
            <summary>
3593
            Presents a flat enumerable view of multiple dictionaries
3594
            </summary>
3595
        </member>
3596
        <member name="M:Microsoft.Scripting.Utils.IOUtils.SeekLine(System.IO.TextReader,System.Int32)">
3597
            <summary>
3598
            Seeks the first character of a specified line in the text stream.
3599
            </summary>
3600
            <param name="reader">The reader.</param>
3601
            <param name="line">Line number. The current position is assumed to be line #1.</param>
3602
            <returns>
3603
            Returns <c>true</c> if the line is found, <b>false</b> otherwise.
3604
            </returns>
3605
        </member>
3606
        <member name="M:Microsoft.Scripting.Utils.IOUtils.ReadTo(System.IO.TextReader,System.Char)">
3607
            <summary>
3608
            Reads characters to a string until end position or a terminator is reached. 
3609
            Doesn't include the terminator into the resulting string.
3610
            Returns <c>null</c>, if the reader is at the end position.
3611
            </summary>
3612
        </member>
3613
        <member name="M:Microsoft.Scripting.Utils.IOUtils.SeekTo(System.IO.TextReader,System.Char)">
3614
            <summary>
3615
            Reads characters until end position or a terminator is reached.
3616
            Returns <c>true</c> if the character has been found (the reader is positioned right behind the character), 
3617
            <c>false</c> otherwise.
3618
            </summary>
3619
        </member>
3620
        <member name="M:Microsoft.Scripting.Utils.ReflectionUtils.CreateDelegate(System.Reflection.MethodInfo,System.Type)">
3621
            <summary>
3622
            Creates an open delegate for the given (dynamic)method.
3623
            </summary>
3624
        </member>
3625
        <member name="M:Microsoft.Scripting.Utils.ReflectionUtils.CreateDelegate(System.Reflection.MethodInfo,System.Type,System.Object)">
3626
            <summary>
3627
            Creates a closed delegate for the given (dynamic)method.
3628
            </summary>
3629
        </member>
3630
        <member name="M:Microsoft.Scripting.Utils.ReflectionUtils.GetObjectCallSiteDelegateType(System.Int32)">
3631
            <summary>
3632
            Gets a Func of CallSite, object * paramCnt, object delegate type
3633
            that's suitable for use in a non-strongly typed call site.
3634
            </summary>
3635
        </member>
3636
        <member name="M:Microsoft.Scripting.Utils.ReflectionUtils.IsMandatory(System.Reflection.ParameterInfo)">
3637
            <summary>
3638
            Returns <c>true</c> if the specified parameter is mandatory, i.e. is not optional and doesn't have a default value.
3639
            </summary>
3640
        </member>
3641
        <member name="M:Microsoft.Scripting.Utils.ReflectionUtils.Ancestors(System.Type)">
3642
            <summary>
3643
            Yields all ancestors of the given type including the type itself.
3644
            Does not include implemented interfaces.
3645
            </summary>
3646
        </member>
3647
        <member name="M:Microsoft.Scripting.Utils.ReflectionUtils.GetDeclaredInterfaces(System.Type)">
3648
            <summary>
3649
            Like Type.GetInterfaces, but only returns the interfaces implemented by this type
3650
            and not its parents.
3651
            </summary>
3652
        </member>
3653
        <member name="M:Microsoft.Scripting.Utils.ReflectionUtils.GetVisibleExtensionMethodGroups(System.Reflection.Assembly,System.Boolean)">
3654
            <summary>
3655
            Enumerates extension methods in given assembly. Groups the methods by declaring namespace.
3656
            Uses a global cache if <paramref name="useCache"/> is true.
3657
            </summary>
3658
        </member>
3659
        <member name="M:Microsoft.Scripting.Utils.ReflectionUtils.BindGenericParameters(System.Type,System.Type,System.Func{System.Type,System.Type,System.Boolean})">
3660
            <summary>
3661
            Binds occurances of generic parameters in <paramref name="openType"/> against corresponding types in <paramref name="closedType"/>.
3662
            Invokes <paramref name="binder"/>(parameter, type) for each such binding.
3663
            Returns false if the <paramref name="openType"/> is structurally different from <paramref name="closedType"/> or if the binder returns false.
3664
            </summary>
3665
        </member>
3666
        <member name="M:Microsoft.Scripting.Utils.ExtensionMethodInfo.IsExtensionOf(System.Type)">
3667
            <summary>
3668
            Determines if a given type matches the type that the method extends. 
3669
            The match might be non-trivial if the extended type is an open generic type with constraints.
3670
            </summary>
3671
        </member>
3672
        <member name="M:Microsoft.Scripting.Utils.StringUtils.SplitWords(System.String,System.Boolean,System.Int32)">
3673
            <summary>
3674
            Splits text and optionally indents first lines - breaks along words, not characters.
3675
            </summary>
3676
        </member>
3677
        <member name="T:Microsoft.Scripting.Runtime.DynamicXamlReader">
3678
            <summary>
3679
            Provides services for loading XAML and binding events to dynamic language code definitions.
3680
            </summary>
3681
        </member>
3682
        <member name="M:Microsoft.Scripting.Runtime.DynamicXamlReader.LoadComponent(System.Object,Microsoft.Scripting.Runtime.DynamicOperations,System.IO.Stream,System.Xaml.XamlSchemaContext)">
3683
            <summary>
3684
            Loads XAML from the specified stream and returns the deserialized object.  Any event handlers
3685
            are bound to methods defined in the provided Scope and converted using the provided DynamicOperations
3686
            object.
3687
            </summary>
3688
        </member>
3689
        <member name="M:Microsoft.Scripting.Runtime.DynamicXamlReader.LoadComponent(System.Object,Microsoft.Scripting.Runtime.DynamicOperations,System.String,System.Xaml.XamlSchemaContext)">
3690
            <summary>
3691
            Loads XAML from the specified filename and returns the deserialized object.  Any event handlers
3692
            are bound to methods defined in the provided Scope and converted using the provided DynamicOperations
3693
            object.
3694
            </summary>
3695
        </member>
3696
        <member name="M:Microsoft.Scripting.Runtime.DynamicXamlReader.LoadComponent(System.Object,Microsoft.Scripting.Runtime.DynamicOperations,System.Xml.XmlReader,System.Xaml.XamlSchemaContext)">
3697
            <summary>
3698
            Loads XAML from the specified XmlReader and returns the deserialized object.  Any event handlers
3699
            are bound to methods defined in the provided Scope and converted using the provided DynamicOperations
3700
            object.
3701
            </summary>
3702
        </member>
3703
        <member name="M:Microsoft.Scripting.Runtime.DynamicXamlReader.LoadComponent(System.Object,Microsoft.Scripting.Runtime.DynamicOperations,System.IO.TextReader,System.Xaml.XamlSchemaContext)">
3704
            <summary>
3705
            Loads XAML from the specified TextReader and returns the deserialized object.  Any event handlers
3706
            are bound to methods defined in the provided Scope and converted using the provided DynamicOperations
3707
            object.
3708
            </summary>
3709
        </member>
3710
        <member name="M:Microsoft.Scripting.Runtime.DynamicXamlReader.LoadComponent(System.Object,Microsoft.Scripting.Runtime.DynamicOperations,System.Xaml.XamlXmlReader)">
3711
            <summary>
3712
            Loads XAML from the specified XamlXmlReader and returns the deserialized object.  Any event handlers
3713
            are bound to methods defined in the provided Scope and converted using the provided DynamicOperations
3714
            object.
3715
            </summary>
3716
        </member>
3717
        <member name="P:Microsoft.Scripting.Runtime.DynamicXamlReader.DynamicWriter.Names">
3718
            <summary>
3719
            Returns the list of x:Name'd objects that we saw and should set on the root object.
3720
            </summary>
3721
        </member>
3722
        <member name="M:Microsoft.Scripting.Runtime.DynamicXamlReader.DynamicWriter.Adder(System.Object,System.Object)">
3723
            <summary>
3724
            Dummy, should never be called
3725
            </summary>
3726
        </member>
3727
        <member name="T:Microsoft.Scripting.Runtime.LightThrowingAttribute">
3728
            <summary>
3729
            Marks a method which may return a light exception.  Such
3730
            methods need to have their return value checked and the exception
3731
            will need to be thrown if the caller is not light exception aware.
3732
            </summary>
3733
        </member>
3734
        <member name="T:Microsoft.Scripting.Runtime.LightExceptions">
3735
            <summary>
3736
            Provides support for light exceptions.  These exceptions are propagated by
3737
            returning an instance of a private wrapper class containing the exception.  Code
3738
            which is aware of light exceptions will branch to apporiate exception handling
3739
            blocks when in a try and otherwise return the value up the stack.  This avoids 
3740
            using the underlying CLR exception mechanism with overhead such as creating stack 
3741
            traces.
3742
            
3743
            When a light exception reaches the boundary of code which is not light exception
3744
            aware the caller must check to see if a light exception is being thrown and if
3745
            so raise a .NET exception.
3746
            
3747
            This class provides methods for re-writing expression trees to support light exceptions,
3748
            methods to create light throw objects, check if an object is a light
3749
            throw object, and turn such an object back into a .NET Exception which can be thrown.
3750
            
3751
            Light exceptions also don't build up stack traces or interoperate with filter blocks
3752
            via 2-pass exception handling.
3753
            </summary>
3754
        </member>
3755
        <member name="M:Microsoft.Scripting.Runtime.LightExceptions.Rewrite(System.Linq.Expressions.Expression)">
3756
            <summary>
3757
            Rewrites the provided expression to support light exceptions.  
3758
            
3759
            Calls to the returned expression, if not from other light-weight aware calls,
3760
            need to call GetLightException on return to see if an exception was thrown
3761
            and if so throw it.
3762
            </summary>
3763
        </member>
3764
        <member name="M:Microsoft.Scripting.Runtime.LightExceptions.RewriteLazy(System.Linq.Expressions.Expression)">
3765
            <summary>
3766
            Returns a new expression which will lazily reduce to a light
3767
            expression re-written version of the same expression.
3768
            </summary>
3769
        </member>
3770
        <member name="M:Microsoft.Scripting.Runtime.LightExceptions.RewriteExternal(System.Linq.Expressions.Expression)">
3771
            <summary>
3772
            Returns a new expression which is re-written for light exceptions
3773
            but will throw an exception if it escapes the expression.  If this
3774
            expression is part of a larger experssion which is later re-written 
3775
            for light exceptions then it will propagate the light exception up.
3776
            </summary>
3777
        </member>
3778
        <member name="M:Microsoft.Scripting.Runtime.LightExceptions.Throw(System.Exception)">
3779
            <summary>
3780
            Returns an object which represents a light exception.
3781
            </summary>
3782
        </member>
3783
        <member name="M:Microsoft.Scripting.Runtime.LightExceptions.Throw(System.Linq.Expressions.Expression)">
3784
            <summary>
3785
            Returns an object which represents a light exception.
3786
            </summary>
3787
        </member>
3788
        <member name="M:Microsoft.Scripting.Runtime.LightExceptions.Throw(System.Linq.Expressions.Expression,System.Type)">
3789
            <summary>
3790
            Returns an object which represents a light exception.
3791
            </summary>
3792
        </member>
3793
        <member name="M:Microsoft.Scripting.Runtime.LightExceptions.Throw(System.Dynamic.DynamicMetaObjectBinder,System.Linq.Expressions.Expression)">
3794
            <summary>
3795
            If the binder supports light exceptions then a light exception throwing expression is returned.
3796
            
3797
            Otherwise a normal throwing expression is returned.
3798
            </summary>
3799
        </member>
3800
        <member name="M:Microsoft.Scripting.Runtime.LightExceptions.Throw(System.Dynamic.DynamicMetaObjectBinder,System.Linq.Expressions.Expression,System.Type)">
3801
            <summary>
3802
            If the binder supports light exceptions then a light exception throwing expression is returned.
3803
            
3804
            Otherwise a normal throwing expression is returned.
3805
            </summary>
3806
        </member>
3807
        <member name="M:Microsoft.Scripting.Runtime.LightExceptions.CheckAndThrow(System.Object)">
3808
            <summary>
3809
            Throws the exception if the value represents a light exception
3810
            </summary>
3811
        </member>
3812
        <member name="M:Microsoft.Scripting.Runtime.LightExceptions.CheckAndThrow(System.Linq.Expressions.Expression)">
3813
            <summary>
3814
            Wraps the expression in a check and rethrow.
3815
            </summary>
3816
        </member>
3817
        <member name="M:Microsoft.Scripting.Runtime.LightExceptions.IsLightException(System.Object)">
3818
            <summary>
3819
            Checks to see if the provided value is a light exception.
3820
            </summary>
3821
        </member>
3822
        <member name="M:Microsoft.Scripting.Runtime.LightExceptions.GetLightException(System.Object)">
3823
            <summary>
3824
            Gets the light exception from an object which may contain a light
3825
            exception.  Returns null if the object is not a light exception.
3826
            
3827
            Used for throwing the exception at non-light exception boundaries.  
3828
            </summary>
3829
        </member>
3830
        <member name="M:Microsoft.Scripting.Runtime.LightExceptions.SupportsLightThrow(System.Runtime.CompilerServices.CallSiteBinder)">
3831
            <summary>
3832
            Returns true if the call site binder is a light exception binder and supports
3833
            light throws.  Returns false otherwise.
3834
            </summary>
3835
            <param name="binder"></param>
3836
            <returns></returns>
3837
        </member>
3838
        <member name="T:Microsoft.Scripting.Runtime.LightExceptions.LightException">
3839
            <summary>
3840
            Sealed wrapper class to indicate something is a light exception.
3841
            </summary>
3842
        </member>
3843
        <member name="T:Microsoft.Scripting.Runtime.ArgumentArray">
3844
            <summary>
3845
            Wraps all arguments passed to a dynamic site with more arguments than can be accepted by a Func/Action delegate.
3846
            The binder generating a rule for such a site should unwrap the arguments first and then perform a binding to them.
3847
            </summary>
3848
        </member>
3849
        <member name="T:Microsoft.Scripting.Runtime.DynamicDelegateCreator">
3850
            <summary>
3851
            Provides support for converting objects to delegates using the DLR binders
3852
            available by the provided language context.
3853
            
3854
            Primarily this supports converting objects implementing IDynamicMetaObjectProvider
3855
            to the appropriate delegate type.  
3856
            
3857
            If the provided object is already a delegate of the appropriate type then the 
3858
            delegate will simply be returned.
3859
            </summary>
3860
        </member>
3861
        <member name="F:Microsoft.Scripting.Runtime.DynamicDelegateCreator._dynamicDelegateCache">
3862
            <summary> Table of dynamically generated delegates which are shared based upon method signature. </summary>
3863
        </member>
3864
        <member name="M:Microsoft.Scripting.Runtime.DynamicDelegateCreator.GetDelegate(System.Object,System.Type)">
3865
            <summary>
3866
            Creates a delegate with a given signature that could be used to invoke this object from non-dynamic code (w/o code context).
3867
            A stub is created that makes appropriate conversions/boxing and calls the object.
3868
            The stub should be executed within a context of this object's language.
3869
            </summary>
3870
            <returns>The converted delegate.</returns>
3871
            <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>
3872
        </member>
3873
        <member name="T:Microsoft.Scripting.Runtime.DynamicNull">
3874
            <summary>
3875
            Represents the type of a null value.
3876
            </summary>
3877
        </member>
3878
        <member name="M:Microsoft.Scripting.Runtime.DynamicNull.#ctor">
3879
            <summary>
3880
            Private constructor is never called since 'null' is the only valid instance.
3881
            </summary>
3882
        </member>
3883
        <member name="T:Microsoft.Scripting.Runtime.ScriptingRuntimeHelpers">
3884
            <summary>
3885
            These are some generally useful helper methods. Currently the only methods are those to
3886
            cached boxed representations of commonly used primitive types so that they can be shared.
3887
            This is useful to most dynamic languages that use object as a universal type.
3888
            
3889
            The methods in RuntimeHelepers are caleld by the generated code. From here the methods may
3890
            dispatch to other parts of the runtime to get bulk of the work done, but the entry points
3891
            should be here.
3892
            </summary>
3893
        </member>
3894
        <member name="M:Microsoft.Scripting.Runtime.ScriptingRuntimeHelpers.ShiftParamsArray``1(``0[],System.Int32)">
3895
            <summary>
3896
            Used by prologue code that is injected in lambdas to ensure that delegate signature matches what 
3897
            lambda body expects. Such code typically unwraps subset of the params array manually, 
3898
            but then passes the rest in bulk if lambda body also expects params array.
3899
            
3900
            This calls ArrayUtils.ShiftLeft, but performs additional checks that
3901
            ArrayUtils.ShiftLeft assumes.
3902
            </summary>
3903
        </member>
3904
        <member name="F:Microsoft.Scripting.Runtime.ScriptingRuntimeHelpers.True">
3905
            <summary>
3906
            A singleton boxed boolean true.
3907
            </summary>
3908
        </member>
3909
        <member name="F:Microsoft.Scripting.Runtime.ScriptingRuntimeHelpers.False">
3910
             <summary>
3911
            A singleton boxed boolean false.
3912
             </summary>
3913
        </member>
3914
        <member name="M:Microsoft.Scripting.Runtime.ScriptingRuntimeHelpers.Int32ToObject(System.Int32)">
3915
            <summary>
3916
            Gets a singleton boxed value for the given integer if possible, otherwise boxes the integer.
3917
            </summary>
3918
            <param name="value">The value to box.</param>
3919
            <returns>The boxed value.</returns>
3920
        </member>
3921
        <member name="M:Microsoft.Scripting.Runtime.ScriptingRuntimeHelpers.CreateInstance``1">
3922
            <summary>
3923
            Helper method to create an instance.  Work around for Silverlight where Activator.CreateInstance
3924
            is SecuritySafeCritical.
3925
            
3926
            TODO: Why can't we just emit the right thing for default(T)?
3927
            It's always null for reference types and it's well defined for value types
3928
            </summary>
3929
        </member>
3930
        <member name="M:Microsoft.Scripting.Runtime.ScriptingRuntimeHelpers.GetEventHandlerType(System.Reflection.EventInfo)">
3931
            <summary>
3932
            EventInfo.EventHandlerType getter is marked SecuritySafeCritical in CoreCLR
3933
            This method is to get to the property without using Reflection
3934
            </summary>
3935
            <param name="eventInfo"></param>
3936
            <returns></returns>
3937
        </member>
3938
        <member name="M:Microsoft.Scripting.Runtime.ScriptingRuntimeHelpers.InterpretedCallSiteTest(System.Boolean,System.Object)">
3939
            <summary>
3940
            Provides the test to see if an interpreted call site should switch over to being compiled.
3941
            </summary>
3942
        </member>
3943
        <member name="T:Microsoft.Scripting.Runtime.CompilerContext">
3944
            <summary>
3945
            Represents the context that is flowed for doing Compiler.  Languages can derive
3946
            from this class to provide additional contextual information.
3947
            </summary>
3948
        </member>
3949
        <member name="F:Microsoft.Scripting.Runtime.CompilerContext._sourceUnit">
3950
            <summary>
3951
            Source unit currently being compiled in the CompilerContext
3952
            </summary>
3953
        </member>
3954
        <member name="F:Microsoft.Scripting.Runtime.CompilerContext._errors">
3955
            <summary>
3956
            Current error sink.
3957
            </summary>
3958
        </member>
3959
        <member name="F:Microsoft.Scripting.Runtime.CompilerContext._parserSink">
3960
            <summary>
3961
            Sink for parser callbacks (e.g. brace matching, etc.).
3962
            </summary>
3963
        </member>
3964
        <member name="F:Microsoft.Scripting.Runtime.CompilerContext._options">
3965
            <summary>
3966
            Compiler specific options.
3967
            </summary>
3968
        </member>
3969
        <member name="T:Microsoft.Scripting.Runtime.IConvertibleMetaObject">
3970
            <summary>
3971
            Indicates that a DynamicMetaObject might be convertible to a CLR type.
3972
            </summary>
3973
        </member>
3974
        <member name="T:Microsoft.Scripting.Runtime.IRestrictedMetaObject">
3975
            <summary>
3976
            Indicates that a MetaObject is already representing a restricted type.  Useful
3977
            when we're already restricted to a known type but this isn't captured in
3978
            the type info (e.g. the type is not sealed).
3979
            </summary>
3980
        </member>
3981
        <member name="M:Microsoft.Scripting.Runtime.MetaObjectExtensions.GetLimitType(System.Dynamic.DynamicMetaObject)">
3982
             <summary>
3983
            Returns Microsoft.Scripting.Runtime.DynamicNull if the object contains a null value,
3984
            otherwise, returns self.LimitType
3985
             </summary>
3986
        </member>
3987
        <member name="M:Microsoft.Scripting.Runtime.MetaObjectExtensions.GetRuntimeType(System.Dynamic.DynamicMetaObject)">
3988
             <summary>
3989
            Returns Microsoft.Scripting.Runtime.DynamicNull if the object contains a null value,
3990
            otherwise, returns self.RuntimeType
3991
             </summary>
3992
        </member>
3993
        <member name="M:Microsoft.Scripting.Runtime.TokenizerBuffer.Seek(System.Int32)">
3994
            <summary>
3995
            Sets the current position inside current token or one character behind it.
3996
            </summary>
3997
        </member>
3998
        <member name="M:Microsoft.Scripting.Runtime.TokenizerBuffer.SeekRelative(System.Int32)">
3999
            <summary>
4000
            Sets the current position inside current token or one character behind it.
4001
            A relative displacement with respect to the current position in the token is specified.
4002
            </summary>
4003
        </member>
4004
        <member name="M:Microsoft.Scripting.Runtime.TokenizerBuffer.MarkMultiLineTokenEnd">
4005
            <summary>
4006
            Marks token end. Enables to read the current token.
4007
            </summary>
4008
        </member>
4009
        <member name="M:Microsoft.Scripting.Runtime.TokenizerBuffer.DiscardToken">
4010
            <summary>
4011
            Marks token start. It means the buffer can drop the current token.
4012
            Can be called even if no token has been read yet.
4013
            </summary>
4014
        </member>
4015
        <member name="M:Microsoft.Scripting.Runtime.TokenizerBuffer.ReadLine">
4016
            <summary>
4017
            Reads till the end of line and returns the character that stopped the reading.
4018
            The returned character is not skipped.
4019
            </summary>
4020
        </member>
4021
        <member name="M:Microsoft.Scripting.Runtime.TokenizerBuffer.ResizeInternal(System.Char[]@,System.Int32,System.Int32,System.Int32)">
4022
            <summary>
4023
            Resizes an array to a speficied new size and copies a portion of the original array into its beginning.
4024
            </summary>
4025
        </member>
4026
        <member name="T:Microsoft.Scripting.Runtime.BinderOps">
4027
            <summary>
4028
            Helper methods that calls are generated to from the default DLR binders.
4029
            </summary>
4030
        </member>
4031
        <member name="M:Microsoft.Scripting.Runtime.BinderOps.GetCombinedParameters(System.Object[],System.Object)">
4032
            <summary>
4033
            Helper function to combine an object array with a sequence of additional parameters that has been splatted for a function call.
4034
            </summary>
4035
        </member>
4036
        <member name="M:Microsoft.Scripting.Runtime.BinderOps.GetEventHandlerType(System.Reflection.EventInfo)">
4037
            <summary>
4038
            EventInfo.EventHandlerType getter is marked SecuritySafeCritical in CoreCLR
4039
            This method is to get to the property without using Reflection
4040
            </summary>
4041
            <param name="eventInfo"></param>
4042
            <returns></returns>
4043
        </member>
4044
        <member name="T:Microsoft.Scripting.Runtime.Cast">
4045
            <summary>
4046
            Implements explicit casts supported by the runtime.
4047
            </summary>
4048
            <summary>
4049
            Implements explicit casts supported by the runtime.
4050
            </summary>
4051
        </member>
4052
        <member name="M:Microsoft.Scripting.Runtime.Cast.Explicit(System.Object,System.Type)">
4053
            <summary>
4054
            Explicitly casts the object to a given type (and returns it as object)
4055
            </summary>
4056
        </member>
4057
        <member name="T:Microsoft.Scripting.Runtime.DelegateInfo">
4058
            <summary>
4059
            Used as the value for the ScriptingRuntimeHelpers.GetDelegate method caching system
4060
            </summary>
4061
        </member>
4062
        <member name="M:Microsoft.Scripting.Runtime.DelegateInfo.EmitClrCallStub(Microsoft.Scripting.Generation.ILGen)">
4063
            <summary>
4064
            Generates stub to receive the CLR call and then call the dynamic language code.
4065
            </summary>
4066
        </member>
4067
        <member name="T:Microsoft.Scripting.Runtime.DelegateSignatureInfo">
4068
            <summary>
4069
            Used as the key for the LanguageContext.GetDelegate method caching system
4070
            </summary>
4071
        </member>
4072
        <member name="T:Microsoft.Scripting.Runtime.ISlice">
4073
            <summary>
4074
            A useful interface for taking slices of numeric arrays, inspired by Python's Slice objects.
4075
            </summary>
4076
        </member>
4077
        <member name="P:Microsoft.Scripting.Runtime.ISlice.Start">
4078
            <summary>
4079
            The starting index of the slice or null if no first index defined
4080
            </summary>
4081
        </member>
4082
        <member name="P:Microsoft.Scripting.Runtime.ISlice.Stop">
4083
            <summary>
4084
            The ending index of the slice or null if no ending index defined
4085
            </summary>
4086
        </member>
4087
        <member name="P:Microsoft.Scripting.Runtime.ISlice.Step">
4088
            <summary>
4089
            The length of step to take
4090
            </summary>
4091
        </member>
4092
        <member name="M:Microsoft.Scripting.Runtime.IdDispenser.GetObject(System.Int64)">
4093
            <summary>
4094
            Given an ID returns the object associated with that ID.
4095
            </summary>
4096
        </member>
4097
        <member name="M:Microsoft.Scripting.Runtime.IdDispenser.GetId(System.Object)">
4098
            <summary>
4099
            Gets a unique ID for an object
4100
            </summary>
4101
        </member>
4102
        <member name="M:Microsoft.Scripting.Runtime.IdDispenser.Cleanup">
4103
            <summary>
4104
            Goes over the hashtable and removes empty entries 
4105
            </summary>
4106
        </member>
4107
        <member name="T:Microsoft.Scripting.Runtime.IdDispenser.Wrapper">
4108
            <summary>
4109
            Weak-ref wrapper caches the weak reference, our hash code, and the object ID.
4110
            </summary>
4111
        </member>
4112
        <member name="T:Microsoft.Scripting.Runtime.IdDispenser.WrapperComparer">
4113
            <summary>
4114
            WrapperComparer treats Wrapper as transparent envelope 
4115
            </summary>
4116
        </member>
4117
        <member name="T:Microsoft.Scripting.Runtime.LanguageBoundTextContentProvider">
4118
            <summary>
4119
            Internal class which binds a LanguageContext, StreamContentProvider, and Encoding together to produce
4120
            a TextContentProvider which reads binary data with the correct language semantics.
4121
            </summary>
4122
        </member>
4123
        <member name="T:Microsoft.Scripting.Runtime.LocalsDictionary">
4124
            <summary>
4125
            Creates a dictionary of locals in this scope
4126
            </summary>
4127
        </member>
4128
        <member name="T:Microsoft.Scripting.Runtime.PositionTrackingWriter">
4129
            <summary>
4130
            Efficiently tracks (line,column) information as text is added, and
4131
            collects line mappings between the original and generated source code
4132
            so we can generate correct debugging information later
4133
            </summary>
4134
        </member>
4135
        <member name="M:Microsoft.Scripting.Runtime.PositionTrackingWriter.MapLocation(System.CodeDom.CodeLinePragma)">
4136
            <summary>
4137
            Marks the current position of the writer as corresponding to the
4138
            original location passed in
4139
            </summary>
4140
            <param name="linePragma">the line pragma corresponding to the 
4141
            current position in the generated code</param>
4142
        </member>
4143
        <member name="T:Microsoft.Scripting.Runtime.IExpressionSerializable">
4144
            <summary>
4145
            Enables an object to be serializable to an Expression tree.  The expression tree can then
4146
            be emitted into an assembly enabling the de-serialization of the object.
4147
            </summary>
4148
        </member>
4149
        <member name="F:Microsoft.Scripting.Runtime.BinderType.Normal">
4150
            <summary>
4151
            The MethodBinder will perform normal method binding.
4152
            </summary>
4153
        </member>
4154
        <member name="F:Microsoft.Scripting.Runtime.BinderType.BinaryOperator">
4155
            <summary>
4156
            The MethodBinder will return the languages definition of NotImplemented if the arguments are
4157
            incompatible with the signature.
4158
            </summary>
4159
        </member>
4160
        <member name="F:Microsoft.Scripting.Runtime.BinderType.Constructor">
4161
            <summary>
4162
            The MethodBinder will set properties/fields for unused keyword arguments on the instance 
4163
            that gets returned from the method.
4164
            </summary>
4165
        </member>
4166
        <member name="T:Microsoft.Scripting.Runtime.DlrMainCallTarget">
4167
            <summary>
4168
            The delegate representing the DLR Main function
4169
            </summary>
4170
        </member>
4171
        <member name="T:Microsoft.Scripting.Runtime.CustomStringDictionary">
4172
            <summary>
4173
            Abstract base class used for optimized thread-safe dictionaries which have a set
4174
            of pre-defined string keys.
4175
            
4176
            Implementers derive from this class and override the GetExtraKeys, TrySetExtraValue, 
4177
            and TryGetExtraValue methods. When looking up a value first the extra keys will be 
4178
            searched using the optimized Try*ExtraValue functions.  If the value isn't found there
4179
            then the value is stored in the underlying .NET dictionary.
4180
            
4181
            This dictionary can store object values in addition to string values.  It also supports
4182
            null keys.
4183
            </summary>
4184
        </member>
4185
        <member name="M:Microsoft.Scripting.Runtime.CustomStringDictionary.GetExtraKeys">
4186
            <summary>
4187
            Gets a list of the extra keys that are cached by the the optimized implementation
4188
            of the module.
4189
            </summary>
4190
        </member>
4191
        <member name="M:Microsoft.Scripting.Runtime.CustomStringDictionary.TrySetExtraValue(System.String,System.Object)">
4192
            <summary>
4193
            Try to set the extra value and return true if the specified key was found in the 
4194
            list of extra values.
4195
            </summary>
4196
        </member>
4197
        <member name="M:Microsoft.Scripting.Runtime.CustomStringDictionary.TryGetExtraValue(System.String,System.Object@)">
4198
            <summary>
4199
            Try to get the extra value and returns true if the specified key was found in the
4200
            list of extra values.  Returns true even if the value is Uninitialized.
4201
            </summary>
4202
        </member>
4203
        <member name="T:Microsoft.Scripting.Runtime.DlrCachedCodeAttribute">
4204
            <summary>
4205
            An attribute that is applied to saved ScriptCode's to be used to re-create the ScriptCode
4206
            from disk.
4207
            </summary>
4208
        </member>
4209
        <member name="P:Microsoft.Scripting.Runtime.CachedOptimizedCodeAttribute.Names">
4210
            <summary>
4211
            Gets names stored in optimized scope. 
4212
            </summary>
4213
        </member>
4214
        <member name="T:Microsoft.Scripting.Runtime.DocumentationAttribute">
4215
            <summary>
4216
            Provides a mechanism for providing documentation stored in an assembly as metadata.  
4217
            
4218
            Applying this attribute will enable documentation to be provided to the user at run-time
4219
            even if XML Documentation files are unavailable.
4220
            </summary>
4221
        </member>
4222
        <member name="M:Microsoft.Scripting.Runtime.ExceptionHelpers.UpdateForRethrow(System.Exception)">
4223
            <summary>
4224
            Updates an exception before it's getting re-thrown so
4225
            we can present a reasonable stack trace to the user.
4226
            </summary>
4227
        </member>
4228
        <member name="M:Microsoft.Scripting.Runtime.ExceptionHelpers.GetExceptionStackTraces(System.Exception)">
4229
            <summary>
4230
            Returns all the stack traces associates with an exception
4231
            </summary>
4232
        </member>
4233
        <member name="T:Microsoft.Scripting.Runtime.ExtensionTypeAttribute">
4234
            <summary>
4235
            Marks a class in the assembly as being an extension type for another type.
4236
            </summary>
4237
        </member>
4238
        <member name="M:Microsoft.Scripting.Runtime.ExtensionTypeAttribute.#ctor(System.Type,System.Type)">
4239
            <summary>
4240
            Marks a type in the assembly as being an extension type for another type.
4241
            </summary>
4242
            <param name="extends">The type which is being extended</param>
4243
            <param name="extensionType">The type which provides the extension members.</param>
4244
        </member>
4245
        <member name="P:Microsoft.Scripting.Runtime.ExtensionTypeAttribute.ExtensionType">
4246
            <summary>
4247
            The type which contains extension members which are added to the type being extended.
4248
            </summary>
4249
        </member>
4250
        <member name="P:Microsoft.Scripting.Runtime.ExtensionTypeAttribute.Extends">
4251
            <summary>
4252
            The type which is being extended by the extension type.
4253
            </summary>
4254
        </member>
4255
        <member name="T:Microsoft.Scripting.Runtime.IMembersList">
4256
            <summary>
4257
            Provides a list of all the members of an instance.  
4258
            </summary>
4259
        </member>
4260
        <member name="T:Microsoft.Scripting.Runtime.ModuleChangeEventArgs">
4261
            <summary>
4262
            Event args for when a ScriptScope has had its contents changed.  
4263
            </summary>
4264
        </member>
4265
        <member name="M:Microsoft.Scripting.Runtime.ModuleChangeEventArgs.#ctor(System.String,Microsoft.Scripting.Runtime.ModuleChangeType)">
4266
            <summary>
4267
            Creates a new ModuleChangeEventArgs object with the specified name and type.
4268
            </summary>
4269
        </member>
4270
        <member name="M:Microsoft.Scripting.Runtime.ModuleChangeEventArgs.#ctor(System.String,Microsoft.Scripting.Runtime.ModuleChangeType,System.Object)">
4271
            <summary>
4272
            Creates a nwe ModuleChangeEventArgs with the specified name, type, and changed value.
4273
            </summary>
4274
        </member>
4275
        <member name="P:Microsoft.Scripting.Runtime.ModuleChangeEventArgs.Name">
4276
            <summary>
4277
            Gets the name of the symbol that has changed.
4278
            </summary>
4279
        </member>
4280
        <member name="P:Microsoft.Scripting.Runtime.ModuleChangeEventArgs.ChangeType">
4281
            <summary>
4282
            Gets the way in which the symbol has changed: Set or Delete.
4283
            </summary>
4284
        </member>
4285
        <member name="P:Microsoft.Scripting.Runtime.ModuleChangeEventArgs.Value">
4286
            <summary>
4287
            The the symbol has been set provides the new value.
4288
            </summary>
4289
        </member>
4290
        <member name="T:Microsoft.Scripting.Runtime.ModuleChangeType">
4291
            <summary>
4292
            The way in which a module has changed : Set or Delete
4293
            </summary>
4294
        </member>
4295
        <member name="F:Microsoft.Scripting.Runtime.ModuleChangeType.Set">
4296
            <summary>
4297
            A new value has been set in the module (or a previous value has changed).
4298
            </summary>
4299
        </member>
4300
        <member name="F:Microsoft.Scripting.Runtime.ModuleChangeType.Delete">
4301
            <summary>
4302
            A value has been removed from the module.
4303
            </summary>
4304
        </member>
4305
        <member name="T:Microsoft.Scripting.Runtime.NullTextContentProvider">
4306
            <summary>
4307
            A NullTextContentProvider to be provided when we have a pre-compiled ScriptCode which doesn't
4308
            have source code associated with it.
4309
            </summary>
4310
        </member>
4311
        <member name="T:Microsoft.Scripting.Runtime.OperationFailed">
4312
            <summary>
4313
            Singleton instance returned from an operator method when the operator method cannot provide a value.
4314
            </summary>
4315
        </member>
4316
        <member name="T:Microsoft.Scripting.Runtime.OperatorSlotAttribute">
4317
            <summary>
4318
            Represents an ops-extension method which is added as an operator.
4319
            
4320
            The name must be a well-formed name such as "Add" that matches the CLS
4321
            naming conventions for adding overloads associated with op_* methods.
4322
            </summary>
4323
        </member>
4324
        <member name="T:Microsoft.Scripting.Runtime.PropertyMethodAttribute">
4325
            <summary>
4326
            Represents an ops-extension method which is used to implement a property.
4327
            </summary>
4328
        </member>
4329
        <member name="T:Microsoft.Scripting.Runtime.ReflectionCache">
4330
            <summary>
4331
            Provides a cache of reflection members.  Only one set of values is ever handed out per a 
4332
            specific request.
4333
            </summary>
4334
        </member>
4335
        <member name="T:Microsoft.Scripting.Runtime.ReflectionCache.MethodBaseCache">
4336
            <summary>
4337
            TODO: Make me private again
4338
            </summary>
4339
        </member>
4340
        <member name="T:Microsoft.Scripting.Runtime.StaticExtensionMethodAttribute">
4341
            <summary>
4342
            Indicates an extension method should be added as a static method, not a instance method.
4343
            </summary>
4344
        </member>
4345
        <member name="T:Microsoft.Scripting.SourceFileInformation">
4346
            <summary>
4347
            Stores information needed to emit debugging symbol information for a
4348
            source file, in particular the file name and unique language identifier
4349
            </summary>
4350
        </member>
4351
        <member name="P:Microsoft.Scripting.SourceFileInformation.FileName">
4352
            <summary>
4353
            The source file name
4354
            </summary>
4355
        </member>
4356
        <member name="P:Microsoft.Scripting.SourceFileInformation.LanguageGuid">
4357
            <summary>
4358
            Returns the language's unique identifier, if any
4359
            </summary>
4360
        </member>
4361
        <member name="P:Microsoft.Scripting.SourceFileInformation.VendorGuid">
4362
            <summary>
4363
            Returns the language vendor's unique identifier, if any
4364
            </summary>
4365
        </member>
4366
        <member name="T:Microsoft.Scripting.ComInterop.ArgBuilder">
4367
            <summary>
4368
            ArgBuilder provides an argument value used by the MethodBinder.  One ArgBuilder exists for each
4369
            physical parameter defined on a method.  
4370
            
4371
            Contrast this with ParameterWrapper which represents the logical argument passed to the method.
4372
            </summary>
4373
        </member>
4374
        <member name="M:Microsoft.Scripting.ComInterop.ArgBuilder.Marshal(System.Linq.Expressions.Expression)">
4375
            <summary>
4376
            Provides the Expression which provides the value to be passed to the argument.
4377
            </summary>
4378
        </member>
4379
        <member name="M:Microsoft.Scripting.ComInterop.ArgBuilder.MarshalToRef(System.Linq.Expressions.Expression)">
4380
            <summary>
4381
            Provides the Expression which provides the value to be passed to the argument.
4382
            This method is called when result is intended to be used ByRef.
4383
            </summary>
4384
        </member>
4385
        <member name="M:Microsoft.Scripting.ComInterop.ArgBuilder.UnmarshalFromRef(System.Linq.Expressions.Expression)">
4386
            <summary>
4387
            Provides an Expression which will update the provided value after a call to the method.
4388
            May return null if no update is required.
4389
            </summary>
4390
        </member>
4391
        <member name="M:Microsoft.Scripting.ComInterop.BoundDispEvent.TryBinaryOperation(System.Dynamic.BinaryOperationBinder,System.Object,System.Object@)">
4392
            <summary>
4393
            Provides the implementation of performing AddAssign and SubtractAssign binary operations.
4394
            </summary>
4395
            <param name="binder">The binder provided by the call site.</param>
4396
            <param name="handler">The handler for the operation.</param>
4397
            <param name="result">The result of the operation.</param>
4398
            <returns>true if the operation is complete, false if the call site should determine behavior.</returns>
4399
        </member>
4400
        <member name="M:Microsoft.Scripting.ComInterop.BoundDispEvent.InPlaceAdd(System.Object)">
4401
            <summary>
4402
            Adds a handler to an event.
4403
            </summary>
4404
            <param name="handler">The handler to be added.</param>
4405
            <returns>The original event with handler added.</returns>
4406
        </member>
4407
        <member name="M:Microsoft.Scripting.ComInterop.BoundDispEvent.InPlaceSubtract(System.Object)">
4408
            <summary>
4409
            Removes handler from the event.
4410
            </summary>
4411
            <param name="handler">The handler to be removed.</param>
4412
            <returns>The original event with handler removed.</returns>
4413
        </member>
4414
        <member name="T:Microsoft.Scripting.ComInterop.ComBinder">
4415
            <summary>
4416
            Provides helper methods to bind COM objects dynamically.
4417
            </summary>
4418
        </member>
4419
        <member name="M:Microsoft.Scripting.ComInterop.ComBinder.IsComObject(System.Object)">
4420
            <summary>
4421
            Determines if an object is a COM object.
4422
            </summary>
4423
            <param name="value">The object to test.</param>
4424
            <returns>true if the object is a COM object, false otherwise.</returns>
4425
        </member>
4426
        <member name="M:Microsoft.Scripting.ComInterop.ComBinder.TryBindGetMember(System.Dynamic.GetMemberBinder,System.Dynamic.DynamicMetaObject,System.Dynamic.DynamicMetaObject@,System.Boolean)">
4427
            <summary>
4428
            Tries to perform binding of the dynamic get member operation.
4429
            </summary>
4430
            <param name="binder">An instance of the <see cref="T:System.Dynamic.GetMemberBinder"/> that represents the details of the dynamic operation.</param>
4431
            <param name="instance">The target of the dynamic operation. </param>
4432
            <param name="result">The new <see cref="T:System.Dynamic.DynamicMetaObject"/> representing the result of the binding.</param>
4433
            <param name="delayInvocation">true if member evaluation may be delayed.</param>
4434
            <returns>true if operation was bound successfully; otherwise, false.</returns>
4435
        </member>
4436
        <member name="M:Microsoft.Scripting.ComInterop.ComBinder.TryBindGetMember(System.Dynamic.GetMemberBinder,System.Dynamic.DynamicMetaObject,System.Dynamic.DynamicMetaObject@)">
4437
            <summary>
4438
            Tries to perform binding of the dynamic get member operation.
4439
            </summary>
4440
            <param name="binder">An instance of the <see cref="T:System.Dynamic.GetMemberBinder"/> that represents the details of the dynamic operation.</param>
4441
            <param name="instance">The target of the dynamic operation. </param>
4442
            <param name="result">The new <see cref="T:System.Dynamic.DynamicMetaObject"/> representing the result of the binding.</param>
4443
            <returns>true if operation was bound successfully; otherwise, false.</returns>
4444
        </member>
4445
        <member name="M:Microsoft.Scripting.ComInterop.ComBinder.TryBindSetMember(System.Dynamic.SetMemberBinder,System.Dynamic.DynamicMetaObject,System.Dynamic.DynamicMetaObject,System.Dynamic.DynamicMetaObject@)">
4446
            <summary>
4447
            Tries to perform binding of the dynamic set member operation.
4448
            </summary>
4449
            <param name="binder">An instance of the <see cref="T:System.Dynamic.SetMemberBinder"/> that represents the details of the dynamic operation.</param>
4450
            <param name="instance">The target of the dynamic operation.</param>
4451
            <param name="value">The <see cref="T:System.Dynamic.DynamicMetaObject"/> representing the value for the set member operation.</param>
4452
            <param name="result">The new <see cref="T:System.Dynamic.DynamicMetaObject"/> representing the result of the binding.</param>
4453
            <returns>true if operation was bound successfully; otherwise, false.</returns>
4454
        </member>
4455
        <member name="M:Microsoft.Scripting.ComInterop.ComBinder.TryBindInvoke(System.Dynamic.InvokeBinder,System.Dynamic.DynamicMetaObject,System.Dynamic.DynamicMetaObject[],System.Dynamic.DynamicMetaObject@)">
4456
            <summary>
4457
            Tries to perform binding of the dynamic invoke operation.
4458
            </summary>    
4459
            <param name="binder">An instance of the <see cref="T:System.Dynamic.InvokeBinder"/> that represents the details of the dynamic operation.</param>
4460
            <param name="instance">The target of the dynamic operation. </param>
4461
            <param name="args">An array of <see cref="T:System.Dynamic.DynamicMetaObject"/> instances - arguments to the invoke member operation.</param>
4462
            <param name="result">The new <see cref="T:System.Dynamic.DynamicMetaObject"/> representing the result of the binding.</param>
4463
            <returns>true if operation was bound successfully; otherwise, false.</returns>
4464
        </member>
4465
        <member name="M:Microsoft.Scripting.ComInterop.ComBinder.TryBindInvokeMember(System.Dynamic.InvokeMemberBinder,System.Dynamic.DynamicMetaObject,System.Dynamic.DynamicMetaObject[],System.Dynamic.DynamicMetaObject@)">
4466
            <summary>
4467
            Tries to perform binding of the dynamic invoke member operation.
4468
            </summary>
4469
            <param name="binder">An instance of the <see cref="T:System.Dynamic.InvokeMemberBinder"/> that represents the details of the dynamic operation.</param>
4470
            <param name="instance">The target of the dynamic operation. </param>
4471
            <param name="args">An array of <see cref="T:System.Dynamic.DynamicMetaObject"/> instances - arguments to the invoke member operation.</param>
4472
            <param name="result">The new <see cref="T:System.Dynamic.DynamicMetaObject"/> representing the result of the binding.</param>
4473
            <returns>true if operation was bound successfully; otherwise, false.</returns>
4474
        </member>
4475
        <member name="M:Microsoft.Scripting.ComInterop.ComBinder.TryBindGetIndex(System.Dynamic.GetIndexBinder,System.Dynamic.DynamicMetaObject,System.Dynamic.DynamicMetaObject[],System.Dynamic.DynamicMetaObject@)">
4476
            <summary>
4477
            Tries to perform binding of the dynamic get index operation.
4478
            </summary>
4479
            <param name="binder">An instance of the <see cref="T:System.Dynamic.GetIndexBinder"/> that represents the details of the dynamic operation.</param>
4480
            <param name="instance">The target of the dynamic operation. </param>
4481
            <param name="args">An array of <see cref="T:System.Dynamic.DynamicMetaObject"/> instances - arguments to the invoke member operation.</param>
4482
            <param name="result">The new <see cref="T:System.Dynamic.DynamicMetaObject"/> representing the result of the binding.</param>
4483
            <returns>true if operation was bound successfully; otherwise, false.</returns>
4484
        </member>
4485
        <member name="M:Microsoft.Scripting.ComInterop.ComBinder.TryBindSetIndex(System.Dynamic.SetIndexBinder,System.Dynamic.DynamicMetaObject,System.Dynamic.DynamicMetaObject[],System.Dynamic.DynamicMetaObject,System.Dynamic.DynamicMetaObject@)">
4486
            <summary>
4487
            Tries to perform binding of the dynamic set index operation.
4488
            </summary>
4489
            <param name="binder">An instance of the <see cref="T:System.Dynamic.SetIndexBinder"/> that represents the details of the dynamic operation.</param>
4490
            <param name="instance">The target of the dynamic operation. </param>
4491
            <param name="args">An array of <see cref="T:System.Dynamic.DynamicMetaObject"/> instances - arguments to the invoke member operation.</param>
4492
            <param name="value">The <see cref="T:System.Dynamic.DynamicMetaObject"/> representing the value for the set index operation.</param>
4493
            <param name="result">The new <see cref="T:System.Dynamic.DynamicMetaObject"/> representing the result of the binding.</param>
4494
            <returns>true if operation was bound successfully; otherwise, false.</returns>
4495
        </member>
4496
        <member name="M:Microsoft.Scripting.ComInterop.ComBinder.TryConvert(System.Dynamic.ConvertBinder,System.Dynamic.DynamicMetaObject,System.Dynamic.DynamicMetaObject@)">
4497
            <summary>
4498
            Tries to perform binding of the dynamic Convert operation.
4499
            </summary>
4500
            <param name="binder">An instance of the <see cref="T:System.Dynamic.ConvertBinder"/> that represents the details of the dynamic operation.</param>
4501
            <param name="instance">The target of the dynamic operation.</param>
4502
            <param name="result">The new <see cref="T:System.Dynamic.DynamicMetaObject"/> representing the result of the binding.</param>
4503
            <returns>true if operation was bound successfully; otherwise, false.</returns>
4504
        </member>
4505
        <member name="M:Microsoft.Scripting.ComInterop.ComBinder.GetDynamicMemberNames(System.Object)">
4506
            <summary>
4507
            Gets the member names associated with the object.
4508
            This function can operate only with objects for which <see cref="M:Microsoft.Scripting.ComInterop.ComBinder.IsComObject(System.Object)"/> returns true.
4509
            </summary>
4510
            <param name="value">The object for which member names are requested.</param>
4511
            <returns>The collection of member names.</returns>
4512
        </member>
4513
        <member name="M:Microsoft.Scripting.ComInterop.ComBinder.GetDynamicDataMemberNames(System.Object)">
4514
            <summary>
4515
            Gets the member names of the data-like members associated with the object.
4516
            This function can operate only with objects for which <see cref="M:Microsoft.Scripting.ComInterop.ComBinder.IsComObject(System.Object)"/> returns true.
4517
            </summary>
4518
            <param name="value">The object for which member names are requested.</param>
4519
            <returns>The collection of member names.</returns>
4520
        </member>
4521
        <member name="M:Microsoft.Scripting.ComInterop.ComBinder.GetDynamicDataMembers(System.Object,System.Collections.Generic.IEnumerable{System.String})">
4522
            <summary>
4523
            Gets the data-like members and associated data for an object.
4524
            This function can operate only with objects for which <see cref="M:Microsoft.Scripting.ComInterop.ComBinder.IsComObject(System.Object)"/> returns true.
4525
            </summary>
4526
            <param name="value">The object for which data members are requested.</param>
4527
            <param name="names">The enumeration of names of data members for which to retrieve values.</param>
4528
            <returns>The collection of pairs that represent data member's names and their data.</returns>
4529
        </member>
4530
        <member name="T:Microsoft.Scripting.ComInterop.ComBinder.ComGetMemberBinder">
4531
            <summary>
4532
            Special binder that indicates special semantics for COM GetMember operation.
4533
            </summary>
4534
        </member>
4535
        <member name="T:Microsoft.Scripting.ComInterop.ComEventSink">
4536
            <summary>
4537
            This class implements an event sink for a particular RCW.
4538
            Unlike the implementation of events in TlbImp'd assemblies,
4539
            we will create only one event sink per RCW (theoretically RCW might have
4540
            several ComEventSink evenk sinks - but all these implement different source intefaces).
4541
            Each ComEventSink contains a list of ComEventSinkMethod objects - which represent
4542
            a single method on the source interface an a multicast delegate to redirect 
4543
            the calls. Notice that we are chaining multicast delegates so that same 
4544
            ComEventSinkMedhod can invoke multiple event handlers).
4545
            
4546
            ComEventSink implements an IDisposable pattern to Unadvise from the connection point.
4547
            Typically, when RCW is finalized the corresponding Dispose will be triggered by 
4548
            ComEventSinksContainer finalizer. Notice that lifetime of ComEventSinksContainer
4549
            is bound to the lifetime of the RCW. 
4550
            </summary>
4551
        </member>
4552
        <member name="T:Microsoft.Scripting.ComInterop.ComEventSink.ComEventSinkMethod">
4553
            <summary>
4554
            Contains a methods DISPID (in a string formatted of "[DISPID=N]"
4555
            and a chained list of delegates to invoke
4556
            </summary>
4557
        </member>
4558
        <member name="T:Microsoft.Scripting.ComInterop.ComEventSinkProxy">
4559
            <summary>
4560
            ComEventSinkProxy class is responsible for handling QIs for sourceIid 
4561
            on instances of ComEventSink.
4562
            
4563
            Background: When a COM even sink advises to a connection point it is 
4564
            supposed to hand over the dispinterface. Now, some hosts will trust
4565
            the COM client to pass the correct pointer, but some will not.
4566
            E.g. Excel's implementation of Connection Points will not cause a
4567
            QI on the pointer that has been passed, however Word will QI the
4568
            pointer to return the required interface.
4569
            
4570
            ComEventSink does not, strongly speaking, implements the interface 
4571
            that it claims to implement - it is just "faking" it by using IReflect.
4572
            Thus, Word's QIs on the pointer passed to ICP::Advise would fail. To
4573
            prevent this we take advangate of RealProxy's ability of
4574
            "dressing up" like other classes and hence successfully respond to QIs 
4575
            for interfaces that it does not really support( it is OK to say 
4576
            "I implement this interface" for event sinks only since the common 
4577
            practice is to use IDistpach.Invoke when calling into event sinks). 
4578
            </summary>
4579
        </member>
4580
        <member name="T:Microsoft.Scripting.ComInterop.ComEventSinksContainer">
4581
            <summary>
4582
            ComEventSinksContainer is just a regular list with a finalizer.
4583
            This list is usually attached as a custom data for RCW object and 
4584
            is finalized whenever RCW is finalized.
4585
            </summary>
4586
        </member>
4587
        <member name="T:Microsoft.Scripting.ComInterop.IDispatchMethodIndices">
4588
            <summary>
4589
            Layout of the IDispatch vtable
4590
            </summary>
4591
        </member>
4592
        <member name="T:Microsoft.Scripting.ComInterop.ComInvokeAction">
4593
            <summary>
4594
            Invokes the object. If it falls back, just produce an error.
4595
            </summary>
4596
        </member>
4597
        <member name="T:Microsoft.Scripting.ComInterop.SplatInvokeBinder">
4598
            <summary>
4599
            Splats the arguments to another nested dynamic site, which does the
4600
            real invocation of the IDynamicMetaObjectProvider. 
4601
            </summary>
4602
        </member>
4603
        <member name="M:Microsoft.Scripting.ComInterop.ComInvokeBinder.MakeIDispatchInvokeTarget">
4604
            <summary>
4605
            Create a stub for the target of the optimized lopop.
4606
            </summary>
4607
            <returns></returns>
4608
        </member>
4609
        <member name="M:Microsoft.Scripting.ComInterop.ComInvokeBinder.MakeArgumentExpressions">
4610
            <summary>
4611
            Gets expressions to access all the arguments. This includes the instance argument.
4612
            </summary>
4613
        </member>
4614
        <member name="T:Microsoft.Scripting.ComInterop.ComObject">
4615
            <summary>
4616
            This is a helper class for runtime-callable-wrappers of COM instances. We create one instance of this type
4617
            for every generic RCW instance.
4618
            </summary>
4619
        </member>
4620
        <member name="F:Microsoft.Scripting.ComInterop.ComObject._rcw">
4621
            <summary>
4622
            The runtime-callable wrapper
4623
            </summary>
4624
        </member>
4625
        <member name="M:Microsoft.Scripting.ComInterop.ComObject.ObjectToComObject(System.Object)">
4626
            <summary>
4627
            This is the factory method to get the ComObject corresponding to an RCW
4628
            </summary>
4629
            <returns></returns>
4630
        </member>
4631
        <member name="T:Microsoft.Scripting.ComInterop.ComParamDesc">
4632
            <summary>
4633
            The parameter description of a method defined in a type library
4634
            </summary>
4635
        </member>
4636
        <member name="M:Microsoft.Scripting.ComInterop.ComParamDesc.#ctor(System.Runtime.InteropServices.ComTypes.ELEMDESC@,System.String)">
4637
            <summary>
4638
            Creates a representation for the paramter of a COM method
4639
            </summary>
4640
        </member>
4641
        <member name="M:Microsoft.Scripting.ComInterop.ComParamDesc.#ctor(System.Runtime.InteropServices.ComTypes.ELEMDESC@)">
4642
            <summary>
4643
            Creates a representation for the return value of a COM method
4644
            TODO: Return values should be represented by a different type
4645
            </summary>
4646
        </member>
4647
        <member name="P:Microsoft.Scripting.ComInterop.ComParamDesc.DefaultValue">
4648
            <summary>
4649
            DBNull.Value if there is no default value
4650
            </summary>
4651
        </member>
4652
        <member name="M:Microsoft.Scripting.ComInterop.ComRuntimeHelpers.GetITypeInfoFromIDispatch(Microsoft.Scripting.ComInterop.IDispatch,System.Boolean)">
4653
            <summary>
4654
            Look for typeinfo using IDispatch.GetTypeInfo
4655
            </summary>
4656
            <param name="dispatch"></param>
4657
            <param name="throwIfMissingExpectedTypeInfo">
4658
            Some COM objects just dont expose typeinfo. In these cases, this method will return null.
4659
            Some COM objects do intend to expose typeinfo, but may not be able to do so if the type-library is not properly 
4660
            registered. This will be considered as acceptable or as an error condition depending on throwIfMissingExpectedTypeInfo</param>
4661
            <returns></returns>
4662
        </member>
4663
        <member name="M:Microsoft.Scripting.ComInterop.ComRuntimeHelpers.CheckIfMissingTypeInfoIsExpected(System.Int32,System.Boolean)">
4664
            <summary>
4665
            This method should be called when typeinfo is not available for an object. The function
4666
            will check if the typeinfo is expected to be missing. This can include error cases where
4667
            the same error is guaranteed to happen all the time, on all machines, under all circumstances.
4668
            In such cases, we just have to operate without the typeinfo.
4669
            
4670
            However, if accessing the typeinfo is failing in a transient way, we might want to throw
4671
            an exception so that we will eagerly predictably indicate the problem.
4672
            </summary>
4673
        </member>
4674
        <member name="T:Microsoft.Scripting.ComInterop.UnsafeMethods">
4675
            <summary>
4676
            This class contains methods that either cannot be expressed in C#, or which require writing unsafe code.
4677
            Callers of these methods need to use them extremely carefully as incorrect use could cause GC-holes
4678
            and other problems.
4679
            </summary>
4680
            
4681
        </member>
4682
        <member name="M:Microsoft.Scripting.ComInterop.UnsafeMethods.AssertByrefPointsToStack(System.IntPtr)">
4683
            <summary>
4684
            Ensure that "value" is a local variable in some caller's frame. So converting
4685
            the byref to an IntPtr is a safe operation. Alternatively, we could also allow 
4686
            allowed "value"  to be a pinned object.
4687
            </summary>
4688
        </member>
4689
        <member name="T:Microsoft.Scripting.ComInterop.UnsafeMethods.IUnknownReleaseDelegate">
4690
            <summary>
4691
            We will emit an indirect call to an unmanaged function pointer from the vtable of the given interface pointer. 
4692
            This approach can take only ~300 instructions on x86 compared with ~900 for Marshal.Release. We are relying on 
4693
            the JIT-compiler to do pinvoke-stub-inlining and calling the pinvoke target directly.
4694
            </summary>
4695
        </member>
4696
        <member name="T:Microsoft.Scripting.ComInterop.UnsafeMethods.IDispatchInvokeDelegate">
4697
            <summary>
4698
            We will emit an indirect call to an unmanaged function pointer from the vtable of the given IDispatch interface pointer. 
4699
            It is not possible to express this in C#. Using an indirect pinvoke call allows us to do our own marshalling. 
4700
            We can allocate the Variant arguments cheaply on the stack. We are relying on the JIT-compiler to do 
4701
            pinvoke-stub-inlining and calling the pinvoke target directly.
4702
            The alternative of calling via a managed interface declaration of IDispatch would have a performance
4703
            penalty of going through a CLR stub that would have to re-push the arguments on the stack, etc.
4704
            Marshal.GetDelegateForFunctionPointer could be used here, but its too expensive (~2000 instructions on x86).
4705
            </summary>
4706
        </member>
4707
        <member name="T:Microsoft.Scripting.ComInterop.ComTypeLibDesc">
4708
            <summary>
4709
            Cached information from a TLB. Only information that is required is saved. CoClasses are used
4710
            for event hookup. Enums are stored for accessing symbolic names from scripts. 
4711
            </summary>
4712
        </member>
4713
        <member name="M:Microsoft.Scripting.ComInterop.ComTypeLibDesc.CreateFromGuid(System.Guid)">
4714
            <summary>
4715
            Reads the latest registered type library for the corresponding GUID,
4716
            reads definitions of CoClass'es and Enum's from this library
4717
            and creates a IDynamicMetaObjectProvider that allows to instantiate coclasses
4718
            and get actual values for the enums.
4719
            </summary>
4720
            <param name="typeLibGuid">Type Library Guid</param>
4721
            <returns>ComTypeLibDesc object</returns>
4722
        </member>
4723
        <member name="M:Microsoft.Scripting.ComInterop.ComTypeLibDesc.CreateFromObject(System.Object)">
4724
            <summary>
4725
            Gets an ITypeLib object from OLE Automation compatible RCW ,
4726
            reads definitions of CoClass'es and Enum's from this library
4727
            and creates a IDynamicMetaObjectProvider that allows to instantiate coclasses
4728
            and get actual values for the enums.
4729
            </summary>
4730
            <param name="rcw">OLE automation compatible RCW</param>
4731
            <returns>ComTypeLibDesc object</returns>
4732
        </member>
4733
        <member name="T:Microsoft.Scripting.ComInterop.DispCallable">
4734
            <summary>
4735
            This represents a bound dispmember on a IDispatch object.
4736
            </summary>
4737
        </member>
4738
        <member name="T:Microsoft.Scripting.ComInterop.ExcepInfo">
4739
            <summary>
4740
            This is similar to ComTypes.EXCEPINFO, but lets us do our own custom marshaling
4741
            </summary>
4742
        </member>
4743
        <member name="T:Microsoft.Scripting.ComInterop.IDispatchComObject">
4744
            <summary>
4745
            An object that implements IDispatch
4746
            
4747
            This currently has the following issues:
4748
            1. If we prefer ComObjectWithTypeInfo over IDispatchComObject, then we will often not
4749
               IDispatchComObject since implementations of IDispatch often rely on a registered type library. 
4750
               If we prefer IDispatchComObject over ComObjectWithTypeInfo, users get a non-ideal experience.
4751
            2. IDispatch cannot distinguish between properties and methods with 0 arguments (and non-0 
4752
               default arguments?). So obj.foo() is ambiguous as it could mean invoking method foo, 
4753
               or it could mean invoking the function pointer returned by property foo.
4754
               We are attempting to find whether we need to call a method or a property by examining
4755
               the ITypeInfo associated with the IDispatch. ITypeInfo tell's use what parameters the method
4756
               expects, is it a method or a property, what is the default property of the object, how to 
4757
               create an enumerator for collections etc.
4758
            3. IronPython processes the signature and converts ref arguments into return values. 
4759
               However, since the signature of a DispMethod is not available beforehand, this conversion 
4760
               is not possible. There could be other signature conversions that may be affected. How does 
4761
               VB6 deal with ref arguments and IDispatch?
4762
               
4763
            We also support events for IDispatch objects:
4764
            Background:
4765
            COM objects support events through a mechanism known as Connect Points.
4766
            Connection Points are separate objects created off the actual COM 
4767
            object (this is to prevent circular references between event sink
4768
            and event source). When clients want to sink events generated  by 
4769
            COM object they would implement callback interfaces (aka source 
4770
            interfaces) and hand it over (advise) to the Connection Point. 
4771
            
4772
            Implementation details:
4773
            When IDispatchComObject.TryGetMember request is received we first check
4774
            whether the requested member is a property or a method. If this check
4775
            fails we will try to determine whether an event is requested. To do 
4776
            so we will do the following set of steps:
4777
            1. Verify the COM object implements IConnectionPointContainer
4778
            2. Attempt to find COM object's coclass's description
4779
               a. Query the object for IProvideClassInfo interface. Go to 3, if found
4780
               b. From object's IDispatch retrieve primary interface description
4781
               c. Scan coclasses declared in object's type library.
4782
               d. Find coclass implementing this particular primary interface 
4783
            3. Scan coclass for all its source interfaces.
4784
            4. Check whether to any of the methods on the source interfaces matches 
4785
            the request name
4786
            
4787
            Once we determine that TryGetMember requests an event we will return
4788
            an instance of BoundDispEvent class. This class has InPlaceAdd and
4789
            InPlaceSubtract operators defined. Calling InPlaceAdd operator will:
4790
            1. An instance of ComEventSinksContainer class is created (unless 
4791
            RCW already had one). This instance is hanged off the RCW in attempt
4792
            to bind the lifetime of event sinks to the lifetime of the RCW itself,
4793
            meaning event sink will be collected once the RCW is collected (this
4794
            is the same way event sinks lifetime is controlled by PIAs).
4795
            Notice: ComEventSinksContainer contains a Finalizer which will go and
4796
            unadvise all event sinks.
4797
            Notice: ComEventSinksContainer is a list of ComEventSink objects. 
4798
            2. Unless we have already created a ComEventSink for the required 
4799
            source interface, we will create and advise a new ComEventSink. Each
4800
            ComEventSink implements a single source interface that COM object 
4801
            supports. 
4802
            3. ComEventSink contains a map between method DISPIDs to  the 
4803
            multicast delegate that will be invoked when the event is raised.
4804
            4. ComEventSink implements IReflect interface which is exposed as
4805
            custom IDispatch to COM consumers. This allows us to intercept calls
4806
            to IDispatch.Invoke and apply custom logic - in particular we will
4807
            just find and invoke the multicast delegate corresponding to the invoked
4808
            dispid.
4809
             </summary>
4810
        </member>
4811
        <member name="T:Microsoft.Scripting.ComInterop.NullArgBuilder">
4812
            <summary>
4813
            ArgBuilder which always produces null.  
4814
            </summary>
4815
        </member>
4816
        <member name="T:Microsoft.Scripting.ComInterop.SimpleArgBuilder">
4817
            <summary>
4818
            SimpleArgBuilder produces the value produced by the user as the argument value.  It
4819
            also tracks information about the original parameter and is used to create extended
4820
            methods for params arrays and param dictionary functions.
4821
            </summary>
4822
        </member>
4823
        <member name="T:Microsoft.Scripting.ComInterop.VarEnumSelector">
4824
            <summary>
4825
            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
4826
            to determine the VarEnum type we will marshal it as. We have the following options:
4827
            1.  Raise an exception. Languages with their own version of primitive types would not be able to call
4828
                COM methods using the language's types (for eg. strings in IronRuby are not System.String). An explicit
4829
                cast would be needed.
4830
            2.  We could marshal it as VT_DISPATCH. Then COM code will be able to access all the APIs in a late-bound manner,
4831
                but old COM components will probably malfunction if they expect a primitive type.
4832
            3.  We could guess which primitive type is the closest match. This will make COM components be as easily 
4833
                accessible as .NET methods.
4834
            4.  We could use the type library to check what the expected type is. However, the type library may not be available.
4835
            
4836
            VarEnumSelector implements option # 3
4837
            </summary>
4838
        </member>
4839
        <member name="M:Microsoft.Scripting.ComInterop.VarEnumSelector.GetManagedMarshalType(System.Runtime.InteropServices.VarEnum)">
4840
            <summary>
4841
            Gets the managed type that an object needs to be coverted to in order for it to be able
4842
            to be represented as a Variant.
4843
            
4844
            In general, there is a many-to-many mapping between Type and VarEnum. However, this method
4845
            returns a simple mapping that is needed for the current implementation. The reason for the 
4846
            many-to-many relation is:
4847
            1. Int32 maps to VT_I4 as well as VT_ERROR, and Decimal maps to VT_DECIMAL and VT_CY. However,
4848
               this changes if you throw the wrapper types into the mix.
4849
            2. There is no Type to represent COM types. __ComObject is a private type, and Object is too
4850
               general.
4851
            </summary>
4852
        </member>
4853
        <member name="M:Microsoft.Scripting.ComInterop.VarEnumSelector.CreateComPrimitiveTypeFamilies">
4854
            <summary>
4855
            Creates a family of COM types such that within each family, there is a completely non-lossy
4856
            conversion from a type to an earlier type in the family.
4857
            </summary>
4858
        </member>
4859
        <member name="M:Microsoft.Scripting.ComInterop.VarEnumSelector.GetConversionsToComPrimitiveTypeFamilies(System.Type)">
4860
            <summary>
4861
            Get the (one representative type for each) primitive type families that the argument can be converted to
4862
            </summary>
4863
        </member>
4864
        <member name="M:Microsoft.Scripting.ComInterop.VarEnumSelector.CheckForAmbiguousMatch(System.Type,System.Collections.Generic.List{System.Runtime.InteropServices.VarEnum})">
4865
            <summary>
4866
            If there is more than one type family that the argument can be converted to, we will throw a
4867
            AmbiguousMatchException instead of randomly picking a winner.
4868
            </summary>
4869
        </member>
4870
        <member name="M:Microsoft.Scripting.ComInterop.VarEnumSelector.TryGetPrimitiveComTypeViaConversion(System.Type,System.Runtime.InteropServices.VarEnum@)">
4871
            <summary>
4872
            Is there a unique primitive type that has the best conversion for the argument
4873
            </summary>
4874
        </member>
4875
        <member name="M:Microsoft.Scripting.ComInterop.VarEnumSelector.GetVariantBuilder(System.Type)">
4876
            <summary>
4877
            Get the COM Variant type that argument should be marshaled as for a call to COM
4878
            </summary>
4879
        </member>
4880
        <member name="T:Microsoft.Scripting.ComInterop.Variant">
4881
            <summary>
4882
            Variant is the basic COM type for late-binding. It can contain any other COM data type.
4883
            This type definition precisely matches the unmanaged data layout so that the struct can be passed
4884
            to and from COM calls.
4885
            </summary>
4886
        </member>
4887
        <member name="M:Microsoft.Scripting.ComInterop.Variant.IsPrimitiveType(System.Runtime.InteropServices.VarEnum)">
4888
            <summary>
4889
            Primitive types are the basic COM types. It includes valuetypes like ints, but also reference types
4890
            like BStrs. It does not include composite types like arrays and user-defined COM types (IUnknown/IDispatch).
4891
            </summary>
4892
        </member>
4893
        <member name="M:Microsoft.Scripting.ComInterop.Variant.ToObject">
4894
            <summary>
4895
            Get the managed object representing the Variant.
4896
            </summary>
4897
            <returns></returns>
4898
        </member>
4899
        <member name="M:Microsoft.Scripting.ComInterop.Variant.Clear">
4900
            <summary>
4901
            Release any unmanaged memory associated with the Variant
4902
            </summary>
4903
            <returns></returns>
4904
        </member>
4905
        <member name="T:Microsoft.Scripting.ComInterop.VariantBuilder">
4906
            <summary>
4907
            VariantBuilder handles packaging of arguments into a Variant for a call to IDispatch.Invoke
4908
            </summary>
4909
        </member>
4910
        <member name="T:Microsoft.Scripting.Strings">
4911
            <summary>
4912
               Strongly-typed and parameterized string factory.
4913
            </summary>
4914
            <summary>
4915
               Strongly-typed and parameterized string factory.
4916
            </summary>
4917
        </member>
4918
        <member name="P:Microsoft.Scripting.Strings.ComObjectExpected">
4919
            <summary>
4920
            A string like  "COM object is expected."
4921
            </summary>
4922
        </member>
4923
        <member name="P:Microsoft.Scripting.Strings.CannotCall">
4924
            <summary>
4925
            A string like  "Cannot perform call."
4926
            </summary>
4927
        </member>
4928
        <member name="P:Microsoft.Scripting.Strings.COMObjectDoesNotSupportEvents">
4929
            <summary>
4930
            A string like  "COM object does not support events."
4931
            </summary>
4932
        </member>
4933
        <member name="P:Microsoft.Scripting.Strings.COMObjectDoesNotSupportSourceInterface">
4934
            <summary>
4935
            A string like  "COM object does not support specified source interface."
4936
            </summary>
4937
        </member>
4938
        <member name="P:Microsoft.Scripting.Strings.SetComObjectDataFailed">
4939
            <summary>
4940
            A string like  "Marshal.SetComObjectData failed."
4941
            </summary>
4942
        </member>
4943
        <member name="P:Microsoft.Scripting.Strings.MethodShouldNotBeCalled">
4944
            <summary>
4945
            A string like  "This method exists only to keep the compiler happy."
4946
            </summary>
4947
        </member>
4948
        <member name="M:Microsoft.Scripting.Strings.UnexpectedVarEnum(System.Object)">
4949
            <summary>
4950
            A string like  "Unexpected VarEnum {0}."
4951
            </summary>
4952
        </member>
4953
        <member name="M:Microsoft.Scripting.Strings.DispBadParamCount(System.Object)">
4954
            <summary>
4955
            A string like  "Error while invoking {0}."
4956
            </summary>
4957
        </member>
4958
        <member name="M:Microsoft.Scripting.Strings.DispMemberNotFound(System.Object)">
4959
            <summary>
4960
            A string like  "Error while invoking {0}."
4961
            </summary>
4962
        </member>
4963
        <member name="M:Microsoft.Scripting.Strings.DispNoNamedArgs(System.Object)">
4964
            <summary>
4965
            A string like  "Error while invoking {0}. Named arguments are not supported."
4966
            </summary>
4967
        </member>
4968
        <member name="M:Microsoft.Scripting.Strings.DispOverflow(System.Object)">
4969
            <summary>
4970
            A string like  "Error while invoking {0}."
4971
            </summary>
4972
        </member>
4973
        <member name="M:Microsoft.Scripting.Strings.DispTypeMismatch(System.Object,System.Object)">
4974
            <summary>
4975
            A string like  "Could not convert argument {0} for call to {1}."
4976
            </summary>
4977
        </member>
4978
        <member name="M:Microsoft.Scripting.Strings.DispParamNotOptional(System.Object)">
4979
            <summary>
4980
            A string like  "Error while invoking {0}. A required parameter was omitted."
4981
            </summary>
4982
        </member>
4983
        <member name="P:Microsoft.Scripting.Strings.CannotRetrieveTypeInformation">
4984
            <summary>
4985
            A string like  "ResolveComReference.CannotRetrieveTypeInformation."
4986
            </summary>
4987
        </member>
4988
        <member name="M:Microsoft.Scripting.Strings.GetIDsOfNamesInvalid(System.Object)">
4989
            <summary>
4990
            A string like  "IDispatch::GetIDsOfNames behaved unexpectedly for {0}."
4991
            </summary>
4992
        </member>
4993
        <member name="P:Microsoft.Scripting.Strings.UnsupportedEnumType">
4994
            <summary>
4995
            A string like  "Attempting to wrap an unsupported enum type."
4996
            </summary>
4997
        </member>
4998
        <member name="P:Microsoft.Scripting.Strings.UnsupportedHandlerType">
4999
            <summary>
5000
            A string like  "Attempting to pass an event handler of an unsupported type."
5001
            </summary>
5002
        </member>
5003
        <member name="M:Microsoft.Scripting.Strings.CouldNotGetDispId(System.Object,System.Object)">
5004
            <summary>
5005
            A string like  "Could not get dispatch ID for {0} (error: {1})."
5006
            </summary>
5007
        </member>
5008
        <member name="M:Microsoft.Scripting.Strings.AmbiguousConversion(System.Object,System.Object)">
5009
            <summary>
5010
            A string like  "There are valid conversions from {0} to {1}."
5011
            </summary>
5012
        </member>
5013
        <member name="M:Microsoft.Scripting.Strings.VariantGetAccessorNYI(System.Object)">
5014
            <summary>
5015
            A string like  "Variant.GetAccessor cannot handle {0}."
5016
            </summary>
5017
        </member>
5018
        <member name="M:Microsoft.Scripting.Strings.InvalidOperation_ContainsGenericParameters(System.Object,System.Object)">
5019
            <summary>
5020
            A string like  "Cannot access member {1} declared on type {0} because the type contains generic parameters."
5021
            </summary>
5022
        </member>
5023
        <member name="M:Microsoft.Scripting.Strings.MissingType(System.Object)">
5024
            <summary>
5025
            A string like  "Type '{0}' is missing or cannot be loaded."
5026
            </summary>
5027
        </member>
5028
        <member name="M:Microsoft.Scripting.Strings.StaticAccessFromInstanceError(System.Object,System.Object)">
5029
            <summary>
5030
            A string like  "static property "{0}" of "{1}" can only be read through a type, not an instance"
5031
            </summary>
5032
        </member>
5033
        <member name="M:Microsoft.Scripting.Strings.StaticAssignmentFromInstanceError(System.Object,System.Object)">
5034
            <summary>
5035
            A string like  "static property "{0}" of "{1}" can only be assigned to through a type, not an instance"
5036
            </summary>
5037
        </member>
5038
        <member name="P:Microsoft.Scripting.Strings.MethodPreconditionViolated">
5039
            <summary>
5040
            A string like  "Method precondition violated"
5041
            </summary>
5042
        </member>
5043
        <member name="P:Microsoft.Scripting.Strings.InvalidArgumentValue">
5044
            <summary>
5045
            A string like  "Invalid argument value"
5046
            </summary>
5047
        </member>
5048
        <member name="P:Microsoft.Scripting.Strings.NonEmptyStringRequired">
5049
            <summary>
5050
            A string like  "Non-empty string required"
5051
            </summary>
5052
        </member>
5053
        <member name="P:Microsoft.Scripting.Strings.NonEmptyCollectionRequired">
5054
            <summary>
5055
            A string like  "Non-empty collection required"
5056
            </summary>
5057
        </member>
5058
        <member name="P:Microsoft.Scripting.Strings.MustBeExceptionInstance">
5059
            <summary>
5060
            A string like  "must by an Exception instance"
5061
            </summary>
5062
        </member>
5063
        <member name="P:Microsoft.Scripting.Strings.TypeOfTestMustBeBool">
5064
            <summary>
5065
            A string like  "Type of test must be bool"
5066
            </summary>
5067
        </member>
5068
        <member name="P:Microsoft.Scripting.Strings.TypeOfExpressionMustBeBool">
5069
            <summary>
5070
            A string like  "Type of the expression must be bool"
5071
            </summary>
5072
        </member>
5073
        <member name="P:Microsoft.Scripting.Strings.EmptyStringIsInvalidPath">
5074
            <summary>
5075
            A string like  "Empty string is not a valid path."
5076
            </summary>
5077
        </member>
5078
        <member name="P:Microsoft.Scripting.Strings.InvalidDelegate">
5079
            <summary>
5080
            A string like  "Invalid delegate type (Invoke method not found)."
5081
            </summary>
5082
        </member>
5083
        <member name="P:Microsoft.Scripting.Strings.ExpectedStaticProperty">
5084
            <summary>
5085
            A string like  "expected only static property"
5086
            </summary>
5087
        </member>
5088
        <member name="P:Microsoft.Scripting.Strings.PropertyDoesNotExist">
5089
            <summary>
5090
            A string like  "Property doesn't exist on the provided type"
5091
            </summary>
5092
        </member>
5093
        <member name="P:Microsoft.Scripting.Strings.FieldDoesNotExist">
5094
            <summary>
5095
            A string like  "Field doesn't exist on provided type"
5096
            </summary>
5097
        </member>
5098
        <member name="P:Microsoft.Scripting.Strings.TypeDoesNotHaveConstructorForTheSignature">
5099
            <summary>
5100
            A string like  "Type doesn't have constructor with a given signature"
5101
            </summary>
5102
        </member>
5103
        <member name="P:Microsoft.Scripting.Strings.TypeDoesNotHaveMethodForName">
5104
            <summary>
5105
            A string like  "Type doesn't have a method with a given name."
5106
            </summary>
5107
        </member>
5108
        <member name="P:Microsoft.Scripting.Strings.TypeDoesNotHaveMethodForNameSignature">
5109
            <summary>
5110
            A string like  "Type doesn't have a method with a given name and signature."
5111
            </summary>
5112
        </member>
5113
        <member name="P:Microsoft.Scripting.Strings.CountCannotBeNegative">
5114
            <summary>
5115
            A string like  "Count must be non-negative."
5116
            </summary>
5117
        </member>
5118
        <member name="P:Microsoft.Scripting.Strings.ArrayTypeMustBeArray">
5119
            <summary>
5120
            A string like  "arrayType must be an array type"
5121
            </summary>
5122
        </member>
5123
        <member name="P:Microsoft.Scripting.Strings.MustHaveCodeOrTarget">
5124
            <summary>
5125
            A string like  "Either code or target must be specified."
5126
            </summary>
5127
        </member>
5128
        <member name="M:Microsoft.Scripting.Strings.TypeParameterIsNotDelegate(System.Object)">
5129
            <summary>
5130
            A string like  "Type parameter is {0}. Expected a delegate."
5131
            </summary>
5132
        </member>
5133
        <member name="M:Microsoft.Scripting.Strings.InvalidCast(System.Object,System.Object)">
5134
            <summary>
5135
            A string like  "Cannot cast from type '{0}' to type '{1}"
5136
            </summary>
5137
        </member>
5138
        <member name="M:Microsoft.Scripting.Strings.UnknownMemberType(System.Object)">
5139
            <summary>
5140
            A string like  "unknown member type: '{0}'. "
5141
            </summary>
5142
        </member>
5143
        <member name="P:Microsoft.Scripting.Strings.FirstArgumentMustBeCallSite">
5144
            <summary>
5145
            A string like  "RuleBuilder can only be used with delegates whose first argument is CallSite."
5146
            </summary>
5147
        </member>
5148
        <member name="P:Microsoft.Scripting.Strings.NoInstanceForCall">
5149
            <summary>
5150
            A string like  "no instance for call."
5151
            </summary>
5152
        </member>
5153
        <member name="P:Microsoft.Scripting.Strings.MissingTest">
5154
            <summary>
5155
            A string like  "Missing Test."
5156
            </summary>
5157
        </member>
5158
        <member name="P:Microsoft.Scripting.Strings.MissingTarget">
5159
            <summary>
5160
            A string like  "Missing Target."
5161
            </summary>
5162
        </member>
5163
        <member name="M:Microsoft.Scripting.Strings.NonGenericWithGenericGroup(System.Object)">
5164
            <summary>
5165
            A string like  "The operation requires a non-generic type for {0}, but this represents generic types only"
5166
            </summary>
5167
        </member>
5168
        <member name="M:Microsoft.Scripting.Strings.InvalidOperation(System.Object)">
5169
            <summary>
5170
            A string like  "Invalid operation: '{0}'"
5171
            </summary>
5172
        </member>
5173
        <member name="P:Microsoft.Scripting.Strings.FinallyAlreadyDefined">
5174
            <summary>
5175
            A string like  "Finally already defined."
5176
            </summary>
5177
        </member>
5178
        <member name="P:Microsoft.Scripting.Strings.CannotHaveFaultAndFinally">
5179
            <summary>
5180
            A string like  "Can not have fault and finally."
5181
            </summary>
5182
        </member>
5183
        <member name="P:Microsoft.Scripting.Strings.FaultAlreadyDefined">
5184
            <summary>
5185
            A string like  "Fault already defined."
5186
            </summary>
5187
        </member>
5188
        <member name="M:Microsoft.Scripting.Strings.CantCreateDefaultTypeFor(System.Object)">
5189
            <summary>
5190
            A string like  "Cannot create default value for type {0}."
5191
            </summary>
5192
        </member>
5193
        <member name="M:Microsoft.Scripting.Strings.UnhandledConvert(System.Object)">
5194
            <summary>
5195
            A string like  "Unhandled convert: {0}"
5196
            </summary>
5197
        </member>
5198
        <member name="M:Microsoft.Scripting.Strings.NoCallableMethods(System.Object,System.Object)">
5199
            <summary>
5200
            A string like  "{0}.{1} has no publiclly visible method."
5201
            </summary>
5202
        </member>
5203
        <member name="P:Microsoft.Scripting.Strings.GlobalsMustBeUnique">
5204
            <summary>
5205
            A string like  "Global/top-level local variable names must be unique."
5206
            </summary>
5207
        </member>
5208
        <member name="P:Microsoft.Scripting.Strings.GenNonSerializableBinder">
5209
            <summary>
5210
            A string like  "Generating code from non-serializable CallSiteBinder."
5211
            </summary>
5212
        </member>
5213
        <member name="P:Microsoft.Scripting.Strings.InvalidPath">
5214
            <summary>
5215
            A string like  "pecified path is invalid."
5216
            </summary>
5217
        </member>
5218
        <member name="P:Microsoft.Scripting.Strings.DictionaryNotHashable">
5219
            <summary>
5220
            A string like  "Dictionaries are not hashable."
5221
            </summary>
5222
        </member>
5223
        <member name="P:Microsoft.Scripting.Strings.LanguageRegistered">
5224
            <summary>
5225
            A string like  "language already registered."
5226
            </summary>
5227
        </member>
5228
        <member name="P:Microsoft.Scripting.Strings.MethodOrOperatorNotImplemented">
5229
            <summary>
5230
            A string like  "The method or operation is not implemented."
5231
            </summary>
5232
        </member>
5233
        <member name="P:Microsoft.Scripting.Strings.NoException">
5234
            <summary>
5235
            A string like  "No exception."
5236
            </summary>
5237
        </member>
5238
        <member name="M:Microsoft.Scripting.Strings.ExtensionMustBePublic(System.Object)">
5239
            <summary>
5240
            A string like  "Extension type {0} must be public."
5241
            </summary>
5242
        </member>
5243
        <member name="P:Microsoft.Scripting.Strings.AlreadyInitialized">
5244
            <summary>
5245
            A string like  "Already initialized."
5246
            </summary>
5247
        </member>
5248
        <member name="P:Microsoft.Scripting.Strings.MustReturnScopeExtension">
5249
            <summary>
5250
            A string like  "CreateScopeExtension must return a scope extension."
5251
            </summary>
5252
        </member>
5253
        <member name="P:Microsoft.Scripting.Strings.InvalidParamNumForService">
5254
            <summary>
5255
            A string like  "Invalid number of parameters for the service."
5256
            </summary>
5257
        </member>
5258
        <member name="M:Microsoft.Scripting.Strings.InvalidArgumentType(System.Object,System.Object)">
5259
            <summary>
5260
            A string like  "Invalid type of argument {0}; expecting {1}."
5261
            </summary>
5262
        </member>
5263
        <member name="P:Microsoft.Scripting.Strings.CannotChangeNonCachingValue">
5264
            <summary>
5265
            A string like  "Cannot change non-caching value."
5266
            </summary>
5267
        </member>
5268
        <member name="M:Microsoft.Scripting.Strings.FieldReadonly(System.Object)">
5269
            <summary>
5270
            A string like  "Field {0} is read-only"
5271
            </summary>
5272
        </member>
5273
        <member name="M:Microsoft.Scripting.Strings.PropertyReadonly(System.Object)">
5274
            <summary>
5275
            A string like  "Property {0} is read-only"
5276
            </summary>
5277
        </member>
5278
        <member name="M:Microsoft.Scripting.Strings.UnexpectedEvent(System.Object,System.Object,System.Object,System.Object)">
5279
            <summary>
5280
            A string like  "Expected event from {0}.{1}, got event from {2}.{3}."
5281
            </summary>
5282
        </member>
5283
        <member name="M:Microsoft.Scripting.Strings.ExpectedBoundEvent(System.Object)">
5284
            <summary>
5285
            A string like  "expected bound event, got {0}."
5286
            </summary>
5287
        </member>
5288
        <member name="M:Microsoft.Scripting.Strings.UnexpectedType(System.Object,System.Object)">
5289
            <summary>
5290
            A string like  "Expected type {0}, got {1}."
5291
            </summary>
5292
        </member>
5293
        <member name="M:Microsoft.Scripting.Strings.MemberWriteOnly(System.Object)">
5294
            <summary>
5295
            A string like  "can only write to member {0}."
5296
            </summary>
5297
        </member>
5298
        <member name="P:Microsoft.Scripting.Strings.NoCodeToCompile">
5299
            <summary>
5300
            A string like  "No code to compile."
5301
            </summary>
5302
        </member>
5303
        <member name="M:Microsoft.Scripting.Strings.InvalidStreamType(System.Object)">
5304
            <summary>
5305
            A string like  "Invalid stream type: {0}."
5306
            </summary>
5307
        </member>
5308
        <member name="P:Microsoft.Scripting.Strings.QueueEmpty">
5309
            <summary>
5310
            A string like  "Queue empty."
5311
            </summary>
5312
        </member>
5313
        <member name="P:Microsoft.Scripting.Strings.EnumerationNotStarted">
5314
            <summary>
5315
            A string like  "Enumeration has not started. Call MoveNext."
5316
            </summary>
5317
        </member>
5318
        <member name="P:Microsoft.Scripting.Strings.EnumerationFinished">
5319
            <summary>
5320
            A string like  "Enumeration already finished."
5321
            </summary>
5322
        </member>
5323
        <member name="M:Microsoft.Scripting.Strings.CantAddCasing(System.Object)">
5324
            <summary>
5325
            A string like  "can't add another casing for identifier {0}"
5326
            </summary>
5327
        </member>
5328
        <member name="M:Microsoft.Scripting.Strings.CantAddIdentifier(System.Object)">
5329
            <summary>
5330
            A string like  "can't add new identifier {0}"
5331
            </summary>
5332
        </member>
5333
        <member name="M:Microsoft.Scripting.Strings.InvalidCtorImplementation(System.Object,System.Object)">
5334
            <summary>
5335
            A string like  "Type '{0}' doesn't provide a suitable public constructor or its implementation is faulty: {1}"
5336
            </summary>
5337
        </member>
5338
        <member name="P:Microsoft.Scripting.Strings.InvalidOutputDir">
5339
            <summary>
5340
            A string like  "Invalid output directory."
5341
            </summary>
5342
        </member>
5343
        <member name="P:Microsoft.Scripting.Strings.InvalidAsmNameOrExtension">
5344
            <summary>
5345
            A string like  "Invalid assembly name or file extension."
5346
            </summary>
5347
        </member>
5348
        <member name="M:Microsoft.Scripting.Strings.CanotEmitConstant(System.Object,System.Object)">
5349
            <summary>
5350
            A string like  "Cannot emit constant {0} ({1})"
5351
            </summary>
5352
        </member>
5353
        <member name="M:Microsoft.Scripting.Strings.NoImplicitCast(System.Object,System.Object)">
5354
            <summary>
5355
            A string like  "No implicit cast from {0} to {1}"
5356
            </summary>
5357
        </member>
5358
        <member name="M:Microsoft.Scripting.Strings.NoExplicitCast(System.Object,System.Object)">
5359
            <summary>
5360
            A string like  "No explicit cast from {0} to {1}"
5361
            </summary>
5362
        </member>
5363
        <member name="M:Microsoft.Scripting.Strings.NameNotDefined(System.Object)">
5364
            <summary>
5365
            A string like  "name '{0}' not defined"
5366
            </summary>
5367
        </member>
5368
        <member name="P:Microsoft.Scripting.Strings.NoDefaultValue">
5369
            <summary>
5370
            A string like  "No default value for a given type."
5371
            </summary>
5372
        </member>
5373
        <member name="P:Microsoft.Scripting.Strings.UnknownLanguageProviderType">
5374
            <summary>
5375
            A string like  "Specified language provider type is not registered."
5376
            </summary>
5377
        </member>
5378
        <member name="P:Microsoft.Scripting.Strings.CantReadProperty">
5379
            <summary>
5380
            A string like  "can't read from property"
5381
            </summary>
5382
        </member>
5383
        <member name="P:Microsoft.Scripting.Strings.CantWriteProperty">
5384
            <summary>
5385
            A string like  "can't write to property"
5386
            </summary>
5387
        </member>
5388
        <member name="M:Microsoft.Scripting.Strings.IllegalNew_GenericParams(System.Object)">
5389
            <summary>
5390
            A string like  "Cannot create instance of {0} because it contains generic parameters"
5391
            </summary>
5392
        </member>
5393
        <member name="M:Microsoft.Scripting.Strings.VerificationException(System.Object,System.Object,System.Object)">
5394
            <summary>
5395
            A string like  "Non-verifiable assembly generated: {0}:\nAssembly preserved as {1}\nError text:\n{2}\n"
5396
            </summary>
5397
        </member>
5398
        <member name="T:Microsoft.Scripting.Error">
5399
            <summary>
5400
               Strongly-typed and parameterized exception factory.
5401
            </summary>
5402
            <summary>
5403
               Strongly-typed and parameterized exception factory.
5404
            </summary>
5405
        </member>
5406
        <member name="M:Microsoft.Scripting.Error.COMObjectDoesNotSupportEvents">
5407
            <summary>
5408
            ArgumentException with message like "COM object does not support events."
5409
            </summary>
5410
        </member>
5411
        <member name="M:Microsoft.Scripting.Error.COMObjectDoesNotSupportSourceInterface">
5412
            <summary>
5413
            ArgumentException with message like "COM object does not support specified source interface."
5414
            </summary>
5415
        </member>
5416
        <member name="M:Microsoft.Scripting.Error.SetComObjectDataFailed">
5417
            <summary>
5418
            InvalidOperationException with message like "Marshal.SetComObjectData failed."
5419
            </summary>
5420
        </member>
5421
        <member name="M:Microsoft.Scripting.Error.MethodShouldNotBeCalled">
5422
            <summary>
5423
            InvalidOperationException with message like "This method exists only to keep the compiler happy."
5424
            </summary>
5425
        </member>
5426
        <member name="M:Microsoft.Scripting.Error.UnexpectedVarEnum(System.Object)">
5427
            <summary>
5428
            InvalidOperationException with message like "Unexpected VarEnum {0}."
5429
            </summary>
5430
        </member>
5431
        <member name="M:Microsoft.Scripting.Error.DispBadParamCount(System.Object)">
5432
            <summary>
5433
            System.Reflection.TargetParameterCountException with message like "Error while invoking {0}."
5434
            </summary>
5435
        </member>
5436
        <member name="M:Microsoft.Scripting.Error.DispMemberNotFound(System.Object)">
5437
            <summary>
5438
            MissingMemberException with message like "Error while invoking {0}."
5439
            </summary>
5440
        </member>
5441
        <member name="M:Microsoft.Scripting.Error.DispNoNamedArgs(System.Object)">
5442
            <summary>
5443
            ArgumentException with message like "Error while invoking {0}. Named arguments are not supported."
5444
            </summary>
5445
        </member>
5446
        <member name="M:Microsoft.Scripting.Error.DispOverflow(System.Object)">
5447
            <summary>
5448
            OverflowException with message like "Error while invoking {0}."
5449
            </summary>
5450
        </member>
5451
        <member name="M:Microsoft.Scripting.Error.DispTypeMismatch(System.Object,System.Object)">
5452
            <summary>
5453
            ArgumentException with message like "Could not convert argument {0} for call to {1}."
5454
            </summary>
5455
        </member>
5456
        <member name="M:Microsoft.Scripting.Error.DispParamNotOptional(System.Object)">
5457
            <summary>
5458
            ArgumentException with message like "Error while invoking {0}. A required parameter was omitted."
5459
            </summary>
5460
        </member>
5461
        <member name="M:Microsoft.Scripting.Error.CannotRetrieveTypeInformation">
5462
            <summary>
5463
            InvalidOperationException with message like "ResolveComReference.CannotRetrieveTypeInformation."
5464
            </summary>
5465
        </member>
5466
        <member name="M:Microsoft.Scripting.Error.GetIDsOfNamesInvalid(System.Object)">
5467
            <summary>
5468
            ArgumentException with message like "IDispatch::GetIDsOfNames behaved unexpectedly for {0}."
5469
            </summary>
5470
        </member>
5471
        <member name="M:Microsoft.Scripting.Error.UnsupportedEnumType">
5472
            <summary>
5473
            InvalidOperationException with message like "Attempting to wrap an unsupported enum type."
5474
            </summary>
5475
        </member>
5476
        <member name="M:Microsoft.Scripting.Error.UnsupportedHandlerType">
5477
            <summary>
5478
            InvalidOperationException with message like "Attempting to pass an event handler of an unsupported type."
5479
            </summary>
5480
        </member>
5481
        <member name="M:Microsoft.Scripting.Error.CouldNotGetDispId(System.Object,System.Object)">
5482
            <summary>
5483
            MissingMemberException with message like "Could not get dispatch ID for {0} (error: {1})."
5484
            </summary>
5485
        </member>
5486
        <member name="M:Microsoft.Scripting.Error.AmbiguousConversion(System.Object,System.Object)">
5487
            <summary>
5488
            System.Reflection.AmbiguousMatchException with message like "There are valid conversions from {0} to {1}."
5489
            </summary>
5490
        </member>
5491
        <member name="M:Microsoft.Scripting.Error.VariantGetAccessorNYI(System.Object)">
5492
            <summary>
5493
            NotImplementedException with message like "Variant.GetAccessor cannot handle {0}."
5494
            </summary>
5495
        </member>
5496
        <member name="M:Microsoft.Scripting.Error.MustHaveCodeOrTarget">
5497
            <summary>
5498
            ArgumentException with message like "Either code or target must be specified."
5499
            </summary>
5500
        </member>
5501
        <member name="M:Microsoft.Scripting.Error.TypeParameterIsNotDelegate(System.Object)">
5502
            <summary>
5503
            InvalidOperationException with message like "Type parameter is {0}. Expected a delegate."
5504
            </summary>
5505
        </member>
5506
        <member name="M:Microsoft.Scripting.Error.InvalidCast(System.Object,System.Object)">
5507
            <summary>
5508
            InvalidOperationException with message like "Cannot cast from type '{0}' to type '{1}"
5509
            </summary>
5510
        </member>
5511
        <member name="M:Microsoft.Scripting.Error.UnknownMemberType(System.Object)">
5512
            <summary>
5513
            InvalidOperationException with message like "unknown member type: '{0}'. "
5514
            </summary>
5515
        </member>
5516
        <member name="M:Microsoft.Scripting.Error.FirstArgumentMustBeCallSite">
5517
            <summary>
5518
            InvalidOperationException with message like "RuleBuilder can only be used with delegates whose first argument is CallSite."
5519
            </summary>
5520
        </member>
5521
        <member name="M:Microsoft.Scripting.Error.NoInstanceForCall">
5522
            <summary>
5523
            InvalidOperationException with message like "no instance for call."
5524
            </summary>
5525
        </member>
5526
        <member name="M:Microsoft.Scripting.Error.MissingTest">
5527
            <summary>
5528
            InvalidOperationException with message like "Missing Test."
5529
            </summary>
5530
        </member>
5531
        <member name="M:Microsoft.Scripting.Error.MissingTarget">
5532
            <summary>
5533
            InvalidOperationException with message like "Missing Target."
5534
            </summary>
5535
        </member>
5536
        <member name="M:Microsoft.Scripting.Error.NonGenericWithGenericGroup(System.Object)">
5537
            <summary>
5538
            TypeLoadException with message like "The operation requires a non-generic type for {0}, but this represents generic types only"
5539
            </summary>
5540
        </member>
5541
        <member name="M:Microsoft.Scripting.Error.InvalidOperation(System.Object)">
5542
            <summary>
5543
            ArgumentException with message like "Invalid operation: '{0}'"
5544
            </summary>
5545
        </member>
5546
        <member name="M:Microsoft.Scripting.Error.FinallyAlreadyDefined">
5547
            <summary>
5548
            InvalidOperationException with message like "Finally already defined."
5549
            </summary>
5550
        </member>
5551
        <member name="M:Microsoft.Scripting.Error.CannotHaveFaultAndFinally">
5552
            <summary>
5553
            InvalidOperationException with message like "Can not have fault and finally."
5554
            </summary>
5555
        </member>
5556
        <member name="M:Microsoft.Scripting.Error.FaultAlreadyDefined">
5557
            <summary>
5558
            InvalidOperationException with message like "Fault already defined."
5559
            </summary>
5560
        </member>
5561
        <member name="M:Microsoft.Scripting.Error.CantCreateDefaultTypeFor(System.Object)">
5562
            <summary>
5563
            ArgumentException with message like "Cannot create default value for type {0}."
5564
            </summary>
5565
        </member>
5566
        <member name="M:Microsoft.Scripting.Error.UnhandledConvert(System.Object)">
5567
            <summary>
5568
            ArgumentException with message like "Unhandled convert: {0}"
5569
            </summary>
5570
        </member>
5571
        <member name="M:Microsoft.Scripting.Error.NoCallableMethods(System.Object,System.Object)">
5572
            <summary>
5573
            InvalidOperationException with message like "{0}.{1} has no publiclly visible method."
5574
            </summary>
5575
        </member>
5576
        <member name="M:Microsoft.Scripting.Error.GlobalsMustBeUnique">
5577
            <summary>
5578
            ArgumentException with message like "Global/top-level local variable names must be unique."
5579
            </summary>
5580
        </member>
5581
        <member name="M:Microsoft.Scripting.Error.GenNonSerializableBinder">
5582
            <summary>
5583
            ArgumentException with message like "Generating code from non-serializable CallSiteBinder."
5584
            </summary>
5585
        </member>
5586
        <member name="M:Microsoft.Scripting.Error.InvalidPath">
5587
            <summary>
5588
            ArgumentException with message like "pecified path is invalid."
5589
            </summary>
5590
        </member>
5591
        <member name="M:Microsoft.Scripting.Error.DictionaryNotHashable">
5592
            <summary>
5593
            ArgumentTypeException with message like "Dictionaries are not hashable."
5594
            </summary>
5595
        </member>
5596
        <member name="M:Microsoft.Scripting.Error.LanguageRegistered">
5597
            <summary>
5598
            InvalidOperationException with message like "language already registered."
5599
            </summary>
5600
        </member>
5601
        <member name="M:Microsoft.Scripting.Error.MethodOrOperatorNotImplemented">
5602
            <summary>
5603
            NotImplementedException with message like "The method or operation is not implemented."
5604
            </summary>
5605
        </member>
5606
        <member name="M:Microsoft.Scripting.Error.NoException">
5607
            <summary>
5608
            InvalidOperationException with message like "No exception."
5609
            </summary>
5610
        </member>
5611
        <member name="M:Microsoft.Scripting.Error.ExtensionMustBePublic(System.Object)">
5612
            <summary>
5613
            ArgumentException with message like "Extension type {0} must be public."
5614
            </summary>
5615
        </member>
5616
        <member name="M:Microsoft.Scripting.Error.AlreadyInitialized">
5617
            <summary>
5618
            InvalidOperationException with message like "Already initialized."
5619
            </summary>
5620
        </member>
5621
        <member name="M:Microsoft.Scripting.Error.MustReturnScopeExtension">
5622
            <summary>
5623
            InvalidImplementationException with message like "CreateScopeExtension must return a scope extension."
5624
            </summary>
5625
        </member>
5626
        <member name="M:Microsoft.Scripting.Error.InvalidParamNumForService">
5627
            <summary>
5628
            ArgumentException with message like "Invalid number of parameters for the service."
5629
            </summary>
5630
        </member>
5631
        <member name="M:Microsoft.Scripting.Error.InvalidArgumentType(System.Object,System.Object)">
5632
            <summary>
5633
            ArgumentException with message like "Invalid type of argument {0}; expecting {1}."
5634
            </summary>
5635
        </member>
5636
        <member name="M:Microsoft.Scripting.Error.CannotChangeNonCachingValue">
5637
            <summary>
5638
            ArgumentException with message like "Cannot change non-caching value."
5639
            </summary>
5640
        </member>
5641
        <member name="M:Microsoft.Scripting.Error.FieldReadonly(System.Object)">
5642
            <summary>
5643
            MissingMemberException with message like "Field {0} is read-only"
5644
            </summary>
5645
        </member>
5646
        <member name="M:Microsoft.Scripting.Error.PropertyReadonly(System.Object)">
5647
            <summary>
5648
            MissingMemberException with message like "Property {0} is read-only"
5649
            </summary>
5650
        </member>
5651
        <member name="M:Microsoft.Scripting.Error.UnexpectedEvent(System.Object,System.Object,System.Object,System.Object)">
5652
            <summary>
5653
            ArgumentException with message like "Expected event from {0}.{1}, got event from {2}.{3}."
5654
            </summary>
5655
        </member>
5656
        <member name="M:Microsoft.Scripting.Error.ExpectedBoundEvent(System.Object)">
5657
            <summary>
5658
            ArgumentTypeException with message like "expected bound event, got {0}."
5659
            </summary>
5660
        </member>
5661
        <member name="M:Microsoft.Scripting.Error.UnexpectedType(System.Object,System.Object)">
5662
            <summary>
5663
            ArgumentTypeException with message like "Expected type {0}, got {1}."
5664
            </summary>
5665
        </member>
5666
        <member name="M:Microsoft.Scripting.Error.MemberWriteOnly(System.Object)">
5667
            <summary>
5668
            MemberAccessException with message like "can only write to member {0}."
5669
            </summary>
5670
        </member>
5671
        <member name="M:Microsoft.Scripting.Error.NoCodeToCompile">
5672
            <summary>
5673
            InvalidOperationException with message like "No code to compile."
5674
            </summary>
5675
        </member>
5676
        <member name="M:Microsoft.Scripting.Error.InvalidStreamType(System.Object)">
5677
            <summary>
5678
            ArgumentException with message like "Invalid stream type: {0}."
5679
            </summary>
5680
        </member>
5681
        <member name="M:Microsoft.Scripting.Error.QueueEmpty">
5682
            <summary>
5683
            InvalidOperationException with message like "Queue empty."
5684
            </summary>
5685
        </member>
5686
        <member name="M:Microsoft.Scripting.Error.EnumerationNotStarted">
5687
            <summary>
5688
            InvalidOperationException with message like "Enumeration has not started. Call MoveNext."
5689
            </summary>
5690
        </member>
5691
        <member name="M:Microsoft.Scripting.Error.EnumerationFinished">
5692
            <summary>
5693
            InvalidOperationException with message like "Enumeration already finished."
5694
            </summary>
5695
        </member>
5696
        <member name="M:Microsoft.Scripting.Error.CantAddCasing(System.Object)">
5697
            <summary>
5698
            InvalidOperationException with message like "can't add another casing for identifier {0}"
5699
            </summary>
5700
        </member>
5701
        <member name="M:Microsoft.Scripting.Error.CantAddIdentifier(System.Object)">
5702
            <summary>
5703
            InvalidOperationException with message like "can't add new identifier {0}"
5704
            </summary>
5705
        </member>
5706
        <member name="M:Microsoft.Scripting.Error.InvalidOutputDir">
5707
            <summary>
5708
            ArgumentException with message like "Invalid output directory."
5709
            </summary>
5710
        </member>
5711
        <member name="M:Microsoft.Scripting.Error.InvalidAsmNameOrExtension">
5712
            <summary>
5713
            ArgumentException with message like "Invalid assembly name or file extension."
5714
            </summary>
5715
        </member>
5716
        <member name="M:Microsoft.Scripting.Error.CanotEmitConstant(System.Object,System.Object)">
5717
            <summary>
5718
            ArgumentException with message like "Cannot emit constant {0} ({1})"
5719
            </summary>
5720
        </member>
5721
        <member name="M:Microsoft.Scripting.Error.NoImplicitCast(System.Object,System.Object)">
5722
            <summary>
5723
            ArgumentException with message like "No implicit cast from {0} to {1}"
5724
            </summary>
5725
        </member>
5726
        <member name="M:Microsoft.Scripting.Error.NoExplicitCast(System.Object,System.Object)">
5727
            <summary>
5728
            ArgumentException with message like "No explicit cast from {0} to {1}"
5729
            </summary>
5730
        </member>
5731
        <member name="M:Microsoft.Scripting.Error.NameNotDefined(System.Object)">
5732
            <summary>
5733
            MissingMemberException with message like "name '{0}' not defined"
5734
            </summary>
5735
        </member>
5736
        <member name="M:Microsoft.Scripting.Error.NoDefaultValue">
5737
            <summary>
5738
            ArgumentException with message like "No default value for a given type."
5739
            </summary>
5740
        </member>
5741
        <member name="M:Microsoft.Scripting.Error.UnknownLanguageProviderType">
5742
            <summary>
5743
            ArgumentException with message like "Specified language provider type is not registered."
5744
            </summary>
5745
        </member>
5746
        <member name="M:Microsoft.Scripting.Error.CantReadProperty">
5747
            <summary>
5748
            InvalidOperationException with message like "can't read from property"
5749
            </summary>
5750
        </member>
5751
        <member name="M:Microsoft.Scripting.Error.CantWriteProperty">
5752
            <summary>
5753
            InvalidOperationException with message like "can't write to property"
5754
            </summary>
5755
        </member>
5756
        <member name="M:Microsoft.Scripting.Error.IllegalNew_GenericParams(System.Object)">
5757
            <summary>
5758
            ArgumentException with message like "Cannot create instance of {0} because it contains generic parameters"
5759
            </summary>
5760
        </member>
5761
        <member name="M:Microsoft.Scripting.Error.VerificationException(System.Object,System.Object,System.Object)">
5762
            <summary>
5763
            System.Security.VerificationException with message like "Non-verifiable assembly generated: {0}:\nAssembly preserved as {1}\nError text:\n{2}\n"
5764
            </summary>
5765
        </member>
5766
        <member name="T:Microsoft.Scripting.Hosting.Shell.ICommandDispatcher">
5767
            <summary>
5768
            Used to dispatch a single interactive command. It can be used to control things like which Thread
5769
            the command is executed on, how long the command is allowed to execute, etc
5770
            </summary>
5771
        </member>
5772
        <member name="T:Microsoft.Scripting.Hosting.Shell.Remote.ConsoleRestartManager">
5773
             <summary>
5774
             Supports detecting the remote runtime being killed, and starting up a new one.
5775
             
5776
             Threading model:
5777
             
5778
             ConsoleRestartManager creates a separate thread on which to create and execute the consoles. 
5779
             There are usually atleast three threads involved:
5780
             
5781
             1. Main app thread: Instantiates ConsoleRestartManager and accesses its APIs. This thread has to stay 
5782
                responsive to user input and so the ConsoleRestartManager APIs cannot be long-running or blocking.
5783
                Since the remote runtime process can terminate asynchronously, the current RemoteConsoleHost can 
5784
                change at any time (if auto-restart is enabled). The app should typically not care which instance of 
5785
                RemoteConsoleHost is currently being used. The flowchart of this thread is:
5786
                    Create ConsoleRestartManager
5787
                    ConsoleRestartManager.Start
5788
                    Loop:
5789
                        Respond to user input | Send user input to console for execution | BreakExecution | RestartConsole | GetMemberNames
5790
                    ConsoleRestartManager.Terminate
5791
                TODO: Currently, BreakExecution and GetMemberNames are called by the main thread synchronously.
5792
                Since they execute code in the remote runtime, they could take arbitrarily long. We should change
5793
                this so that the main app thread can never be blocked indefinitely.
5794
            
5795
             2. Console thread: Dedicated thread for creating RemoteConsoleHosts and executing code (which could
5796
                take a long time or block indefinitely).
5797
                    Wait for ConsoleRestartManager.Start to be called
5798
                    Loop:
5799
                        Create RemoteConsoleHost
5800
                        Wait for signal for:
5801
                             Execute code | RestartConsole | Process.Exited
5802
            
5803
             3. CompletionPort async callbacks:
5804
                    Process.Exited | Process.OutputDataReceived | Process.ErrorDataReceived
5805
             
5806
             4. Finalizer thred
5807
                Some objects may have a Finalize method (which possibly calls Dispose). Not many (if any) types
5808
                should have a Finalize method.
5809
             
5810
             </summary>
5811
        </member>
5812
        <member name="F:Microsoft.Scripting.Hosting.Shell.Remote.ConsoleRestartManager._accessLock">
5813
            <summary>
5814
            Accessing _remoteConsoleHost from a thread other than console thread can result in race.
5815
            If _remoteConsoleHost is accessed while holding _accessLock, it is guaranteed to be
5816
            null or non-disposed.
5817
            </summary>
5818
        </member>
5819
        <member name="M:Microsoft.Scripting.Hosting.Shell.Remote.ConsoleRestartManager.#ctor(System.Boolean)">
5820
            <summary>
5821
            This is created on the "creating thread", and goes on standby. Start needs to be called for activation.
5822
            </summary>
5823
            <param name="exitOnNormalExit">A host might want one of two behaviors:
5824
            1. Keep the REPL loop alive indefinitely, even when a specific instance of the RemoteConsoleHost terminates normally
5825
            2. Close the REPL loop when an instance of the RemoteConsoleHost terminates normally, and restart the loop
5826
               only if the instance terminates abnormally.</param>
5827
        </member>
5828
        <member name="M:Microsoft.Scripting.Hosting.Shell.Remote.ConsoleRestartManager.Start">
5829
            <summary>
5830
            Needs to be called for activation.
5831
            </summary>
5832
        </member>
5833
        <member name="M:Microsoft.Scripting.Hosting.Shell.Remote.ConsoleRestartManager.Terminate">
5834
            <summary>
5835
            Request (from another thread) the console REPL loop to terminate
5836
            </summary>
5837
        </member>
5838
        <member name="T:Microsoft.Scripting.Hosting.Shell.Remote.RemoteCommandDispatcher">
5839
            <summary>
5840
            This allows the RemoteConsoleHost to abort a long-running operation. The RemoteConsoleHost itself
5841
            does not know which ThreadPool thread might be processing the remote call, and so it needs
5842
            cooperation from the remote runtime server.
5843
            </summary>
5844
        </member>
5845
        <member name="F:Microsoft.Scripting.Hosting.Shell.Remote.RemoteCommandDispatcher.OutputCompleteMarker">
5846
            <summary>
5847
            Since OnOutputDataReceived is sent async, it can arrive late. The remote console
5848
            cannot know if all output from the current command has been received. So
5849
            RemoteCommandDispatcher writes out a marker to indicate the end of the output
5850
            </summary>
5851
        </member>
5852
        <member name="M:Microsoft.Scripting.Hosting.Shell.Remote.RemoteCommandDispatcher.AbortCommand">
5853
            <summary>
5854
            Aborts the current active call to Execute by doing Thread.Abort
5855
            </summary>
5856
            <returns>true if a Thread.Abort was actually called. false if there is no active call to Execute</returns>
5857
        </member>
5858
        <member name="T:Microsoft.Scripting.Hosting.Shell.Remote.RemoteConsoleCommandLine">
5859
            <summary>
5860
            Customize the CommandLine for remote scenarios
5861
            </summary>
5862
        </member>
5863
        <member name="T:Microsoft.Scripting.Hosting.Shell.Remote.RemoteConsoleCommandLine.RemoteConsoleCommandDispatcher">
5864
            <summary>
5865
            CommandDispatcher to ensure synchronize output from the remote runtime
5866
            </summary>
5867
        </member>
5868
        <member name="T:Microsoft.Scripting.Hosting.Shell.Remote.RemoteConsoleHost">
5869
            <summary>
5870
            ConsoleHost where the ScriptRuntime is hosted in a separate process (referred to as the remote runtime server)
5871
            
5872
            The RemoteConsoleHost spawns the remote runtime server and specifies an IPC channel name to use to communicate
5873
            with each other. The remote runtime server creates and initializes a ScriptRuntime and a ScriptEngine, and publishes
5874
            it over the specified IPC channel at a well-known URI. Note that the RemoteConsoleHost cannot easily participate
5875
            in the initialization of the ScriptEngine as classes like LanguageContext are not remotable.
5876
            
5877
            The RemoteConsoleHost then starts the interactive loop and executes commands on the ScriptEngine over the remoting channel.
5878
            The RemoteConsoleHost listens to stdout of the remote runtime server and echos it locally to the user.
5879
            </summary>
5880
        </member>
5881
        <member name="E:Microsoft.Scripting.Hosting.Shell.Remote.RemoteConsoleHost.RemoteRuntimeExited">
5882
            <summary>
5883
            Called if the remote runtime process exits by itself. ie. without the remote console killing it.
5884
            </summary>
5885
        </member>
5886
        <member name="M:Microsoft.Scripting.Hosting.Shell.Remote.RemoteConsoleHost.CustomizeRemoteRuntimeStartInfo(System.Diagnostics.ProcessStartInfo)">
5887
            <summary>
5888
            Allows the console to customize the environment variables, working directory, etc.
5889
            </summary>
5890
            <param name="processInfo">At the least, processInfo.FileName should be initialized</param>
5891
        </member>
5892
        <member name="M:Microsoft.Scripting.Hosting.Shell.Remote.RemoteConsoleHost.AbortCommand">
5893
            <summary>
5894
            Aborts the current active call to Execute by doing Thread.Abort
5895
            </summary>
5896
            <returns>true if a Thread.Abort was actually called. false if there is no active call to Execute</returns>
5897
        </member>
5898
        <member name="T:Microsoft.Scripting.Hosting.Shell.Remote.RemoteRuntimeServer">
5899
            <summary>
5900
            The remote runtime server uses this class to publish an initialized ScriptEngine and ScriptRuntime 
5901
            over a remoting channel.
5902
            </summary>
5903
        </member>
5904
        <member name="M:Microsoft.Scripting.Hosting.Shell.Remote.RemoteRuntimeServer.StartServer(System.String,Microsoft.Scripting.Hosting.ScriptScope)">
5905
            <summary>
5906
            Publish objects so that the host can use it, and then block indefinitely (until the input stream is open).
5907
            
5908
            Note that we should publish only one object, and then have other objects be accessible from it. Publishing
5909
            multiple objects can cause problems if the client does a call like "remoteProxy1(remoteProxy2)" as remoting
5910
            will not be able to know if the server object for both the proxies is on the same server.
5911
            </summary>
5912
            <param name="remoteRuntimeChannelName">The IPC channel that the remote console expects to use to communicate with the ScriptEngine</param>
5913
            <param name="scope">A intialized ScriptScope that is ready to start processing script commands</param>
5914
        </member>
5915
        <member name="T:Microsoft.Scripting.Hosting.Shell.CommandLine">
5916
            <summary>
5917
            Command line hosting service.
5918
            </summary>
5919
        </member>
5920
        <member name="P:Microsoft.Scripting.Hosting.Shell.CommandLine.Scope">
5921
            <summary>
5922
            Scope is not remotable, and this only works in the same AppDomain.
5923
            </summary>
5924
        </member>
5925
        <member name="M:Microsoft.Scripting.Hosting.Shell.CommandLine.Run(Microsoft.Scripting.Hosting.ScriptEngine,Microsoft.Scripting.Hosting.Shell.IConsole,Microsoft.Scripting.Hosting.Shell.ConsoleOptions)">
5926
            <summary>
5927
            Executes the comand line - depending upon the options provided we will
5928
            either run a single file, a single command, or enter the interactive loop.
5929
            </summary>
5930
        </member>
5931
        <member name="M:Microsoft.Scripting.Hosting.Shell.CommandLine.Run">
5932
            <summary>
5933
            Runs the command line.  Languages can override this to provide custom behavior other than:
5934
                1. Running a single command
5935
                2. Running a file
5936
                3. Entering the interactive console loop.
5937
            </summary>
5938
            <returns></returns>
5939
        </member>
5940
        <member name="M:Microsoft.Scripting.Hosting.Shell.CommandLine.RunFile(Microsoft.Scripting.Hosting.ScriptSource)">
5941
            <summary>
5942
            Runs the specified filename
5943
            </summary>
5944
        </member>
5945
        <member name="M:Microsoft.Scripting.Hosting.Shell.CommandLine.RunInteractive">
5946
            <summary>
5947
            Starts the interactive loop.  Performs any initialization necessary before
5948
            starting the loop and then calls RunInteractiveLoop to start the loop.
5949
            
5950
            Returns the exit code when the interactive loop is completed.
5951
            </summary>
5952
        </member>
5953
        <member name="M:Microsoft.Scripting.Hosting.Shell.CommandLine.RunInteractiveLoop">
5954
            <summary>
5955
            Runs the interactive loop.  Repeatedly parse and run interactive actions
5956
            until an exit code is received.  If any exceptions are unhandled displays
5957
            them to the console
5958
            </summary>
5959
        </member>
5960
        <member name="M:Microsoft.Scripting.Hosting.Shell.CommandLine.TryInteractiveAction">
5961
            <summary>
5962
            Attempts to run a single interaction and handle any language-specific
5963
            exceptions.  Base classes can override this and call the base implementation
5964
            surrounded with their own exception handling.
5965
            
5966
            Returns null if successful and execution should continue, or an exit code.
5967
            </summary>
5968
        </member>
5969
        <member name="M:Microsoft.Scripting.Hosting.Shell.CommandLine.RunOneInteraction">
5970
            <summary>
5971
            Parses a single interactive command or a set of statements and executes it.  
5972
            
5973
            Returns null if successful and execution should continue, or the appropiate exit code.
5974
            
5975
            We check if the code read is an interactive command or statements is by checking for NewLine
5976
            If the code contains NewLine, it's a set of statements (most probably from SendToConsole)
5977
            If the code does not contain a NewLine, it's an interactive command typed by the user at the prompt
5978
            </summary>
5979
        </member>
5980
        <member name="M:Microsoft.Scripting.Hosting.Shell.CommandLine.TreatAsBlankLine(System.String,System.Int32)">
5981
            <summary>
5982
            Private helper function to see if we should treat the current input as a blank link.
5983
            
5984
            We do this if we only have auto-indent text.
5985
            </summary>
5986
        </member>
5987
        <member name="M:Microsoft.Scripting.Hosting.Shell.CommandLine.ReadStatement(System.Boolean@)">
5988
            <summary>
5989
            Read a statement, which can potentially be a multiple-line statement suite (like a class declaration).
5990
            </summary>
5991
            <param name="continueInteraction">Should the console session continue, or did the user indicate 
5992
            that it should be terminated?</param>
5993
            <returns>Expression to evaluate. null for empty input</returns>
5994
        </member>
5995
        <member name="M:Microsoft.Scripting.Hosting.Shell.CommandLine.GetNextAutoIndentSize(System.String)">
5996
            <summary>
5997
            Gets the next level for auto-indentation
5998
            </summary>
5999
        </member>
6000
        <member name="T:Microsoft.Scripting.Hosting.Shell.ConsoleHost">
6001
            <summary>
6002
            Core functionality to implement an interactive console. This should be derived for concrete implementations
6003
            </summary>
6004
        </member>
6005
        <member name="P:Microsoft.Scripting.Hosting.Shell.ConsoleHost.ExeName">
6006
            <summary>
6007
            Console Host entry-point .exe name.
6008
            </summary>
6009
        </member>
6010
        <member name="M:Microsoft.Scripting.Hosting.Shell.ConsoleHost.Terminate(System.Int32)">
6011
            <summary>
6012
            Request (from another thread) the console REPL loop to terminate
6013
            </summary>
6014
            <param name="exitCode">The caller can specify the exitCode corresponding to the event triggering
6015
            the termination. This will be returned from CommandLine.Run</param>
6016
        </member>
6017
        <member name="M:Microsoft.Scripting.Hosting.Shell.ConsoleHost.Run(System.String[])">
6018
            <summary>
6019
            To be called from entry point.
6020
            </summary>
6021
        </member>
6022
        <member name="M:Microsoft.Scripting.Hosting.Shell.ConsoleHostOptionsParser.Parse(System.String[])">
6023
            <exception cref="T:Microsoft.Scripting.Hosting.Shell.InvalidOptionException"></exception>
6024
        </member>
6025
        <member name="M:Microsoft.Scripting.Hosting.Shell.ConsoleHostOptionsParser.ParseOption(System.String,System.String@,System.String@)">
6026
            <summary>
6027
            name == null means that the argument doesn't specify an option; the value contains the entire argument
6028
            name == "" means that the option name is empty (argument separator); the value is null then
6029
            </summary>
6030
        </member>
6031
        <member name="P:Microsoft.Scripting.Hosting.Shell.ConsoleOptions.Command">
6032
            <summary>
6033
            Literal script command given using -c option
6034
            </summary>
6035
        </member>
6036
        <member name="P:Microsoft.Scripting.Hosting.Shell.ConsoleOptions.FileName">
6037
            <summary>
6038
            Filename to execute passed on the command line options.
6039
            </summary>
6040
        </member>
6041
        <member name="P:Microsoft.Scripting.Hosting.Shell.ConsoleOptions.PrintVersion">
6042
            <summary>
6043
            Only print the version of the script interpreter and exit
6044
            </summary>
6045
        </member>
6046
        <member name="T:Microsoft.Scripting.Hosting.Shell.IConsole">
6047
            <summary>
6048
            Handles input and output for the console. It is comparable to System.IO.TextReader, 
6049
            System.IO.TextWriter, System.Console, etc
6050
            </summary>
6051
        </member>
6052
        <member name="M:Microsoft.Scripting.Hosting.Shell.IConsole.ReadLine(System.Int32)">
6053
            <summary>
6054
            Read a single line of interactive input, or a block of multi-line statements.
6055
            
6056
            An event-driven GUI console can implement this method by creating a thread that
6057
            blocks and waits for an event indicating that input is available
6058
            </summary>
6059
            <param name="autoIndentSize">The indentation level to be used for the current suite of a compound statement.
6060
            The console can ignore this argument if it does not want to support auto-indentation</param>
6061
            <returns>null if the input stream has been closed. A string with a command to execute otherwise.
6062
            It can be a multi-line string which should be processed as block of statements
6063
            </returns>
6064
        </member>
6065
        <member name="M:Microsoft.Scripting.Hosting.Shell.OptionsParser.Parse(System.String[],Microsoft.Scripting.Hosting.ScriptRuntimeSetup,Microsoft.Scripting.Hosting.LanguageSetup,Microsoft.Scripting.PlatformAdaptationLayer)">
6066
            <exception cref="T:Microsoft.Scripting.Hosting.Shell.InvalidOptionException">On error.</exception>
6067
        </member>
6068
        <member name="T:Microsoft.Scripting.Hosting.Shell.SuperConsole.History">
6069
            <summary>
6070
            Class managing the command history.
6071
            </summary>
6072
        </member>
6073
        <member name="T:Microsoft.Scripting.Hosting.Shell.SuperConsole.SuperConsoleOptions">
6074
            <summary>
6075
            List of available options
6076
            </summary>
6077
        </member>
6078
        <member name="T:Microsoft.Scripting.Hosting.Shell.SuperConsole.Cursor">
6079
            <summary>
6080
            Cursor position management
6081
            </summary>
6082
        </member>
6083
        <member name="F:Microsoft.Scripting.Hosting.Shell.SuperConsole.Cursor._anchorTop">
6084
            <summary>
6085
            Beginning position of the cursor - top coordinate.
6086
            </summary>
6087
        </member>
6088
        <member name="F:Microsoft.Scripting.Hosting.Shell.SuperConsole.Cursor._anchorLeft">
6089
            <summary>
6090
            Beginning position of the cursor - left coordinate.
6091
            </summary>
6092
        </member>
6093
        <member name="F:Microsoft.Scripting.Hosting.Shell.SuperConsole._input">
6094
            <summary>
6095
            The console input buffer.
6096
            </summary>
6097
        </member>
6098
        <member name="F:Microsoft.Scripting.Hosting.Shell.SuperConsole._current">
6099
            <summary>
6100
            Current position - index into the input buffer
6101
            </summary>
6102
        </member>
6103
        <member name="F:Microsoft.Scripting.Hosting.Shell.SuperConsole._autoIndentSize">
6104
            <summary>
6105
            The number of white-spaces displayed for the auto-indenation of the current line
6106
            </summary>
6107
        </member>
6108
        <member name="F:Microsoft.Scripting.Hosting.Shell.SuperConsole._rendered">
6109
            <summary>
6110
            Length of the output currently rendered on screen.
6111
            </summary>
6112
        </member>
6113
        <member name="F:Microsoft.Scripting.Hosting.Shell.SuperConsole._history">
6114
            <summary>
6115
            Command history
6116
            </summary>
6117
        </member>
6118
        <member name="F:Microsoft.Scripting.Hosting.Shell.SuperConsole._options">
6119
            <summary>
6120
            Tab options available in current context
6121
            </summary>
6122
        </member>
6123
        <member name="F:Microsoft.Scripting.Hosting.Shell.SuperConsole._cursor">
6124
            <summary>
6125
            Cursort anchor - position of cursor when the routine was called
6126
            </summary>
6127
        </member>
6128
        <member name="F:Microsoft.Scripting.Hosting.Shell.SuperConsole._commandLine">
6129
            <summary>
6130
            The command line that this console is attached to.
6131
            </summary>
6132
        </member>
6133
        <member name="M:Microsoft.Scripting.Hosting.Shell.SuperConsole.DisplayNextOption(System.ConsoleKeyInfo,System.Boolean)">
6134
            <summary>
6135
            Displays the next option in the option list,
6136
            or beeps if no options available for current input prefix.
6137
            If no input prefix, simply print tab.
6138
            </summary>
6139
            <param name="key"></param>
6140
            <param name="prefix"></param>
6141
        </member>
6142
        <member name="M:Microsoft.Scripting.Hosting.Shell.SuperConsole.OnEnter(System.Boolean)">
6143
            <summary>
6144
            Handle the enter key. Adds the current input (if not empty) to the history.
6145
            </summary>
6146
            <param name="inputChanged"></param>
6147
            <returns>The input string.</returns>
6148
        </member>
6149
        <member name="P:Microsoft.Scripting.Interpreter.CallInstruction.ArgumentCount">
6150
            <summary>
6151
            The number of arguments including "this" for instance methods.
6152
            </summary>
6153
        </member>
6154
        <member name="M:Microsoft.Scripting.Interpreter.CallInstruction.Create(System.Reflection.MethodInfo)">
6155
            <exception cref="T:System.Security.SecurityException">Instruction can't be created due to insufficient privileges.</exception>
6156
        </member>
6157
        <member name="M:Microsoft.Scripting.Interpreter.CallInstruction.Create(System.Reflection.MethodInfo,System.Reflection.ParameterInfo[])">
6158
            <exception cref="T:System.Security.SecurityException">Instruction can't be created due to insufficient privileges.</exception>
6159
        </member>
6160
        <member name="M:Microsoft.Scripting.Interpreter.CallInstruction.TryGetParameterOrReturnType(System.Reflection.MethodInfo,System.Reflection.ParameterInfo[],System.Int32)">
6161
            <summary>
6162
            Gets the next type or null if no more types are available.
6163
            </summary>
6164
        </member>
6165
        <member name="M:Microsoft.Scripting.Interpreter.CallInstruction.SlowCreate(System.Reflection.MethodInfo,System.Reflection.ParameterInfo[])">
6166
            <summary>
6167
            Uses reflection to create new instance of the appropriate ReflectedCaller
6168
            </summary>
6169
        </member>
6170
        <member name="M:Microsoft.Scripting.Interpreter.CallInstruction.FastCreate(System.Reflection.MethodInfo,System.Reflection.ParameterInfo[])">
6171
            <summary>
6172
            Fast creation works if we have a known primitive types for the entire
6173
            method siganture.  If we have any non-primitive types then FastCreate
6174
            falls back to SlowCreate which works for all types.
6175
            
6176
            Fast creation is fast because it avoids using reflection (MakeGenericType
6177
            and Activator.CreateInstance) to create the types.  It does this through
6178
            calling a series of generic methods picking up each strong type of the
6179
            signature along the way.  When it runs out of types it news up the 
6180
            appropriate CallInstruction with the strong-types that have been built up.
6181
            
6182
            One relaxation is that for return types which are non-primitive types
6183
            we can fallback to object due to relaxed delegates.
6184
            </summary>
6185
        </member>
6186
        <member name="T:Microsoft.Scripting.Interpreter.GotoInstruction">
6187
            <summary>
6188
            This instruction implements a goto expression that can jump out of any expression. 
6189
            It pops values (arguments) from the evaluation stack that the expression tree nodes in between 
6190
            the goto expression and the target label node pushed and not consumed yet. 
6191
            A goto expression can jump into a node that evaluates arguments only if it carries 
6192
            a value and jumps right after the first argument (the carried value will be used as the first argument). 
6193
            Goto can jump into an arbitrary child of a BlockExpression since the block doesn’t accumulate values 
6194
            on evaluation stack as its child expressions are being evaluated.
6195
            
6196
            Goto needs to execute any finally blocks on the way to the target label.
6197
            <example>
6198
            { 
6199
                f(1, 2, try { g(3, 4, try { goto L } finally { ... }, 6) } finally { ... }, 7, 8)
6200
                L: ... 
6201
            }
6202
            </example>
6203
            The goto expression here jumps to label L while having 4 items on evaluation stack (1, 2, 3 and 4). 
6204
            The jump needs to execute both finally blocks, the first one on stack level 4 the 
6205
            second one on stack level 2. So, it needs to jump the first finally block, pop 2 items from the stack, 
6206
            run second finally block and pop another 2 items from the stack and set instruction pointer to label L.
6207
            
6208
            Goto also needs to rethrow ThreadAbortException iff it jumps out of a catch handler and 
6209
            the current thread is in "abort requested" state.
6210
            </summary>
6211
        </member>
6212
        <member name="T:Microsoft.Scripting.Interpreter.EnterFinallyInstruction">
6213
            <summary>
6214
            The first instruction of finally block.
6215
            </summary>
6216
        </member>
6217
        <member name="T:Microsoft.Scripting.Interpreter.LeaveFinallyInstruction">
6218
            <summary>
6219
            The last instruction of finally block.
6220
            </summary>
6221
        </member>
6222
        <member name="T:Microsoft.Scripting.Interpreter.LeaveExceptionHandlerInstruction">
6223
            <summary>
6224
            The last instruction of a catch exception handler.
6225
            </summary>
6226
        </member>
6227
        <member name="T:Microsoft.Scripting.Interpreter.LeaveFaultInstruction">
6228
            <summary>
6229
            The last instruction of a fault exception handler.
6230
            </summary>
6231
        </member>
6232
        <member name="T:Microsoft.Scripting.Interpreter.DynamicSplatInstruction">
6233
            <summary>
6234
            Implements dynamic call site with many arguments. Wraps the arguments into <see cref="T:Microsoft.Scripting.Runtime.ArgumentArray"/>.
6235
            </summary>
6236
        </member>
6237
        <member name="T:Microsoft.Scripting.Interpreter.LabelInfo">
6238
            <summary>
6239
            Contains compiler state corresponding to a LabelTarget
6240
            See also LabelScopeInfo.
6241
            </summary>
6242
        </member>
6243
        <member name="P:Microsoft.Scripting.Interpreter.LabelScopeInfo.CanJumpInto">
6244
            <summary>
6245
            Returns true if we can jump into this node
6246
            </summary>
6247
        </member>
6248
        <member name="M:Microsoft.Scripting.Interpreter.InstructionList.SetDebugCookie(System.Object)">
6249
            <summary>
6250
            Attaches a cookie to the last emitted instruction.
6251
            </summary>
6252
        </member>
6253
        <member name="M:Microsoft.Scripting.Interpreter.InstructionList.CreateDynamicInstruction(System.Type,System.Runtime.CompilerServices.CallSiteBinder)">
6254
            <exception cref="T:System.Security.SecurityException">Instruction can't be created due to insufficient privileges.</exception>
6255
        </member>
6256
        <member name="T:Microsoft.Scripting.Interpreter.LightDelegateCreator">
6257
            <summary>
6258
            Manages creation of interpreted delegates. These delegates will get
6259
            compiled if they are executed often enough.
6260
            </summary>
6261
        </member>
6262
        <member name="P:Microsoft.Scripting.Interpreter.LightDelegateCreator.SameDelegateType">
6263
            <summary>
6264
            true if the compiled delegate has the same type as the lambda;
6265
            false if the type was changed for interpretation.
6266
            </summary>
6267
        </member>
6268
        <member name="M:Microsoft.Scripting.Interpreter.LightDelegateCreator.CreateCompiledDelegate(System.Runtime.CompilerServices.StrongBox{System.Object}[])">
6269
            <summary>
6270
            Used by LightLambda to get the compiled delegate.
6271
            </summary>
6272
        </member>
6273
        <member name="M:Microsoft.Scripting.Interpreter.LightDelegateCreator.Compile(System.Object)">
6274
            <summary>
6275
            Create a compiled delegate for the LightLambda, and saves it so
6276
            future calls to Run will execute the compiled code instead of
6277
            interpreting.
6278
            </summary>
6279
        </member>
6280
        <member name="E:Microsoft.Scripting.Interpreter.LightLambda.Compile">
6281
            <summary>
6282
            Provides notification that the LightLambda has been compiled.
6283
            </summary>
6284
        </member>
6285
        <member name="T:Microsoft.Scripting.Interpreter.Interpreter">
6286
            <summary>
6287
            A simple forth-style stack machine for executing Expression trees
6288
            without the need to compile to IL and then invoke the JIT.  This trades
6289
            off much faster compilation time for a slower execution performance.
6290
            For code that is only run a small number of times this can be a 
6291
            sweet spot.
6292
            
6293
            The core loop in the interpreter is the RunInstructions method.
6294
            </summary>
6295
        </member>
6296
        <member name="M:Microsoft.Scripting.Interpreter.Interpreter.Run(Microsoft.Scripting.Interpreter.InterpretedFrame)">
6297
            <summary>
6298
            Runs instructions within the given frame.
6299
            </summary>
6300
            <remarks>
6301
            Interpreted stack frames are linked via Parent reference so that each CLR frame of this method corresponds 
6302
            to an interpreted stack frame in the chain. It is therefore possible to combine CLR stack traces with 
6303
            interpreted stack traces by aligning interpreted frames to the frames of this method.
6304
            Each group of subsequent frames of Run method corresponds to a single interpreted frame.
6305
            </remarks>
6306
        </member>
6307
        <member name="T:Microsoft.Scripting.Interpreter.LightLambdaClosureVisitor">
6308
            <summary>
6309
            Visits a LambdaExpression, replacing the constants with direct accesses
6310
            to their StrongBox fields. This is very similar to what
6311
            ExpressionQuoter does for LambdaCompiler.
6312
            
6313
            Also inserts debug information tracking similar to what the interpreter
6314
            would do.
6315
            </summary>
6316
        </member>
6317
        <member name="F:Microsoft.Scripting.Interpreter.LightLambdaClosureVisitor._closureVars">
6318
            <summary>
6319
            Local variable mapping.
6320
            </summary>
6321
        </member>
6322
        <member name="F:Microsoft.Scripting.Interpreter.LightLambdaClosureVisitor._closureArray">
6323
            <summary>
6324
            The variable that holds onto the StrongBox{object}[] closure from
6325
            the interpreter
6326
            </summary>
6327
        </member>
6328
        <member name="F:Microsoft.Scripting.Interpreter.LightLambdaClosureVisitor._shadowedVars">
6329
            <summary>
6330
            A stack of variables that are defined in nested scopes. We search
6331
            this first when resolving a variable in case a nested scope shadows
6332
            one of our variable instances.
6333
            </summary>
6334
        </member>
6335
        <member name="M:Microsoft.Scripting.Interpreter.LightLambdaClosureVisitor.BindLambda(System.Linq.Expressions.LambdaExpression,System.Collections.Generic.Dictionary{System.Linq.Expressions.ParameterExpression,Microsoft.Scripting.Interpreter.LocalVariable})">
6336
            <summary>
6337
            Walks the lambda and produces a higher order function, which can be
6338
            used to bind the lambda to a closure array from the interpreter.
6339
            </summary>
6340
            <param name="lambda">The lambda to bind.</param>
6341
            <param name="closureVariables">Variables which are being accessed defined in the outer scope.</param>
6342
            <returns>A delegate that can be called to produce a delegate bound to the passed in closure array.</returns>
6343
        </member>
6344
        <member name="T:Microsoft.Scripting.Interpreter.LightLambdaClosureVisitor.MergedRuntimeVariables">
6345
            <summary>
6346
            Provides a list of variables, supporing read/write of the values
6347
            </summary>
6348
        </member>
6349
        <member name="M:Microsoft.Scripting.Interpreter.LocalVariables.CopyLocals">
6350
            <summary>
6351
            Gets a copy of the local variables which are defined in the current scope.
6352
            </summary>
6353
            <returns></returns>
6354
        </member>
6355
        <member name="M:Microsoft.Scripting.Interpreter.LocalVariables.ContainsVariable(System.Linq.Expressions.ParameterExpression)">
6356
            <summary>
6357
            Checks to see if the given variable is defined within the current local scope.
6358
            </summary>
6359
        </member>
6360
        <member name="P:Microsoft.Scripting.Interpreter.LocalVariables.ClosureVariables">
6361
            <summary>
6362
            Gets the variables which are defined in an outer scope and available within the current scope.
6363
            </summary>
6364
        </member>
6365
        <member name="T:Microsoft.Scripting.Interpreter.LocalVariables.VariableScope">
6366
            <summary>
6367
            Tracks where a variable is defined and what range of instructions it's used in
6368
            </summary>
6369
        </member>
6370
        <member name="M:Microsoft.Scripting.Interpreter.InterpretedFrame.GroupStackFrames(System.Collections.Generic.IEnumerable{System.Diagnostics.StackFrame})">
6371
            <summary>
6372
            A single interpreted frame might be represented by multiple subsequent Interpreter.Run CLR frames.
6373
            This method filters out the duplicate CLR frames.
6374
            </summary>
6375
        </member>
6376
        <member name="T:Microsoft.Scripting.Math.BigInteger">
6377
            <summary>
6378
            arbitrary precision integers
6379
            </summary>
6380
        </member>
6381
        <member name="P:Microsoft.Scripting.Math.BigInteger.Sign">
6382
            <summary>
6383
            Return the sign of this BigInteger: -1, 0, or 1.
6384
            </summary>
6385
        </member>
6386
        <member name="M:Microsoft.Scripting.Math.BigInteger.Log">
6387
            <summary>
6388
            Calculates the natural logarithm of the BigInteger.
6389
            </summary>
6390
        </member>
6391
        <member name="M:Microsoft.Scripting.Math.BigInteger.Log10">
6392
            <summary>
6393
            Calculates log base 10 of a BigInteger.
6394
            </summary>
6395
        </member>
6396
        <member name="M:Microsoft.Scripting.Math.BigInteger.ToByteArray">
6397
            <summary>
6398
            Return the value of this BigInteger as a little-endian twos-complement
6399
            byte array, using the fewest number of bytes possible. If the value is zero,
6400
            return an array of one byte whose element is 0x00.
6401
            </summary>
6402
        </member>
6403
        <member name="T:Microsoft.Scripting.Math.Complex64">
6404
            <summary>
6405
            Implementation of the complex number data type.
6406
            </summary>
6407
        </member>
6408
        <member name="T:Microsoft.Scripting.MultiRuntimeAwareAttribute">
6409
            <summary>
6410
            marks a field, class, or struct as being safe to have statics which can be accessed
6411
            from multiple runtimes.
6412
            
6413
            Static fields which are not read-only or marked with this attribute will be flagged 
6414
            by a test which looks for state being shared between runtimes.  Before applying this
6415
            attribute you should ensure that it is safe to share the state.  This is typically
6416
            state which is lazy initialized or state which is caching values which are identical
6417
            in all runtimes and are immutable.
6418
            </summary>
6419
        </member>
6420
        <member name="T:Microsoft.Scripting.PerfTrack">
6421
            <summary>
6422
            This class is useful for quickly collecting performance counts for expensive
6423
            operations.  Usually this means operations involving either reflection or
6424
            code gen.  Long-term we need to see if this can be plugged better into the
6425
            standard performance counter architecture.
6426
            </summary>
6427
        </member>
6428
        <member name="F:Microsoft.Scripting.PerfTrack.Categories.Temporary">
6429
            <summary>
6430
            temporary categories for quick investigation, use a custom key if you
6431
            need to track multiple items, and if you want to keep it then create 
6432
            a new Categories entry and rename all your temporary entries.
6433
            </summary>
6434
        </member>
6435
        <member name="T:Microsoft.Scripting.ICustomScriptCodeData">
6436
            <summary>
6437
            Gets custom data to be serialized when saving script codes to disk.
6438
            </summary>
6439
        </member>
6440
        <member name="T:Microsoft.Scripting.SavableScriptCode">
6441
            <summary>
6442
            ScriptCode is an instance of compiled code that is bound to a specific LanguageContext
6443
            but not a specific ScriptScope. The code can be re-executed multiple times in different
6444
            scopes. Hosting API counterpart for this class is <c>CompiledCode</c>.
6445
            </summary>
6446
        </member>
6447
        <member name="M:Microsoft.Scripting.SavableScriptCode.SaveToAssembly(System.String,Microsoft.Scripting.SavableScriptCode[])">
6448
            <summary>
6449
            This takes an assembly name including extension and saves the provided ScriptCode objects into the assembly.  
6450
            
6451
            The provided script codes can constitute code from multiple languages.  The assemblyName can be either a fully qualified 
6452
            or a relative path.  The DLR will simply save the assembly to the desired location.  The assembly is created by the DLR and 
6453
            if a file already exists than an exception is raised.  
6454
            
6455
            The DLR determines the internal format of the ScriptCode and the DLR can feel free to rev this as appropriate.  
6456
            </summary>
6457
        </member>
6458
        <member name="M:Microsoft.Scripting.SavableScriptCode.LoadFromAssembly(Microsoft.Scripting.Runtime.ScriptDomainManager,System.Reflection.Assembly)">
6459
            <summary>
6460
            This will take an assembly object which the user has loaded and return a new set of ScriptCode’s which have 
6461
            been loaded into the provided ScriptDomainManager.  
6462
            
6463
            If the language associated with the ScriptCode’s has not already been loaded the DLR will load the 
6464
            LanguageContext into the ScriptDomainManager based upon the saved LanguageContext type.  
6465
            
6466
            If the LanguageContext or the version of the DLR the language was compiled against is unavailable a 
6467
            TypeLoadException will be raised unless policy has been applied by the administrator to redirect bindings.
6468
            </summary>
6469
        </member>
6470
        <member name="T:Microsoft.Scripting.DebugOptions">
6471
            <summary>
6472
            This class holds onto internal debugging options used in this assembly. 
6473
            These options can be set via environment variables DLR_{option-name}.
6474
            Boolean options map "true" to true and other values to false.
6475
            
6476
            These options are for internal debugging only, and should not be
6477
            exposed through any public APIs.
6478
            </summary>
6479
        </member>
6480
        <member name="M:Microsoft.Scripting.MutableTuple.SetNestedValue(System.Int32,System.Int32,System.Object)">
6481
            <summary>
6482
            Sets the value at the given index for a tuple of the given size.  This set supports
6483
            walking through nested tuples to get the correct final index.
6484
            </summary>
6485
        </member>
6486
        <member name="M:Microsoft.Scripting.MutableTuple.GetNestedValue(System.Int32,System.Int32)">
6487
            <summary>
6488
            Gets the value at the given index for a tuple of the given size.  This get
6489
            supports walking through nested tuples to get the correct final index.
6490
            </summary>
6491
        </member>
6492
        <member name="M:Microsoft.Scripting.MutableTuple.GetTupleType(System.Int32)">
6493
            <summary>
6494
            Gets the unbound generic Tuple type which has at lease size slots or null if a large enough tuple is not available.
6495
            </summary>
6496
        </member>
6497
        <member name="M:Microsoft.Scripting.MutableTuple.MakeTupleType(System.Type[])">
6498
            <summary>
6499
            Creates a generic tuple with the specified types.  
6500
            
6501
            If the number of slots fits within the maximum tuple size then we simply 
6502
            create a single tuple.  If it's greater then we create nested tuples 
6503
            (e.g. a Tuple`2 which contains a Tuple`128 and a Tuple`8 if we had a size of 136).
6504
            </summary>
6505
        </member>
6506
        <member name="M:Microsoft.Scripting.MutableTuple.GetSize(System.Type)">
6507
            <summary>
6508
            Gets the number of usable slots in the provided Tuple type including slots available in nested tuples.
6509
            </summary>
6510
        </member>
6511
        <member name="M:Microsoft.Scripting.MutableTuple.MakeTuple(System.Type,System.Object[])">
6512
            <summary>
6513
            Creates a new instance of tupleType with the specified args.  If the tuple is a nested
6514
            tuple the values are added in their nested forms.
6515
            </summary>
6516
        </member>
6517
        <member name="M:Microsoft.Scripting.MutableTuple.GetTupleValues(Microsoft.Scripting.MutableTuple)">
6518
            <summary>
6519
            Gets the values from a tuple including unpacking nested values.
6520
            </summary>
6521
        </member>
6522
        <member name="M:Microsoft.Scripting.MutableTuple.GetAccessPath(System.Type,System.Int32)">
6523
            <summary>
6524
            Gets the series of properties that needs to be accessed to access a logical item in a potentially nested tuple.
6525
            </summary>
6526
        </member>
6527
        <member name="M:Microsoft.Scripting.MutableTuple.GetAccessProperties(System.Type,System.Int32,System.Int32)">
6528
            <summary>
6529
            Gets the series of properties that needs to be accessed to access a logical item in a potentially nested tuple.
6530
            </summary>
6531
        </member>
6532
        <member name="M:Microsoft.Scripting.MutableTuple.Create(System.Linq.Expressions.Expression[])">
6533
            <summary>
6534
            Provides an expression for creating a tuple with the specified values.
6535
            </summary>
6536
        </member>
6537
        <member name="T:Microsoft.Scripting.FileStreamContentProvider">
6538
            <summary>
6539
            Provides a StreamContentProvider for a stream of content backed by a file on disk.
6540
            </summary>
6541
        </member>
6542
    </members>
6543
</doc>