8 types derived from Expr
Microsoft.CSharp (8)
Microsoft\CSharp\RuntimeBinder\ExpressionTreeCallRewriter.cs (1)
19private sealed class ExpressionExpr : Expr
Microsoft\CSharp\RuntimeBinder\Semantics\Tree\Assignment.cs (1)
6internal sealed class ExprAssignment : Expr
Microsoft\CSharp\RuntimeBinder\Semantics\Tree\ExprWithType.cs (1)
8internal abstract class ExprWithType : Expr
Microsoft\CSharp\RuntimeBinder\Semantics\Tree\List.cs (1)
6internal sealed class ExprList : Expr
Microsoft\CSharp\RuntimeBinder\Semantics\Tree\LocalVariable.cs (1)
8internal sealed class ExprLocal : Expr
Microsoft\CSharp\RuntimeBinder\Semantics\Tree\NamedArgumentSpecification.cs (1)
8internal sealed class ExprNamedArgumentSpecification : Expr
Microsoft\CSharp\RuntimeBinder\Semantics\Tree\Temporary.cs (1)
6internal sealed class ExprWrap : Expr
Microsoft\CSharp\RuntimeBinder\Semantics\Tree\UserDefinedConversion.cs (1)
8internal sealed class ExprUserDefinedConversion : Expr
746 references to Expr
Microsoft.CSharp (746)
Microsoft\CSharp\RuntimeBinder\CSharpBinaryOperationBinder.cs (1)
34public Expr DispatchPayload(RuntimeBinder runtimeBinder, ArgumentObject[] arguments, LocalVariableSymbol[] locals)
Microsoft\CSharp\RuntimeBinder\CSharpConvertBinder.cs (1)
33public Expr DispatchPayload(RuntimeBinder runtimeBinder, ArgumentObject[] arguments, LocalVariableSymbol[] locals)
Microsoft\CSharp\RuntimeBinder\CSharpGetIndexBinder.cs (2)
24public Expr DispatchPayload(RuntimeBinder runtimeBinder, ArgumentObject[] arguments, LocalVariableSymbol[] locals) 26Expr indexerArguments = runtimeBinder.CreateArgumentListEXPR(arguments, locals, 1, arguments.Length);
Microsoft\CSharp\RuntimeBinder\CSharpGetMemberBinder.cs (1)
24public Expr DispatchPayload(RuntimeBinder runtimeBinder, ArgumentObject[] arguments, LocalVariableSymbol[] locals)
Microsoft\CSharp\RuntimeBinder\CSharpInvokeBinder.cs (1)
23public Expr DispatchPayload(RuntimeBinder runtimeBinder, ArgumentObject[] arguments, LocalVariableSymbol[] locals)
Microsoft\CSharp\RuntimeBinder\CSharpInvokeConstructorBinder.cs (1)
18public Expr DispatchPayload(RuntimeBinder runtimeBinder, ArgumentObject[] arguments, LocalVariableSymbol[] locals)
Microsoft\CSharp\RuntimeBinder\CSharpInvokeMemberBinder.cs (1)
24public Expr DispatchPayload(RuntimeBinder runtimeBinder, ArgumentObject[] arguments, LocalVariableSymbol[] locals)
Microsoft\CSharp\RuntimeBinder\CSharpIsEventBinder.cs (1)
20public Expr DispatchPayload(RuntimeBinder runtimeBinder, ArgumentObject[] arguments, LocalVariableSymbol[] locals)
Microsoft\CSharp\RuntimeBinder\CSharpSetIndexBinder.cs (1)
25public Expr DispatchPayload(RuntimeBinder runtimeBinder, ArgumentObject[] arguments, LocalVariableSymbol[] locals)
Microsoft\CSharp\RuntimeBinder\CSharpSetMemberBinder.cs (1)
23public Expr DispatchPayload(RuntimeBinder runtimeBinder, ArgumentObject[] arguments, LocalVariableSymbol[] locals)
Microsoft\CSharp\RuntimeBinder\CSharpUnaryOperationBinder.cs (1)
35public Expr DispatchPayload(RuntimeBinder runtimeBinder, ArgumentObject[] arguments, LocalVariableSymbol[] locals)
Microsoft\CSharp\RuntimeBinder\ExpressionTreeCallRewriter.cs (9)
72protected override Expr VisitSAVE(ExprBinOp pExpr) 89protected override Expr VisitCALL(ExprCall pExpr) 216protected override Expr VisitWRAP(ExprWrap pExpr) => new ExpressionExpr(GetExpression(pExpr)); 222private Expr GenerateLambda(ExprCall pExpr) 389Expr instance = list.OptionalElement; 390Expr nextNode = list.OptionalNextListNode; 695private Expression GetExpression(Expr pExpr) 894Expr list = arrinit.OptionalArguments; 897Expr p;
Microsoft\CSharp\RuntimeBinder\ICSharpBinder.cs (1)
24Expr DispatchPayload(RuntimeBinder runtimeBinder, ArgumentObject[] arguments, LocalVariableSymbol[] locals);
Microsoft\CSharp\RuntimeBinder\RuntimeBinder.cs (53)
117Expr pResult = payload.DispatchPayload(this, arguments, locals); 154Expr callingObject = CreateCallingObjectForCall(callPayload, arguments, locals); 189private static Expression CreateExpressionTreeFromResult(Expression[] parameters, Scope pScope, Expr pResult) 371private static ExprBoundLambda GenerateBoundLambda(Scope pScope, Expr call) 384private Expr CreateLocal(Type type, bool isOut, LocalVariableSymbol local) 403Expr result = _binder.tryConvert(exprLocal, ctype) ?? _binder.mustCast(exprLocal, ctype); 411internal Expr CreateArgumentListEXPR( 417Expr args = null; 418Expr last = null; 425Expr arg = CreateArgumentEXPR(argument, locals[i]); 445private Expr CreateArgumentEXPR(ArgumentObject argument, LocalVariableSymbol local) 447Expr arg; 518Expr callingObject, 618private Expr CreateProperty( 620Expr callingObject, 638private ExprWithArgs CreateIndexer(SymWithType swt, Expr callingObject, Expr arguments, BindingFlag bindFlags) 650private Expr CreateArray(Expr callingObject, Expr optionalIndexerArguments) 658private Expr CreateField( 660Expr callingObject) 668Expr field = _binder.BindToField(callingObject is ExprClass ? null : callingObject, fwt, 0); 682private Expr CreateCallingObjectForCall( 689Expr callingObject; 723Expr callingObject, 839private void ReorderArgumentsForNamedAndOptional(Expr callingObject, ExprWithArgs result) 841Expr arguments = result.OptionalArguments; 877Expr pList = null; 884Expr pArg = argInfo.prgexpr[i]; 897private Expr StripNamedArgument(Expr pArg) 911private Expr StripNamedArguments(Expr pArg) 940internal Expr BindUnaryOperation( 948Expr arg1 = CreateArgumentEXPR(arguments[0], locals[0]); 955Expr result = _binder.tryConvert(arg1, SymbolLoader.GetPredefindType(PredefinedType.PT_BOOL)); 980internal Expr BindBinaryOperation( 988Expr arg1 = CreateArgumentEXPR(arguments[0], locals[0]); 989Expr arg2 = CreateArgumentEXPR(arguments[1], locals[1]); 1103internal Expr BindProperty( 1107Expr optionalIndexerArguments) 1110Expr callingObject = argument.Info.IsStaticType ? 1187internal Expr BindImplicitConversion( 1198Expr argument = CreateArgumentEXPR(arguments[0], locals[0]); 1226internal Expr BindExplicitConversion(ArgumentObject[] arguments, Type returnType, LocalVariableSymbol[] locals) 1233Expr argument = CreateArgumentEXPR(arguments[0], locals[0]); 1246internal Expr BindAssignment( 1257Expr indexerArguments; 1274Expr lhs = BindProperty(payload, arguments[0], locals[0], indexerArguments); 1277Expr rhs = CreateArgumentEXPR(arguments[indexOfLast], locals[indexOfLast]); 1286internal Expr BindIsEvent( 1294Expr callingObject = CreateLocal(arguments[0].Type, false, locals[0]);
Microsoft\CSharp\RuntimeBinder\Semantics\Binding\Better.cs (1)
315Expr arg = args.prgexpr[i];
Microsoft\CSharp\RuntimeBinder\Semantics\BinOpArgInfo.cs (4)
13public BinOpArgInfo(Expr op1, Expr op2) 29public Expr arg1; 30public Expr arg2;
Microsoft\CSharp\RuntimeBinder\Semantics\Conversion.cs (60)
46Expr pSourceExpr, 50out Expr ppDestinationExpr, 346private bool canConvert(Expr expr, CType dest) => canConvert(expr, dest, 0); 349private bool canConvert(Expr expr, CType dest, CONVERTTYPE flags) => 355private Expr mustConvertCore(Expr expr, CType destExpr) => mustConvertCore(expr, destExpr, 0); 358private Expr mustConvertCore(Expr expr, CType dest, CONVERTTYPE flags) 362if (BindImplicitConversion(expr, expr.Type, dest, out Expr exprResult, flags)) 406public Expr tryConvert(Expr expr, CType dest) 412private Expr tryConvert(Expr expr, CType dest, CONVERTTYPE flags) 414if (BindImplicitConversion(expr, expr.Type, dest, out Expr exprResult, flags)) 426public Expr mustConvert(Expr expr, CType dest) => mustConvert(expr, dest, (CONVERTTYPE)0); 429private Expr mustConvert(Expr expr, CType dest, CONVERTTYPE flags) => mustConvertCore(expr, dest, flags); 439private Expr mustCastCore(Expr expr, CType dest, CONVERTTYPE flags) 445if (BindExplicitConversion(expr, expr.Type, dest, out Expr exprResult, flags)) 454Expr exprConst = expr.GetConst(); 514private static RuntimeBinderException CantConvert(Expr expr, CType dest) 522public Expr mustCast(Expr expr, CType dest) => mustCast(expr, dest, 0); 525public Expr mustCast(Expr expr, CType dest, CONVERTTYPE flags) => mustCastCore(expr, dest, flags); 528private Expr MustCastInUncheckedContext(Expr expr, CType dest, CONVERTTYPE flags) => 536private bool BindImplicitConversion(Expr pSourceExpr, CType pSourceType, CType destinationType, CONVERTTYPE flags) 543private bool BindImplicitConversion(Expr pSourceExpr, CType pSourceType, CType destinationType, out Expr ppDestinationExpr, CONVERTTYPE flags) 552private bool BindImplicitConversion(Expr pSourceExpr, CType pSourceType, CType destinationType, bool needsExprDest, out Expr ppDestinationExpr, CONVERTTYPE flags) 561private bool BindExplicitConversion(Expr pSourceExpr, CType pSourceType, CType destinationType, bool needsExprDest, out Expr ppDestinationExpr, CONVERTTYPE flags) 570private bool BindExplicitConversion(Expr pSourceExpr, CType pSourceType, CType destinationType, out Expr ppDestinationExpr, CONVERTTYPE flags) 579private bool BindExplicitConversion(Expr pSourceExpr, CType pSourceType, CType destinationType, CONVERTTYPE flags) 626private bool bindUserDefinedConversion(Expr exprSrc, CType typeSrc, CType typeDst, bool needExprDest, out Expr pexprDst, bool fImplicitOnly) 987Expr exprDst; 988Expr pTransformedArgument = exprSrc; 1001Expr nonLiftedArg = mustCast(exprSrc, typeFrom); 1003Expr nonLiftedResult = BindUDConversionCore(nonLiftedArg, typeFrom, typeTo, typeDst, mwiBest); 1013Expr pConversionArgument; 1041Expr pConversionCall = BindUDConversionCore(nonLiftedArg, typeFrom, typeTo, typeDst, mwiBest); 1062private static void MarkAsIntermediateConversion(Expr pExpr) 1093private Expr BindUDConversionCore(Expr pFrom, CType pTypeFrom, CType pTypeTo, CType pTypeDestination, MethWithInst mwiBest) 1099private Expr BindUDConversionCore(Expr pFrom, CType pTypeFrom, CType pTypeTo, CType pTypeDestination, MethWithInst mwiBest, out Expr ppTransformedArgument) 1101Expr pTransformedArgument = mustCastCore(pFrom, pTypeFrom, CONVERTTYPE.NOUDC); 1105Expr pCast = mustCastCore(pCall, pTypeDestination, CONVERTTYPE.NOUDC); 1115private ConstCastResult bindConstantCast(Expr exprSrc, CType typeDest, bool needExprDest, out Expr pexprDest, bool explicitConversion) 1130Expr expr = BindDecimalConstCast(typeDest, exprSrc.Type, constSrc); 1375private static Expr BindDecimalConstCast(CType destType, CType srcType, ExprConstant src) 1485private bool CanExplicitConversionBeBoundInUncheckedContext(Expr exprSrc, CType typeSrc, CType typeDest, CONVERTTYPE flags)
Microsoft\CSharp\RuntimeBinder\Semantics\ExplicitConversion.cs (6)
19private readonly Expr _exprSrc; 38private Expr _exprDest; 46public ExplicitConversion(ExpressionBinder binder, Expr exprSrc, CType typeSrc, CType typeDest, bool needsExprDest, CONVERTTYPE flags) 56public Expr ExprDest { get { return _exprDest; } } 198Expr valueSrc = _exprSrc; 506Expr exprCast;
Microsoft\CSharp\RuntimeBinder\Semantics\ExpressionBinder.cs (72)
36public List<Expr> prgexpr; 262private delegate Expr PfnBindBinOp(ExpressionBinder binder, ExpressionKind ek, EXPRFLAG flags, Expr op1, Expr op2); 263private delegate Expr PfnBindUnaOp(ExpressionBinder binder, ExpressionKind ek, EXPRFLAG flags, Expr op); 281private Expr GenerateAssignmentConversion(Expr op1, Expr op2, bool allowExplicit) => 288public Expr BindAssignment(Expr op1, Expr op2, bool allowExplicit) 303internal Expr BindArrayIndexCore(Expr pOp1, Expr pOp2) 316Expr transformedIndices = pOp2.Map( 319Expr pTemp = binder.MustConvertWithSuppressedMessage(x, pDestType); 332private Expr MustConvertWithSuppressedMessage(Expr x, CType pDestType) 337private static ExprCast ExprFactoryCreateCastWithSuppressedMessage(EXPRFLAG flags, CType type, Expr argument) 343private void bindSimpleCast(Expr exprSrc, CType typeDest, out Expr pexprDest) => 347private void bindSimpleCast(Expr exprSrc, CType typeDest, out Expr pexprDest, EXPRFLAG exprFlags) 353Expr exprConst = exprSrc.GetConst(); 390private ExprCall BindToMethod(MethWithInst mwi, Expr pArguments, ExprMemberGroup pMemGroup, MemLookFlags flags) 395Expr pObject = pMemGroup.OptionalObject; 435internal Expr BindToField(Expr pOptionalObject, FieldWithType fwt, BindingFlag bindFlags) 461internal ExprProperty BindToProperty(Expr pObject, PropWithType pwt, BindingFlag bindFlags, Expr args, ExprMemberGroup pMemGroup) 471Expr pObjectThrough = pObject; 537internal Expr bindUDUnop(ExpressionKind ek, Expr arg) 652private ExprCall BindLiftedUDUnop(Expr arg, CType typeArg, MethPropWithInst mpwi) 669Expr nonLiftedArg = mustCast(arg, typeRaw); 681private ExprCall BindUDUnopCall(Expr arg, CType typeArg, MethPropWithInst mpwi) 696private GroupToArgsBinderResult BindMethodGroupToArgumentsCore(BindingFlag bindFlags, ExprMemberGroup grp, Expr args, int carg, NamedArgumentsKind namedArgumentsKind) 714internal ExprWithArgs BindMethodGroupToArguments(BindingFlag bindFlags, ExprMemberGroup grp, Expr args) 746private static NamedArgumentsKind FindNamedArgumentsType(Expr args) 748Expr list = args; 751Expr arg; 794private static RuntimeBinderException BadOperatorTypesError(Expr pOperand1, Expr pOperand2) 853private void CheckLvalue(Expr expr, CheckLvalueKind kind) 945private Expr AdjustMemberObject(SymWithType swt, Expr pObject) 1010private static bool IsMatchingStatic(SymWithType swt, Expr pObject) 1048private static void AssertObjectIsLvalue(Expr pObject) 1065Expr argsPtr = call.OptionalArguments; 1069Expr newArgs; 1075private void AdjustCallArgumentsForParams(CType callingObjectType, CType type, MethodOrPropertySymbol mp, TypeArray pTypeArgs, Expr argsPtr, out Expr newArgs) 1080Expr newArgsTail = null; 1103Expr indir = it.Current(); 1121Expr argument = indir; 1122Expr rval; 1252Expr newList = null; 1253Expr newListTail = null; 1258Expr expr = it.Current(); 1287internal CType ChooseArrayIndexType(Expr args) 1293foreach (Expr arg in args.ToEnumerable()) 1311internal static void FillInArgInfoFromArgList(ArgInfos argInfo, Expr args) 1314argInfo.prgexpr = new List<Expr>(); 1317for (Expr list = args; list != null; iarg++) 1319Expr arg; 1623private static ExprWrap WrapShortLivedExpression(Expr expr) => ExprFactory.CreateWrap(expr); 1625private static ExprAssignment GenerateOptimizedAssignment(Expr op1, Expr op2) => ExprFactory.CreateAssignment(op1, op2); 1627internal static int CountArguments(Expr args) 1630for (Expr list = args; list != null; carg++) 1632Expr arg;
Microsoft\CSharp\RuntimeBinder\Semantics\EXPRExtensions.cs (22)
12public static Expr Map(this Expr expr, Func<Expr, Expr> f) 21Expr result = null; 22Expr tail = null; 23foreach (Expr item in expr.ToEnumerable()) 25Expr mappedItem = f(item); 31public static IEnumerable<Expr> ToEnumerable(this Expr expr) 33Expr exprCur = expr; 50public static void AssertIsBin(this Expr expr) 54public static bool isLvalue(this Expr expr) 58public static bool isChecked(this Expr expr) 63public static bool isNull(this Expr expr) 66public static bool IsZero(this Expr expr) => expr is ExprConstant constant && constant.IsZero; 68private static Expr GetSeqVal(this Expr expr) 76Expr exprVal = expr; 90public static Expr GetConst(this Expr expr) 92Expr exprVal = expr.GetSeqVal();
Microsoft\CSharp\RuntimeBinder\Semantics\ExprFactory.cs (49)
13public static ExprCall CreateCall(EXPRFLAG flags, CType type, Expr arguments, ExprMemberGroup memberGroup, MethWithInst method) => 16public static ExprField CreateField(CType type, Expr optionalObject, FieldWithType field) => 19public static ExprArrayInit CreateArrayInit(CType type, Expr arguments, Expr argumentDimensions, int[] dimSizes) => 22public static ExprProperty CreateProperty(CType type, Expr optionalObjectThrough, Expr arguments, ExprMemberGroup memberGroup, PropWithType property, MethWithType setMethod) => 25public static ExprMemberGroup CreateMemGroup(EXPRFLAG flags, Name name, TypeArray typeArgs, SYMKIND symKind, CType parentType, Expr obj, CMemberLookupResults memberLookupResults) => 28public static ExprMemberGroup CreateMemGroup(Expr obj, MethPropWithInst method) 37public static ExprUserDefinedConversion CreateUserDefinedConversion(Expr arg, Expr call, MethWithInst method) => 41public static ExprCast CreateCast(CType type, Expr argument) => CreateCast(0, type, argument); 44public static ExprCast CreateCast(EXPRFLAG flags, CType type, Expr argument) => new ExprCast(flags, type, argument); 50public static ExprBoundLambda CreateAnonymousMethod(AggregateType delegateType, Scope argumentScope, Expr expression) => 76public static ExprUserLogicalOp CreateUserLogOp(CType type, Expr trueFalseCall, ExprCall operatorCall) => 80public static ExprConcat CreateConcat(Expr first, Expr second) => new ExprConcat(first, second); 91public static ExprMulti CreateMulti(EXPRFLAG flags, CType type, Expr left, Expr op) => 102public static Expr CreateZeroInit(CType type) 149public static ExprArrayIndex CreateArrayIndex(CType type, Expr array, Expr index) => 152public static ExprBinOp CreateBinop(ExpressionKind exprKind, CType type, Expr left, Expr right) => 155public static ExprUnaryOp CreateUnaryOp(ExpressionKind exprKind, CType type, Expr operand) => 158public static ExprOperator CreateOperator(ExpressionKind exprKind, CType type, Expr arg1, Expr arg2) 167public static ExprBinOp CreateUserDefinedBinop(ExpressionKind exprKind, CType type, Expr left, Expr right, Expr call, MethPropWithInst userMethod) => 171public static ExprUnaryOp CreateUserDefinedUnaryOperator(ExpressionKind exprKind, CType type, Expr operand, ExprCall call, MethPropWithInst userMethod) => 174public static ExprUnaryOp CreateNeg(EXPRFLAG flags, Expr operand) 185public static ExprBinOp CreateSequence(Expr first, Expr second) => 191public static ExprAssignment CreateAssignment(Expr left, Expr right) => new ExprAssignment(left, right); 195public static ExprNamedArgumentSpecification CreateNamedArgumentSpecification(Name name, Expr value) => 198public static ExprWrap CreateWrap(Expr expression) => new ExprWrap(expression); 210public static void AppendItemToList(Expr newItem, ref Expr first, ref Expr last) 238public static ExprList CreateList(Expr op1, Expr op2) => new ExprList(op1, op2); 240public static ExprList CreateList(Expr op1, Expr op2, Expr op3) => CreateList(op1, CreateList(op2, op3)); 242public static ExprList CreateList(Expr op1, Expr op2, Expr op3, Expr op4) =>
Microsoft\CSharp\RuntimeBinder\Semantics\GroupToArgsBinder.cs (15)
404Expr[] pExprArguments = new Expr[numParameters]; 409Expr paramArrayArgument = null; 444Expr pNewArg = FindArgumentWithName(pArguments, name); 487private static Expr GenerateOptionalArgument(MethodOrPropertySymbol methprop, CType type, int index) 492Expr optionalArgument; 577private static MethodOrPropertySymbol FindMostDerivedMethod(MethodOrPropertySymbol pMethProp, Expr pObject) => 688Expr[] pArguments = new Expr[_pCurrentParameters.Count - i]; 718private static Expr FindArgumentWithName(ArgInfos pArguments, Name pName) 720List<Expr> prgexpr = pArguments.prgexpr; 723Expr expr = prgexpr[i]; 932Expr pArgument = _pArguments.prgexpr[ivar]; 1018Expr pArgument = _pArguments.prgexpr[iParam]; 1037Expr pArgumentNew = GenerateOptionalArgument(pMethod, _pCurrentParameters[iParam], iParam);
Microsoft\CSharp\RuntimeBinder\Semantics\ImplicitConversion.cs (6)
18public ImplicitConversion(ExpressionBinder binder, Expr exprSrc, CType typeSrc, CType typeDest, bool needsExprDest, CONVERTTYPE flags) 28public Expr ExprDest { get { return _exprDest; } } 29private Expr _exprDest; 31private readonly Expr _exprSrc; 321Expr exprTmp = _exprSrc; 373Expr arg1 = _binder.mustCast(_exprSrc, typeSrcBase);
Microsoft\CSharp\RuntimeBinder\Semantics\MemberLookup.cs (1)
521public bool Lookup(CType typeSrc, Expr obj, ParentSymbol symWhere, Name name, int arity, MemLookFlags flags)
Microsoft\CSharp\RuntimeBinder\Semantics\MethodIterator.cs (1)
106List<Expr> argExpressions = args.prgexpr;
Microsoft\CSharp\RuntimeBinder\Semantics\MethodTypeInferrer.cs (1)
269Expr pExpr = _pMethodArguments.prgexpr[iArg];
Microsoft\CSharp\RuntimeBinder\Semantics\Nullable.cs (7)
11private static bool IsNullableConstructor(Expr expr, out ExprCall call) 26private static Expr StripNullableConstructor(Expr pExpr) 39private static Expr BindNubValue(Expr exprSrc) 46Expr args = call.OptionalArguments; 63private static ExprCall BindNubNew(Expr exprSrc)
Microsoft\CSharp\RuntimeBinder\Semantics\Operators.cs (125)
146Expr expr; 454Expr arg1 = info.arg1; 455Expr arg2 = info.arg2; 486public Expr BindStandardBinop(ExpressionKind ek, Expr arg1, Expr arg2) 561private Expr BindStandardBinopCore(BinOpArgInfo info, BinOpFullSig bofs, ExpressionKind ek, EXPRFLAG flags) 570Expr expr1 = info.arg1; 571Expr expr2 = info.arg2; 588Expr expr1 = info.arg1; 589Expr expr2 = info.arg2; 607Expr arg1 = info.arg1; 608Expr arg2 = info.arg2; 614Expr nonLiftedResult = null; 616LiftArgument(arg1, bofs.Type1(), bofs.ConvertFirst(), out Expr pArgument1, out Expr nonLiftedArg1); 617LiftArgument(arg2, bofs.Type2(), bofs.ConvertSecond(), out Expr pArgument2, out Expr nonLiftedArg2); 657private void LiftArgument(Expr pArgument, CType pParameterType, bool bConvertBeforeLift, 658out Expr ppLiftedArgument, out Expr ppNonLiftedArgument) 660Expr pLiftedArgument = mustConvert(pArgument, pParameterType); 666Expr pNonLiftedArgument = pArgument; 1154public Expr BindStandardUnaryOperator(OperatorKind op, Expr pArgument) 1185UnaryOperatorSignatureFindResult eResultOfSignatureFind = PopulateSignatureList(pArgument, unaryOpKind, unaryOpMask, ek, flags, pSignatures, out Expr pResult); 1286Expr arg = 1296private UnaryOperatorSignatureFindResult PopulateSignatureList(Expr pArgument, UnaOpKind unaryOpKind, UnaOpMask unaryOpMask, ExpressionKind exprKind, EXPRFLAG flags, List<UnaOpFullSig> pSignatures, out Expr ppResult) 1350Expr exprVal = bindUDUnop((ExpressionKind)(exprKind - ExpressionKind.Add + ExpressionKind.Inc), exprGet); 1372Expr expr = bindUDUnop(exprKind, pArgument); 1388Expr pArgument, 1513private ExprOperator BindLiftedStandardUnop(ExpressionKind ek, EXPRFLAG flags, Expr arg, UnaOpFullSig uofs) 1522LiftArgument(arg, uofs.GetType(), uofs.Convert(), out Expr pArgument, out Expr nonLiftedArg); 1525Expr nonLiftedResult = uofs.pfn(this, ek, flags, nonLiftedArg); 1565private static ExprOperator BindIntBinOp(ExpressionBinder binder, ExpressionKind ek, EXPRFLAG flags, Expr arg1, Expr arg2) 1575private static ExprOperator BindIntUnaOp(ExpressionBinder binder, ExpressionKind ek, EXPRFLAG flags, Expr arg) 1585private static ExprOperator BindRealBinOp(ExpressionBinder binder, ExpressionKind ek, EXPRFLAG _, Expr arg1, Expr arg2) 1595private static ExprOperator BindRealUnaOp(ExpressionBinder binder, ExpressionKind ek, EXPRFLAG _, Expr arg) 1606private Expr BindIncOp(ExpressionKind ek, EXPRFLAG flags, Expr arg, UnaOpFullSig uofs) 1630private Expr BindIncOpCore(ExpressionKind ek, EXPRFLAG flags, Expr exprVal, CType type) 1688private Expr LScalar(ExpressionKind ek, EXPRFLAG flags, Expr exprVal, CType type, ConstVal cv, CType typeTmp) 1702private ExprMulti BindNonliftedIncOp(ExpressionKind ek, EXPRFLAG flags, Expr arg, UnaOpFullSig uofs) 1709Expr exprVal = exprGet; 1721Expr op = mustCast(exprVal, arg.Type, CONVERTTYPE.NOUDC); 1729private ExprMulti BindLiftedIncOp(ExpressionKind ek, EXPRFLAG flags, Expr arg, UnaOpFullSig uofs) 1738Expr exprVal = exprGet; 1739Expr nonLiftedArg = exprVal; 1745Expr nonLiftedResult = BindIncOpCore(ek, flags, nonLiftedArg, type.UnderlyingType); 1763private static ExprBinOp BindDecBinOp(ExpressionBinder _, ExpressionKind ek, EXPRFLAG flags, Expr arg1, Expr arg2) 1805private static ExprUnaryOp BindDecUnaOp(ExpressionBinder _, ExpressionKind ek, EXPRFLAG flags, Expr arg) 1825private static Expr BindStrBinOp(ExpressionBinder _, ExpressionKind ek, EXPRFLAG flags, Expr arg1, Expr arg2) 1837private static ExprBinOp BindShiftOp(ExpressionBinder _, ExpressionKind ek, EXPRFLAG flags, Expr arg1, Expr arg2) 1855private static ExprBinOp BindBoolBinOp(ExpressionBinder _, ExpressionKind ek, EXPRFLAG flags, Expr arg1, Expr arg2) 1866private ExprOperator BindBoolBitwiseOp(ExpressionKind ek, EXPRFLAG flags, Expr expr1, Expr expr2) 1878Expr nonLiftedArg1 = StripNullableConstructor(expr1); 1879Expr nonLiftedArg2 = StripNullableConstructor(expr2); 1880Expr nonLiftedResult = null; 1903private static Expr BindLiftedBoolBitwiseOp(ExpressionBinder _, ExpressionKind ek, EXPRFLAG flags, Expr expr1, Expr expr2) => null; 1910private static Expr BindBoolUnaOp(ExpressionBinder _, ExpressionKind ek, EXPRFLAG flags, Expr arg) 1921Expr argConst = arg.GetConst(); 1935private static ExprBinOp BindStrCmpOp(ExpressionBinder _, ExpressionKind ek, EXPRFLAG flags, Expr arg1, Expr arg2) 1953private static ExprBinOp BindRefCmpOp(ExpressionBinder binder, ExpressionKind ek, EXPRFLAG flags, Expr arg1, Expr arg2) 1969private static Expr BindDelBinOp(ExpressionBinder _, ExpressionKind ek, EXPRFLAG flags, Expr arg1, Expr arg2) 2010private static Expr BindEnumBinOp(ExpressionBinder binder, ExpressionKind ek, EXPRFLAG flags, Expr arg1, Expr arg2) 2027Expr exprRes = binder.BindIntOp(ek, flags, arg1, arg2, ptOp); 2039private Expr BindLiftedEnumArithmeticBinOp(ExpressionKind ek, EXPRFLAG flags, Expr arg1, Expr arg2) 2086private static Expr BindEnumUnaOp(ExpressionBinder binder, ExpressionKind ek, EXPRFLAG flags, Expr arg) 2103Expr exprRes = binder.BindIntOp(ek, flags, arg, null, ptOp); 2187private ExprOperator BindIntOp(ExpressionKind kind, EXPRFLAG flags, Expr op1, Expr op2, PredefinedType ptOp) 2212private ExprOperator BindIntegerNeg(EXPRFLAG flags, Expr op, PredefinedType ptOp) 2272private static ExprOperator BindFloatOp(ExpressionKind kind, Expr op1, Expr op2) 2289private static ExprConcat BindStringConcat(Expr op1, Expr op2) 2315private static RuntimeBinderException AmbiguousOperatorError(Expr op1, Expr op2) 2330private Expr BindUserBoolOp(ExpressionKind kind, ExprCall pCall) 2349Expr pExpr = list.OptionalElement; 2357Expr pCallT = bindUDUnop(ExpressionKind.True, pExprWrap); 2358Expr pCallF = bindUDUnop(ExpressionKind.False, pExprWrap); 2451ExpressionKind ek, MethodSymbol method, AggregateType ats, Expr arg1, Expr arg2, bool fDontLift) 2490Expr arg1, Expr arg2, bool fDontLift) 2510Expr arg1, Expr arg2, bool fDontLift, AggregateType atsStop) 2524private ExprCall BindUDBinop(ExpressionKind ek, Expr arg1, Expr arg2, bool fDontLift, out MethPropWithInst ppmpwi) 2583private ExprCall BindUDBinopCall(Expr arg1, Expr arg2, TypeArray Params, CType typeRet, MethPropWithInst mpwi) 2602private ExprCall BindLiftedUDBinop(ExpressionKind ek, Expr arg1, Expr arg2, TypeArray Params, MethPropWithInst mpwi) 2604Expr exprVal1 = arg1; 2605Expr exprVal2 = arg2; 2632Expr nonLiftedArg1 = mustCast(exprVal1, paramsRaw[0]); 2633Expr nonLiftedArg2 = mustCast(exprVal2, paramsRaw[1]); 2722private static ExprBinOp CreateBinopForPredefMethodCall(ExpressionKind ek, PREDEFMETH predefMeth, CType RetType, Expr arg1, Expr arg2) 2737private static ExprUnaryOp CreateUnaryOpForPredefMethodCall(ExpressionKind ek, PREDEFMETH predefMeth, CType pRetType, Expr pArg)
Microsoft\CSharp\RuntimeBinder\Semantics\Tree\ArrayIndex.cs (4)
8public ExprArrayIndex(CType type, Expr array, Expr index) 16public Expr Array { get; set; } 18public Expr Index { get; set; }
Microsoft\CSharp\RuntimeBinder\Semantics\Tree\ArrayInitialization.cs (4)
8public ExprArrayInit(CType type, Expr arguments, Expr argumentDimensions, int[] dimensionSizes) 16public Expr OptionalArguments { get; set; } 18public Expr OptionalArgumentDimensions { get; set; }
Microsoft\CSharp\RuntimeBinder\Semantics\Tree\Assignment.cs (5)
8private Expr _lhs; 10public ExprAssignment(Expr lhs, Expr rhs) 18public Expr LHS 24public Expr RHS { get; set; }
Microsoft\CSharp\RuntimeBinder\Semantics\Tree\BinaryOperator.cs (7)
10public ExprBinOp(ExpressionKind kind, CType type, Expr left, Expr right) 21public ExprBinOp(ExpressionKind kind, CType type, Expr left, Expr right, Expr call, MethPropWithInst userMethod) 33public Expr OptionalLeftChild { get; set; } 35public Expr OptionalRightChild { get; set; }
Microsoft\CSharp\RuntimeBinder\Semantics\Tree\BoundAnonymousFunction.cs (2)
10public ExprBoundLambda(AggregateType type, Scope argumentScope, Expr expression) 20public Expr Expression { get; }
Microsoft\CSharp\RuntimeBinder\Semantics\Tree\Call.cs (3)
10public ExprCall(CType type, EXPRFLAG flags, Expr arguments, ExprMemberGroup member, MethWithInst method) 29public Expr PConversions { get; set; } 31public Expr CastOfNonLiftedResultToLiftedType { get; set; }
Microsoft\CSharp\RuntimeBinder\Semantics\Tree\Cast.cs (3)
11public ExprCast(EXPRFLAG flags, CType type, Expr argument) 20public Expr Argument { get; set; } 29Expr arg = Argument;
Microsoft\CSharp\RuntimeBinder\Semantics\Tree\CompoundOperator.cs (4)
23public ExprMulti(CType type, EXPRFLAG flags, Expr left, Expr op) 33public Expr Left { get; set; } 35public Expr Operator { get; set; }
Microsoft\CSharp\RuntimeBinder\Semantics\Tree\Concatenate.cs (6)
11public ExprConcat(Expr first, Expr second) 21private static CType TypeFromOperands(Expr first, Expr second) 33public Expr FirstArgument { get; set; } 35public Expr SecondArgument { get; set; }
Microsoft\CSharp\RuntimeBinder\Semantics\Tree\Constant.cs (1)
18public Expr OptionalConstructorCall { get; set; }
Microsoft\CSharp\RuntimeBinder\Semantics\Tree\ExpressionIterator.cs (5)
43public ExpressionIterator(Expr pExpr) { Init(pExpr); } 47public Expr Current() { return _pCurrent; } 65public static int Count(Expr pExpr) 76private Expr _pCurrent; 78private void Init(Expr pExpr)
Microsoft\CSharp\RuntimeBinder\Semantics\Tree\ExprOperator.cs (2)
16protected ExprOperator(ExpressionKind kind, CType type, Expr call, MethPropWithInst userDefinedMethod) 23public Expr OptionalUserDefinedCall { get; }
Microsoft\CSharp\RuntimeBinder\Semantics\Tree\ExprWithArgs.cs (1)
15public Expr OptionalArguments { get; set; }
Microsoft\CSharp\RuntimeBinder\Semantics\Tree\Field.cs (2)
8public ExprField(CType type, Expr optionalObject, FieldWithType field) 16public Expr OptionalObject { get; set; }
Microsoft\CSharp\RuntimeBinder\Semantics\Tree\List.cs (4)
8public ExprList(Expr optionalElement, Expr optionalNextListNode) 15public Expr OptionalElement { get; set; } 17public Expr OptionalNextListNode { get; set; }
Microsoft\CSharp\RuntimeBinder\Semantics\Tree\MemberGroup.cs (2)
11public ExprMemberGroup(EXPRFLAG flags, Name name, TypeArray typeArgs, SYMKIND symKind, CType parentType, Expr optionalObject, CMemberLookupResults memberLookupResults) 39public Expr OptionalObject { get; set; }
Microsoft\CSharp\RuntimeBinder\Semantics\Tree\NamedArgumentSpecification.cs (3)
10private Expr _value; 12public ExprNamedArgumentSpecification(Name name, Expr value) 21public Expr Value
Microsoft\CSharp\RuntimeBinder\Semantics\Tree\Property.cs (3)
19public ExprProperty(CType type, Expr pOptionalObjectThrough, Expr pOptionalArguments, ExprMemberGroup pMemberGroup, PropWithType pwtSlot, MethWithType mwtSet) 41public Expr OptionalObjectThrough { get; }
Microsoft\CSharp\RuntimeBinder\Semantics\Tree\Temporary.cs (2)
8public ExprWrap(Expr expression) 16public Expr OptionalExpression { get; }
Microsoft\CSharp\RuntimeBinder\Semantics\Tree\UnaryOperator.cs (4)
10public ExprUnaryOp(ExpressionKind kind, CType type, Expr operand) 18public ExprUnaryOp(ExpressionKind kind, CType type, Expr operand, Expr call, MethPropWithInst userMethod) 29public Expr Child { get; set; }
Microsoft\CSharp\RuntimeBinder\Semantics\Tree\UserDefinedConversion.cs (5)
10private Expr _userDefinedCall; 12public ExprUserDefinedConversion(Expr argument, Expr call, MethWithInst method) 22public Expr Argument { get; set; } 24public Expr UserDefinedCall
Microsoft\CSharp\RuntimeBinder\Semantics\Tree\UserDefinedLogicalOperator.cs (4)
10public ExprUserLogicalOp(CType type, Expr trueFalseCall, ExprCall operatorCall) 18Expr leftChild = ((ExprList)operatorCall.OptionalArguments).OptionalElement; 24public Expr TrueFalseCall { get; set; } 28public Expr FirstOperandToExamine { get; set; }
Microsoft\CSharp\RuntimeBinder\Semantics\Tree\Visitors\ExpressionTreeRewriter.cs (150)
16protected override Expr Dispatch(Expr expr) 20Expr result = base.Dispatch(expr); 31protected override Expr VisitASSIGNMENT(ExprAssignment assignment) 37Expr lhs; 51Expr instance = Visit(prop.MemberGroup.OptionalObject); 52Expr propInfo = ExprFactory.CreatePropertyInfo(prop.PropWithTypeSlot.Prop(), prop.PropWithTypeSlot.Ats); 53Expr arguments = GenerateParamsArray( 65Expr rhs = Visit(assignment.RHS); 70protected override Expr VisitMULTIGET(ExprMultiGet pExpr) 76protected override Expr VisitMULTI(ExprMulti pExpr) 78Expr rhs = Visit(pExpr.Operator); 79Expr lhs = Visit(pExpr.Left); 96Expr createParameters = CreateWraps(anonmeth); 99Expr body = Visit(anonmeth.Expression); 101Expr parameters = GenerateParamsArray(null, PredefinedType.PT_PARAMETEREXPRESSION); 102Expr args = ExprFactory.CreateList(body, parameters); 111protected override Expr VisitCONSTANT(ExprConstant expr) 118protected override Expr VisitLOCAL(ExprLocal local) 126protected override Expr VisitFIELD(ExprField expr) 129Expr pObject; 143protected override Expr VisitUSERDEFINEDCONVERSION(ExprUserDefinedConversion expr) 150protected override Expr VisitCAST(ExprCast pExpr) 154Expr pArgument = pExpr.Argument; 174Expr result = GenerateConversion(pArgument, pExpr.Type, pExpr.isChecked()); 184protected override Expr VisitCONCAT(ExprConcat expr) 196Expr p1 = Visit(expr.FirstArgument); 197Expr p2 = Visit(expr.SecondArgument); 199Expr methodInfo = ExprFactory.CreateMethodInfo(method, SymbolLoader.GetPredefindType(PredefinedType.PT_STRING), null); 204protected override Expr VisitBINOP(ExprBinOp expr) 218protected override Expr VisitUNARYOP(ExprUnaryOp pExpr) 232protected override Expr VisitARRAYINDEX(ExprArrayIndex pExpr) 235Expr arr = Visit(pExpr.Array); 236Expr args = GenerateIndexList(pExpr.Index); 239Expr Params = GenerateParamsArray(args, PredefinedType.PT_EXPRESSION); 246protected override Expr VisitCALL(ExprCall expr) 273Expr pObject; 301Expr methodInfo = ExprFactory.CreateMethodInfo(expr.MethWithInst); 302Expr args = GenerateArgsList(expr.OptionalArguments); 303Expr Params = GenerateParamsArray(args, PredefinedType.PT_EXPRESSION); 311protected override Expr VisitPROP(ExprProperty expr) 314Expr pObject; 323Expr propInfo = ExprFactory.CreatePropertyInfo(expr.PropWithTypeSlot.Prop(), expr.PropWithTypeSlot.GetType()); 327Expr args = GenerateArgsList(expr.OptionalArguments); 328Expr Params = GenerateParamsArray(args, PredefinedType.PT_EXPRESSION); 335protected override Expr VisitARRINIT(ExprArrayInit expr) 339Expr pTypeOf = CreateTypeOf(((ArrayType)expr.Type).ElementType); 340Expr args = GenerateArgsList(expr.OptionalArguments); 341Expr Params = GenerateParamsArray(args, PredefinedType.PT_EXPRESSION); 346protected override Expr VisitZEROINIT(ExprZeroInit expr) 353protected override Expr VisitTYPEOF(ExprTypeOf expr) 360private Expr GenerateDelegateInvoke(ExprCall expr) 365Expr oldObject = memberGroup.OptionalObject; 367Expr pObject = Visit(oldObject); 368Expr args = GenerateArgsList(expr.OptionalArguments); 369Expr Params = GenerateParamsArray(args, PredefinedType.PT_EXPRESSION); 374private Expr GenerateBuiltInBinaryOperator(ExprBinOp expr) 403Expr origL = expr.OptionalLeftChild; 404Expr origR = expr.OptionalRightChild; 410Expr newL = Visit(origL); 411Expr newR = Visit(origR); 464Expr call = GenerateCall(pdm, newL, newR); 475private Expr GenerateBuiltInUnaryOperator(ExprUnaryOp expr) 491Expr origOp = expr.Child; 499private Expr GenerateUserDefinedBinaryOperator(ExprBinOp expr) 540Expr p1 = expr.OptionalLeftChild; 541Expr p2 = expr.OptionalRightChild; 542Expr udcall = expr.OptionalUserDefinedCall; 566Expr methodInfo = ExprFactory.CreateMethodInfo(expr.UserDefinedCallMethod); 567Expr call = GenerateCall(pdm, p1, p2, methodInfo); 572Expr pTypeOf = CreateTypeOf(expr.Type); 579private Expr GenerateUserDefinedUnaryOperator(ExprUnaryOp expr) 583Expr arg = expr.Child; 618Expr op = Visit(arg); 619Expr methodInfo = ExprFactory.CreateMethodInfo(expr.UserDefinedCallMethod); 630private Expr GenerateUserDefinedComparisonOperator(ExprBinOp expr) 648Expr p1 = expr.OptionalLeftChild; 649Expr p2 = expr.OptionalRightChild; 662Expr lift = ExprFactory.CreateBoolConstant(false); // We never lift to null in C#. 663Expr methodInfo = ExprFactory.CreateMethodInfo(expr.UserDefinedCallMethod); 668private Expr GenerateConversion(Expr arg, CType CType, bool bChecked) => 672private static Expr GenerateConversionWithSource(Expr pTarget, CType pType, bool bChecked) 675Expr pTypeOf = CreateTypeOf(pType); 680private Expr GenerateValueAccessConversion(Expr pArgument) 684Expr pStrippedTypeExpr = CreateTypeOf(pStrippedTypeOfArgument); 689private Expr GenerateUserDefinedConversion(Expr arg, CType type, MethWithInst method) 691Expr target = Visit(arg); 696private static Expr GenerateUserDefinedConversion(Expr arg, CType CType, Expr target, MethWithInst method) 710Expr typeofNubEnum = CreateTypeOf(nullableType); 723Expr typeofInner = CreateTypeOf(fDontLiftReturnType ? CType : pMethodReturnType); 724Expr methodInfo = ExprFactory.CreateMethodInfo(method); 726Expr callUserDefinedConversion = GenerateCall(pdmInner, target, typeofInner, methodInfo); 734Expr typeofOuter = CreateTypeOf(CType); 739private Expr GenerateUserDefinedConversion(ExprUserDefinedConversion pExpr, Expr pArgument) 741Expr pCastCall = pExpr.UserDefinedCall; 742Expr pCastArgument = pExpr.Argument; 743Expr pConversionSource; 754Expr pUDConversion = call?.PConversions; 759Expr pUDConversionArgument = convCall.OptionalArguments; 788private static Expr GenerateParameter(string name, CType CType) 803private static Expr CreateWraps(ExprBoundLambda anonmeth) 805Expr sequence = null; 814Expr create = GenerateParameter(local.name.Text, local.GetType()); 816Expr save = ExprFactory.CreateSave(local.wrap); 831private Expr GenerateConstructor(ExprCall expr) 835Expr constructorInfo = ExprFactory.CreateMethodInfo(expr.MethWithInst); 836Expr args = GenerateArgsList(expr.OptionalArguments); 837Expr Params = GenerateParamsArray(args, PredefinedType.PT_EXPRESSION); 842private Expr GenerateArgsList(Expr oldArgs) 844Expr newArgs = null; 845Expr newArgsTail = newArgs; 848Expr oldArg = it.Current(); 855private Expr GenerateIndexList(Expr oldIndices) 859Expr newIndices = null; 860Expr newIndicesTail = newIndices; 863Expr newIndex = it.Current(); 869Expr rewrittenIndex = Visit(newIndex); 876private static Expr GenerateConstant(Expr expr) 901private static ExprCall GenerateCall(PREDEFMETH pdm, Expr arg1) 917private static ExprCall GenerateCall(PREDEFMETH pdm, Expr arg1, Expr arg2) 923Expr args = ExprFactory.CreateList(arg1, arg2); 932private static ExprCall GenerateCall(PREDEFMETH pdm, Expr arg1, Expr arg2, Expr arg3) 938Expr args = ExprFactory.CreateList(arg1, arg2, arg3); 947private static ExprCall GenerateCall(PREDEFMETH pdm, Expr arg1, Expr arg2, Expr arg3, Expr arg4) 953Expr args = ExprFactory.CreateList(arg1, arg2, arg3, arg4); 962private static ExprArrayInit GenerateParamsArray(Expr args, PredefinedType pt) 972private static void FixLiftedUserDefinedBinaryOperators(ExprBinOp expr, ref Expr pp1, ref Expr pp2) 982Expr orig1 = expr.OptionalLeftChild; 983Expr orig2 = expr.OptionalRightChild; 985Expr new1 = pp1; 986Expr new2 = pp2; 1020private static bool IsNullableValueAccess(Expr pExpr, Expr pObject)
Microsoft\CSharp\RuntimeBinder\Semantics\Tree\Visitors\ExprVisitorBase.cs (74)
12protected Expr Visit(Expr pExpr) => pExpr == null ? null : Dispatch(pExpr); 15protected virtual Expr Dispatch(Expr pExpr) => 92private void VisitChildren(Expr pExpr) 96Expr exprRet; 108Expr nextNode = list.OptionalNextListNode; 297protected virtual Expr VisitEXPR(Expr pExpr) 304protected virtual Expr VisitBINOP(ExprBinOp pExpr) 310protected virtual Expr VisitLIST(ExprList pExpr) 316protected virtual Expr VisitASSIGNMENT(ExprAssignment pExpr) 322protected virtual Expr VisitARRAYINDEX(ExprArrayIndex pExpr) 328protected virtual Expr VisitUNARYOP(ExprUnaryOp pExpr) 334protected virtual Expr VisitUSERLOGOP(ExprUserLogicalOp pExpr) 340protected virtual Expr VisitTYPEOF(ExprTypeOf pExpr) 346protected virtual Expr VisitCAST(ExprCast pExpr) 352protected virtual Expr VisitUSERDEFINEDCONVERSION(ExprUserDefinedConversion pExpr) 358protected virtual Expr VisitZEROINIT(ExprZeroInit pExpr) 364protected virtual Expr VisitMEMGRP(ExprMemberGroup pExpr) 370protected virtual Expr VisitCALL(ExprCall pExpr) 376protected virtual Expr VisitPROP(ExprProperty pExpr) 382protected virtual Expr VisitFIELD(ExprField pExpr) 388protected virtual Expr VisitLOCAL(ExprLocal pExpr) 394protected virtual Expr VisitCONSTANT(ExprConstant pExpr) 400protected virtual Expr VisitMULTIGET(ExprMultiGet pExpr) 406protected virtual Expr VisitMULTI(ExprMulti pExpr) 412protected virtual Expr VisitWRAP(ExprWrap pExpr) 418protected virtual Expr VisitCONCAT(ExprConcat pExpr) 424protected virtual Expr VisitARRINIT(ExprArrayInit pExpr) 430protected virtual Expr VisitFIELDINFO(ExprFieldInfo pExpr) 436protected virtual Expr VisitMETHODINFO(ExprMethodInfo pExpr) 442protected virtual Expr VisitEQUALS(ExprBinOp pExpr) 448protected virtual Expr VisitCOMPARE(ExprBinOp pExpr) 454protected virtual Expr VisitEQ(ExprBinOp pExpr) 460protected virtual Expr VisitNE(ExprBinOp pExpr) 466protected virtual Expr VisitLE(ExprBinOp pExpr) 472protected virtual Expr VisitGE(ExprBinOp pExpr) 478protected virtual Expr VisitADD(ExprBinOp pExpr) 484protected virtual Expr VisitSUB(ExprBinOp pExpr) 490protected virtual Expr VisitDIV(ExprBinOp pExpr) 496protected virtual Expr VisitBITAND(ExprBinOp pExpr) 502protected virtual Expr VisitBITOR(ExprBinOp pExpr) 508protected virtual Expr VisitLSHIFT(ExprBinOp pExpr) 514protected virtual Expr VisitLOGAND(ExprBinOp pExpr) 520protected virtual Expr VisitSEQUENCE(ExprBinOp pExpr) 526protected virtual Expr VisitSAVE(ExprBinOp pExpr) 532protected virtual Expr VisitINDIR(ExprBinOp pExpr) 538protected virtual Expr VisitSTRINGEQ(ExprBinOp pExpr) 544protected virtual Expr VisitDELEGATEEQ(ExprBinOp pExpr) 550protected virtual Expr VisitDELEGATEADD(ExprBinOp pExpr) 556protected virtual Expr VisitLT(ExprBinOp pExpr) 562protected virtual Expr VisitMUL(ExprBinOp pExpr) 568protected virtual Expr VisitBITXOR(ExprBinOp pExpr) 574protected virtual Expr VisitRSHIFT(ExprBinOp pExpr) 580protected virtual Expr VisitLOGOR(ExprBinOp pExpr) 586protected virtual Expr VisitSTRINGNE(ExprBinOp pExpr) 592protected virtual Expr VisitDELEGATENE(ExprBinOp pExpr) 598protected virtual Expr VisitGT(ExprBinOp pExpr) 604protected virtual Expr VisitMOD(ExprBinOp pExpr) 610protected virtual Expr VisitSWAP(ExprBinOp pExpr) 616protected virtual Expr VisitDELEGATESUB(ExprBinOp pExpr) 622protected virtual Expr VisitTRUE(ExprUnaryOp pExpr) 628protected virtual Expr VisitINC(ExprUnaryOp pExpr) 634protected virtual Expr VisitLOGNOT(ExprUnaryOp pExpr) 640protected virtual Expr VisitNEG(ExprUnaryOp pExpr) 646protected virtual Expr VisitBITNOT(ExprUnaryOp pExpr) 652protected virtual Expr VisitADDR(ExprUnaryOp pExpr) 658protected virtual Expr VisitDECIMALNEG(ExprUnaryOp pExpr) 664protected virtual Expr VisitDECIMALDEC(ExprUnaryOp pExpr) 670protected virtual Expr VisitFALSE(ExprUnaryOp pExpr) 676protected virtual Expr VisitDEC(ExprUnaryOp pExpr) 682protected virtual Expr VisitUPLUS(ExprUnaryOp pExpr) 688protected virtual Expr VisitDECIMALINC(ExprUnaryOp pExpr)
Microsoft\CSharp\RuntimeBinder\SymbolTable.cs (1)
93Expr callingObject,