477 references to PREDEFMETH
Microsoft.CSharp (477)
Microsoft\CSharp\RuntimeBinder\ExpressionTreeCallRewriter.cs (251)
58
Debug.Assert(((ExprCall)binOp.OptionalRightChild).PredefinedMethod ==
PREDEFMETH
.PM_EXPRESSION_LAMBDA);
77
Debug.Assert(call?.PredefinedMethod ==
PREDEFMETH
.PM_EXPRESSION_PARAMETER);
91
if (pExpr.PredefinedMethod ==
PREDEFMETH
.PM_COUNT)
99
case
PREDEFMETH
.PM_EXPRESSION_LAMBDA:
102
case
PREDEFMETH
.PM_EXPRESSION_CALL:
106
case
PREDEFMETH
.PM_EXPRESSION_ARRAYINDEX:
107
case
PREDEFMETH
.PM_EXPRESSION_ARRAYINDEX2:
111
case
PREDEFMETH
.PM_EXPRESSION_CONVERT:
112
case
PREDEFMETH
.PM_EXPRESSION_CONVERT_USER_DEFINED:
113
case
PREDEFMETH
.PM_EXPRESSION_CONVERTCHECKED:
114
case
PREDEFMETH
.PM_EXPRESSION_CONVERTCHECKED_USER_DEFINED:
118
case
PREDEFMETH
.PM_EXPRESSION_PROPERTY:
122
case
PREDEFMETH
.PM_EXPRESSION_FIELD:
126
case
PREDEFMETH
.PM_EXPRESSION_INVOKE:
130
case
PREDEFMETH
.PM_EXPRESSION_NEW:
134
case
PREDEFMETH
.PM_EXPRESSION_ADD:
135
case
PREDEFMETH
.PM_EXPRESSION_AND:
136
case
PREDEFMETH
.PM_EXPRESSION_DIVIDE:
137
case
PREDEFMETH
.PM_EXPRESSION_EQUAL:
138
case
PREDEFMETH
.PM_EXPRESSION_EXCLUSIVEOR:
139
case
PREDEFMETH
.PM_EXPRESSION_GREATERTHAN:
140
case
PREDEFMETH
.PM_EXPRESSION_GREATERTHANOREQUAL:
141
case
PREDEFMETH
.PM_EXPRESSION_LEFTSHIFT:
142
case
PREDEFMETH
.PM_EXPRESSION_LESSTHAN:
143
case
PREDEFMETH
.PM_EXPRESSION_LESSTHANOREQUAL:
144
case
PREDEFMETH
.PM_EXPRESSION_MODULO:
145
case
PREDEFMETH
.PM_EXPRESSION_MULTIPLY:
146
case
PREDEFMETH
.PM_EXPRESSION_NOTEQUAL:
147
case
PREDEFMETH
.PM_EXPRESSION_OR:
148
case
PREDEFMETH
.PM_EXPRESSION_RIGHTSHIFT:
149
case
PREDEFMETH
.PM_EXPRESSION_SUBTRACT:
150
case
PREDEFMETH
.PM_EXPRESSION_ORELSE:
151
case
PREDEFMETH
.PM_EXPRESSION_ANDALSO:
153
case
PREDEFMETH
.PM_EXPRESSION_ADDCHECKED:
154
case
PREDEFMETH
.PM_EXPRESSION_MULTIPLYCHECKED:
155
case
PREDEFMETH
.PM_EXPRESSION_SUBTRACTCHECKED:
159
case
PREDEFMETH
.PM_EXPRESSION_ADD_USER_DEFINED:
160
case
PREDEFMETH
.PM_EXPRESSION_AND_USER_DEFINED:
161
case
PREDEFMETH
.PM_EXPRESSION_DIVIDE_USER_DEFINED:
162
case
PREDEFMETH
.PM_EXPRESSION_EQUAL_USER_DEFINED:
163
case
PREDEFMETH
.PM_EXPRESSION_EXCLUSIVEOR_USER_DEFINED:
164
case
PREDEFMETH
.PM_EXPRESSION_GREATERTHAN_USER_DEFINED:
165
case
PREDEFMETH
.PM_EXPRESSION_GREATERTHANOREQUAL_USER_DEFINED:
166
case
PREDEFMETH
.PM_EXPRESSION_LEFTSHIFT_USER_DEFINED:
167
case
PREDEFMETH
.PM_EXPRESSION_LESSTHAN_USER_DEFINED:
168
case
PREDEFMETH
.PM_EXPRESSION_LESSTHANOREQUAL_USER_DEFINED:
169
case
PREDEFMETH
.PM_EXPRESSION_MODULO_USER_DEFINED:
170
case
PREDEFMETH
.PM_EXPRESSION_MULTIPLY_USER_DEFINED:
171
case
PREDEFMETH
.PM_EXPRESSION_NOTEQUAL_USER_DEFINED:
172
case
PREDEFMETH
.PM_EXPRESSION_OR_USER_DEFINED:
173
case
PREDEFMETH
.PM_EXPRESSION_RIGHTSHIFT_USER_DEFINED:
174
case
PREDEFMETH
.PM_EXPRESSION_SUBTRACT_USER_DEFINED:
175
case
PREDEFMETH
.PM_EXPRESSION_ORELSE_USER_DEFINED:
176
case
PREDEFMETH
.PM_EXPRESSION_ANDALSO_USER_DEFINED:
178
case
PREDEFMETH
.PM_EXPRESSION_ADDCHECKED_USER_DEFINED:
179
case
PREDEFMETH
.PM_EXPRESSION_MULTIPLYCHECKED_USER_DEFINED:
180
case
PREDEFMETH
.PM_EXPRESSION_SUBTRACTCHECKED_USER_DEFINED:
184
case
PREDEFMETH
.PM_EXPRESSION_NEGATE:
185
case
PREDEFMETH
.PM_EXPRESSION_NOT:
186
case
PREDEFMETH
.PM_EXPRESSION_NEGATECHECKED:
190
case
PREDEFMETH
.PM_EXPRESSION_UNARYPLUS_USER_DEFINED:
191
case
PREDEFMETH
.PM_EXPRESSION_NEGATE_USER_DEFINED:
192
case
PREDEFMETH
.PM_EXPRESSION_NOT_USER_DEFINED:
193
case
PREDEFMETH
.PM_EXPRESSION_NEGATECHECKED_USER_DEFINED:
197
case
PREDEFMETH
.PM_EXPRESSION_CONSTANT_OBJECT_TYPE:
201
case
PREDEFMETH
.PM_EXPRESSION_ASSIGN:
300
if (pExpr.PredefinedMethod ==
PREDEFMETH
.PM_EXPRESSION_ARRAYINDEX)
306
Debug.Assert(pExpr.PredefinedMethod ==
PREDEFMETH
.PM_EXPRESSION_ARRAYINDEX2);
317
PREDEFMETH
pm = pExpr.PredefinedMethod;
321
if (pm ==
PREDEFMETH
.PM_EXPRESSION_CONVERT_USER_DEFINED ||
322
pm ==
PREDEFMETH
.PM_EXPRESSION_CONVERTCHECKED_USER_DEFINED)
343
if (pm ==
PREDEFMETH
.PM_EXPRESSION_CONVERT_USER_DEFINED)
351
Debug.Assert(pm ==
PREDEFMETH
.PM_EXPRESSION_CONVERT ||
352
pm ==
PREDEFMETH
.PM_EXPRESSION_CONVERTCHECKED);
374
if (pm ==
PREDEFMETH
.PM_EXPRESSION_CONVERT)
507
case
PREDEFMETH
.PM_EXPRESSION_ADD:
509
case
PREDEFMETH
.PM_EXPRESSION_AND:
511
case
PREDEFMETH
.PM_EXPRESSION_DIVIDE:
513
case
PREDEFMETH
.PM_EXPRESSION_EQUAL:
515
case
PREDEFMETH
.PM_EXPRESSION_EXCLUSIVEOR:
517
case
PREDEFMETH
.PM_EXPRESSION_GREATERTHAN:
519
case
PREDEFMETH
.PM_EXPRESSION_GREATERTHANOREQUAL:
521
case
PREDEFMETH
.PM_EXPRESSION_LEFTSHIFT:
523
case
PREDEFMETH
.PM_EXPRESSION_LESSTHAN:
525
case
PREDEFMETH
.PM_EXPRESSION_LESSTHANOREQUAL:
527
case
PREDEFMETH
.PM_EXPRESSION_MODULO:
529
case
PREDEFMETH
.PM_EXPRESSION_MULTIPLY:
531
case
PREDEFMETH
.PM_EXPRESSION_NOTEQUAL:
533
case
PREDEFMETH
.PM_EXPRESSION_OR:
535
case
PREDEFMETH
.PM_EXPRESSION_RIGHTSHIFT:
537
case
PREDEFMETH
.PM_EXPRESSION_SUBTRACT:
539
case
PREDEFMETH
.PM_EXPRESSION_ORELSE:
541
case
PREDEFMETH
.PM_EXPRESSION_ANDALSO:
545
case
PREDEFMETH
.PM_EXPRESSION_ADDCHECKED:
547
case
PREDEFMETH
.PM_EXPRESSION_MULTIPLYCHECKED:
549
case
PREDEFMETH
.PM_EXPRESSION_SUBTRACTCHECKED:
584
case
PREDEFMETH
.PM_EXPRESSION_ADD_USER_DEFINED:
586
case
PREDEFMETH
.PM_EXPRESSION_AND_USER_DEFINED:
588
case
PREDEFMETH
.PM_EXPRESSION_DIVIDE_USER_DEFINED:
590
case
PREDEFMETH
.PM_EXPRESSION_EQUAL_USER_DEFINED:
592
case
PREDEFMETH
.PM_EXPRESSION_EXCLUSIVEOR_USER_DEFINED:
594
case
PREDEFMETH
.PM_EXPRESSION_GREATERTHAN_USER_DEFINED:
596
case
PREDEFMETH
.PM_EXPRESSION_GREATERTHANOREQUAL_USER_DEFINED:
598
case
PREDEFMETH
.PM_EXPRESSION_LEFTSHIFT_USER_DEFINED:
600
case
PREDEFMETH
.PM_EXPRESSION_LESSTHAN_USER_DEFINED:
602
case
PREDEFMETH
.PM_EXPRESSION_LESSTHANOREQUAL_USER_DEFINED:
604
case
PREDEFMETH
.PM_EXPRESSION_MODULO_USER_DEFINED:
606
case
PREDEFMETH
.PM_EXPRESSION_MULTIPLY_USER_DEFINED:
608
case
PREDEFMETH
.PM_EXPRESSION_NOTEQUAL_USER_DEFINED:
610
case
PREDEFMETH
.PM_EXPRESSION_OR_USER_DEFINED:
612
case
PREDEFMETH
.PM_EXPRESSION_RIGHTSHIFT_USER_DEFINED:
614
case
PREDEFMETH
.PM_EXPRESSION_SUBTRACT_USER_DEFINED:
616
case
PREDEFMETH
.PM_EXPRESSION_ORELSE_USER_DEFINED:
618
case
PREDEFMETH
.PM_EXPRESSION_ANDALSO_USER_DEFINED:
622
case
PREDEFMETH
.PM_EXPRESSION_ADDCHECKED_USER_DEFINED:
624
case
PREDEFMETH
.PM_EXPRESSION_MULTIPLYCHECKED_USER_DEFINED:
626
case
PREDEFMETH
.PM_EXPRESSION_SUBTRACTCHECKED_USER_DEFINED:
640
PREDEFMETH
pm = pExpr.PredefinedMethod;
645
case
PREDEFMETH
.PM_EXPRESSION_NOT:
648
case
PREDEFMETH
.PM_EXPRESSION_NEGATE:
651
case
PREDEFMETH
.PM_EXPRESSION_NEGATECHECKED:
665
PREDEFMETH
pm = pExpr.PredefinedMethod;
672
case
PREDEFMETH
.PM_EXPRESSION_NOT_USER_DEFINED:
675
case
PREDEFMETH
.PM_EXPRESSION_NEGATE_USER_DEFINED:
678
case
PREDEFMETH
.PM_EXPRESSION_UNARYPLUS_USER_DEFINED:
681
case
PREDEFMETH
.PM_EXPRESSION_NEGATECHECKED_USER_DEFINED:
711
PREDEFMETH
pm = call.PredefinedMethod;
712
Debug.Assert(pm ==
PREDEFMETH
.PM_EXPRESSION_CONVERT ||
713
pm ==
PREDEFMETH
.PM_EXPRESSION_CONVERT_USER_DEFINED ||
714
pm ==
PREDEFMETH
.PM_EXPRESSION_NEWARRAYINIT ||
715
pm ==
PREDEFMETH
.PM_EXPRESSION_CALL ||
716
pm ==
PREDEFMETH
.PM_EXPRESSION_PROPERTY ||
717
pm ==
PREDEFMETH
.PM_EXPRESSION_FIELD ||
718
pm ==
PREDEFMETH
.PM_EXPRESSION_ARRAYINDEX ||
719
pm ==
PREDEFMETH
.PM_EXPRESSION_ARRAYINDEX2 ||
720
pm ==
PREDEFMETH
.PM_EXPRESSION_CONSTANT_OBJECT_TYPE ||
721
pm ==
PREDEFMETH
.PM_EXPRESSION_NEW ||
724
pm ==
PREDEFMETH
.PM_EXPRESSION_ASSIGN ||
725
pm ==
PREDEFMETH
.PM_EXPRESSION_ADD ||
726
pm ==
PREDEFMETH
.PM_EXPRESSION_AND ||
727
pm ==
PREDEFMETH
.PM_EXPRESSION_DIVIDE ||
728
pm ==
PREDEFMETH
.PM_EXPRESSION_EQUAL ||
729
pm ==
PREDEFMETH
.PM_EXPRESSION_EXCLUSIVEOR ||
730
pm ==
PREDEFMETH
.PM_EXPRESSION_GREATERTHAN ||
731
pm ==
PREDEFMETH
.PM_EXPRESSION_GREATERTHANOREQUAL ||
732
pm ==
PREDEFMETH
.PM_EXPRESSION_LEFTSHIFT ||
733
pm ==
PREDEFMETH
.PM_EXPRESSION_LESSTHAN ||
734
pm ==
PREDEFMETH
.PM_EXPRESSION_LESSTHANOREQUAL ||
735
pm ==
PREDEFMETH
.PM_EXPRESSION_MODULO ||
736
pm ==
PREDEFMETH
.PM_EXPRESSION_MULTIPLY ||
737
pm ==
PREDEFMETH
.PM_EXPRESSION_NOTEQUAL ||
738
pm ==
PREDEFMETH
.PM_EXPRESSION_OR ||
739
pm ==
PREDEFMETH
.PM_EXPRESSION_RIGHTSHIFT ||
740
pm ==
PREDEFMETH
.PM_EXPRESSION_SUBTRACT ||
741
pm ==
PREDEFMETH
.PM_EXPRESSION_ORELSE ||
742
pm ==
PREDEFMETH
.PM_EXPRESSION_ANDALSO ||
743
pm ==
PREDEFMETH
.PM_EXPRESSION_ADD_USER_DEFINED ||
744
pm ==
PREDEFMETH
.PM_EXPRESSION_AND_USER_DEFINED ||
745
pm ==
PREDEFMETH
.PM_EXPRESSION_DIVIDE_USER_DEFINED ||
746
pm ==
PREDEFMETH
.PM_EXPRESSION_EQUAL_USER_DEFINED ||
747
pm ==
PREDEFMETH
.PM_EXPRESSION_EXCLUSIVEOR_USER_DEFINED ||
748
pm ==
PREDEFMETH
.PM_EXPRESSION_GREATERTHAN_USER_DEFINED ||
749
pm ==
PREDEFMETH
.PM_EXPRESSION_GREATERTHANOREQUAL_USER_DEFINED ||
750
pm ==
PREDEFMETH
.PM_EXPRESSION_LEFTSHIFT_USER_DEFINED ||
751
pm ==
PREDEFMETH
.PM_EXPRESSION_LESSTHAN_USER_DEFINED ||
752
pm ==
PREDEFMETH
.PM_EXPRESSION_LESSTHANOREQUAL_USER_DEFINED ||
753
pm ==
PREDEFMETH
.PM_EXPRESSION_MODULO_USER_DEFINED ||
754
pm ==
PREDEFMETH
.PM_EXPRESSION_MULTIPLY_USER_DEFINED ||
755
pm ==
PREDEFMETH
.PM_EXPRESSION_NOTEQUAL_USER_DEFINED ||
756
pm ==
PREDEFMETH
.PM_EXPRESSION_OR_USER_DEFINED ||
757
pm ==
PREDEFMETH
.PM_EXPRESSION_RIGHTSHIFT_USER_DEFINED ||
758
pm ==
PREDEFMETH
.PM_EXPRESSION_SUBTRACT_USER_DEFINED ||
759
pm ==
PREDEFMETH
.PM_EXPRESSION_ORELSE_USER_DEFINED ||
760
pm ==
PREDEFMETH
.PM_EXPRESSION_ANDALSO_USER_DEFINED ||
763
pm ==
PREDEFMETH
.PM_EXPRESSION_ADDCHECKED ||
764
pm ==
PREDEFMETH
.PM_EXPRESSION_MULTIPLYCHECKED ||
765
pm ==
PREDEFMETH
.PM_EXPRESSION_SUBTRACTCHECKED ||
766
pm ==
PREDEFMETH
.PM_EXPRESSION_ADDCHECKED_USER_DEFINED ||
767
pm ==
PREDEFMETH
.PM_EXPRESSION_MULTIPLYCHECKED_USER_DEFINED ||
768
pm ==
PREDEFMETH
.PM_EXPRESSION_SUBTRACTCHECKED_USER_DEFINED ||
771
pm ==
PREDEFMETH
.PM_EXPRESSION_NOT ||
772
pm ==
PREDEFMETH
.PM_EXPRESSION_NEGATE ||
773
pm ==
PREDEFMETH
.PM_EXPRESSION_NOT_USER_DEFINED ||
774
pm ==
PREDEFMETH
.PM_EXPRESSION_NEGATE_USER_DEFINED ||
775
pm ==
PREDEFMETH
.PM_EXPRESSION_UNARYPLUS_USER_DEFINED ||
778
pm ==
PREDEFMETH
.PM_EXPRESSION_NEGATECHECKED ||
779
pm ==
PREDEFMETH
.PM_EXPRESSION_CONVERTCHECKED ||
780
pm ==
PREDEFMETH
.PM_EXPRESSION_NEGATECHECKED_USER_DEFINED ||
781
pm ==
PREDEFMETH
.PM_EXPRESSION_CONVERTCHECKED_USER_DEFINED
786
case
PREDEFMETH
.PM_EXPRESSION_CALL:
789
case
PREDEFMETH
.PM_EXPRESSION_CONVERT:
790
case
PREDEFMETH
.PM_EXPRESSION_CONVERT_USER_DEFINED:
791
case
PREDEFMETH
.PM_EXPRESSION_CONVERTCHECKED:
792
case
PREDEFMETH
.PM_EXPRESSION_CONVERTCHECKED_USER_DEFINED:
795
case
PREDEFMETH
.PM_EXPRESSION_NEWARRAYINIT:
802
case
PREDEFMETH
.PM_EXPRESSION_ARRAYINDEX:
803
case
PREDEFMETH
.PM_EXPRESSION_ARRAYINDEX2:
806
case
PREDEFMETH
.PM_EXPRESSION_NEW:
809
case
PREDEFMETH
.PM_EXPRESSION_PROPERTY:
812
case
PREDEFMETH
.PM_EXPRESSION_FIELD:
815
case
PREDEFMETH
.PM_EXPRESSION_CONSTANT_OBJECT_TYPE:
818
case
PREDEFMETH
.PM_EXPRESSION_ASSIGN:
821
case
PREDEFMETH
.PM_EXPRESSION_ADD:
822
case
PREDEFMETH
.PM_EXPRESSION_AND:
823
case
PREDEFMETH
.PM_EXPRESSION_DIVIDE:
824
case
PREDEFMETH
.PM_EXPRESSION_EQUAL:
825
case
PREDEFMETH
.PM_EXPRESSION_EXCLUSIVEOR:
826
case
PREDEFMETH
.PM_EXPRESSION_GREATERTHAN:
827
case
PREDEFMETH
.PM_EXPRESSION_GREATERTHANOREQUAL:
828
case
PREDEFMETH
.PM_EXPRESSION_LEFTSHIFT:
829
case
PREDEFMETH
.PM_EXPRESSION_LESSTHAN:
830
case
PREDEFMETH
.PM_EXPRESSION_LESSTHANOREQUAL:
831
case
PREDEFMETH
.PM_EXPRESSION_MODULO:
832
case
PREDEFMETH
.PM_EXPRESSION_MULTIPLY:
833
case
PREDEFMETH
.PM_EXPRESSION_NOTEQUAL:
834
case
PREDEFMETH
.PM_EXPRESSION_OR:
835
case
PREDEFMETH
.PM_EXPRESSION_RIGHTSHIFT:
836
case
PREDEFMETH
.PM_EXPRESSION_SUBTRACT:
837
case
PREDEFMETH
.PM_EXPRESSION_ORELSE:
838
case
PREDEFMETH
.PM_EXPRESSION_ANDALSO:
840
case
PREDEFMETH
.PM_EXPRESSION_ADDCHECKED:
841
case
PREDEFMETH
.PM_EXPRESSION_MULTIPLYCHECKED:
842
case
PREDEFMETH
.PM_EXPRESSION_SUBTRACTCHECKED:
845
case
PREDEFMETH
.PM_EXPRESSION_ADD_USER_DEFINED:
846
case
PREDEFMETH
.PM_EXPRESSION_AND_USER_DEFINED:
847
case
PREDEFMETH
.PM_EXPRESSION_DIVIDE_USER_DEFINED:
848
case
PREDEFMETH
.PM_EXPRESSION_EQUAL_USER_DEFINED:
849
case
PREDEFMETH
.PM_EXPRESSION_EXCLUSIVEOR_USER_DEFINED:
850
case
PREDEFMETH
.PM_EXPRESSION_GREATERTHAN_USER_DEFINED:
851
case
PREDEFMETH
.PM_EXPRESSION_GREATERTHANOREQUAL_USER_DEFINED:
852
case
PREDEFMETH
.PM_EXPRESSION_LEFTSHIFT_USER_DEFINED:
853
case
PREDEFMETH
.PM_EXPRESSION_LESSTHAN_USER_DEFINED:
854
case
PREDEFMETH
.PM_EXPRESSION_LESSTHANOREQUAL_USER_DEFINED:
855
case
PREDEFMETH
.PM_EXPRESSION_MODULO_USER_DEFINED:
856
case
PREDEFMETH
.PM_EXPRESSION_MULTIPLY_USER_DEFINED:
857
case
PREDEFMETH
.PM_EXPRESSION_NOTEQUAL_USER_DEFINED:
858
case
PREDEFMETH
.PM_EXPRESSION_OR_USER_DEFINED:
859
case
PREDEFMETH
.PM_EXPRESSION_RIGHTSHIFT_USER_DEFINED:
860
case
PREDEFMETH
.PM_EXPRESSION_SUBTRACT_USER_DEFINED:
861
case
PREDEFMETH
.PM_EXPRESSION_ORELSE_USER_DEFINED:
862
case
PREDEFMETH
.PM_EXPRESSION_ANDALSO_USER_DEFINED:
864
case
PREDEFMETH
.PM_EXPRESSION_ADDCHECKED_USER_DEFINED:
865
case
PREDEFMETH
.PM_EXPRESSION_MULTIPLYCHECKED_USER_DEFINED:
866
case
PREDEFMETH
.PM_EXPRESSION_SUBTRACTCHECKED_USER_DEFINED:
869
case
PREDEFMETH
.PM_EXPRESSION_NOT:
870
case
PREDEFMETH
.PM_EXPRESSION_NEGATE:
871
case
PREDEFMETH
.PM_EXPRESSION_NEGATECHECKED:
874
case
PREDEFMETH
.PM_EXPRESSION_NOT_USER_DEFINED:
875
case
PREDEFMETH
.PM_EXPRESSION_NEGATE_USER_DEFINED:
876
case
PREDEFMETH
.PM_EXPRESSION_UNARYPLUS_USER_DEFINED:
877
case
PREDEFMETH
.PM_EXPRESSION_NEGATECHECKED_USER_DEFINED:
Microsoft\CSharp\RuntimeBinder\Semantics\Nullable.cs (1)
69
MethodSymbol meth = PredefinedMembers.GetMethod(
PREDEFMETH
.PM_G_OPTIONAL_CTOR);
Microsoft\CSharp\RuntimeBinder\Semantics\Operators.cs (16)
1646
PREDEFMETH
predefMeth;
1650
predefMeth =
PREDEFMETH
.PM_DECIMAL_OPINCREMENT;
1655
predefMeth =
PREDEFMETH
.PM_DECIMAL_OPDECREMENT;
1815
PREDEFMETH
predefMeth =
PREDEFMETH
.PM_DECIMAL_OPUNARYMINUS;
1943
PREDEFMETH
predefMeth = ek == ExpressionKind.Eq ?
PREDEFMETH
.PM_STRING_OPEQUALITY :
PREDEFMETH
.PM_STRING_OPINEQUALITY;
1974
PREDEFMETH
predefMeth = (
PREDEFMETH
)0;
1979
predefMeth =
PREDEFMETH
.PM_DELEGATE_COMBINE;
1985
predefMeth =
PREDEFMETH
.PM_DELEGATE_REMOVE;
1991
predefMeth =
PREDEFMETH
.PM_DELEGATE_OPEQUALITY;
1997
predefMeth =
PREDEFMETH
.PM_DELEGATE_OPINEQUALITY;
2722
private static ExprBinOp CreateBinopForPredefMethodCall(ExpressionKind ek,
PREDEFMETH
predefMeth, CType RetType, Expr arg1, Expr arg2)
2737
private static ExprUnaryOp CreateUnaryOpForPredefMethodCall(ExpressionKind ek,
PREDEFMETH
predefMeth, CType pRetType, Expr pArg)
Microsoft\CSharp\RuntimeBinder\Semantics\PredefinedMembers.cs (100)
158
public
PREDEFMETH
method;
166
public PredefinedMethodInfo(
PREDEFMETH
method, PredefinedType type, PredefinedName name, MethodCallingConventionEnum callingConvention, ACCESS access, int cTypeVars, int[] signature)
184
public
PREDEFMETH
getter;
186
public PredefinedPropertyInfo(PREDEFPROP property, PredefinedName name,
PREDEFMETH
getter)
198
private static readonly MethodSymbol[] _methods = new MethodSymbol[(int)
PREDEFMETH
.PM_COUNT];
212
PREDEFMETH
propertyGetter)
215
Debug.Assert(propertyGetter >= 0 && propertyGetter <
PREDEFMETH
.PM_COUNT);
294
for (int i = 0; i < (int)
PREDEFMETH
.PM_COUNT; i++)
296
Debug.Assert((int)GetMethInfo((
PREDEFMETH
)i).method == i);
313
public static MethodSymbol GetMethod(
PREDEFMETH
method)
315
Debug.Assert(method >= 0 && method <
PREDEFMETH
.PM_COUNT);
376
private static MethodSymbol LoadMethod(
PREDEFMETH
method)
389
private static
PREDEFMETH
GetPropGetter(PREDEFPROP property)
391
PREDEFMETH
result = GetPropInfo(property).getter;
394
Debug.Assert(result >= 0 && result <
PREDEFMETH
.PM_COUNT);
407
new PredefinedPropertyInfo(PREDEFPROP.PP_G_OPTIONAL_VALUE, PredefinedName.PN_CAP_VALUE,
PREDEFMETH
.PM_G_OPTIONAL_GETVALUE)
418
private static PredefinedMethodInfo GetMethInfo(
PREDEFMETH
method)
420
Debug.Assert(method >= 0 && method <
PREDEFMETH
.PM_COUNT);
428
private static readonly PredefinedMethodInfo[] s_predefinedMethods = new PredefinedMethodInfo[(int)
PREDEFMETH
.PM_COUNT] {
429
new PredefinedMethodInfo(
PREDEFMETH
.PM_DECIMAL_OPDECREMENT, PredefinedType.PT_DECIMAL, PredefinedName.PN_OPDECREMENT, MethodCallingConventionEnum.Static, ACCESS.ACC_PUBLIC, 0, new int[] { (int)PredefinedType.PT_DECIMAL, 1, (int)PredefinedType.PT_DECIMAL }),
430
new PredefinedMethodInfo(
PREDEFMETH
.PM_DECIMAL_OPINCREMENT, PredefinedType.PT_DECIMAL, PredefinedName.PN_OPINCREMENT, MethodCallingConventionEnum.Static, ACCESS.ACC_PUBLIC, 0, new int[] { (int)PredefinedType.PT_DECIMAL, 1, (int)PredefinedType.PT_DECIMAL }),
431
new PredefinedMethodInfo(
PREDEFMETH
.PM_DECIMAL_OPUNARYMINUS, PredefinedType.PT_DECIMAL, PredefinedName.PN_OPUNARYMINUS, MethodCallingConventionEnum.Static, ACCESS.ACC_PUBLIC, 0, new int[] { (int)PredefinedType.PT_DECIMAL, 1, (int)PredefinedType.PT_DECIMAL }),
432
new PredefinedMethodInfo(
PREDEFMETH
.PM_DELEGATE_COMBINE, PredefinedType.PT_DELEGATE, PredefinedName.PN_COMBINE, MethodCallingConventionEnum.Static, ACCESS.ACC_PUBLIC, 0, new int[] { (int)PredefinedType.PT_DELEGATE, 2, (int)PredefinedType.PT_DELEGATE, (int)PredefinedType.PT_DELEGATE }),
433
new PredefinedMethodInfo(
PREDEFMETH
.PM_DELEGATE_OPEQUALITY, PredefinedType.PT_DELEGATE, PredefinedName.PN_OPEQUALITY, MethodCallingConventionEnum.Static, ACCESS.ACC_PUBLIC, 0, new int[] { (int)PredefinedType.PT_BOOL, 2, (int)PredefinedType.PT_DELEGATE, (int)PredefinedType.PT_DELEGATE }),
434
new PredefinedMethodInfo(
PREDEFMETH
.PM_DELEGATE_OPINEQUALITY, PredefinedType.PT_DELEGATE, PredefinedName.PN_OPINEQUALITY, MethodCallingConventionEnum.Static, ACCESS.ACC_PUBLIC, 0, new int[] { (int)PredefinedType.PT_BOOL, 2, (int)PredefinedType.PT_DELEGATE, (int)PredefinedType.PT_DELEGATE }),
435
new PredefinedMethodInfo(
PREDEFMETH
.PM_DELEGATE_REMOVE, PredefinedType.PT_DELEGATE, PredefinedName.PN_REMOVE, MethodCallingConventionEnum.Static, ACCESS.ACC_PUBLIC, 0, new int[] { (int)PredefinedType.PT_DELEGATE, 2, (int)PredefinedType.PT_DELEGATE, (int)PredefinedType.PT_DELEGATE }),
436
new PredefinedMethodInfo(
PREDEFMETH
.PM_EXPRESSION_ADD, PredefinedType.PT_EXPRESSION, PredefinedName.PN_ADD, MethodCallingConventionEnum.Static, ACCESS.ACC_PUBLIC, 0, new int[] { (int)PredefinedType.PT_BINARYEXPRESSION, 2, (int)PredefinedType.PT_EXPRESSION, (int)PredefinedType.PT_EXPRESSION }),
437
new PredefinedMethodInfo(
PREDEFMETH
.PM_EXPRESSION_ADD_USER_DEFINED, PredefinedType.PT_EXPRESSION, PredefinedName.PN_ADD, MethodCallingConventionEnum.Static, ACCESS.ACC_PUBLIC, 0, new int[] { (int)PredefinedType.PT_BINARYEXPRESSION, 3, (int)PredefinedType.PT_EXPRESSION, (int)PredefinedType.PT_EXPRESSION, (int)PredefinedType.PT_METHODINFO }),
438
new PredefinedMethodInfo(
PREDEFMETH
.PM_EXPRESSION_ADDCHECKED, PredefinedType.PT_EXPRESSION, PredefinedName.PN_ADDCHECKED, MethodCallingConventionEnum.Static, ACCESS.ACC_PUBLIC, 0, new int[] { (int)PredefinedType.PT_BINARYEXPRESSION, 2, (int)PredefinedType.PT_EXPRESSION, (int)PredefinedType.PT_EXPRESSION }),
439
new PredefinedMethodInfo(
PREDEFMETH
.PM_EXPRESSION_ADDCHECKED_USER_DEFINED, PredefinedType.PT_EXPRESSION, PredefinedName.PN_ADDCHECKED, MethodCallingConventionEnum.Static, ACCESS.ACC_PUBLIC, 0, new int[] { (int)PredefinedType.PT_BINARYEXPRESSION, 3, (int)PredefinedType.PT_EXPRESSION, (int)PredefinedType.PT_EXPRESSION, (int)PredefinedType.PT_METHODINFO }),
440
new PredefinedMethodInfo(
PREDEFMETH
.PM_EXPRESSION_AND, PredefinedType.PT_EXPRESSION, PredefinedName.PN_AND, MethodCallingConventionEnum.Static, ACCESS.ACC_PUBLIC, 0, new int[] { (int)PredefinedType.PT_BINARYEXPRESSION, 2, (int)PredefinedType.PT_EXPRESSION, (int)PredefinedType.PT_EXPRESSION }),
441
new PredefinedMethodInfo(
PREDEFMETH
.PM_EXPRESSION_AND_USER_DEFINED, PredefinedType.PT_EXPRESSION, PredefinedName.PN_AND, MethodCallingConventionEnum.Static, ACCESS.ACC_PUBLIC, 0, new int[] { (int)PredefinedType.PT_BINARYEXPRESSION, 3, (int)PredefinedType.PT_EXPRESSION, (int)PredefinedType.PT_EXPRESSION, (int)PredefinedType.PT_METHODINFO }),
442
new PredefinedMethodInfo(
PREDEFMETH
.PM_EXPRESSION_ANDALSO, PredefinedType.PT_EXPRESSION, PredefinedName.PN_ANDALSO, MethodCallingConventionEnum.Static, ACCESS.ACC_PUBLIC, 0, new int[] { (int)PredefinedType.PT_BINARYEXPRESSION, 2, (int)PredefinedType.PT_EXPRESSION, (int)PredefinedType.PT_EXPRESSION }),
443
new PredefinedMethodInfo(
PREDEFMETH
.PM_EXPRESSION_ANDALSO_USER_DEFINED, PredefinedType.PT_EXPRESSION, PredefinedName.PN_ANDALSO, MethodCallingConventionEnum.Static, ACCESS.ACC_PUBLIC, 0, new int[] { (int)PredefinedType.PT_BINARYEXPRESSION, 3, (int)PredefinedType.PT_EXPRESSION, (int)PredefinedType.PT_EXPRESSION, (int)PredefinedType.PT_METHODINFO }),
444
new PredefinedMethodInfo(
PREDEFMETH
.PM_EXPRESSION_ARRAYINDEX, PredefinedType.PT_EXPRESSION, PredefinedName.PN_ARRAYINDEX, MethodCallingConventionEnum.Static, ACCESS.ACC_PUBLIC, 0, new int[] { (int)PredefinedType.PT_BINARYEXPRESSION, 2, (int)PredefinedType.PT_EXPRESSION, (int)PredefinedType.PT_EXPRESSION }),
445
new PredefinedMethodInfo(
PREDEFMETH
.PM_EXPRESSION_ARRAYINDEX2, PredefinedType.PT_EXPRESSION, PredefinedName.PN_ARRAYINDEX, MethodCallingConventionEnum.Static, ACCESS.ACC_PUBLIC, 0, new int[] { (int)PredefinedType.PT_METHODCALLEXPRESSION, 2, (int)PredefinedType.PT_EXPRESSION, (int)MethodSignatureEnum.SIG_SZ_ARRAY, (int)PredefinedType.PT_EXPRESSION }),
446
new PredefinedMethodInfo(
PREDEFMETH
.PM_EXPRESSION_ASSIGN, PredefinedType.PT_EXPRESSION, PredefinedName.PN_ASSIGN, MethodCallingConventionEnum.Static, ACCESS.ACC_PUBLIC, 0, new int[] { (int)PredefinedType.PT_BINARYEXPRESSION, 2, (int)PredefinedType.PT_EXPRESSION, (int)PredefinedType.PT_EXPRESSION }),
447
new PredefinedMethodInfo(
PREDEFMETH
.PM_EXPRESSION_CONSTANT_OBJECT_TYPE, PredefinedType.PT_EXPRESSION, PredefinedName.PN_CONSTANT, MethodCallingConventionEnum.Static, ACCESS.ACC_PUBLIC, 0, new int[] { (int)PredefinedType.PT_CONSTANTEXPRESSION, 2, (int)PredefinedType.PT_OBJECT, (int)PredefinedType.PT_TYPE }),
448
new PredefinedMethodInfo(
PREDEFMETH
.PM_EXPRESSION_CONVERT, PredefinedType.PT_EXPRESSION, PredefinedName.PN_CONVERT, MethodCallingConventionEnum.Static, ACCESS.ACC_PUBLIC, 0, new int[] { (int)PredefinedType.PT_UNARYEXPRESSION, 2, (int)PredefinedType.PT_EXPRESSION, (int)PredefinedType.PT_TYPE }),
449
new PredefinedMethodInfo(
PREDEFMETH
.PM_EXPRESSION_CONVERT_USER_DEFINED, PredefinedType.PT_EXPRESSION, PredefinedName.PN_CONVERT, MethodCallingConventionEnum.Static, ACCESS.ACC_PUBLIC, 0, new int[] { (int)PredefinedType.PT_UNARYEXPRESSION, 3, (int)PredefinedType.PT_EXPRESSION, (int)PredefinedType.PT_TYPE, (int)PredefinedType.PT_METHODINFO }),
450
new PredefinedMethodInfo(
PREDEFMETH
.PM_EXPRESSION_CONVERTCHECKED, PredefinedType.PT_EXPRESSION, PredefinedName.PN_CONVERTCHECKED, MethodCallingConventionEnum.Static, ACCESS.ACC_PUBLIC, 0, new int[] { (int)PredefinedType.PT_UNARYEXPRESSION, 2, (int)PredefinedType.PT_EXPRESSION, (int)PredefinedType.PT_TYPE }),
451
new PredefinedMethodInfo(
PREDEFMETH
.PM_EXPRESSION_CONVERTCHECKED_USER_DEFINED, PredefinedType.PT_EXPRESSION, PredefinedName.PN_CONVERTCHECKED, MethodCallingConventionEnum.Static, ACCESS.ACC_PUBLIC, 0, new int[] { (int)PredefinedType.PT_UNARYEXPRESSION, 3, (int)PredefinedType.PT_EXPRESSION, (int)PredefinedType.PT_TYPE, (int)PredefinedType.PT_METHODINFO }),
452
new PredefinedMethodInfo(
PREDEFMETH
.PM_EXPRESSION_DIVIDE, PredefinedType.PT_EXPRESSION, PredefinedName.PN_DIVIDE, MethodCallingConventionEnum.Static, ACCESS.ACC_PUBLIC, 0, new int[] { (int)PredefinedType.PT_BINARYEXPRESSION, 2, (int)PredefinedType.PT_EXPRESSION, (int)PredefinedType.PT_EXPRESSION }),
453
new PredefinedMethodInfo(
PREDEFMETH
.PM_EXPRESSION_DIVIDE_USER_DEFINED, PredefinedType.PT_EXPRESSION, PredefinedName.PN_DIVIDE, MethodCallingConventionEnum.Static, ACCESS.ACC_PUBLIC, 0, new int[] { (int)PredefinedType.PT_BINARYEXPRESSION, 3, (int)PredefinedType.PT_EXPRESSION, (int)PredefinedType.PT_EXPRESSION, (int)PredefinedType.PT_METHODINFO }),
454
new PredefinedMethodInfo(
PREDEFMETH
.PM_EXPRESSION_EQUAL, PredefinedType.PT_EXPRESSION, PredefinedName.PN_EQUAL, MethodCallingConventionEnum.Static, ACCESS.ACC_PUBLIC, 0, new int[] { (int)PredefinedType.PT_BINARYEXPRESSION, 2, (int)PredefinedType.PT_EXPRESSION, (int)PredefinedType.PT_EXPRESSION }),
455
new PredefinedMethodInfo(
PREDEFMETH
.PM_EXPRESSION_EQUAL_USER_DEFINED, PredefinedType.PT_EXPRESSION, PredefinedName.PN_EQUAL, MethodCallingConventionEnum.Static, ACCESS.ACC_PUBLIC, 0, new int[] { (int)PredefinedType.PT_BINARYEXPRESSION, 4, (int)PredefinedType.PT_EXPRESSION, (int)PredefinedType.PT_EXPRESSION, (int)PredefinedType.PT_BOOL, (int)PredefinedType.PT_METHODINFO }),
456
new PredefinedMethodInfo(
PREDEFMETH
.PM_EXPRESSION_EXCLUSIVEOR, PredefinedType.PT_EXPRESSION, PredefinedName.PN_EXCLUSIVEOR, MethodCallingConventionEnum.Static, ACCESS.ACC_PUBLIC, 0, new int[] { (int)PredefinedType.PT_BINARYEXPRESSION, 2, (int)PredefinedType.PT_EXPRESSION, (int)PredefinedType.PT_EXPRESSION }),
457
new PredefinedMethodInfo(
PREDEFMETH
.PM_EXPRESSION_EXCLUSIVEOR_USER_DEFINED, PredefinedType.PT_EXPRESSION, PredefinedName.PN_EXCLUSIVEOR, MethodCallingConventionEnum.Static, ACCESS.ACC_PUBLIC, 0, new int[] { (int)PredefinedType.PT_BINARYEXPRESSION, 3, (int)PredefinedType.PT_EXPRESSION, (int)PredefinedType.PT_EXPRESSION, (int)PredefinedType.PT_METHODINFO }),
458
new PredefinedMethodInfo(
PREDEFMETH
.PM_EXPRESSION_FIELD, PredefinedType.PT_EXPRESSION, PredefinedName.PN_CAP_FIELD, MethodCallingConventionEnum.Static, ACCESS.ACC_PUBLIC, 0, new int[] { (int)PredefinedType.PT_MEMBEREXPRESSION, 2, (int)PredefinedType.PT_EXPRESSION, (int)PredefinedType.PT_FIELDINFO }),
459
new PredefinedMethodInfo(
PREDEFMETH
.PM_EXPRESSION_GREATERTHAN, PredefinedType.PT_EXPRESSION, PredefinedName.PN_GREATERTHAN, MethodCallingConventionEnum.Static, ACCESS.ACC_PUBLIC, 0, new int[] { (int)PredefinedType.PT_BINARYEXPRESSION, 2, (int)PredefinedType.PT_EXPRESSION, (int)PredefinedType.PT_EXPRESSION }),
460
new PredefinedMethodInfo(
PREDEFMETH
.PM_EXPRESSION_GREATERTHAN_USER_DEFINED, PredefinedType.PT_EXPRESSION, PredefinedName.PN_GREATERTHAN, MethodCallingConventionEnum.Static, ACCESS.ACC_PUBLIC, 0, new int[] { (int)PredefinedType.PT_BINARYEXPRESSION, 4, (int)PredefinedType.PT_EXPRESSION, (int)PredefinedType.PT_EXPRESSION, (int)PredefinedType.PT_BOOL, (int)PredefinedType.PT_METHODINFO }),
461
new PredefinedMethodInfo(
PREDEFMETH
.PM_EXPRESSION_GREATERTHANOREQUAL, PredefinedType.PT_EXPRESSION, PredefinedName.PN_GREATERTHANOREQUAL, MethodCallingConventionEnum.Static, ACCESS.ACC_PUBLIC, 0, new int[] { (int)PredefinedType.PT_BINARYEXPRESSION, 2, (int)PredefinedType.PT_EXPRESSION, (int)PredefinedType.PT_EXPRESSION }),
462
new PredefinedMethodInfo(
PREDEFMETH
.PM_EXPRESSION_GREATERTHANOREQUAL_USER_DEFINED, PredefinedType.PT_EXPRESSION, PredefinedName.PN_GREATERTHANOREQUAL, MethodCallingConventionEnum.Static, ACCESS.ACC_PUBLIC, 0, new int[] { (int)PredefinedType.PT_BINARYEXPRESSION, 4, (int)PredefinedType.PT_EXPRESSION, (int)PredefinedType.PT_EXPRESSION, (int)PredefinedType.PT_BOOL, (int)PredefinedType.PT_METHODINFO }),
463
new PredefinedMethodInfo(
PREDEFMETH
.PM_EXPRESSION_LAMBDA, PredefinedType.PT_EXPRESSION, PredefinedName.PN_LAMBDA, MethodCallingConventionEnum.Static, ACCESS.ACC_PUBLIC, 1, new int[] { (int)PredefinedType.PT_G_EXPRESSION, (int)MethodSignatureEnum.SIG_METH_TYVAR, 0, 2, (int)PredefinedType.PT_EXPRESSION, (int)MethodSignatureEnum.SIG_SZ_ARRAY, (int)PredefinedType.PT_PARAMETEREXPRESSION }),
464
new PredefinedMethodInfo(
PREDEFMETH
.PM_EXPRESSION_LEFTSHIFT, PredefinedType.PT_EXPRESSION, PredefinedName.PN_LEFTSHIFT, MethodCallingConventionEnum.Static, ACCESS.ACC_PUBLIC, 0, new int[] { (int)PredefinedType.PT_BINARYEXPRESSION, 2, (int)PredefinedType.PT_EXPRESSION, (int)PredefinedType.PT_EXPRESSION }),
465
new PredefinedMethodInfo(
PREDEFMETH
.PM_EXPRESSION_LEFTSHIFT_USER_DEFINED, PredefinedType.PT_EXPRESSION, PredefinedName.PN_LEFTSHIFT, MethodCallingConventionEnum.Static, ACCESS.ACC_PUBLIC, 0, new int[] { (int)PredefinedType.PT_BINARYEXPRESSION, 3, (int)PredefinedType.PT_EXPRESSION, (int)PredefinedType.PT_EXPRESSION, (int)PredefinedType.PT_METHODINFO }),
466
new PredefinedMethodInfo(
PREDEFMETH
.PM_EXPRESSION_LESSTHAN, PredefinedType.PT_EXPRESSION, PredefinedName.PN_LESSTHAN, MethodCallingConventionEnum.Static, ACCESS.ACC_PUBLIC, 0, new int[] { (int)PredefinedType.PT_BINARYEXPRESSION, 2, (int)PredefinedType.PT_EXPRESSION, (int)PredefinedType.PT_EXPRESSION }),
467
new PredefinedMethodInfo(
PREDEFMETH
.PM_EXPRESSION_LESSTHAN_USER_DEFINED, PredefinedType.PT_EXPRESSION, PredefinedName.PN_LESSTHAN, MethodCallingConventionEnum.Static, ACCESS.ACC_PUBLIC, 0, new int[] { (int)PredefinedType.PT_BINARYEXPRESSION, 4, (int)PredefinedType.PT_EXPRESSION, (int)PredefinedType.PT_EXPRESSION, (int)PredefinedType.PT_BOOL, (int)PredefinedType.PT_METHODINFO }),
468
new PredefinedMethodInfo(
PREDEFMETH
.PM_EXPRESSION_LESSTHANOREQUAL, PredefinedType.PT_EXPRESSION, PredefinedName.PN_LESSTHANOREQUAL, MethodCallingConventionEnum.Static, ACCESS.ACC_PUBLIC, 0, new int[] { (int)PredefinedType.PT_BINARYEXPRESSION, 2, (int)PredefinedType.PT_EXPRESSION, (int)PredefinedType.PT_EXPRESSION }),
469
new PredefinedMethodInfo(
PREDEFMETH
.PM_EXPRESSION_LESSTHANOREQUAL_USER_DEFINED, PredefinedType.PT_EXPRESSION, PredefinedName.PN_LESSTHANOREQUAL, MethodCallingConventionEnum.Static, ACCESS.ACC_PUBLIC, 0, new int[] { (int)PredefinedType.PT_BINARYEXPRESSION, 4, (int)PredefinedType.PT_EXPRESSION, (int)PredefinedType.PT_EXPRESSION, (int)PredefinedType.PT_BOOL, (int)PredefinedType.PT_METHODINFO }),
470
new PredefinedMethodInfo(
PREDEFMETH
.PM_EXPRESSION_MODULO, PredefinedType.PT_EXPRESSION, PredefinedName.PN_MODULO, MethodCallingConventionEnum.Static, ACCESS.ACC_PUBLIC, 0, new int[] { (int)PredefinedType.PT_BINARYEXPRESSION, 2, (int)PredefinedType.PT_EXPRESSION, (int)PredefinedType.PT_EXPRESSION }),
471
new PredefinedMethodInfo(
PREDEFMETH
.PM_EXPRESSION_MODULO_USER_DEFINED, PredefinedType.PT_EXPRESSION, PredefinedName.PN_MODULO, MethodCallingConventionEnum.Static, ACCESS.ACC_PUBLIC, 0, new int[] { (int)PredefinedType.PT_BINARYEXPRESSION, 3, (int)PredefinedType.PT_EXPRESSION, (int)PredefinedType.PT_EXPRESSION, (int)PredefinedType.PT_METHODINFO }),
472
new PredefinedMethodInfo(
PREDEFMETH
.PM_EXPRESSION_MULTIPLY, PredefinedType.PT_EXPRESSION, PredefinedName.PN_MULTIPLY, MethodCallingConventionEnum.Static, ACCESS.ACC_PUBLIC, 0, new int[] { (int)PredefinedType.PT_BINARYEXPRESSION, 2, (int)PredefinedType.PT_EXPRESSION, (int)PredefinedType.PT_EXPRESSION }),
473
new PredefinedMethodInfo(
PREDEFMETH
.PM_EXPRESSION_MULTIPLY_USER_DEFINED, PredefinedType.PT_EXPRESSION, PredefinedName.PN_MULTIPLY, MethodCallingConventionEnum.Static, ACCESS.ACC_PUBLIC, 0, new int[] { (int)PredefinedType.PT_BINARYEXPRESSION, 3, (int)PredefinedType.PT_EXPRESSION, (int)PredefinedType.PT_EXPRESSION, (int)PredefinedType.PT_METHODINFO }),
474
new PredefinedMethodInfo(
PREDEFMETH
.PM_EXPRESSION_MULTIPLYCHECKED, PredefinedType.PT_EXPRESSION, PredefinedName.PN_MULTIPLYCHECKED, MethodCallingConventionEnum.Static, ACCESS.ACC_PUBLIC, 0, new int[] { (int)PredefinedType.PT_BINARYEXPRESSION, 2, (int)PredefinedType.PT_EXPRESSION, (int)PredefinedType.PT_EXPRESSION }),
475
new PredefinedMethodInfo(
PREDEFMETH
.PM_EXPRESSION_MULTIPLYCHECKED_USER_DEFINED, PredefinedType.PT_EXPRESSION, PredefinedName.PN_MULTIPLYCHECKED, MethodCallingConventionEnum.Static, ACCESS.ACC_PUBLIC, 0, new int[] { (int)PredefinedType.PT_BINARYEXPRESSION, 3, (int)PredefinedType.PT_EXPRESSION, (int)PredefinedType.PT_EXPRESSION, (int)PredefinedType.PT_METHODINFO }),
476
new PredefinedMethodInfo(
PREDEFMETH
.PM_EXPRESSION_NOTEQUAL, PredefinedType.PT_EXPRESSION, PredefinedName.PN_NOTEQUAL, MethodCallingConventionEnum.Static, ACCESS.ACC_PUBLIC, 0, new int[] { (int)PredefinedType.PT_BINARYEXPRESSION, 2, (int)PredefinedType.PT_EXPRESSION, (int)PredefinedType.PT_EXPRESSION }),
477
new PredefinedMethodInfo(
PREDEFMETH
.PM_EXPRESSION_NOTEQUAL_USER_DEFINED, PredefinedType.PT_EXPRESSION, PredefinedName.PN_NOTEQUAL, MethodCallingConventionEnum.Static, ACCESS.ACC_PUBLIC, 0, new int[] { (int)PredefinedType.PT_BINARYEXPRESSION, 4, (int)PredefinedType.PT_EXPRESSION, (int)PredefinedType.PT_EXPRESSION, (int)PredefinedType.PT_BOOL, (int)PredefinedType.PT_METHODINFO }),
478
new PredefinedMethodInfo(
PREDEFMETH
.PM_EXPRESSION_OR, PredefinedType.PT_EXPRESSION, PredefinedName.PN_OR, MethodCallingConventionEnum.Static, ACCESS.ACC_PUBLIC, 0, new int[] { (int)PredefinedType.PT_BINARYEXPRESSION, 2, (int)PredefinedType.PT_EXPRESSION, (int)PredefinedType.PT_EXPRESSION }),
479
new PredefinedMethodInfo(
PREDEFMETH
.PM_EXPRESSION_OR_USER_DEFINED, PredefinedType.PT_EXPRESSION, PredefinedName.PN_OR, MethodCallingConventionEnum.Static, ACCESS.ACC_PUBLIC, 0, new int[] { (int)PredefinedType.PT_BINARYEXPRESSION, 3, (int)PredefinedType.PT_EXPRESSION, (int)PredefinedType.PT_EXPRESSION, (int)PredefinedType.PT_METHODINFO }),
480
new PredefinedMethodInfo(
PREDEFMETH
.PM_EXPRESSION_ORELSE, PredefinedType.PT_EXPRESSION, PredefinedName.PN_ORELSE, MethodCallingConventionEnum.Static, ACCESS.ACC_PUBLIC, 0, new int[] { (int)PredefinedType.PT_BINARYEXPRESSION, 2, (int)PredefinedType.PT_EXPRESSION, (int)PredefinedType.PT_EXPRESSION }),
481
new PredefinedMethodInfo(
PREDEFMETH
.PM_EXPRESSION_ORELSE_USER_DEFINED, PredefinedType.PT_EXPRESSION, PredefinedName.PN_ORELSE, MethodCallingConventionEnum.Static, ACCESS.ACC_PUBLIC, 0, new int[] { (int)PredefinedType.PT_BINARYEXPRESSION, 3, (int)PredefinedType.PT_EXPRESSION, (int)PredefinedType.PT_EXPRESSION, (int)PredefinedType.PT_METHODINFO }),
482
new PredefinedMethodInfo(
PREDEFMETH
.PM_EXPRESSION_PARAMETER, PredefinedType.PT_EXPRESSION, PredefinedName.PN_PARAMETER, MethodCallingConventionEnum.Static, ACCESS.ACC_PUBLIC, 0, new int[] { (int)PredefinedType.PT_PARAMETEREXPRESSION, 2, (int)PredefinedType.PT_TYPE, (int)PredefinedType.PT_STRING }),
483
new PredefinedMethodInfo(
PREDEFMETH
.PM_EXPRESSION_RIGHTSHIFT, PredefinedType.PT_EXPRESSION, PredefinedName.PN_RIGHTSHIFT, MethodCallingConventionEnum.Static, ACCESS.ACC_PUBLIC, 0, new int[] { (int)PredefinedType.PT_BINARYEXPRESSION, 2, (int)PredefinedType.PT_EXPRESSION, (int)PredefinedType.PT_EXPRESSION }),
484
new PredefinedMethodInfo(
PREDEFMETH
.PM_EXPRESSION_RIGHTSHIFT_USER_DEFINED, PredefinedType.PT_EXPRESSION, PredefinedName.PN_RIGHTSHIFT, MethodCallingConventionEnum.Static, ACCESS.ACC_PUBLIC, 0, new int[] { (int)PredefinedType.PT_BINARYEXPRESSION, 3, (int)PredefinedType.PT_EXPRESSION, (int)PredefinedType.PT_EXPRESSION, (int)PredefinedType.PT_METHODINFO }),
485
new PredefinedMethodInfo(
PREDEFMETH
.PM_EXPRESSION_SUBTRACT, PredefinedType.PT_EXPRESSION, PredefinedName.PN_SUBTRACT, MethodCallingConventionEnum.Static, ACCESS.ACC_PUBLIC, 0, new int[] { (int)PredefinedType.PT_BINARYEXPRESSION, 2, (int)PredefinedType.PT_EXPRESSION, (int)PredefinedType.PT_EXPRESSION }),
486
new PredefinedMethodInfo(
PREDEFMETH
.PM_EXPRESSION_SUBTRACT_USER_DEFINED, PredefinedType.PT_EXPRESSION, PredefinedName.PN_SUBTRACT, MethodCallingConventionEnum.Static, ACCESS.ACC_PUBLIC, 0, new int[] { (int)PredefinedType.PT_BINARYEXPRESSION, 3, (int)PredefinedType.PT_EXPRESSION, (int)PredefinedType.PT_EXPRESSION, (int)PredefinedType.PT_METHODINFO }),
487
new PredefinedMethodInfo(
PREDEFMETH
.PM_EXPRESSION_SUBTRACTCHECKED, PredefinedType.PT_EXPRESSION, PredefinedName.PN_SUBTRACTCHECKED, MethodCallingConventionEnum.Static, ACCESS.ACC_PUBLIC, 0, new int[] { (int)PredefinedType.PT_BINARYEXPRESSION, 2, (int)PredefinedType.PT_EXPRESSION, (int)PredefinedType.PT_EXPRESSION }),
488
new PredefinedMethodInfo(
PREDEFMETH
.PM_EXPRESSION_SUBTRACTCHECKED_USER_DEFINED, PredefinedType.PT_EXPRESSION, PredefinedName.PN_SUBTRACTCHECKED, MethodCallingConventionEnum.Static, ACCESS.ACC_PUBLIC, 0, new int[] { (int)PredefinedType.PT_BINARYEXPRESSION, 3, (int)PredefinedType.PT_EXPRESSION, (int)PredefinedType.PT_EXPRESSION, (int)PredefinedType.PT_METHODINFO }),
489
new PredefinedMethodInfo(
PREDEFMETH
.PM_EXPRESSION_UNARYPLUS_USER_DEFINED, PredefinedType.PT_EXPRESSION, PredefinedName.PN_PLUS, MethodCallingConventionEnum.Static, ACCESS.ACC_PUBLIC, 0, new int[] { (int)PredefinedType.PT_UNARYEXPRESSION, 2, (int)PredefinedType.PT_EXPRESSION, (int)PredefinedType.PT_METHODINFO }),
490
new PredefinedMethodInfo(
PREDEFMETH
.PM_EXPRESSION_NEGATE, PredefinedType.PT_EXPRESSION, PredefinedName.PN_NEGATE, MethodCallingConventionEnum.Static, ACCESS.ACC_PUBLIC, 0, new int[] { (int)PredefinedType.PT_UNARYEXPRESSION, 1, (int)PredefinedType.PT_EXPRESSION }),
491
new PredefinedMethodInfo(
PREDEFMETH
.PM_EXPRESSION_NEGATE_USER_DEFINED, PredefinedType.PT_EXPRESSION, PredefinedName.PN_NEGATE, MethodCallingConventionEnum.Static, ACCESS.ACC_PUBLIC, 0, new int[] { (int)PredefinedType.PT_UNARYEXPRESSION, 2, (int)PredefinedType.PT_EXPRESSION, (int)PredefinedType.PT_METHODINFO }),
492
new PredefinedMethodInfo(
PREDEFMETH
.PM_EXPRESSION_NEGATECHECKED, PredefinedType.PT_EXPRESSION, PredefinedName.PN_NEGATECHECKED, MethodCallingConventionEnum.Static, ACCESS.ACC_PUBLIC, 0, new int[] { (int)PredefinedType.PT_UNARYEXPRESSION, 1, (int)PredefinedType.PT_EXPRESSION }),
493
new PredefinedMethodInfo(
PREDEFMETH
.PM_EXPRESSION_NEGATECHECKED_USER_DEFINED, PredefinedType.PT_EXPRESSION, PredefinedName.PN_NEGATECHECKED, MethodCallingConventionEnum.Static, ACCESS.ACC_PUBLIC, 0, new int[] { (int)PredefinedType.PT_UNARYEXPRESSION, 2, (int)PredefinedType.PT_EXPRESSION, (int)PredefinedType.PT_METHODINFO }),
494
new PredefinedMethodInfo(
PREDEFMETH
.PM_EXPRESSION_CALL, PredefinedType.PT_EXPRESSION, PredefinedName.PN_CALL, MethodCallingConventionEnum.Static, ACCESS.ACC_PUBLIC, 0, new int[] { (int)PredefinedType.PT_METHODCALLEXPRESSION, 3, (int)PredefinedType.PT_EXPRESSION, (int)PredefinedType.PT_METHODINFO, (int)MethodSignatureEnum.SIG_SZ_ARRAY, (int)PredefinedType.PT_EXPRESSION }),
495
new PredefinedMethodInfo(
PREDEFMETH
.PM_EXPRESSION_NEW, PredefinedType.PT_EXPRESSION, PredefinedName.PN_NEW, MethodCallingConventionEnum.Static, ACCESS.ACC_PUBLIC, 0, new int[] { (int)PredefinedType.PT_NEWEXPRESSION, 2, (int)PredefinedType.PT_CONSTRUCTORINFO, (int)MethodSignatureEnum.SIG_SZ_ARRAY, (int)PredefinedType.PT_EXPRESSION }),
496
new PredefinedMethodInfo(
PREDEFMETH
.PM_EXPRESSION_NEW_TYPE, PredefinedType.PT_EXPRESSION, PredefinedName.PN_NEW, MethodCallingConventionEnum.Static, ACCESS.ACC_PUBLIC, 0, new int[] { (int)PredefinedType.PT_NEWEXPRESSION, 1, (int)PredefinedType.PT_TYPE }),
497
new PredefinedMethodInfo(
PREDEFMETH
.PM_EXPRESSION_QUOTE, PredefinedType.PT_EXPRESSION, PredefinedName.PN_QUOTE, MethodCallingConventionEnum.Static, ACCESS.ACC_PUBLIC, 0, new int[] { (int)PredefinedType.PT_UNARYEXPRESSION, 1, (int)PredefinedType.PT_EXPRESSION }),
498
new PredefinedMethodInfo(
PREDEFMETH
.PM_EXPRESSION_NOT, PredefinedType.PT_EXPRESSION, PredefinedName.PN_NOT, MethodCallingConventionEnum.Static, ACCESS.ACC_PUBLIC, 0, new int[] { (int)PredefinedType.PT_UNARYEXPRESSION, 1, (int)PredefinedType.PT_EXPRESSION }),
499
new PredefinedMethodInfo(
PREDEFMETH
.PM_EXPRESSION_NOT_USER_DEFINED, PredefinedType.PT_EXPRESSION, PredefinedName.PN_NOT, MethodCallingConventionEnum.Static, ACCESS.ACC_PUBLIC, 0, new int[] { (int)PredefinedType.PT_UNARYEXPRESSION, 2, (int)PredefinedType.PT_EXPRESSION, (int)PredefinedType.PT_METHODINFO }),
500
new PredefinedMethodInfo(
PREDEFMETH
.PM_EXPRESSION_NEWARRAYINIT, PredefinedType.PT_EXPRESSION, PredefinedName.PN_NEWARRAYINIT, MethodCallingConventionEnum.Static, ACCESS.ACC_PUBLIC, 0, new int[] { (int)PredefinedType.PT_NEWARRAYEXPRESSION, 2, (int)PredefinedType.PT_TYPE, (int)MethodSignatureEnum.SIG_SZ_ARRAY, (int)PredefinedType.PT_EXPRESSION }),
501
new PredefinedMethodInfo(
PREDEFMETH
.PM_EXPRESSION_PROPERTY, PredefinedType.PT_EXPRESSION, PredefinedName.PN_EXPRESSION_PROPERTY, MethodCallingConventionEnum.Static, ACCESS.ACC_PUBLIC, 0, new int[] { (int)PredefinedType.PT_MEMBEREXPRESSION, 2, (int)PredefinedType.PT_EXPRESSION, (int)PredefinedType.PT_PROPERTYINFO }),
502
new PredefinedMethodInfo(
PREDEFMETH
.PM_EXPRESSION_INVOKE, PredefinedType.PT_EXPRESSION, PredefinedName.PN_INVOKE, MethodCallingConventionEnum.Static, ACCESS.ACC_PUBLIC, 0, new int[] { (int)PredefinedType.PT_INVOCATIONEXPRESSION, 2, (int)PredefinedType.PT_EXPRESSION, (int)MethodSignatureEnum.SIG_SZ_ARRAY, (int)PredefinedType.PT_EXPRESSION }),
503
new PredefinedMethodInfo(
PREDEFMETH
.PM_G_OPTIONAL_CTOR, PredefinedType.PT_G_OPTIONAL, PredefinedName.PN_CTOR, MethodCallingConventionEnum.Instance, ACCESS.ACC_PUBLIC, 0, new int[] { (int)PredefinedType.PT_VOID, 1, (int)MethodSignatureEnum.SIG_CLASS_TYVAR, 0 }),
504
new PredefinedMethodInfo(
PREDEFMETH
.PM_G_OPTIONAL_GETVALUE, PredefinedType.PT_G_OPTIONAL, PredefinedName.PN_GETVALUE, MethodCallingConventionEnum.Instance, ACCESS.ACC_PUBLIC, 0, new int[] { (int)MethodSignatureEnum.SIG_CLASS_TYVAR, 0, 0 }),
505
new PredefinedMethodInfo(
PREDEFMETH
.PM_STRING_CONCAT_OBJECT_2, PredefinedType.PT_STRING, PredefinedName.PN_CONCAT, MethodCallingConventionEnum.Static, ACCESS.ACC_PUBLIC, 0, new int[] { (int)PredefinedType.PT_STRING, 2, (int)PredefinedType.PT_OBJECT, (int)PredefinedType.PT_OBJECT }),
506
new PredefinedMethodInfo(
PREDEFMETH
.PM_STRING_CONCAT_OBJECT_3, PredefinedType.PT_STRING, PredefinedName.PN_CONCAT, MethodCallingConventionEnum.Static, ACCESS.ACC_PUBLIC, 0, new int[] { (int)PredefinedType.PT_STRING, 3, (int)PredefinedType.PT_OBJECT, (int)PredefinedType.PT_OBJECT, (int)PredefinedType.PT_OBJECT }),
507
new PredefinedMethodInfo(
PREDEFMETH
.PM_STRING_CONCAT_STRING_2, PredefinedType.PT_STRING, PredefinedName.PN_CONCAT, MethodCallingConventionEnum.Static, ACCESS.ACC_PUBLIC, 0, new int[] { (int)PredefinedType.PT_STRING, 2, (int)PredefinedType.PT_STRING, (int)PredefinedType.PT_STRING }),
508
new PredefinedMethodInfo(
PREDEFMETH
.PM_STRING_OPEQUALITY, PredefinedType.PT_STRING, PredefinedName.PN_OPEQUALITY, MethodCallingConventionEnum.Static, ACCESS.ACC_PUBLIC, 0, new int[] { (int)PredefinedType.PT_BOOL, 2, (int)PredefinedType.PT_STRING, (int)PredefinedType.PT_STRING }),
509
new PredefinedMethodInfo(
PREDEFMETH
.PM_STRING_OPINEQUALITY, PredefinedType.PT_STRING, PredefinedName.PN_OPINEQUALITY, MethodCallingConventionEnum.Static, ACCESS.ACC_PUBLIC, 0, new int[] { (int)PredefinedType.PT_BOOL, 2, (int)PredefinedType.PT_STRING, (int)PredefinedType.PT_STRING }),
Microsoft\CSharp\RuntimeBinder\Semantics\Tree\Call.cs (2)
25
public
PREDEFMETH
PredefinedMethod { get; set; } =
PREDEFMETH
.PM_COUNT;
Microsoft\CSharp\RuntimeBinder\Semantics\Tree\Visitors\ExpressionTreeRewriter.cs (107)
57
lhs = GenerateCall(
PREDEFMETH
.PM_EXPRESSION_PROPERTY, instance, propInfo, arguments);
66
return GenerateCall(
PREDEFMETH
.PM_EXPRESSION_ASSIGN, lhs, rhs);
80
return GenerateCall(
PREDEFMETH
.PM_EXPRESSION_ASSIGN, lhs, rhs);
91
MethodSymbol lambdaMethod = GetPreDefMethod(
PREDEFMETH
.PM_EXPRESSION_LAMBDA);
106
call.PredefinedMethod =
PREDEFMETH
.PM_EXPRESSION_LAMBDA;
139
return GenerateCall(
PREDEFMETH
.PM_EXPRESSION_FIELD, pObject, pFieldInfo);
187
PREDEFMETH
pdm;
190
pdm =
PREDEFMETH
.PM_STRING_CONCAT_STRING_2;
194
pdm =
PREDEFMETH
.PM_STRING_CONCAT_OBJECT_2;
200
return GenerateCall(
PREDEFMETH
.PM_EXPRESSION_ADD_USER_DEFINED, p1, p2, methodInfo);
240
return GenerateCall(
PREDEFMETH
.PM_EXPRESSION_ARRAYINDEX2, arr, Params);
242
return GenerateCall(
PREDEFMETH
.PM_EXPRESSION_ARRAYINDEX, arr, args);
304
PREDEFMETH
pdm =
PREDEFMETH
.PM_EXPRESSION_CALL;
329
return GenerateCall(
PREDEFMETH
.PM_EXPRESSION_PROPERTY, pObject, propInfo, Params);
331
return GenerateCall(
PREDEFMETH
.PM_EXPRESSION_PROPERTY, pObject, propInfo);
342
return GenerateCall(
PREDEFMETH
.PM_EXPRESSION_NEWARRAYINIT, pTypeOf, Params);
370
return GenerateCall(
PREDEFMETH
.PM_EXPRESSION_INVOKE, pObject, Params);
378
PREDEFMETH
pdm = expr.Kind switch
380
ExpressionKind.LeftShirt =>
PREDEFMETH
.PM_EXPRESSION_LEFTSHIFT,
381
ExpressionKind.RightShift =>
PREDEFMETH
.PM_EXPRESSION_RIGHTSHIFT,
382
ExpressionKind.BitwiseExclusiveOr =>
PREDEFMETH
.PM_EXPRESSION_EXCLUSIVEOR,
383
ExpressionKind.BitwiseOr =>
PREDEFMETH
.PM_EXPRESSION_OR,
384
ExpressionKind.BitwiseAnd =>
PREDEFMETH
.PM_EXPRESSION_AND,
385
ExpressionKind.LogicalAnd =>
PREDEFMETH
.PM_EXPRESSION_ANDALSO,
386
ExpressionKind.LogicalOr =>
PREDEFMETH
.PM_EXPRESSION_ORELSE,
387
ExpressionKind.StringEq =>
PREDEFMETH
.PM_EXPRESSION_EQUAL,
388
ExpressionKind.Eq =>
PREDEFMETH
.PM_EXPRESSION_EQUAL,
389
ExpressionKind.StringNotEq =>
PREDEFMETH
.PM_EXPRESSION_NOTEQUAL,
390
ExpressionKind.NotEq =>
PREDEFMETH
.PM_EXPRESSION_NOTEQUAL,
391
ExpressionKind.GreaterThanOrEqual =>
PREDEFMETH
.PM_EXPRESSION_GREATERTHANOREQUAL,
392
ExpressionKind.LessThanOrEqual =>
PREDEFMETH
.PM_EXPRESSION_LESSTHANOREQUAL,
393
ExpressionKind.LessThan =>
PREDEFMETH
.PM_EXPRESSION_LESSTHAN,
394
ExpressionKind.GreaterThan =>
PREDEFMETH
.PM_EXPRESSION_GREATERTHAN,
395
ExpressionKind.Modulo =>
PREDEFMETH
.PM_EXPRESSION_MODULO,
396
ExpressionKind.Divide =>
PREDEFMETH
.PM_EXPRESSION_DIVIDE,
397
ExpressionKind.Multiply => expr.isChecked() ?
PREDEFMETH
.PM_EXPRESSION_MULTIPLYCHECKED :
PREDEFMETH
.PM_EXPRESSION_MULTIPLY,
398
ExpressionKind.Subtract => expr.isChecked() ?
PREDEFMETH
.PM_EXPRESSION_SUBTRACTCHECKED :
PREDEFMETH
.PM_EXPRESSION_SUBTRACT,
399
ExpressionKind.Add => expr.isChecked() ?
PREDEFMETH
.PM_EXPRESSION_ADDCHECKED :
PREDEFMETH
.PM_EXPRESSION_ADD,
457
newL = GenerateCall(
PREDEFMETH
.PM_EXPRESSION_CONVERT, newL, CreateTypeOf(convertL));
461
newR = GenerateCall(
PREDEFMETH
.PM_EXPRESSION_CONVERT, newR, CreateTypeOf(convertR));
468
call = GenerateCall(
PREDEFMETH
.PM_EXPRESSION_CONVERT, call, CreateTypeOf(expr.Type));
478
PREDEFMETH
pdm;
483
case ExpressionKind.BitwiseNot: pdm =
PREDEFMETH
.PM_EXPRESSION_NOT; break;
484
case ExpressionKind.LogicalNot: pdm =
PREDEFMETH
.PM_EXPRESSION_NOT; break;
486
pdm = expr.isChecked() ?
PREDEFMETH
.PM_EXPRESSION_NEGATECHECKED :
PREDEFMETH
.PM_EXPRESSION_NEGATE;
502
PREDEFMETH
pdm;
506
case ExpressionKind.LogicalOr: pdm =
PREDEFMETH
.PM_EXPRESSION_ORELSE_USER_DEFINED; break;
507
case ExpressionKind.LogicalAnd: pdm =
PREDEFMETH
.PM_EXPRESSION_ANDALSO_USER_DEFINED; break;
508
case ExpressionKind.LeftShirt: pdm =
PREDEFMETH
.PM_EXPRESSION_LEFTSHIFT_USER_DEFINED; break;
509
case ExpressionKind.RightShift: pdm =
PREDEFMETH
.PM_EXPRESSION_RIGHTSHIFT_USER_DEFINED; break;
510
case ExpressionKind.BitwiseExclusiveOr: pdm =
PREDEFMETH
.PM_EXPRESSION_EXCLUSIVEOR_USER_DEFINED; break;
511
case ExpressionKind.BitwiseOr: pdm =
PREDEFMETH
.PM_EXPRESSION_OR_USER_DEFINED; break;
512
case ExpressionKind.BitwiseAnd: pdm =
PREDEFMETH
.PM_EXPRESSION_AND_USER_DEFINED; break;
513
case ExpressionKind.Modulo: pdm =
PREDEFMETH
.PM_EXPRESSION_MODULO_USER_DEFINED; break;
514
case ExpressionKind.Divide: pdm =
PREDEFMETH
.PM_EXPRESSION_DIVIDE_USER_DEFINED; break;
528
pdm = expr.isChecked() ?
PREDEFMETH
.PM_EXPRESSION_SUBTRACTCHECKED_USER_DEFINED :
PREDEFMETH
.PM_EXPRESSION_SUBTRACT_USER_DEFINED;
532
pdm = expr.isChecked() ?
PREDEFMETH
.PM_EXPRESSION_ADDCHECKED_USER_DEFINED :
PREDEFMETH
.PM_EXPRESSION_ADD_USER_DEFINED;
535
pdm = expr.isChecked() ?
PREDEFMETH
.PM_EXPRESSION_MULTIPLYCHECKED_USER_DEFINED :
PREDEFMETH
.PM_EXPRESSION_MULTIPLY_USER_DEFINED;
573
return GenerateCall(
PREDEFMETH
.PM_EXPRESSION_CONVERT, call, pTypeOf);
582
PREDEFMETH
pdm;
599
pdm =
PREDEFMETH
.PM_EXPRESSION_UNARYPLUS_USER_DEFINED;
601
case ExpressionKind.BitwiseNot: pdm =
PREDEFMETH
.PM_EXPRESSION_NOT_USER_DEFINED; break;
602
case ExpressionKind.LogicalNot: pdm =
PREDEFMETH
.PM_EXPRESSION_NOT_USER_DEFINED; break;
605
pdm = expr.isChecked() ?
PREDEFMETH
.PM_EXPRESSION_NEGATECHECKED_USER_DEFINED :
PREDEFMETH
.PM_EXPRESSION_NEGATE_USER_DEFINED;
612
pdm =
PREDEFMETH
.PM_EXPRESSION_CALL;
634
PREDEFMETH
pdm = expr.Kind switch
636
ExpressionKind.StringEq =>
PREDEFMETH
.PM_EXPRESSION_EQUAL_USER_DEFINED,
637
ExpressionKind.StringNotEq =>
PREDEFMETH
.PM_EXPRESSION_NOTEQUAL_USER_DEFINED,
638
ExpressionKind.DelegateEq =>
PREDEFMETH
.PM_EXPRESSION_EQUAL_USER_DEFINED,
639
ExpressionKind.DelegateNotEq =>
PREDEFMETH
.PM_EXPRESSION_NOTEQUAL_USER_DEFINED,
640
ExpressionKind.Eq =>
PREDEFMETH
.PM_EXPRESSION_EQUAL_USER_DEFINED,
641
ExpressionKind.NotEq =>
PREDEFMETH
.PM_EXPRESSION_NOTEQUAL_USER_DEFINED,
642
ExpressionKind.LessThanOrEqual =>
PREDEFMETH
.PM_EXPRESSION_LESSTHANOREQUAL_USER_DEFINED,
643
ExpressionKind.LessThan =>
PREDEFMETH
.PM_EXPRESSION_LESSTHAN_USER_DEFINED,
644
ExpressionKind.GreaterThanOrEqual =>
PREDEFMETH
.PM_EXPRESSION_GREATERTHANOREQUAL_USER_DEFINED,
645
ExpressionKind.GreaterThan =>
PREDEFMETH
.PM_EXPRESSION_GREATERTHAN_USER_DEFINED,
674
PREDEFMETH
pdm = bChecked ?
PREDEFMETH
.PM_EXPRESSION_CONVERTCHECKED :
PREDEFMETH
.PM_EXPRESSION_CONVERT;
685
return GenerateCall(
PREDEFMETH
.PM_EXPRESSION_CONVERT, Visit(pArgument), pStrippedTypeExpr);
711
target = GenerateCall(
PREDEFMETH
.PM_EXPRESSION_CONVERT, target, typeofNubEnum);
725
PREDEFMETH
pdmInner = arg.isChecked() ?
PREDEFMETH
.PM_EXPRESSION_CONVERTCHECKED_USER_DEFINED :
PREDEFMETH
.PM_EXPRESSION_CONVERT_USER_DEFINED;
733
PREDEFMETH
pdmOuter = arg.isChecked() ?
PREDEFMETH
.PM_EXPRESSION_CONVERTCHECKED :
PREDEFMETH
.PM_EXPRESSION_CONVERT;
793
return GenerateCall(
PREDEFMETH
.PM_EXPRESSION_PARAMETER, pTypeOf, nameString);
797
private static MethodSymbol GetPreDefMethod(
PREDEFMETH
pdm) => PredefinedMembers.GetMethod(pdm);
838
return GenerateCall(
PREDEFMETH
.PM_EXPRESSION_NEW, constructorInfo, Params);
885
return GenerateCall(
PREDEFMETH
.PM_EXPRESSION_CONSTANT_OBJECT_TYPE, expr, pTypeOf);
897
return GenerateCall(
PREDEFMETH
.PM_EXPRESSION_CONSTANT_OBJECT_TYPE, cast, pTypeOf2);
901
private static ExprCall GenerateCall(
PREDEFMETH
pdm, Expr arg1)
917
private static ExprCall GenerateCall(
PREDEFMETH
pdm, Expr arg1, Expr arg2)
932
private static ExprCall GenerateCall(
PREDEFMETH
pdm, Expr arg1, Expr arg2, Expr arg3)
947
private static ExprCall GenerateCall(
PREDEFMETH
pdm, Expr arg1, Expr arg2, Expr arg3, Expr arg4)
1005
new1 = GenerateCall(
PREDEFMETH
.PM_EXPRESSION_CONVERT, new1, CreateTypeOf(nubfptype1));
1011
new2 = GenerateCall(
PREDEFMETH
.PM_EXPRESSION_CONVERT, new2, CreateTypeOf(nubfptype2));