|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object | +--net.sf.saffron.sql.SqlOperatorTable
SqlOperatorTable
is a singleton which contains an instance of
each operator.
Constructor Summary | |
protected |
SqlOperatorTable()
|
Method Summary | |
static SqlOperatorTable |
instance()
Retrieves the singleton, creating it if necessary. |
SqlOperator |
lookup(SqlKind kind)
Retrieves an operator by its id. |
SqlOperator |
lookup(String opName,
int syntax)
Retrieves an operator by its name and syntactic type. |
void |
register(SqlOperator op)
|
SqlNode |
toTree(List list)
Converts a list of {expression, operator, expression, ...} into a tree, taking operator precedence and associativity into account. |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
private static SqlOperatorTable instance
public static final SqlOperator.TypeInference useFirstArgType
public static final SqlOperator.TypeInference booleanType
public static final SqlOperator.TypeInference useScope
SqlValidator.Scope
, and therefore the result type of the
call is the type of that scope.
public final SqlBinaryOperator andOperator
public final SqlBinaryOperator asOperator
public final SqlBinaryOperator concatOperator
public final SqlBinaryOperator divideOperator
public final SqlBinaryOperator dotOperator
public final SqlBinaryOperator equalsOperator
public final SqlBinaryOperator exceptOperator
public final SqlBinaryOperator greaterThanOperator
public final SqlBinaryOperator greaterThanOrEqualOperator
public final SqlBinaryOperator inOperator
public final SqlBinaryOperator intersectOperator
public final SqlBinaryOperator lessThanOperator
public final SqlBinaryOperator lessThanOrEqualOperator
public final SqlBinaryOperator minusOperator
public final SqlBinaryOperator multiplyOperator
public final SqlBinaryOperator notEqualsOperator
public final SqlBinaryOperator orOperator
public final SqlBinaryOperator plusOperator
public final SqlBinaryOperator unionOperator
public final SqlFunction substringFunction
public final SqlFunction rowConstructor
public final SqlFunction cast
CAST
operator.
The target type is simply stored as
the return type, not an explicit operand. For example, the expression
CAST(1 + 2 AS DOUBLE)
will become a call to
CAST
with the expression 1 + 2
as its only
operand.
public final SqlPostfixOperator descendingOperator
public final SqlPostfixOperator isNotNullOperator
public final SqlPostfixOperator isNullOperator
public final SqlPrefixOperator existsOperator
public final SqlPrefixOperator notOperator
public final SqlPrefixOperator prefixMinusOperator
public final SqlPrefixOperator prefixPlusOperator
public final SqlPrefixOperator valuesOperator
public final SqlSelectOperator selectOperator
public final SqlJoinOperator joinOperator
public final SqlSpecialOperator insertOperator
public final SqlSpecialOperator deleteOperator
public final SqlSpecialOperator explainOperator
private final MultiMap operators
private final HashMap mapNameToOp
Constructor Detail |
protected SqlOperatorTable()
Method Detail |
public static SqlOperatorTable instance()
public SqlOperator lookup(String opName, int syntax)
public void register(SqlOperator op)
public SqlNode toTree(List list)
public SqlOperator lookup(SqlKind kind)
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |