<PackageReference Include="Microsoft.CSharp" Version="4.7.0" />

ExprUserLogicalOp

namespace Microsoft.CSharp.RuntimeBinder.Semantics { internal sealed class ExprUserLogicalOp : ExprWithType { public Expr TrueFalseCall { get; set; } public ExprCall OperatorCall { get; set; } public Expr FirstOperandToExamine { get; set; } public ExprUserLogicalOp(CType type, Expr trueFalseCall, ExprCall operatorCall) : base(ExpressionKind.UserLogicalOp, type) { base.Flags = EXPRFLAG.EXF_ASSGOP; TrueFalseCall = trueFalseCall; OperatorCall = operatorCall; Expr optionalElement = ((ExprList)operatorCall.OptionalArguments).OptionalElement; ExprWrap exprWrap = optionalElement as ExprWrap; FirstOperandToExamine = ((exprWrap != null) ? exprWrap.OptionalExpression : optionalElement); } } }