183 references to EXPRFLAG
Microsoft.CSharp (183)
Microsoft\CSharp\RuntimeBinder\ExpressionTreeCallRewriter.cs (2)
339
Debug.Assert((pExpr.Flags &
EXPRFLAG
.EXF_UNBOXRUNTIME) == 0);
368
if ((pExpr.Flags &
EXPRFLAG
.EXF_UNBOXRUNTIME) != 0)
Microsoft\CSharp\RuntimeBinder\RuntimeBinder.cs (12)
404
result.Flags |=
EXPRFLAG
.EXF_LVALUE;
582
EXPRFLAG
flags =
EXPRFLAG
.EXF_USERCALLABLE;
586
flags |=
EXPRFLAG
.EXF_DELEGATE;
592
flags |=
EXPRFLAG
.EXF_CTOR;
598
flags |=
EXPRFLAG
.EXF_INDEXER;
712
callingObject.Flags |=
EXPRFLAG
.EXF_UNBOXRUNTIME;
771
callingObject.Flags |=
EXPRFLAG
.EXF_SIMPLENAME;
807
memGroup.Flags &= ~
EXPRFLAG
.EXF_USERCALLABLE;
815
memGroup.Flags &= ~
EXPRFLAG
.EXF_USERCALLABLE;
1123
callingObject.Flags |=
EXPRFLAG
.EXF_UNBOXRUNTIME;
1165
callingObject.Flags |=
EXPRFLAG
.EXF_LVALUE;
Microsoft\CSharp\RuntimeBinder\Semantics\ExplicitConversion.cs (11)
264
_binder.bindSimpleCast(_exprSrc, _typeDest, out _exprDest,
EXPRFLAG
.EXF_REFCHECK);
305
_binder.bindSimpleCast(_exprSrc, _typeDest, out _exprDest,
EXPRFLAG
.EXF_REFCHECK);
333
_binder.bindSimpleCast(_exprSrc, _typeDest, out _exprDest,
EXPRFLAG
.EXF_REFCHECK);
367
_binder.bindSimpleCast(_exprSrc, _typeDest, out _exprDest,
EXPRFLAG
.EXF_REFCHECK);
588
_binder.bindSimpleCast(_exprSrc, _typeDest, out _exprDest,
EXPRFLAG
.EXF_UNBOX);
657
_binder.bindSimpleCast(_exprSrc, _typeDest, out _exprDest, (_flags & CONVERTTYPE.CHECKOVERFLOW) != 0 ?
EXPRFLAG
.EXF_CHECKOVERFLOW : 0);
696
?
EXPRFLAG
.EXF_UNBOX
697
:
EXPRFLAG
.EXF_REFCHECK | (_exprSrc?.Flags &
EXPRFLAG
.EXF_CANTBENULL ?? 0));
709
_binder.bindSimpleCast(_exprSrc, _typeDest, out _exprDest,
EXPRFLAG
.EXF_REFCHECK | (_exprSrc?.Flags &
EXPRFLAG
.EXF_CANTBENULL ?? 0));
Microsoft\CSharp\RuntimeBinder\Semantics\ExpressionBinder.cs (15)
262
private delegate Expr PfnBindBinOp(ExpressionBinder binder, ExpressionKind ek,
EXPRFLAG
flags, Expr op1, Expr op2);
263
private delegate Expr PfnBindUnaOp(ExpressionBinder binder, ExpressionKind ek,
EXPRFLAG
flags, Expr op);
322
: ExprFactoryCreateCastWithSuppressedMessage(
EXPRFLAG
.EXF_INDEXEXPR, pDestType, pTemp);
337
private static ExprCast ExprFactoryCreateCastWithSuppressedMessage(
EXPRFLAG
flags, CType type, Expr argument)
347
private void bindSimpleCast(Expr exprSrc, CType typeDest, out Expr pexprDest,
EXPRFLAG
exprFlags)
361
exprCast.Flags |=
EXPRFLAG
.EXF_CHECKOVERFLOW;
418
pResult.Flags |=
EXPRFLAG
.EXF_NEWOBJCALL |
EXPRFLAG
.EXF_CANTBENULL;
452
Debug.Assert(BindingFlag.BIND_MEMBERSET == (BindingFlag)
EXPRFLAG
.EXF_MEMBERSET);
453
pResult.Flags |= (
EXPRFLAG
)(bindFlags & BindingFlag.BIND_MEMBERSET);
716
Debug.Assert(grp.SymKind == SYMKIND.SK_MethodSymbol || grp.SymKind == SYMKIND.SK_PropertySymbol && ((grp.Flags &
EXPRFLAG
.EXF_INDEXER) != 0));
730
Debug.Assert((grp.Flags &
EXPRFLAG
.EXF_INDEXER) != 0);
959
if ((pObject.Flags &
EXPRFLAG
.EXF_SIMPLENAME) != 0)
1030
if ((pObject.Flags &
EXPRFLAG
.EXF_SAMENAMETYPE) == 0)
1052
(((pObject.Flags &
EXPRFLAG
.EXF_LVALUE) != 0) && (pObject.Kind != ExpressionKind.Property)) ||
Microsoft\CSharp\RuntimeBinder\Semantics\EXPRExtensions.cs (3)
52
Debug.Assert(expr?.Kind >= ExpressionKind.TypeLimit && 0 != (expr.Flags &
EXPRFLAG
.EXF_BINOP));
56
return (expr == null) ? false : 0 != (expr.Flags &
EXPRFLAG
.EXF_LVALUE);
60
return (expr == null) ? false : 0 != (expr.Flags &
EXPRFLAG
.EXF_CHECKOVERFLOW);
Microsoft\CSharp\RuntimeBinder\Semantics\ExprFactory.cs (6)
13
public static ExprCall CreateCall(
EXPRFLAG
flags, CType type, Expr arguments, ExprMemberGroup memberGroup, MethWithInst method) =>
25
public static ExprMemberGroup CreateMemGroup(
EXPRFLAG
flags, Name name, TypeArray typeArgs, SYMKIND symKind, CType parentType, Expr obj, CMemberLookupResults memberLookupResults) =>
44
public static ExprCast CreateCast(
EXPRFLAG
flags, CType type, Expr argument) => new ExprCast(flags, type, argument);
87
public static ExprMultiGet CreateMultiGet(
EXPRFLAG
flags, CType type, ExprMulti multi) =>
91
public static ExprMulti CreateMulti(
EXPRFLAG
flags, CType type, Expr left, Expr op) =>
174
public static ExprUnaryOp CreateNeg(
EXPRFLAG
flags, Expr operand)
Microsoft\CSharp\RuntimeBinder\Semantics\GroupToArgsBinder.cs (6)
93
Debug.Assert(_pGroup.SymKind == SYMKIND.SK_MethodSymbol || _pGroup.SymKind == SYMKIND.SK_PropertySymbol && 0 != (_pGroup.Flags &
EXPRFLAG
.EXF_INDEXER));
108
return (pGroup.Flags &
EXPRFLAG
.EXF_CTOR) != 0 ? pGroup.ParentType : pGroup.OptionalObject?.Type;
1076
Debug.Assert(_pGroup.SymKind == SYMKIND.SK_MethodSymbol || _pGroup.SymKind == SYMKIND.SK_PropertySymbol && 0 != (_pGroup.Flags &
EXPRFLAG
.EXF_INDEXER));
1078
Debug.Assert(0 == (_pGroup.Flags &
EXPRFLAG
.EXF_USERCALLABLE) || _results.BestResult.MethProp().isUserCallable());
1218
Debug.Assert(0 == (_pGroup.Flags &
EXPRFLAG
.EXF_CTOR));
1222
if (0 != (_pGroup.Flags &
EXPRFLAG
.EXF_CTOR))
Microsoft\CSharp\RuntimeBinder\Semantics\ImplicitConversion.cs (12)
199
_binder.bindSimpleCast(_exprSrc, _typeDest, out _exprDest, _exprSrc.Flags &
EXPRFLAG
.EXF_CANTBENULL);
289
_binder.bindSimpleCast(_exprSrc, _typeDest, out _exprDest,
EXPRFLAG
.EXF_UNBOX);
451
_binder.bindSimpleCast(_exprSrc, _typeDest, out _exprDest,
EXPRFLAG
.EXF_BOX);
457
_binder.bindSimpleCast(_exprDest, _typeDest, out _exprDest,
EXPRFLAG
.EXF_FORCE_UNBOX);
488
EXPRFLAG
grfex = 0;
503
grfex =
EXPRFLAG
.EXF_REFCHECK;
586
EXPRFLAG
flags = 0x00;
589
flags =
EXPRFLAG
.EXF_BOX |
EXPRFLAG
.EXF_CANTBENULL;
593
flags = _exprSrc.Flags &
EXPRFLAG
.EXF_CANTBENULL;
616
_binder.bindSimpleCast(_exprSrc, _typeDest, out _exprDest,
EXPRFLAG
.EXF_BOX |
EXPRFLAG
.EXF_CANTBENULL);
Microsoft\CSharp\RuntimeBinder\Semantics\MemberLookup.cs (6)
18
Ctor =
EXPRFLAG
.EXF_CTOR,
19
NewObj =
EXPRFLAG
.EXF_NEWOBJCALL,
20
Operator =
EXPRFLAG
.EXF_OPERATOR,
21
Indexer =
EXPRFLAG
.EXF_INDEXER,
22
UserCallable =
EXPRFLAG
.EXF_USERCALLABLE,
23
BaseCall =
EXPRFLAG
.EXF_BASECALL,
Microsoft\CSharp\RuntimeBinder\Semantics\MemberLookupResults.cs (1)
31
CType qualifyingType, AggregateSymbol context, int arity,
EXPRFLAG
flags, symbmask_t mask, ArgInfos nonTrailingNamedArguments) =>
Microsoft\CSharp\RuntimeBinder\Semantics\MethodIterator.cs (5)
22
private readonly
EXPRFLAG
_flags;
27
public CMethodIterator(Name name, TypeArray containingTypes, CType qualifyingType, AggregateSymbol context, int arity,
EXPRFLAG
flags, symbmask_t mask, ArgInfos nonTrailingNamedArguments)
65
0 == (_flags &
EXPRFLAG
.EXF_CTOR) != !((MethodSymbol)CurrentSymbol).IsConstructor() ||
66
0 == (_flags &
EXPRFLAG
.EXF_OPERATOR) != !((MethodSymbol)CurrentSymbol).isOperator) ||
80
if (!ExpressionBinder.IsMethPropCallable(CurrentSymbol, (_flags &
EXPRFLAG
.EXF_USERCALLABLE) != 0))
Microsoft\CSharp\RuntimeBinder\Semantics\Nullable.cs (2)
72
return ExprFactory.CreateCall(
EXPRFLAG
.EXF_NEWOBJCALL |
EXPRFLAG
.EXF_CANTBENULL, pNubSourceType, exprSrc, memgroup, methwithinst);
Microsoft\CSharp\RuntimeBinder\Semantics\Operators.cs (60)
491
(BinOpKind kind,
EXPRFLAG
flags) = GetBinopKindAndFlags(ek);
561
private Expr BindStandardBinopCore(BinOpArgInfo info, BinOpFullSig bofs, ExpressionKind ek,
EXPRFLAG
flags)
603
private ExprBinOp BindLiftedStandardBinOp(BinOpArgInfo info, BinOpFullSig bofs, ExpressionKind ek,
EXPRFLAG
flags)
649
Debug.Assert((exprRes.Flags &
EXPRFLAG
.EXF_LVALUE) == 0);
1076
private static (ExpressionKind, UnaOpKind,
EXPRFLAG
) CalculateExprAndUnaryOpKinds(OperatorKind op, bool bChecked)
1080
EXPRFLAG
flags = 0;
1091
flags =
EXPRFLAG
.EXF_CHECKOVERFLOW;
1108
flags =
EXPRFLAG
.EXF_ISPOSTOP;
1111
flags |=
EXPRFLAG
.EXF_CHECKOVERFLOW;
1120
flags =
EXPRFLAG
.EXF_CHECKOVERFLOW;
1127
flags =
EXPRFLAG
.EXF_ISPOSTOP;
1130
flags |=
EXPRFLAG
.EXF_CHECKOVERFLOW;
1139
flags =
EXPRFLAG
.EXF_CHECKOVERFLOW;
1178
(ExpressionKind ek, UnaOpKind unaryOpKind,
EXPRFLAG
flags) =
1296
private UnaryOperatorSignatureFindResult PopulateSignatureList(Expr pArgument, UnaOpKind unaryOpKind, UnaOpMask unaryOpMask, ExpressionKind exprKind,
EXPRFLAG
flags, List<UnaOpFullSig> pSignatures, out Expr ppResult)
1359
ExprMulti exprMulti = ExprFactory.CreateMulti(
EXPRFLAG
.EXF_ASSGOP | flags, pArgumentType, pArgument, exprVal);
1513
private ExprOperator BindLiftedStandardUnop(ExpressionKind ek,
EXPRFLAG
flags, Expr arg, UnaOpFullSig uofs)
1530
Debug.Assert((exprRes.Flags &
EXPRFLAG
.EXF_LVALUE) == 0);
1565
private static ExprOperator BindIntBinOp(ExpressionBinder binder, ExpressionKind ek,
EXPRFLAG
flags, Expr arg1, Expr arg2)
1575
private static ExprOperator BindIntUnaOp(ExpressionBinder binder, ExpressionKind ek,
EXPRFLAG
flags, Expr arg)
1585
private static ExprOperator BindRealBinOp(ExpressionBinder binder, ExpressionKind ek,
EXPRFLAG
_, Expr arg1, Expr arg2)
1595
private static ExprOperator BindRealUnaOp(ExpressionBinder binder, ExpressionKind ek,
EXPRFLAG
_, Expr arg)
1606
private Expr BindIncOp(ExpressionKind ek,
EXPRFLAG
flags, Expr arg, UnaOpFullSig uofs)
1616
flags &= ~
EXPRFLAG
.EXF_CHECKOVERFLOW;
1630
private Expr BindIncOpCore(ExpressionKind ek,
EXPRFLAG
flags, Expr exprVal, CType type)
1688
private Expr LScalar(ExpressionKind ek,
EXPRFLAG
flags, Expr exprVal, CType type, ConstVal cv, CType typeTmp)
1702
private ExprMulti BindNonliftedIncOp(ExpressionKind ek,
EXPRFLAG
flags, Expr arg, UnaOpFullSig uofs)
1708
ExprMultiGet exprGet = ExprFactory.CreateMultiGet(
EXPRFLAG
.EXF_ASSGOP, arg.Type, null);
1723
ExprMulti exprMulti = ExprFactory.CreateMulti(
EXPRFLAG
.EXF_ASSGOP | flags, arg.Type, arg, op);
1729
private ExprMulti BindLiftedIncOp(ExpressionKind ek,
EXPRFLAG
flags, Expr arg, UnaOpFullSig uofs)
1737
ExprMultiGet exprGet = ExprFactory.CreateMultiGet(
EXPRFLAG
.EXF_ASSGOP, arg.Type, null);
1751
ExprMulti exprMulti = ExprFactory.CreateMulti(
EXPRFLAG
.EXF_ASSGOP | flags, arg.Type, arg, exprRes);
1763
private static ExprBinOp BindDecBinOp(ExpressionBinder _, ExpressionKind ek,
EXPRFLAG
flags, Expr arg1, Expr arg2)
1805
private static ExprUnaryOp BindDecUnaOp(ExpressionBinder _, ExpressionKind ek,
EXPRFLAG
flags, Expr arg)
1825
private static Expr BindStrBinOp(ExpressionBinder _, ExpressionKind ek,
EXPRFLAG
flags, Expr arg1, Expr arg2)
1837
private static ExprBinOp BindShiftOp(ExpressionBinder _, ExpressionKind ek,
EXPRFLAG
flags, Expr arg1, Expr arg2)
1855
private static ExprBinOp BindBoolBinOp(ExpressionBinder _, ExpressionKind ek,
EXPRFLAG
flags, Expr arg1, Expr arg2)
1866
private ExprOperator BindBoolBitwiseOp(ExpressionKind ek,
EXPRFLAG
flags, Expr expr1, Expr expr2)
1896
Debug.Assert((exprRes.Flags &
EXPRFLAG
.EXF_LVALUE) == 0);
1903
private static Expr BindLiftedBoolBitwiseOp(ExpressionBinder _, ExpressionKind ek,
EXPRFLAG
flags, Expr expr1, Expr expr2) => null;
1910
private static Expr BindBoolUnaOp(ExpressionBinder _, ExpressionKind ek,
EXPRFLAG
flags, Expr arg)
1935
private static ExprBinOp BindStrCmpOp(ExpressionBinder _, ExpressionKind ek,
EXPRFLAG
flags, Expr arg1, Expr arg2)
1953
private static ExprBinOp BindRefCmpOp(ExpressionBinder binder, ExpressionKind ek,
EXPRFLAG
flags, Expr arg1, Expr arg2)
1969
private static Expr BindDelBinOp(ExpressionBinder _, ExpressionKind ek,
EXPRFLAG
flags, Expr arg1, Expr arg2)
2010
private static Expr BindEnumBinOp(ExpressionBinder binder, ExpressionKind ek,
EXPRFLAG
flags, Expr arg1, Expr arg2)
2039
private Expr BindLiftedEnumArithmeticBinOp(ExpressionKind ek,
EXPRFLAG
flags, Expr arg1, Expr arg2)
2071
Debug.Assert((exprRes.Flags &
EXPRFLAG
.EXF_LVALUE) == 0);
2086
private static Expr BindEnumUnaOp(ExpressionBinder binder, ExpressionKind ek,
EXPRFLAG
flags, Expr arg)
2110
private (BinOpKind,
EXPRFLAG
) GetBinopKindAndFlags(ExpressionKind ek)
2113
EXPRFLAG
flags = 0;
2119
flags =
EXPRFLAG
.EXF_CHECKOVERFLOW;
2126
flags =
EXPRFLAG
.EXF_CHECKOVERFLOW;
2134
flags =
EXPRFLAG
.EXF_ASSGOP;
2137
flags |=
EXPRFLAG
.EXF_CHECKOVERFLOW;
2144
flags =
EXPRFLAG
.EXF_CHECKOVERFLOW;
2187
private ExprOperator BindIntOp(ExpressionKind kind,
EXPRFLAG
flags, Expr op1, Expr op2, PredefinedType ptOp)
2206
Debug.Assert((exprRes.Flags &
EXPRFLAG
.EXF_LVALUE) == 0);
2212
private ExprOperator BindIntegerNeg(
EXPRFLAG
flags, Expr op, PredefinedType ptOp)
2260
Debug.Assert(0 == (exprRes.Flags &
EXPRFLAG
.EXF_LVALUE));
2282
exprRes.Flags &= ~
EXPRFLAG
.EXF_CHECKOVERFLOW;
Microsoft\CSharp\RuntimeBinder\Semantics\Tree\ArrayIndex.cs (2)
13
Flags =
EXPRFLAG
.EXF_LVALUE |
EXPRFLAG
.EXF_ASSGOP;
Microsoft\CSharp\RuntimeBinder\Semantics\Tree\Assignment.cs (1)
15
Flags =
EXPRFLAG
.EXF_ASSGOP;
Microsoft\CSharp\RuntimeBinder\Semantics\Tree\BinaryOperator.cs (3)
16
Flags =
EXPRFLAG
.EXF_BINOP;
28
Flags =
EXPRFLAG
.EXF_BINOP;
41
Flags |=
EXPRFLAG
.EXF_ASSGOP;
Microsoft\CSharp\RuntimeBinder\Semantics\Tree\Call.cs (6)
10
public ExprCall(CType type,
EXPRFLAG
flags, Expr arguments, ExprMemberGroup member, MethWithInst method)
14
(flags & ~(
EXPRFLAG
.EXF_NEWOBJCALL |
EXPRFLAG
.EXF_CONSTRAINED
15
|
EXPRFLAG
.EXF_NEWSTRUCTASSG |
EXPRFLAG
.EXF_IMPLICITSTRUCTASSG |
EXPRFLAG
.EXF_MASK_ANY)) == 0);
Microsoft\CSharp\RuntimeBinder\Semantics\Tree\Cast.cs (5)
11
public ExprCast(
EXPRFLAG
flags, CType type, Expr argument)
15
Debug.Assert((flags & ~(
EXPRFLAG
.EXF_CAST_ALL |
EXPRFLAG
.EXF_MASK_ANY)) == 0);
22
public bool IsBoxingCast => (Flags & (
EXPRFLAG
.EXF_BOX |
EXPRFLAG
.EXF_FORCE_BOX)) != 0;
Microsoft\CSharp\RuntimeBinder\Semantics\Tree\CompoundOperator.cs (3)
10
public ExprMultiGet(CType type,
EXPRFLAG
flags, ExprMulti multi)
13
Debug.Assert((flags & ~
EXPRFLAG
.EXF_MASK_ANY) == 0);
23
public ExprMulti(CType type,
EXPRFLAG
flags, Expr left, Expr op)
Microsoft\CSharp\RuntimeBinder\Semantics\Tree\EXPR.cs (1)
24
public
EXPRFLAG
Flags { get; set; }
Microsoft\CSharp\RuntimeBinder\Semantics\Tree\Field.cs (1)
11
Flags = field.Field().isReadOnly ? 0 :
EXPRFLAG
.EXF_LVALUE;
Microsoft\CSharp\RuntimeBinder\Semantics\Tree\LocalVariable.cs (1)
13
Flags =
EXPRFLAG
.EXF_LVALUE;
Microsoft\CSharp\RuntimeBinder\Semantics\Tree\MemberGroup.cs (9)
11
public ExprMemberGroup(
EXPRFLAG
flags, Name name, TypeArray typeArgs, SYMKIND symKind, CType parentType, Expr optionalObject, CMemberLookupResults memberLookupResults)
15
(flags & ~(
EXPRFLAG
.EXF_CTOR |
EXPRFLAG
.EXF_INDEXER |
EXPRFLAG
.EXF_OPERATOR |
EXPRFLAG
.EXF_NEWOBJCALL
16
|
EXPRFLAG
.EXF_DELEGATE |
EXPRFLAG
.EXF_USERCALLABLE
17
|
EXPRFLAG
.EXF_MASK_ANY)) == 0);
48
public bool IsDelegate => (Flags &
EXPRFLAG
.EXF_DELEGATE) != 0;
Microsoft\CSharp\RuntimeBinder\Semantics\Tree\Property.cs (1)
36
Flags =
EXPRFLAG
.EXF_LVALUE;
Microsoft\CSharp\RuntimeBinder\Semantics\Tree\Temporary.cs (1)
13
Flags =
EXPRFLAG
.EXF_LVALUE;
Microsoft\CSharp\RuntimeBinder\Semantics\Tree\TypeOf.cs (1)
13
Flags =
EXPRFLAG
.EXF_CANTBENULL;
Microsoft\CSharp\RuntimeBinder\Semantics\Tree\UserDefinedLogicalOperator.cs (1)
15
Flags =
EXPRFLAG
.EXF_ASSGOP;
Microsoft\CSharp\RuntimeBinder\Semantics\Tree\Visitors\ExpressionTreeRewriter.cs (6)
175
if ((pExpr.Flags &
EXPRFLAG
.EXF_UNBOXRUNTIME) != 0)
178
result.Flags |=
EXPRFLAG
.EXF_UNBOXRUNTIME;
866
newIndex = ExprFactory.CreateCast(
EXPRFLAG
.EXF_INDEXEXPR, intType, newIndex);
867
newIndex.Flags |=
EXPRFLAG
.EXF_CHECKOVERFLOW;
878
EXPRFLAG
flags = 0;
891
flags =
EXPRFLAG
.EXF_BOX;