2 types derived from DynamicMetaObject
System.Linq.Expressions (2)
System\Dynamic\DynamicObject.cs (1)
210private sealed class MetaDynamic : DynamicMetaObject
System\Dynamic\ExpandoObject.cs (1)
776private sealed class MetaExpando : DynamicMetaObject
30 instantiations of DynamicMetaObject
Microsoft.CSharp (4)
Microsoft\CSharp\RuntimeBinder\BinderHelper.cs (3)
101return new DynamicMetaObject(expression, restrictions); 125return new DynamicMetaObject(expression, restrictions); 134return new DynamicMetaObject(
Microsoft\CSharp\RuntimeBinder\DynamicDebuggerProxy.cs (1)
45var error = new DynamicMetaObject(System.Linq.Expressions.Expression.Throw(
Microsoft.VisualBasic.Core (13)
Microsoft\VisualBasic\CompilerServices\IDOBinder.vb (13)
338Return New DynamicMetaObject( 416Return New DynamicMetaObject( 503Return New DynamicMetaObject( 572Return New DynamicMetaObject( 641Return New DynamicMetaObject( 698Return New DynamicMetaObject( 757Return New DynamicMetaObject( 793Return New DynamicMetaObject(Expression.Constant(IDOBinder.missingMemberSentinel), IDOUtils.CreateRestrictions(target)) 848Return New DynamicMetaObject(Expression.Convert(fallback, ReturnType), IDOUtils.CreateRestrictions(target)) 897Return New DynamicMetaObject(fallback, IDOUtils.CreateRestrictions(target)) 948Return New DynamicMetaObject(fallback, IDOUtils.CreateRestrictions(target, value:=arg)) 1013Return New DynamicMetaObject( 1088Return New DynamicMetaObject(
PresentationFramework-SystemCore (1)
DynamicAccessorImpl.cs (1)
234return new DynamicMetaObject(
System.Linq.Expressions (12)
System\Dynamic\DynamicMetaObject.cs (1)
301return new DynamicMetaObject(expression, BindingRestrictions.Empty, value);
System\Dynamic\DynamicMetaObjectBinder.cs (1)
217return new DynamicMetaObject(
System\Dynamic\DynamicObject.cs (5)
574var resultMO = new DynamicMetaObject(result, BindingRestrictions.Empty); 637resultMO = new DynamicMetaObject(checkedConvert, resultMO.Restrictions); 645var callDynamic = new DynamicMetaObject( 705var callDynamic = new DynamicMetaObject( 768var callDynamic = new DynamicMetaObject(
System\Dynamic\ExpandoObject.cs (5)
802var result = new DynamicMetaObject(value, BindingRestrictions.Empty); 808result = new DynamicMetaObject( 864new DynamicMetaObject( 895DynamicMetaObject target = new DynamicMetaObject( 944return new DynamicMetaObject(
517 references to DynamicMetaObject
Microsoft.CSharp (83)
Microsoft\CSharp\RuntimeBinder\BinderHelper.cs (12)
24internal static DynamicMetaObject Bind( 27DynamicMetaObject[] args, 29DynamicMetaObject onBindingError) 39DynamicMetaObject o = args[index]; 95Expression expression = binder.Bind(action, parameters, args, out DynamicMetaObject deferredBinding); 114DynamicMetaObject arg0 = args[0]; 147public static void ValidateBindArgument(DynamicMetaObject argument, string paramName) 156public static void ValidateBindArgument(DynamicMetaObject[] arguments, string paramName) 185private static bool IsDynamicallyTypedRuntimeProxy(DynamicMetaObject argument, CSharpArgumentInfo info) 206DynamicMetaObject argument, 282private static Type GetTypeForErrorMetaObject(ICSharpBinder action, DynamicMetaObject[] args) 477internal static void ThrowIfUsingDynamicCom(DynamicMetaObject target)
Microsoft\CSharp\RuntimeBinder\CSharpBinaryOperationBinder.cs (5)
125/// <returns>The <see cref="DynamicMetaObject"/> representing the result of the binding.</returns> 126public override DynamicMetaObject FallbackBinaryOperation(DynamicMetaObject target, DynamicMetaObject arg, DynamicMetaObject errorSuggestion)
Microsoft\CSharp\RuntimeBinder\CSharpConvertBinder.cs (4)
116/// <returns>The <see cref="DynamicMetaObject"/> representing the result of the binding.</returns> 117public override DynamicMetaObject FallbackConvert(DynamicMetaObject target, DynamicMetaObject errorSuggestion)
Microsoft\CSharp\RuntimeBinder\CSharpGetIndexBinder.cs (5)
89/// <returns>The <see cref="DynamicMetaObject"/> representing the result of the binding.</returns> 90public override DynamicMetaObject FallbackGetIndex(DynamicMetaObject target, DynamicMetaObject[] indexes, DynamicMetaObject errorSuggestion)
Microsoft\CSharp\RuntimeBinder\CSharpGetMemberBinder.cs (4)
104/// <returns>The <see cref="DynamicMetaObject"/> representing the result of the binding.</returns> 105public override DynamicMetaObject FallbackGetMember(DynamicMetaObject target, DynamicMetaObject errorSuggestion)
Microsoft\CSharp\RuntimeBinder\CSharpInvokeBinder.cs (5)
102/// <returns>The <see cref="DynamicMetaObject"/> representing the result of the binding.</returns> 103public override DynamicMetaObject FallbackInvoke(DynamicMetaObject target, DynamicMetaObject[] args, DynamicMetaObject errorSuggestion)
Microsoft\CSharp\RuntimeBinder\CSharpInvokeConstructorBinder.cs (3)
86public override DynamicMetaObject Bind(DynamicMetaObject target, DynamicMetaObject[] args)
Microsoft\CSharp\RuntimeBinder\CSharpInvokeMemberBinder.cs (10)
115/// <returns>The <see cref="DynamicMetaObject"/> representing the result of the binding.</returns> 116public override DynamicMetaObject FallbackInvokeMember(DynamicMetaObject target, DynamicMetaObject[] args, DynamicMetaObject errorSuggestion) 139/// <returns>The <see cref="DynamicMetaObject"/> representing the result of the binding.</returns> 140public override DynamicMetaObject FallbackInvoke(DynamicMetaObject target, DynamicMetaObject[] args, DynamicMetaObject errorSuggestion)
Microsoft\CSharp\RuntimeBinder\CSharpIsEventBinder.cs (4)
84/// <returns>The <see cref="DynamicMetaObject"/> representing the result of the binding.</returns> 85public override DynamicMetaObject Bind(DynamicMetaObject target, DynamicMetaObject[] args)
Microsoft\CSharp\RuntimeBinder\CSharpSetIndexBinder.cs (6)
109/// <returns>The <see cref="DynamicMetaObject"/> representing the result of the binding.</returns> 110public override DynamicMetaObject FallbackSetIndex(DynamicMetaObject target, DynamicMetaObject[] indexes, DynamicMetaObject value, DynamicMetaObject errorSuggestion)
Microsoft\CSharp\RuntimeBinder\CSharpSetMemberBinder.cs (5)
109/// <returns>The <see cref="DynamicMetaObject"/> representing the result of the binding.</returns> 110public override DynamicMetaObject FallbackSetMember(DynamicMetaObject target, DynamicMetaObject value, DynamicMetaObject errorSuggestion)
Microsoft\CSharp\RuntimeBinder\CSharpUnaryOperationBinder.cs (4)
109/// <returns>The <see cref="DynamicMetaObject"/> representing the result of the binding.</returns> 110public override DynamicMetaObject FallbackUnaryOperation(DynamicMetaObject target, DynamicMetaObject errorSuggestion)
Microsoft\CSharp\RuntimeBinder\DynamicDebuggerProxy.cs (6)
40public override DynamicMetaObject FallbackGetMember(DynamicMetaObject self, DynamicMetaObject onBindingError) 44var v = new List<DynamicMetaObject> { self }; 45var error = new DynamicMetaObject(System.Linq.Expressions.Expression.Throw( 441DynamicMetaObject mo = ido.GetMetaObject(parameter);
Microsoft\CSharp\RuntimeBinder\RuntimeBinder.cs (10)
44public Expression Bind(ICSharpBinder payload, Expression[] parameters, DynamicMetaObject[] args, out DynamicMetaObject deferredBinding) 73DynamicMetaObject[] args, 74out DynamicMetaObject deferredBinding) 136DynamicMetaObject[] args, 138out DynamicMetaObject deferredBinding) 177DynamicMetaObject[] newArgs = new DynamicMetaObject[args.Length - 1]; 203private Type GetArgumentType(ICSharpBinder p, CSharpArgumentInfo argInfo, Expression param, DynamicMetaObject arg, int index) 246DynamicMetaObject[] args)
Microsoft.VisualBasic.Core (71)
Microsoft\VisualBasic\CompilerServices\IDOBinder.vb (71)
305ByVal target As DynamicMetaObject, 306ByVal packedArgs() As DynamicMetaObject, 307ByVal errorSuggestion As DynamicMetaObject) As DynamicMetaObject 352ByVal target As DynamicMetaObject, 353ByVal packedArgs() As DynamicMetaObject, 354ByVal errorSuggestion As DynamicMetaObject) As DynamicMetaObject 384ByVal target As DynamicMetaObject, 385ByVal packedArgs() As DynamicMetaObject, 386ByVal errorSuggestion As DynamicMetaObject) As DynamicMetaObject 430ByVal target As DynamicMetaObject, 431ByVal packedArgs() As DynamicMetaObject, 432ByVal errorSuggestion As DynamicMetaObject) As DynamicMetaObject 467ByVal target As DynamicMetaObject, 468ByVal packedArgs() As DynamicMetaObject, 469ByVal errorSuggestion As DynamicMetaObject) As DynamicMetaObject 541ByVal target As DynamicMetaObject, 542ByVal packedArgs As DynamicMetaObject(), 543ByVal errorSuggestion As DynamicMetaObject) As DynamicMetaObject 610ByVal target As DynamicMetaObject, 611ByVal packedArgs As DynamicMetaObject(), 612ByVal errorSuggestion As DynamicMetaObject) As DynamicMetaObject 676ByVal target As DynamicMetaObject, 677ByVal value As DynamicMetaObject, 678ByVal errorSuggestion As DynamicMetaObject) As DynamicMetaObject 733ByVal target As DynamicMetaObject, 734ByVal value As DynamicMetaObject, 735ByVal errorSuggestion As DynamicMetaObject) As DynamicMetaObject 785ByVal target As DynamicMetaObject, 786ByVal errorSuggestion As DynamicMetaObject) As DynamicMetaObject 830ByVal target As DynamicMetaObject, 831ByVal errorSuggestion As DynamicMetaObject) As DynamicMetaObject 879ByVal target As DynamicMetaObject, 880ByVal errorSuggestion As DynamicMetaObject) As DynamicMetaObject 927ByVal target As DynamicMetaObject, 928ByVal arg As DynamicMetaObject, 929ByVal errorSuggestion As DynamicMetaObject) As DynamicMetaObject 975ByVal target As DynamicMetaObject, 976ByVal packedIndexes As DynamicMetaObject(), 977ByVal value As DynamicMetaObject, 978ByVal errorSuggestion As DynamicMetaObject) As DynamicMetaObject 1048ByVal target As DynamicMetaObject, 1049ByVal packedIndexes As DynamicMetaObject(), 1050ByVal value As DynamicMetaObject, 1051ByVal errorSuggestion As DynamicMetaObject) As DynamicMetaObject 1268ByVal packedArgs As DynamicMetaObject(), 1290Dim p As DynamicMetaObject = packedArgs((i + positionalArgCount) Mod normalArgCount) 1296Dim p As DynamicMetaObject = packedArgs(i) 1511ByVal target As DynamicMetaObject, 1512Optional ByVal args As DynamicMetaObject() = Nothing, 1513Optional ByVal value As DynamicMetaObject = Nothing) As BindingRestrictions 1517For Each arg As DynamicMetaObject In args 1527Private Shared Function CreateRestriction(ByVal metaObject As DynamicMetaObject) As BindingRestrictions 1538ByVal target As DynamicMetaObject, 1539Optional ByVal args As DynamicMetaObject() = Nothing, 1540Optional ByVal value As DynamicMetaObject = Nothing) As Boolean 1549For Each a As DynamicMetaObject In args
netstandard (1)
netstandard.cs (1)
766[assembly: System.Runtime.CompilerServices.TypeForwardedTo(typeof(System.Dynamic.DynamicMetaObject))]
PresentationFramework-SystemCore (17)
DynamicAccessorImpl.cs (17)
173public override DynamicMetaObject FallbackGetMember(DynamicMetaObject target, 174DynamicMetaObject errorSuggestion) 188public override DynamicMetaObject FallbackSetMember(DynamicMetaObject target, 189DynamicMetaObject value, 190DynamicMetaObject errorSuggestion) 204public override DynamicMetaObject FallbackGetIndex(DynamicMetaObject target, 205DynamicMetaObject[] indexes, 206DynamicMetaObject errorSuggestion) 220public override DynamicMetaObject FallbackSetIndex(DynamicMetaObject target, 221DynamicMetaObject[] indexes, 222DynamicMetaObject value, 223DynamicMetaObject errorSuggestion) 232public static DynamicMetaObject ThrowExpression(string message, Type returnType)
System.Core (1)
System.Core.cs (1)
71[assembly: System.Runtime.CompilerServices.TypeForwardedTo(typeof(System.Dynamic.DynamicMetaObject))]
System.Dynamic.Runtime (1)
System.Dynamic.Runtime.cs (1)
11[assembly: System.Runtime.CompilerServices.TypeForwardedTo(typeof(System.Dynamic.DynamicMetaObject))]
System.Linq.Expressions (343)
System\Dynamic\BinaryOperationBinder.cs (14)
41/// <returns>The <see cref="DynamicMetaObject"/> representing the result of the binding.</returns> 42public DynamicMetaObject FallbackBinaryOperation(DynamicMetaObject target, DynamicMetaObject arg) 53/// <returns>The <see cref="DynamicMetaObject"/> representing the result of the binding.</returns> 54public abstract DynamicMetaObject FallbackBinaryOperation(DynamicMetaObject target, DynamicMetaObject arg, DynamicMetaObject? errorSuggestion); 61/// <returns>The <see cref="DynamicMetaObject"/> representing the result of the binding.</returns> 62public sealed override DynamicMetaObject Bind(DynamicMetaObject target, DynamicMetaObject[] args) 68var arg0 = args[0];
System\Dynamic\BindingRestrictions.cs (6)
15/// Represents a set of binding restrictions on the <see cref="DynamicMetaObject"/> under which the dynamic binding is valid. 75internal static BindingRestrictions GetTypeRestriction(DynamicMetaObject obj) 118/// Combines binding restrictions from the list of <see cref="DynamicMetaObject"/> instances into one set of restrictions. 120/// <param name="contributingObjects">The list of <see cref="DynamicMetaObject"/> instances from which to combine restrictions.</param> 122public static BindingRestrictions Combine(IList<DynamicMetaObject>? contributingObjects) 127foreach (DynamicMetaObject mo in contributingObjects)
System\Dynamic\ConvertBinder.cs (11)
43/// <returns>The <see cref="DynamicMetaObject"/> representing the result of the binding.</returns> 44public DynamicMetaObject FallbackConvert(DynamicMetaObject target) 54/// <returns>The <see cref="DynamicMetaObject"/> representing the result of the binding.</returns> 55public abstract DynamicMetaObject FallbackConvert(DynamicMetaObject target, DynamicMetaObject? errorSuggestion); 62/// <returns>The <see cref="DynamicMetaObject"/> representing the result of the binding.</returns> 63public sealed override DynamicMetaObject Bind(DynamicMetaObject target, DynamicMetaObject[]? args)
System\Dynamic\CreateInstanceBinder.cs (13)
41/// <returns>The <see cref="DynamicMetaObject"/> representing the result of the binding.</returns> 42public DynamicMetaObject FallbackCreateInstance(DynamicMetaObject target, DynamicMetaObject[] args) 53/// <returns>The <see cref="DynamicMetaObject"/> representing the result of the binding.</returns> 54public abstract DynamicMetaObject FallbackCreateInstance(DynamicMetaObject target, DynamicMetaObject[] args, DynamicMetaObject? errorSuggestion); 61/// <returns>The <see cref="DynamicMetaObject"/> representing the result of the binding.</returns> 62public sealed override DynamicMetaObject Bind(DynamicMetaObject target, DynamicMetaObject[] args)
System\Dynamic\DeleteIndexBinder.cs (13)
41/// <returns>The <see cref="DynamicMetaObject"/> representing the result of the binding.</returns> 42public sealed override DynamicMetaObject Bind(DynamicMetaObject target, DynamicMetaObject[] args) 60/// <returns>The <see cref="DynamicMetaObject"/> representing the result of the binding.</returns> 61public DynamicMetaObject FallbackDeleteIndex(DynamicMetaObject target, DynamicMetaObject[] indexes) 72/// <returns>The <see cref="DynamicMetaObject"/> representing the result of the binding.</returns> 73public abstract DynamicMetaObject FallbackDeleteIndex(DynamicMetaObject target, DynamicMetaObject[] indexes, DynamicMetaObject? errorSuggestion);
System\Dynamic\DeleteMemberBinder.cs (11)
48/// <returns>The <see cref="DynamicMetaObject"/> representing the result of the binding.</returns> 49public DynamicMetaObject FallbackDeleteMember(DynamicMetaObject target) 59/// <returns>The <see cref="DynamicMetaObject"/> representing the result of the binding.</returns> 60public abstract DynamicMetaObject FallbackDeleteMember(DynamicMetaObject target, DynamicMetaObject? errorSuggestion); 67/// <returns>The <see cref="DynamicMetaObject"/> representing the result of the binding.</returns> 68public sealed override DynamicMetaObject Bind(DynamicMetaObject target, DynamicMetaObject[]? args)
System\Dynamic\DynamicMetaObject.cs (63)
17/// Represents an empty array of type <see cref="DynamicMetaObject"/>. This field is read-only. 19public static readonly DynamicMetaObject[] EmptyMetaObjects = Array.Empty<DynamicMetaObject>(); 22/// Initializes a new instance of the <see cref="DynamicMetaObject"/> class. 24/// <param name="expression">The expression representing this <see cref="DynamicMetaObject"/> during the dynamic binding process.</param> 36/// Initializes a new instance of the <see cref="DynamicMetaObject"/> class. 38/// <param name="expression">The expression representing this <see cref="DynamicMetaObject"/> during the dynamic binding process.</param> 40/// <param name="value">The runtime value represented by the <see cref="DynamicMetaObject"/>.</param> 52/// The expression representing the <see cref="DynamicMetaObject"/> during the dynamic binding process. 62/// The runtime value represented by this <see cref="DynamicMetaObject"/>. 67/// Gets a value indicating whether the <see cref="DynamicMetaObject"/> has the runtime value. 72/// Gets the <see cref="Type"/> of the runtime value or null if the <see cref="DynamicMetaObject"/> has no value associated with it. 97/// Gets the limit type of the <see cref="DynamicMetaObject"/>. 99/// <remarks>Represents the most specific type known about the object represented by the <see cref="DynamicMetaObject"/>. <see cref="RuntimeType"/> if runtime value is available, a type of the <see cref="Expression"/> otherwise.</remarks> 106/// <returns>The new <see cref="DynamicMetaObject"/> representing the result of the binding.</returns> 107public virtual DynamicMetaObject BindConvert(ConvertBinder binder) 117/// <returns>The new <see cref="DynamicMetaObject"/> representing the result of the binding.</returns> 118public virtual DynamicMetaObject BindGetMember(GetMemberBinder binder) 128/// <param name="value">The <see cref="DynamicMetaObject"/> representing the value for the set member operation.</param> 129/// <returns>The new <see cref="DynamicMetaObject"/> representing the result of the binding.</returns> 130public virtual DynamicMetaObject BindSetMember(SetMemberBinder binder, DynamicMetaObject value) 140/// <returns>The new <see cref="DynamicMetaObject"/> representing the result of the binding.</returns> 141public virtual DynamicMetaObject BindDeleteMember(DeleteMemberBinder binder) 151/// <param name="indexes">An array of <see cref="DynamicMetaObject"/> instances - indexes for the get index operation.</param> 152/// <returns>The new <see cref="DynamicMetaObject"/> representing the result of the binding.</returns> 153public virtual DynamicMetaObject BindGetIndex(GetIndexBinder binder, DynamicMetaObject[] indexes) 163/// <param name="indexes">An array of <see cref="DynamicMetaObject"/> instances - indexes for the set index operation.</param> 164/// <param name="value">The <see cref="DynamicMetaObject"/> representing the value for the set index operation.</param> 165/// <returns>The new <see cref="DynamicMetaObject"/> representing the result of the binding.</returns> 166public virtual DynamicMetaObject BindSetIndex(SetIndexBinder binder, DynamicMetaObject[] indexes, DynamicMetaObject value) 176/// <param name="indexes">An array of <see cref="DynamicMetaObject"/> instances - indexes for the delete index operation.</param> 177/// <returns>The new <see cref="DynamicMetaObject"/> representing the result of the binding.</returns> 178public virtual DynamicMetaObject BindDeleteIndex(DeleteIndexBinder binder, DynamicMetaObject[] indexes) 188/// <param name="args">An array of <see cref="DynamicMetaObject"/> instances - arguments to the invoke member operation.</param> 189/// <returns>The new <see cref="DynamicMetaObject"/> representing the result of the binding.</returns> 190public virtual DynamicMetaObject BindInvokeMember(InvokeMemberBinder binder, DynamicMetaObject[] args) 200/// <param name="args">An array of <see cref="DynamicMetaObject"/> instances - arguments to the invoke operation.</param> 201/// <returns>The new <see cref="DynamicMetaObject"/> representing the result of the binding.</returns> 202public virtual DynamicMetaObject BindInvoke(InvokeBinder binder, DynamicMetaObject[] args) 212/// <param name="args">An array of <see cref="DynamicMetaObject"/> instances - arguments to the create instance operation.</param> 213/// <returns>The new <see cref="DynamicMetaObject"/> representing the result of the binding.</returns> 214public virtual DynamicMetaObject BindCreateInstance(CreateInstanceBinder binder, DynamicMetaObject[] args) 224/// <returns>The new <see cref="DynamicMetaObject"/> representing the result of the binding.</returns> 225public virtual DynamicMetaObject BindUnaryOperation(UnaryOperationBinder binder) 235/// <param name="arg">An instance of the <see cref="DynamicMetaObject"/> representing the right hand side of the binary operation.</param> 236/// <returns>The new <see cref="DynamicMetaObject"/> representing the result of the binding.</returns> 237public virtual DynamicMetaObject BindBinaryOperation(BinaryOperationBinder binder, DynamicMetaObject arg) 250/// Returns the list of expressions represented by the <see cref="DynamicMetaObject"/> instances. 252/// <param name="objects">An array of <see cref="DynamicMetaObject"/> instances to extract expressions from.</param> 254internal static Expression[] GetExpressions(DynamicMetaObject[] objects) 261DynamicMetaObject mo = objects[i]; 275/// <param name="expression">The expression representing this <see cref="DynamicMetaObject"/> during the dynamic binding process.</param> 281public static DynamicMetaObject Create(object value, Expression expression) 287var idoMetaObject = ido.GetMetaObject(expression);
System\Dynamic\DynamicMetaObjectBinder.cs (25)
16/// The dynamic call site binder that participates in the <see cref="DynamicMetaObject"/> binding protocol. 20/// as input. On the other hand, the <see cref="DynamicMetaObjectBinder"/> participates in the <see cref="DynamicMetaObject"/> 80DynamicMetaObject target = DynamicMetaObject.Create(args[0], parameters[0]); 81DynamicMetaObject[] metaArgs = CreateArgumentMetaObjects(args, parameters); 83DynamicMetaObject binding = Bind(target, metaArgs); 137private static DynamicMetaObject[] CreateArgumentMetaObjects(object[] args, ReadOnlyCollection<ParameterExpression> parameters) 139DynamicMetaObject[] mos; 142mos = new DynamicMetaObject[args.Length - 1]; 145mos[i - 1] = DynamicMetaObject.Create(args[i], parameters[i]); 150mos = DynamicMetaObject.EmptyMetaObjects; 160/// <returns>The <see cref="DynamicMetaObject"/> representing the result of the binding.</returns> 161public abstract DynamicMetaObject Bind(DynamicMetaObject target, DynamicMetaObject[] args); 181/// <returns>The <see cref="DynamicMetaObject"/> representing the result of the binding.</returns> 182public DynamicMetaObject Defer(DynamicMetaObject target, params DynamicMetaObject[]? args) 203/// <returns>The <see cref="DynamicMetaObject"/> representing the result of the binding.</returns> 204public DynamicMetaObject Defer(params DynamicMetaObject[] args) 209private DynamicMetaObject MakeDeferred(BindingRestrictions rs, params DynamicMetaObject[] args) 211var exprs = DynamicMetaObject.GetExpressions(args);
System\Dynamic\DynamicObject.cs (65)
219public override DynamicMetaObject BindGetMember(GetMemberBinder binder) 227(MetaDynamic @this, GetMemberBinder b, DynamicMetaObject? e) => b.FallbackGetMember(@this, e) 234public override DynamicMetaObject BindSetMember(SetMemberBinder binder, DynamicMetaObject value) 238DynamicMetaObject localValue = value; 245(MetaDynamic @this, SetMemberBinder b, DynamicMetaObject? e) => b.FallbackSetMember(@this, localValue, e) 252public override DynamicMetaObject BindDeleteMember(DeleteMemberBinder binder) 260(MetaDynamic @this, DeleteMemberBinder b, DynamicMetaObject? e) => b.FallbackDeleteMember(@this, e) 267public override DynamicMetaObject BindConvert(ConvertBinder binder) 275(MetaDynamic @this, ConvertBinder b, DynamicMetaObject? e) => b.FallbackConvert(@this, e) 282public override DynamicMetaObject BindInvokeMember(InvokeMemberBinder binder, DynamicMetaObject[] args) 299DynamicMetaObject call = BuildCallMethodWithResult( 308(MetaDynamic @this, GetMemberBinder ignored, DynamicMetaObject? e) => binder.FallbackInvoke(e!, args, null) 316public override DynamicMetaObject BindCreateInstance(CreateInstanceBinder binder, DynamicMetaObject[] args) 320DynamicMetaObject[] localArgs = args; 326(MetaDynamic @this, CreateInstanceBinder b, DynamicMetaObject? e) => b.FallbackCreateInstance(@this, localArgs, e) 333public override DynamicMetaObject BindInvoke(InvokeBinder binder, DynamicMetaObject[] args) 337DynamicMetaObject[] localArgs = args; 343(MetaDynamic @this, InvokeBinder b, DynamicMetaObject? e) => b.FallbackInvoke(@this, localArgs, e) 350public override DynamicMetaObject BindBinaryOperation(BinaryOperationBinder binder, DynamicMetaObject arg) 354DynamicMetaObject localArg = arg; 360(MetaDynamic @this, BinaryOperationBinder b, DynamicMetaObject? e) => b.FallbackBinaryOperation(@this, localArg, e) 367public override DynamicMetaObject BindUnaryOperation(UnaryOperationBinder binder) 375(MetaDynamic @this, UnaryOperationBinder b, DynamicMetaObject? e) => b.FallbackUnaryOperation(@this, e) 382public override DynamicMetaObject BindGetIndex(GetIndexBinder binder, DynamicMetaObject[] indexes) 386DynamicMetaObject[] localIndexes = indexes; 392(MetaDynamic @this, GetIndexBinder b, DynamicMetaObject? e) => b.FallbackGetIndex(@this, localIndexes, e) 399public override DynamicMetaObject BindSetIndex(SetIndexBinder binder, DynamicMetaObject[] indexes, DynamicMetaObject value) 403DynamicMetaObject[] localIndexes = indexes; 404DynamicMetaObject localValue = value; 411(MetaDynamic @this, SetIndexBinder b, DynamicMetaObject? e) => b.FallbackSetIndex(@this, localIndexes, localValue, e) 418public override DynamicMetaObject BindDeleteIndex(DeleteIndexBinder binder, DynamicMetaObject[] indexes) 422DynamicMetaObject[] localIndexes = indexes; 428(MetaDynamic @this, DeleteIndexBinder b, DynamicMetaObject? e) => b.FallbackDeleteIndex(@this, localIndexes, e) 435private delegate DynamicMetaObject Fallback<TBinder>(MetaDynamic @this, TBinder binder, DynamicMetaObject? errorSuggestion); 515private DynamicMetaObject CallMethodWithResult<TBinder>(MethodInfo method, TBinder binder, Expression[] args, Fallback<TBinder> fallback) 525private DynamicMetaObject CallMethodWithResult<TBinder>(MethodInfo method, TBinder binder, Expression[] args, Fallback<TBinder> fallback, Fallback<TBinder>? fallbackInvoke) 532DynamicMetaObject fallbackResult = fallback(this, binder, null); 534DynamicMetaObject callDynamic = BuildCallMethodWithResult(method, binder, args, fallbackResult, fallbackInvoke); 555private DynamicMetaObject BuildCallMethodWithResult<TBinder>(MethodInfo method, TBinder binder, Expression[] args, DynamicMetaObject fallbackResult, Fallback<TBinder>? fallbackInvoke) 574var resultMO = new DynamicMetaObject(result, BindingRestrictions.Empty); 645var callDynamic = new DynamicMetaObject( 684private DynamicMetaObject CallMethodReturnLast<TBinder>(MethodInfo method, TBinder binder, Expression[] args, Expression value, Fallback<TBinder> fallback) 691DynamicMetaObject fallbackResult = fallback(this, binder, null); 705var callDynamic = new DynamicMetaObject( 753private DynamicMetaObject CallMethodNoResult<TBinder>(MethodInfo method, TBinder binder, Expression[] args, Fallback<TBinder> fallback) 760DynamicMetaObject fallbackResult = fallback(this, binder, null); 768var callDynamic = new DynamicMetaObject( 868public override DynamicMetaObject FallbackGetMember(DynamicMetaObject target, DynamicMetaObject? errorSuggestion) 880/// Returns the <see cref="DynamicMetaObject" /> responsible for binding operations performed on this object, 885/// The <see cref="DynamicMetaObject" /> to bind this object. The object can be encapsulated inside of another 886/// <see cref="DynamicMetaObject"/> to provide custom behavior for individual actions. 888public virtual DynamicMetaObject GetMetaObject(Expression parameter) => new MetaDynamic(parameter, this);
System\Dynamic\ExpandoObject.cs (16)
293DynamicMetaObject IDynamicMetaObjectProvider.GetMetaObject(Expression parameter) 783private DynamicMetaObject BindGetOrInvokeMember(DynamicMetaObjectBinder binder, string name, bool ignoreCase, DynamicMetaObject fallback, Func<DynamicMetaObject, DynamicMetaObject>? fallbackInvoke) 802var result = new DynamicMetaObject(value, BindingRestrictions.Empty); 826public override DynamicMetaObject BindGetMember(GetMemberBinder binder) 838public override DynamicMetaObject BindInvokeMember(InvokeMemberBinder binder, DynamicMetaObject[] args) 850public override DynamicMetaObject BindSetMember(SetMemberBinder binder, DynamicMetaObject value) 879public override DynamicMetaObject BindDeleteMember(DeleteMemberBinder binder) 893DynamicMetaObject fallback = binder.FallbackDeleteMember(this); 895DynamicMetaObject target = new DynamicMetaObject( 921private DynamicMetaObject AddDynamicTestAndDefer(DynamicMetaObjectBinder binder, ExpandoClass klass, ExpandoClass? originalClass, DynamicMetaObject succeeds)
System\Dynamic\GetIndexBinder.cs (13)
41/// <returns>The <see cref="DynamicMetaObject"/> representing the result of the binding.</returns> 42public sealed override DynamicMetaObject Bind(DynamicMetaObject target, DynamicMetaObject[] args) 60/// <returns>The <see cref="DynamicMetaObject"/> representing the result of the binding.</returns> 61public DynamicMetaObject FallbackGetIndex(DynamicMetaObject target, DynamicMetaObject[] indexes) 72/// <returns>The <see cref="DynamicMetaObject"/> representing the result of the binding.</returns> 73public abstract DynamicMetaObject FallbackGetIndex(DynamicMetaObject target, DynamicMetaObject[] indexes, DynamicMetaObject? errorSuggestion);
System\Dynamic\GetMemberBinder.cs (11)
48/// <returns>The <see cref="DynamicMetaObject"/> representing the result of the binding.</returns> 49public DynamicMetaObject FallbackGetMember(DynamicMetaObject target) 59/// <returns>The <see cref="DynamicMetaObject"/> representing the result of the binding.</returns> 60public abstract DynamicMetaObject FallbackGetMember(DynamicMetaObject target, DynamicMetaObject? errorSuggestion); 67/// <returns>The <see cref="DynamicMetaObject"/> representing the result of the binding.</returns> 68public sealed override DynamicMetaObject Bind(DynamicMetaObject target, params DynamicMetaObject[]? args)
System\Dynamic\IDynamicMetaObjectProvider.cs (4)
13/// and implement <see cref="GetMetaObject" /> to return a <see cref="DynamicMetaObject" />. 18/// Returns the <see cref="DynamicMetaObject" /> responsible for binding operations performed on this object. 21/// <returns>The <see cref="DynamicMetaObject" /> to bind this object.</returns> 22DynamicMetaObject GetMetaObject(Expression parameter);
System\Dynamic\InvokeBinder.cs (13)
41/// <returns>The <see cref="DynamicMetaObject"/> representing the result of the binding.</returns> 42public DynamicMetaObject FallbackInvoke(DynamicMetaObject target, DynamicMetaObject[] args) 53/// <returns>The <see cref="DynamicMetaObject"/> representing the result of the binding.</returns> 54public abstract DynamicMetaObject FallbackInvoke(DynamicMetaObject target, DynamicMetaObject[] args, DynamicMetaObject? errorSuggestion); 61/// <returns>The <see cref="DynamicMetaObject"/> representing the result of the binding.</returns> 62public sealed override DynamicMetaObject Bind(DynamicMetaObject target, DynamicMetaObject[] args)
System\Dynamic\InvokeMemberBinder.cs (19)
57/// <returns>The <see cref="DynamicMetaObject"/> representing the result of the binding.</returns> 58public sealed override DynamicMetaObject Bind(DynamicMetaObject target, DynamicMetaObject[] args) 76/// <returns>The <see cref="DynamicMetaObject"/> representing the result of the binding.</returns> 77public DynamicMetaObject FallbackInvokeMember(DynamicMetaObject target, DynamicMetaObject[] args) 88/// <returns>The <see cref="DynamicMetaObject"/> representing the result of the binding.</returns> 89public abstract DynamicMetaObject FallbackInvokeMember(DynamicMetaObject target, DynamicMetaObject[] args, DynamicMetaObject? errorSuggestion); 97/// <returns>The <see cref="DynamicMetaObject"/> representing the result of the binding.</returns> 100/// as a sequence of get member, and invoke, to let the <see cref="DynamicMetaObject"/> 103public abstract DynamicMetaObject FallbackInvoke(DynamicMetaObject target, DynamicMetaObject[] args, DynamicMetaObject? errorSuggestion);
System\Dynamic\SetIndexBinder.cs (17)
41/// <returns>The <see cref="DynamicMetaObject"/> representing the result of the binding.</returns> 42public sealed override DynamicMetaObject Bind(DynamicMetaObject target, DynamicMetaObject[] args) 48DynamicMetaObject value = args[args.Length - 1]; 49DynamicMetaObject[] indexes = args.RemoveLast(); 68/// <returns>The <see cref="DynamicMetaObject"/> representing the result of the binding.</returns> 69public DynamicMetaObject FallbackSetIndex(DynamicMetaObject target, DynamicMetaObject[] indexes, DynamicMetaObject value) 81/// <returns>The <see cref="DynamicMetaObject"/> representing the result of the binding.</returns> 82public abstract DynamicMetaObject FallbackSetIndex(DynamicMetaObject target, DynamicMetaObject[] indexes, DynamicMetaObject value, DynamicMetaObject? errorSuggestion);
System\Dynamic\SetMemberBinder.cs (14)
49/// <returns>The <see cref="DynamicMetaObject"/> representing the result of the binding.</returns> 50public sealed override DynamicMetaObject Bind(DynamicMetaObject target, DynamicMetaObject[] args) 56var arg0 = args[0]; 72/// <returns>The <see cref="DynamicMetaObject"/> representing the result of the binding.</returns> 73public DynamicMetaObject FallbackSetMember(DynamicMetaObject target, DynamicMetaObject value) 84/// <returns>The <see cref="DynamicMetaObject"/> representing the result of the binding.</returns> 85public abstract DynamicMetaObject FallbackSetMember(DynamicMetaObject target, DynamicMetaObject value, DynamicMetaObject? errorSuggestion);
System\Dynamic\UnaryOperationBinder.cs (11)
53/// <returns>The <see cref="DynamicMetaObject"/> representing the result of the binding.</returns> 54public DynamicMetaObject FallbackUnaryOperation(DynamicMetaObject target) 64/// <returns>The <see cref="DynamicMetaObject"/> representing the result of the binding.</returns> 65public abstract DynamicMetaObject FallbackUnaryOperation(DynamicMetaObject target, DynamicMetaObject? errorSuggestion); 72/// <returns>The <see cref="DynamicMetaObject"/> representing the result of the binding.</returns> 73public sealed override DynamicMetaObject Bind(DynamicMetaObject target, DynamicMetaObject[]? args)
System\Linq\Expressions\Compiler\DelegateHelpers.cs (4)
58internal static Type MakeDeferredSiteDelegate(DynamicMetaObject[] args, Type returnType) 70DynamicMetaObject mo = args[i]; 92DynamicMetaObject mo = args[i]; 108private static bool IsByRef(DynamicMetaObject mo)