Class SqlPredicate.ExprExpr
public sealed class SqlPredicate.ExprExpr : SqlPredicate.Expr, ISqlPredicate, IQueryElement
- Inheritance
-
SqlPredicate.ExprExpr
- Implements
- Inherited Members
- Extension Methods
Constructors
ExprExpr(ISqlExpression, Operator, ISqlExpression, bool?, bool, bool)
public ExprExpr(ISqlExpression exp1, SqlPredicate.Operator op, ISqlExpression exp2, bool? unknownAsValue, bool notNullableExpr1 = false, bool notNullableExpr2 = false)
Parameters
exp1ISqlExpressionopSqlPredicate.Operatorexp2ISqlExpressionunknownAsValuebool?notNullableExpr1boolnotNullableExpr2bool
Properties
ElementType
AST node type.
public override QueryElementType ElementType { get; }
Property Value
Expr2
public ISqlExpression Expr2 { get; }
Property Value
NotNullableExpr1
public bool NotNullableExpr1 { get; }
Property Value
NotNullableExpr2
public bool NotNullableExpr2 { get; }
Property Value
Operator
public SqlPredicate.Operator Operator { get; }
Property Value
UnknownAsValue
Specify value, used as UNKNOWN value replacement on reduced predicate with UNKNOWN value erased. Replacement only applied when this property is not null.
public bool? UnknownAsValue { get; }
Property Value
- bool?
Methods
CanBeUnknown(NullabilityContext, bool)
Returns true if predicate could be evaluated to UNKNOWN.
public override bool CanBeUnknown(NullabilityContext nullability, bool withoutUnknownErased)
Parameters
nullabilityNullabilityContextwithoutUnknownErasedbool
Returns
CanInvert(NullabilityContext)
public override bool CanInvert(NullabilityContext nullability)
Parameters
nullabilityNullabilityContext
Returns
Deconstruct(out ISqlExpression, out Operator, out ISqlExpression, out bool?)
public void Deconstruct(out ISqlExpression expr1, out SqlPredicate.Operator @operator, out ISqlExpression expr2, out bool? unknownAsValue)
Parameters
expr1ISqlExpressionoperatorSqlPredicate.Operatorexpr2ISqlExpressionunknownAsValuebool?
Equals(ISqlPredicate, Func<ISqlExpression, ISqlExpression, bool>)
public override bool Equals(ISqlPredicate other, Func<ISqlExpression, ISqlExpression, bool> comparer)
Parameters
otherISqlPredicatecomparerFunc<ISqlExpression, ISqlExpression, bool>
Returns
GetElementHashCode()
public override int GetElementHashCode()
Returns
Invert(NullabilityContext)
public override ISqlPredicate Invert(NullabilityContext nullability)
Parameters
nullabilityNullabilityContext
Returns
InvertWithoutNull()
public ISqlPredicate InvertWithoutNull()
Returns
Reduce(NullabilityContext, EvaluationContext, bool, LinqOptions)
Converts predicate to final form based on null comparison options.
public ISqlPredicate Reduce(NullabilityContext nullability, EvaluationContext context, bool isInsidePredicate, LinqOptions options)
Parameters
nullabilityNullabilityContextcontextEvaluationContextisInsidePredicateboolEnables generation of addtional conversion of UNKNOWN to FALSE for nested predicates when non-nullable result.
optionsLinqOptions
Returns
SwapOperator(Operator)
public static SqlPredicate.Operator SwapOperator(SqlPredicate.Operator op)
Parameters
Returns
WritePredicate(QueryElementTextWriter)
protected override void WritePredicate(QueryElementTextWriter writer)
Parameters
writerQueryElementTextWriter