183 references to EXPRFLAG
Microsoft.CSharp (183)
Microsoft\CSharp\RuntimeBinder\ExpressionTreeCallRewriter.cs (2)
340
Debug.Assert((pExpr.Flags &
EXPRFLAG
.EXF_UNBOXRUNTIME) == 0);
369
if ((pExpr.Flags &
EXPRFLAG
.EXF_UNBOXRUNTIME) != 0)
Microsoft\CSharp\RuntimeBinder\RuntimeBinder.cs (12)
417
result.Flags |=
EXPRFLAG
.EXF_LVALUE;
598
EXPRFLAG
flags =
EXPRFLAG
.EXF_USERCALLABLE;
602
flags |=
EXPRFLAG
.EXF_DELEGATE;
608
flags |=
EXPRFLAG
.EXF_CTOR;
614
flags |=
EXPRFLAG
.EXF_INDEXER;
733
callingObject.Flags |=
EXPRFLAG
.EXF_UNBOXRUNTIME;
793
callingObject.Flags |=
EXPRFLAG
.EXF_SIMPLENAME;
829
memGroup.Flags &= ~
EXPRFLAG
.EXF_USERCALLABLE;
837
memGroup.Flags &= ~
EXPRFLAG
.EXF_USERCALLABLE;
1149
callingObject.Flags |=
EXPRFLAG
.EXF_UNBOXRUNTIME;
1191
callingObject.Flags |=
EXPRFLAG
.EXF_LVALUE;
Microsoft\CSharp\RuntimeBinder\Semantics\ExplicitConversion.cs (11)
265
_binder.bindSimpleCast(_exprSrc, _typeDest, out _exprDest,
EXPRFLAG
.EXF_REFCHECK);
306
_binder.bindSimpleCast(_exprSrc, _typeDest, out _exprDest,
EXPRFLAG
.EXF_REFCHECK);
334
_binder.bindSimpleCast(_exprSrc, _typeDest, out _exprDest,
EXPRFLAG
.EXF_REFCHECK);
368
_binder.bindSimpleCast(_exprSrc, _typeDest, out _exprDest,
EXPRFLAG
.EXF_REFCHECK);
589
_binder.bindSimpleCast(_exprSrc, _typeDest, out _exprDest,
EXPRFLAG
.EXF_UNBOX);
659
_binder.bindSimpleCast(_exprSrc, _typeDest, out _exprDest, (_flags & CONVERTTYPE.CHECKOVERFLOW) != 0 ?
EXPRFLAG
.EXF_CHECKOVERFLOW : 0);
698
?
EXPRFLAG
.EXF_UNBOX
699
:
EXPRFLAG
.EXF_REFCHECK | (_exprSrc?.Flags &
EXPRFLAG
.EXF_CANTBENULL ?? 0));
711
_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);
326
: ExprFactoryCreateCastWithSuppressedMessage(
EXPRFLAG
.EXF_INDEXEXPR, pDestType, pTemp);
343
private static ExprCast ExprFactoryCreateCastWithSuppressedMessage(
EXPRFLAG
flags, CType type, Expr argument)
355
private void bindSimpleCast(Expr exprSrc, CType typeDest, out Expr pexprDest,
EXPRFLAG
exprFlags)
369
exprCast.Flags |=
EXPRFLAG
.EXF_CHECKOVERFLOW;
427
pResult.Flags |=
EXPRFLAG
.EXF_NEWOBJCALL |
EXPRFLAG
.EXF_CANTBENULL;
462
Debug.Assert(BindingFlag.BIND_MEMBERSET == (BindingFlag)
EXPRFLAG
.EXF_MEMBERSET);
463
pResult.Flags |= (
EXPRFLAG
)(bindFlags & BindingFlag.BIND_MEMBERSET);
732
Debug.Assert(grp.SymKind == SYMKIND.SK_MethodSymbol || grp.SymKind == SYMKIND.SK_PropertySymbol && ((grp.Flags &
EXPRFLAG
.EXF_INDEXER) != 0));
746
Debug.Assert((grp.Flags &
EXPRFLAG
.EXF_INDEXER) != 0);
982
if ((pObject.Flags &
EXPRFLAG
.EXF_SIMPLENAME) != 0)
1053
if ((pObject.Flags &
EXPRFLAG
.EXF_SAMENAMETYPE) == 0)
1075
(((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) =>
48
public static ExprCast CreateCast(
EXPRFLAG
flags, CType type, Expr argument) => new ExprCast(flags, type, argument);
102
public static ExprMultiGet CreateMultiGet(
EXPRFLAG
flags, CType type, ExprMulti multi) =>
107
public static ExprMulti CreateMulti(
EXPRFLAG
flags, CType type, Expr left, Expr op) =>
193
public static ExprUnaryOp CreateNeg(
EXPRFLAG
flags, Expr operand)
Microsoft\CSharp\RuntimeBinder\Semantics\GroupToArgsBinder.cs (6)
94
Debug.Assert(_pGroup.SymKind == SYMKIND.SK_MethodSymbol || _pGroup.SymKind == SYMKIND.SK_PropertySymbol && 0 != (_pGroup.Flags &
EXPRFLAG
.EXF_INDEXER));
109
return (pGroup.Flags &
EXPRFLAG
.EXF_CTOR) != 0 ? pGroup.ParentType : pGroup.OptionalObject?.Type;
1077
Debug.Assert(_pGroup.SymKind == SYMKIND.SK_MethodSymbol || _pGroup.SymKind == SYMKIND.SK_PropertySymbol && 0 != (_pGroup.Flags &
EXPRFLAG
.EXF_INDEXER));
1079
Debug.Assert(0 == (_pGroup.Flags &
EXPRFLAG
.EXF_USERCALLABLE) || _results.BestResult.MethProp().isUserCallable());
1219
Debug.Assert(0 == (_pGroup.Flags &
EXPRFLAG
.EXF_CTOR));
1223
if (0 != (_pGroup.Flags &
EXPRFLAG
.EXF_CTOR))
Microsoft\CSharp\RuntimeBinder\Semantics\ImplicitConversion.cs (12)
200
_binder.bindSimpleCast(_exprSrc, _typeDest, out _exprDest, _exprSrc.Flags &
EXPRFLAG
.EXF_CANTBENULL);
291
_binder.bindSimpleCast(_exprSrc, _typeDest, out _exprDest,
EXPRFLAG
.EXF_UNBOX);
453
_binder.bindSimpleCast(_exprSrc, _typeDest, out _exprDest,
EXPRFLAG
.EXF_BOX);
459
_binder.bindSimpleCast(_exprDest, _typeDest, out _exprDest,
EXPRFLAG
.EXF_FORCE_UNBOX);
490
EXPRFLAG
grfex = 0;
505
grfex =
EXPRFLAG
.EXF_REFCHECK;
588
EXPRFLAG
flags = 0x00;
591
flags =
EXPRFLAG
.EXF_BOX |
EXPRFLAG
.EXF_CANTBENULL;
595
flags = _exprSrc.Flags &
EXPRFLAG
.EXF_CANTBENULL;
618
_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)
33
CType qualifyingType, AggregateSymbol context, int arity,
EXPRFLAG
flags, symbmask_t mask, ArgInfos nonTrailingNamedArguments) =>
Microsoft\CSharp\RuntimeBinder\Semantics\MethodIterator.cs (5)
23
private readonly
EXPRFLAG
_flags;
28
public CMethodIterator(Name name, TypeArray containingTypes, CType qualifyingType, AggregateSymbol context, int arity,
EXPRFLAG
flags, symbmask_t mask, ArgInfos nonTrailingNamedArguments)
66
0 == (_flags &
EXPRFLAG
.EXF_CTOR) != !((MethodSymbol)CurrentSymbol).IsConstructor() ||
67
0 == (_flags &
EXPRFLAG
.EXF_OPERATOR) != !((MethodSymbol)CurrentSymbol).isOperator) ||
81
if (!ExpressionBinder.IsMethPropCallable(CurrentSymbol, (_flags &
EXPRFLAG
.EXF_USERCALLABLE) != 0))
Microsoft\CSharp\RuntimeBinder\Semantics\Nullable.cs (2)
74
return ExprFactory.CreateCall(
EXPRFLAG
.EXF_NEWOBJCALL |
EXPRFLAG
.EXF_CANTBENULL, pNubSourceType, exprSrc, memgroup, methwithinst);
Microsoft\CSharp\RuntimeBinder\Semantics\Operators.cs (60)
505
(BinOpKind kind,
EXPRFLAG
flags) = GetBinopKindAndFlags(ek);
576
private Expr BindStandardBinopCore(BinOpArgInfo info, BinOpFullSig bofs, ExpressionKind ek,
EXPRFLAG
flags)
619
private ExprBinOp BindLiftedStandardBinOp(BinOpArgInfo info, BinOpFullSig bofs, ExpressionKind ek,
EXPRFLAG
flags)
665
Debug.Assert((exprRes.Flags &
EXPRFLAG
.EXF_LVALUE) == 0);
1100
private static (ExpressionKind, UnaOpKind,
EXPRFLAG
) CalculateExprAndUnaryOpKinds(OperatorKind op, bool bChecked)
1104
EXPRFLAG
flags = 0;
1115
flags =
EXPRFLAG
.EXF_CHECKOVERFLOW;
1132
flags =
EXPRFLAG
.EXF_ISPOSTOP;
1135
flags |=
EXPRFLAG
.EXF_CHECKOVERFLOW;
1144
flags =
EXPRFLAG
.EXF_CHECKOVERFLOW;
1151
flags =
EXPRFLAG
.EXF_ISPOSTOP;
1154
flags |=
EXPRFLAG
.EXF_CHECKOVERFLOW;
1163
flags =
EXPRFLAG
.EXF_CHECKOVERFLOW;
1203
(ExpressionKind ek, UnaOpKind unaryOpKind,
EXPRFLAG
flags) =
1322
private UnaryOperatorSignatureFindResult PopulateSignatureList(Expr pArgument, UnaOpKind unaryOpKind, UnaOpMask unaryOpMask, ExpressionKind exprKind,
EXPRFLAG
flags, List<UnaOpFullSig> pSignatures, out Expr ppResult)
1385
ExprMulti exprMulti = ExprFactory.CreateMulti(
EXPRFLAG
.EXF_ASSGOP | flags, pArgumentType, pArgument, exprVal);
1541
private ExprOperator BindLiftedStandardUnop(ExpressionKind ek,
EXPRFLAG
flags, Expr arg, UnaOpFullSig uofs)
1558
Debug.Assert((exprRes.Flags &
EXPRFLAG
.EXF_LVALUE) == 0);
1595
private static ExprOperator BindIntBinOp(ExpressionBinder binder, ExpressionKind ek,
EXPRFLAG
flags, Expr arg1, Expr arg2)
1606
private static ExprOperator BindIntUnaOp(ExpressionBinder binder, ExpressionKind ek,
EXPRFLAG
flags, Expr arg)
1617
private static ExprOperator BindRealBinOp(ExpressionBinder binder, ExpressionKind ek,
EXPRFLAG
_, Expr arg1, Expr arg2)
1628
private static ExprOperator BindRealUnaOp(ExpressionBinder binder, ExpressionKind ek,
EXPRFLAG
_, Expr arg)
1640
private Expr BindIncOp(ExpressionKind ek,
EXPRFLAG
flags, Expr arg, UnaOpFullSig uofs)
1650
flags &= ~
EXPRFLAG
.EXF_CHECKOVERFLOW;
1665
private Expr BindIncOpCore(ExpressionKind ek,
EXPRFLAG
flags, Expr exprVal, CType type)
1724
private Expr LScalar(ExpressionKind ek,
EXPRFLAG
flags, Expr exprVal, CType type, ConstVal cv, CType typeTmp)
1739
private ExprMulti BindNonliftedIncOp(ExpressionKind ek,
EXPRFLAG
flags, Expr arg, UnaOpFullSig uofs)
1745
ExprMultiGet exprGet = ExprFactory.CreateMultiGet(
EXPRFLAG
.EXF_ASSGOP, arg.Type, null);
1760
ExprMulti exprMulti = ExprFactory.CreateMulti(
EXPRFLAG
.EXF_ASSGOP | flags, arg.Type, arg, op);
1767
private ExprMulti BindLiftedIncOp(ExpressionKind ek,
EXPRFLAG
flags, Expr arg, UnaOpFullSig uofs)
1775
ExprMultiGet exprGet = ExprFactory.CreateMultiGet(
EXPRFLAG
.EXF_ASSGOP, arg.Type, null);
1789
ExprMulti exprMulti = ExprFactory.CreateMulti(
EXPRFLAG
.EXF_ASSGOP | flags, arg.Type, arg, exprRes);
1802
private static ExprBinOp BindDecBinOp(ExpressionBinder _, ExpressionKind ek,
EXPRFLAG
flags, Expr arg1, Expr arg2)
1845
private static ExprUnaryOp BindDecUnaOp(ExpressionBinder _, ExpressionKind ek,
EXPRFLAG
flags, Expr arg)
1866
private static Expr BindStrBinOp(ExpressionBinder _, ExpressionKind ek,
EXPRFLAG
flags, Expr arg1, Expr arg2)
1879
private static ExprBinOp BindShiftOp(ExpressionBinder _, ExpressionKind ek,
EXPRFLAG
flags, Expr arg1, Expr arg2)
1898
private static ExprBinOp BindBoolBinOp(ExpressionBinder _, ExpressionKind ek,
EXPRFLAG
flags, Expr arg1, Expr arg2)
1910
private ExprOperator BindBoolBitwiseOp(ExpressionKind ek,
EXPRFLAG
flags, Expr expr1, Expr expr2)
1940
Debug.Assert((exprRes.Flags &
EXPRFLAG
.EXF_LVALUE) == 0);
1947
private static Expr BindLiftedBoolBitwiseOp(ExpressionBinder _, ExpressionKind ek,
EXPRFLAG
flags, Expr expr1, Expr expr2) => null;
1955
private static Expr BindBoolUnaOp(ExpressionBinder _, ExpressionKind ek,
EXPRFLAG
flags, Expr arg)
1981
private static ExprBinOp BindStrCmpOp(ExpressionBinder _, ExpressionKind ek,
EXPRFLAG
flags, Expr arg1, Expr arg2)
2000
private static ExprBinOp BindRefCmpOp(ExpressionBinder binder, ExpressionKind ek,
EXPRFLAG
flags, Expr arg1, Expr arg2)
2017
private static Expr BindDelBinOp(ExpressionBinder _, ExpressionKind ek,
EXPRFLAG
flags, Expr arg1, Expr arg2)
2059
private static Expr BindEnumBinOp(ExpressionBinder binder, ExpressionKind ek,
EXPRFLAG
flags, Expr arg1, Expr arg2)
2089
private Expr BindLiftedEnumArithmeticBinOp(ExpressionKind ek,
EXPRFLAG
flags, Expr arg1, Expr arg2)
2121
Debug.Assert((exprRes.Flags &
EXPRFLAG
.EXF_LVALUE) == 0);
2137
private static Expr BindEnumUnaOp(ExpressionBinder binder, ExpressionKind ek,
EXPRFLAG
flags, Expr arg)
2161
private (BinOpKind,
EXPRFLAG
) GetBinopKindAndFlags(ExpressionKind ek)
2164
EXPRFLAG
flags = 0;
2170
flags =
EXPRFLAG
.EXF_CHECKOVERFLOW;
2177
flags =
EXPRFLAG
.EXF_CHECKOVERFLOW;
2185
flags =
EXPRFLAG
.EXF_ASSGOP;
2188
flags |=
EXPRFLAG
.EXF_CHECKOVERFLOW;
2195
flags =
EXPRFLAG
.EXF_CHECKOVERFLOW;
2239
private ExprOperator BindIntOp(ExpressionKind kind,
EXPRFLAG
flags, Expr op1, Expr op2, PredefinedType ptOp)
2258
Debug.Assert((exprRes.Flags &
EXPRFLAG
.EXF_LVALUE) == 0);
2265
private ExprOperator BindIntegerNeg(
EXPRFLAG
flags, Expr op, PredefinedType ptOp)
2313
Debug.Assert(0 == (exprRes.Flags &
EXPRFLAG
.EXF_LVALUE));
2336
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)
176
if ((pExpr.Flags &
EXPRFLAG
.EXF_UNBOXRUNTIME) != 0)
179
result.Flags |=
EXPRFLAG
.EXF_UNBOXRUNTIME;
867
newIndex = ExprFactory.CreateCast(
EXPRFLAG
.EXF_INDEXEXPR, intType, newIndex);
868
newIndex.Flags |=
EXPRFLAG
.EXF_CHECKOVERFLOW;
879
EXPRFLAG
flags = 0;
892
flags =
EXPRFLAG
.EXF_BOX;