This package contains classes for representing and evaluating arithmetic and logical expressions.
Interface Summary Interface Description ExpressionProcessorThis interface is used to implement scans or transformations of expression trees by specifying what to do when entering or leaving each expression node.
Class Summary Class Description ArithmeticOperatorThis class implements simple binary arithmetic operations. BooleanOperatorThis class provides the standard Boolean logical operators AND, OR, and NOT, for two or more terms (or exactly one term, in the case of NOT). ColumnNameThis class represents a column name that appears in an SQL expression. ColumnValueThis expression class represents the value of a tuple column. CompareOperatorThis class implements simple binary comparison operations. DateTimeUtilsProvides a number of utility operations for working with dates, times and timestamps. EnvironmentThis class holds the environment for evaluating expressions that include symbols. ExistsOperatorThis class implements the EXISTS (subquery) operator. ExpressionThis is the base type of all arithmetic and logical expressions that can be represented in SQL commands. Expression.SymbolFinderThis
ExpressionProcessorimplementation traverses an expression and finds all symbols that appear within the expression.
FunctionCallThis class represents all kinds of function-call expressions, including simple function calls, aggregate function calls, and table-returning function calls. InSubqueryOperatorThis class implements the expr IN (subquery) operator. InValuesOperatorThis class implements the expr IN (values) operator. IsNullOperator LiteralValueThis expression class represents literal values. NegateOperatorThis class implements unary negation. NullThis class provides a type to associate with NULL literal values. OrderByExpressionThis class represents an expression that results are ordered by, as well as whether the order is ascending or descending. PredicateUtilsA collection of helpful utilities that can be used for generating, analyzing and manipulating predicates. ScalarSubqueryThis class represents a scalar subquery embedded in another query's predicate. StringMatchOperatorThis class implements string matching operations. SubqueryOperatorThis class is the superclass of all expressions that can hold subqueries, such as the IN operator, the EXISTS operator, and scalar subqueries. TupleComparatorThis class allows us to sort and compare tuples based on an order-by specification. TupleHasher TupleLiteralA simple implementation of the
Tupleinterface for storing literal tuple values.
TypeConverterThis class provides a whole bunch of helper functions for performing type conversions on values produced by various expressions.
Enum Summary Enum Description ArithmeticOperator.TypeThis enum specifies the arithmetic operations that this class can provide. BooleanOperator.TypeThis enumeration specifies the different kinds of Boolean operators that this class can implement. CompareOperator.TypeThis enumeration specifies the types of comparisons that can be performed. StringMatchOperator.TypeThis enumeration specifies the types of matching that can be performed.
Exception Summary Exception Description DivideByZeroExceptionThis exception is thrown when an expression would cause a divide by zero. ExpressionExceptionThis exception is thrown when there is an error during the evaluation of an expression. TruncationExceptionThis exception is a specific subtype of the type-cast exception that is thrown when a type-conversion would cause a truncation of a value. TypeCastExceptionThis exception is thrown when the
TypeConvertertries to cast a value from one type to another incompatible type.