Defines the base class for instances that represent SQL expression tree nodes.
More...
|
static SqlExpression | Parse (string s) |
| Parses the given SQL string to an expression that can be evaluated. More...
|
|
static SqlExpression | Parse (string s, ISystemContext context) |
| Parses the given SQL string to an expression that can be evaluated. More...
|
|
static SqlConstantExpression | Constant (object value) |
|
static SqlConstantExpression | Constant (DataObject value) |
|
static SqlCastExpression | Cast (SqlExpression value, SqlType destType) |
|
static SqlFunctionCallExpression | FunctionCall (ObjectName functionName) |
|
static SqlFunctionCallExpression | FunctionCall (ObjectName functionName, SqlExpression[] args) |
|
static SqlFunctionCallExpression | FunctionCall (string functionName) |
|
static SqlFunctionCallExpression | FunctionCall (string functionName, SqlExpression[] args) |
|
static SqlReferenceExpression | Reference (ObjectName objectName) |
|
static SqlVariableReferenceExpression | VariableReference (string varName) |
|
static SqlConditionalExpression | Conditional (SqlExpression testExpression, SqlExpression ifTrue) |
|
static SqlConditionalExpression | Conditional (SqlExpression testExpression, SqlExpression ifTrue, SqlExpression ifFalse) |
|
static SqlBinaryExpression | Binary (SqlExpression left, SqlExpressionType expressionType, SqlExpression right) |
|
static SqlBinaryExpression | Equal (SqlExpression left, SqlExpression right) |
|
static SqlBinaryExpression | NotEqual (SqlExpression left, SqlExpression right) |
|
static SqlBinaryExpression | Is (SqlExpression left, SqlExpression right) |
|
static SqlBinaryExpression | IsNot (SqlExpression left, SqlExpression right) |
|
static SqlBinaryExpression | SmallerOrEqualThan (SqlExpression left, SqlExpression right) |
|
static SqlBinaryExpression | GreaterOrEqualThan (SqlExpression left, SqlExpression right) |
|
static SqlBinaryExpression | SmallerThan (SqlExpression left, SqlExpression right) |
|
static SqlBinaryExpression | GreaterThan (SqlExpression left, SqlExpression right) |
|
static SqlBinaryExpression | Like (SqlExpression left, SqlExpression right) |
|
static SqlBinaryExpression | NotLike (SqlExpression left, SqlExpression right) |
|
static SqlBinaryExpression | And (SqlExpression left, SqlExpression right) |
|
static SqlBinaryExpression | Or (SqlExpression left, SqlExpression right) |
|
static SqlBinaryExpression | XOr (SqlExpression left, SqlExpression right) |
|
static SqlBinaryExpression | Add (SqlExpression left, SqlExpression right) |
|
static SqlBinaryExpression | Subtract (SqlExpression left, SqlExpression right) |
|
static SqlBinaryExpression | Multiply (SqlExpression left, SqlExpression right) |
|
static SqlBinaryExpression | Divide (SqlExpression left, SqlExpression right) |
|
static SqlBinaryExpression | Modulo (SqlExpression left, SqlExpression right) |
|
static SqlBinaryExpression | Any (SqlExpression left, SqlExpressionType anyType, SqlExpression right) |
|
static SqlBinaryExpression | AnyEqual (SqlExpression left, SqlExpression right) |
|
static SqlBinaryExpression | AnyNotEqual (SqlExpression left, SqlExpression right) |
|
static SqlBinaryExpression | AnyGreaterThan (SqlExpression left, SqlExpression right) |
|
static SqlBinaryExpression | AnyGreaterOrEqualThan (SqlExpression left, SqlExpression right) |
|
static SqlBinaryExpression | AnySmallerThan (SqlExpression left, SqlExpression right) |
|
static SqlBinaryExpression | AnySmallerOrEqualThan (SqlExpression left, SqlExpression right) |
|
static SqlBinaryExpression | All (SqlExpression left, SqlExpressionType allType, SqlExpression right) |
|
static SqlBinaryExpression | AllEqual (SqlExpression left, SqlExpression right) |
|
static SqlBinaryExpression | AllNotEqual (SqlExpression left, SqlExpression right) |
|
static SqlBinaryExpression | AllGreaterThan (SqlExpression left, SqlExpression right) |
|
static SqlBinaryExpression | AllGreaterOrEqualThan (SqlExpression left, SqlExpression right) |
|
static SqlBinaryExpression | AllSmallerThan (SqlExpression left, SqlExpression right) |
|
static SqlBinaryExpression | AllSmallerOrEqualThan (SqlExpression left, SqlExpression right) |
|
static SqlUnaryExpression | Unary (SqlExpressionType expressionType, SqlExpression operand) |
|
static SqlUnaryExpression | Not (SqlExpression operand) |
|
static SqlUnaryExpression | Negate (SqlExpression operand) |
|
static SqlUnaryExpression | UnaryPlus (SqlExpression operand) |
|
static SqlAssignExpression | Assign (SqlExpression reference, SqlExpression valueExpression) |
|
static SqlTupleExpression | Tuple (SqlExpression[] expressions) |
|
static SqlTupleExpression | Tuple (SqlExpression expr1, SqlExpression exp2) |
|
static SqlTupleExpression | Tuple (SqlExpression expr1, SqlExpression expr2, SqlExpression expr3) |
|
Defines the base class for instances that represent SQL expression tree nodes.
The architecture of the SQL Expression domain is to keep the implementation internal to the project, that means it will be possible to construct expressions only through this class, calling factory methods (for example Binary).
Definition at line 35 of file SqlExpression.cs.
SqlExpression Deveel.Data.Sql.Expressions.SqlExpression.Evaluate |
( |
| ) |
|
|
inline |
Statically evaluates the expression, outside any context.
This overload of the Evaluate
logic provides an empty context to Evaluate(EvaluateContext), so that dynamic resolutions (eg. function calls, states assessments, etc.) will throw an exception.
Care must be taken when calling this method, that the expression tree represented does not contain any reference to dynamically resolved expressions (SqlFunctionCallExpression for example), otherwise its evaluation will result in an exception state.
- Returns
- Returns a new
- See also
- SqlExpression
that is the result of the static evaluation of this expression.
- Exceptions
-
Definition at line 194 of file SqlExpression.cs.
SqlExpression Evaluate()
Statically evaluates the expression, outside any context.