Package | Description |
---|---|
com.akiban.sql.compiler | |
com.akiban.sql.parser |
Modifier and Type | Method and Description |
---|---|
protected ValueNode |
BooleanNormalizer.castToBoolean(ValueNode node) |
protected ValueNode |
BooleanNormalizer.changeToCNF(ValueNode node,
boolean underTopAndNode)
Finish putting an expression into conjunctive normal
form.
|
protected ValueNode |
TypeComputer.collateNode(ExplicitCollateNode node) |
protected ValueNode |
BooleanNormalizer.eliminateNots(ValueNode node,
boolean underNotNode)
Eliminate NotNodes in the current query block.
|
protected ValueNode |
BooleanNormalizer.equalsBooleanConstant(ValueNode node,
java.lang.Boolean constant) |
protected ValueNode |
BooleanNormalizer.getNotEqual(ValueNode left,
ValueNode right) |
protected ValueNode |
BooleanNormalizer.inWithNestedTuples(InListOperatorNode node) |
ValueNode |
BooleanNormalizer.normalizeExpression(ValueNode boolClause)
Normalize a top-level boolean expression.
|
protected ValueNode |
TypeComputer.setType(ValueNode node) |
Modifier and Type | Method and Description |
---|---|
protected ValueNode |
BooleanNormalizer.castToBoolean(ValueNode node) |
protected ValueNode |
BooleanNormalizer.changeToCNF(ValueNode node,
boolean underTopAndNode)
Finish putting an expression into conjunctive normal
form.
|
protected DataTypeDescriptor |
TypeComputer.computeType(ValueNode node)
Probably need to subclass and handle
NodeTypes.COLUMN_REFERENCE
to get type propagation started. |
protected ValueNode |
BooleanNormalizer.eliminateNots(ValueNode node,
boolean underNotNode)
Eliminate NotNodes in the current query block.
|
protected ValueNode |
BooleanNormalizer.equalsBooleanConstant(ValueNode node,
java.lang.Boolean constant) |
protected ValueNode |
BooleanNormalizer.getNotEqual(ValueNode left,
ValueNode right) |
protected TypeCompiler |
TypeComputer.getTypeCompiler(ValueNode valueNode)
Get the TypeCompiler from this ValueNode, based on its TypeId
using getTypeId().
|
protected static boolean |
TypeComputer.isParameterOrUntypedNull(ValueNode node)
Nodes whose type is inferred from the context.
|
ValueNode |
BooleanNormalizer.normalizeExpression(ValueNode boolClause)
Normalize a top-level boolean expression.
|
protected AndNode |
BooleanNormalizer.putAndsOnTop(ValueNode node)
Do the 1st step in putting an expression into conjunctive normal
form.
|
protected ValueNode |
TypeComputer.setType(ValueNode node) |
protected boolean |
BooleanNormalizer.verifyChangeToCNF(ValueNode node,
boolean top)
Verify that changeToCNF() did its job correctly.
|
protected boolean |
BooleanNormalizer.verifyEliminateNots(ValueNode node)
Verify that eliminateNots() did its job correctly.
|
protected boolean |
BooleanNormalizer.verifyPutAndsOnTop(ValueNode node)
Verify that putAndsOnTop() did its job correctly.
|
Modifier and Type | Class and Description |
---|---|
class |
AggregateNode
An Aggregate Node is a node that reprsents a set function/aggregate.
|
class |
AggregateWindowFunctionNode
Represents aggregate function calls on a window
|
class |
AllResultColumn
An AllResultColumn represents a "*" result column in a SELECT
statement.
|
class |
AndNode |
class |
BaseColumnNode
A BaseColumnNode represents a column in a base table.
|
class |
BetweenOperatorNode
A BetweenOperatorNode represents a BETWEEN clause.
|
class |
BinaryArithmeticOperatorNode
This node represents a binary arithmetic operator, like + or *.
|
class |
BinaryBitOperatorNode
This node represents a binary arithmetic operator, like + or *.
|
class |
BinaryComparisonOperatorNode
This node is the superclass for all binary comparison operators, such as =,
<>, <, etc.
|
class |
BinaryListOperatorNode
A BinaryListOperatorNode represents a built-in "binary" operator with a single
operand on the left of the operator and a list of operands on the right.
|
class |
BinaryLogicalOperatorNode |
class |
BinaryOperatorNode
A BinaryOperatorNode represents a built-in binary operator as defined by
the ANSI/ISO SQL standard.
|
class |
BinaryRelationalOperatorNode
This class represents the 6 binary operators: LessThan, LessThanEquals,
Equals, NotEquals, GreaterThan and GreaterThanEquals.
|
class |
BitConstantNode |
class |
BooleanConstantNode |
class |
CastNode
An CastNode represents a cast expressionr.
|
class |
CharConstantNode |
class |
CoalesceFunctionNode
This node represents coalesce/value function which returns the first argument that is not null.
|
class |
ColumnReference
A ColumnReference represents a column in the query tree.
|
class |
ConcatenationOperatorNode
This node represents a concatenation operator
|
class |
ConditionalNode
A ConditionalNode represents an if/then/else operator with a single
boolean expression on the "left" of the operator and a list of expressions on
the "right".
|
class |
ConstantNode
ConstantNode holds literal constants as well as nulls.
|
class |
CurrentDatetimeOperatorNode
The CurrentDatetimeOperator operator is for the builtin CURRENT_DATE,
CURRENT_TIME, and CURRENT_TIMESTAMP operations.
|
class |
CurrentRowLocationNode
The CurrentRowLocation operator is used by DELETE and UPDATE to get the
RowLocation of the current row for the target table.
|
class |
CurrentSequenceNode
A class that represents a value obtained from a Sequence using 'CURRENT VALUE'
|
class |
DefaultNode
DefaultNode represents a column/parameter default.
|
class |
ExplicitCollateNode
This node represents a COLLATE clause attached to an expression.
|
class |
ExtractOperatorNode
This node represents a unary extract operator, used to extract
a field from a date/time.
|
class |
GenerationClauseNode
This node describes a Generation Clause in a column definition.
|
class |
GroupConcatNode |
class |
InListOperatorNode
An InListOperatorNode represents an IN list.
|
class |
IsNode |
class |
IsNullNode
This node represents either a unary
IS NULL or IS NOT NULL comparison operator
|
class |
JavaToSQLValueNode
This node type converts a value from the Java domain to the SQL domain.
|
class |
LeftRightFuncOperatorNode |
class |
LengthOperatorNode
This node represents a unary XXX_length operator
|
class |
LikeEscapeOperatorNode
This node represents a like comparison operator (no escape)
If the like pattern is a constant or a parameter then if possible
the like is modified to include a >= and < operator.
|
class |
NextSequenceNode
A class that represents a value obtained from a Sequence using 'NEXT VALUE'
|
class |
NotNode
A NotNode represents a NOT operator.
|
class |
NumericConstantNode |
class |
OctetLengthOperatorNode
This node represents a unary DB2 compatible length operator
|
class |
OrNode |
class |
ParameterNode
This node type represents a ? parameter.
|
class |
ResultColumn
A ResultColumn represents a result column in a SELECT, INSERT, or UPDATE
statement.
|
class |
RowConstructorNode |
class |
RowNumberFunctionNode
Class that represents a call to the ROW_NUMBER() window function.
|
class |
SimpleStringOperatorNode
This node represents a unary upper or lower operator
|
class |
SpecialFunctionNode
SpecialFunctionNode handles system SQL functions.
|
class |
SQLBooleanConstantNode |
class |
SubqueryNode
A SubqueryNode represents a subquery.
|
class |
TernaryOperatorNode
A TernaryOperatorNode represents a built-in ternary operators.
|
class |
TestConstraintNode
A TestConstraintNode is used to determine when a constraint
has been violated.
|
class |
TimestampOperatorNode
The TimestampOperatorNode class implements the timestamp( date, time) function.
|
class |
TrimOperatorNode |
class |
UnaryArithmeticOperatorNode
This node represents a unary arithmetic operator
|
class |
UnaryBitOperatorNode
This node represents a unary bit operator
As of now, there is only one such operator: BITNOT.
|
class |
UnaryComparisonOperatorNode
This node is the superclass for all unary comparison operators, such as is null
and is not null.
|
class |
UnaryDateTimestampOperatorNode
This class implements the timestamp(x) and date(x) functions.
|
class |
UnaryLogicalOperatorNode |
class |
UnaryOperatorNode
A UnaryOperatorNode represents a built-in unary operator as defined by
the ANSI/ISO SQL standard.
|
class |
UntypedNullConstantNode
An UntypedNullConstantNode represents a SQL NULL before it has
been bound.
|
class |
UserTypeConstantNode
User type constants.
|
class |
VarbitConstantNode |
class |
VirtualColumnNode
A VirtualColumnNode represents a virtual column reference to a column in
a row returned by an underlying ResultSetNode.
|
class |
WindowFunctionNode
Superclass of any window function call.
|
class |
XMLBinaryOperatorNode
A BinaryOperatorNode represents a built-in binary operator as defined by
the ANSI/ISO SQL standard.
|
class |
XMLConstantNode |
class |
XMLUnaryOperatorNode
A UnaryOperatorNode represents a built-in unary operator as defined by
the ANSI/ISO SQL standard.
|
Modifier and Type | Field and Description |
---|---|
protected ValueNode |
BinaryListOperatorNode.leftOperand |
protected ValueNode |
TernaryOperatorNode.leftOperand |
protected ValueNode |
BinaryOperatorNode.leftOperand |
protected ValueNode |
TernaryOperatorNode.receiver |
protected ValueNode |
TernaryOperatorNode.rightOperand |
protected ValueNode |
BinaryOperatorNode.rightOperand |
Modifier and Type | Method and Description |
---|---|
ValueNode |
CastNode.getCastOperand() |
ValueNode |
GroupByColumn.getColumnExpression() |
ValueNode |
DefaultNode.getDefaultTree()
Get the query tree for the default.
|
ValueNode |
ConditionalNode.getElseNode() |
ValueNode |
ResultColumn.getExpression()
Get the expression in this ResultColumn.
|
ValueNode |
OrderByColumn.getExpression() |
ValueNode |
FromSubquery.getFetchFirst() |
ValueNode |
SubqueryNode.getFetchFirst()
Get FETCH FIRST (used to construct FROM only), cf.
|
ValueNode |
InsertNode.getFetchFirst() |
ValueNode |
CreateViewNode.getFetchFirst() |
ValueNode |
CursorNode.getFetchFirstClause() |
ValueNode |
SelectNode.getHavingClause() |
ValueNode |
JoinNode.getJoinClause() |
ValueNode |
SubqueryNode.getLeftOperand() |
ValueNode |
BinaryListOperatorNode.getLeftOperand()
Get the leftOperand
|
ValueNode |
TernaryOperatorNode.getLeftOperand()
Get the leftOperand
|
ValueNode |
BinaryOperatorNode.getLeftOperand()
Get the leftOperand
|
ValueNode |
FromSubquery.getOffset() |
ValueNode |
SubqueryNode.getOffset()
Get OFFSET (used to construct FROM only), cf.
|
ValueNode |
InsertNode.getOffset() |
ValueNode |
CreateViewNode.getOffset() |
ValueNode |
CursorNode.getOffsetClause() |
ValueNode |
UnaryOperatorNode.getOperand()
Get the operand of this unary operator.
|
ValueNode |
ExplicitCollateNode.getOperand()
Get the operand of this unary operator.
|
ValueNode |
TernaryOperatorNode.getReceiver() |
ValueNode |
TernaryOperatorNode.getRightOperand()
Get the rightOperand
|
ValueNode |
BinaryOperatorNode.getRightOperand()
Get the rightOperand
|
ValueNode |
SQLToJavaValueNode.getSQLValueNode()
Get the SQL ValueNode that is being converted to a JavaValueNode
|
ValueNode |
ConditionalNode.getTestCondition() |
ValueNode |
ConditionalNode.getThenNode() |
ValueNode |
SelectNode.getWhereClause()
Return the whereClause for this SelectNode.
|
Modifier and Type | Method and Description |
---|---|
void |
ValueNodeList.addValueNode(ValueNode valueNode)
Add a ValueNode to the list.
|
protected boolean |
BaseColumnNode.isEquivalent(ValueNode o)
Tests if this node is equivalent to the specified ValueNode.
|
protected boolean |
InListOperatorNode.isEquivalent(ValueNode o) |
protected boolean |
GenerationClauseNode.isEquivalent(ValueNode other) |
protected boolean |
ColumnReference.isEquivalent(ValueNode o) |
protected boolean |
CurrentRowLocationNode.isEquivalent(ValueNode o) |
protected boolean |
CurrentSequenceNode.isEquivalent(ValueNode other) |
protected boolean |
UnaryOperatorNode.isEquivalent(ValueNode o) |
protected boolean |
SubqueryNode.isEquivalent(ValueNode o)
Tests if this node is equivalent to the specified ValueNode.
|
protected boolean |
VirtualColumnNode.isEquivalent(ValueNode o) |
protected boolean |
NextSequenceNode.isEquivalent(ValueNode other) |
protected boolean |
ExplicitCollateNode.isEquivalent(ValueNode o) |
protected boolean |
BinaryListOperatorNode.isEquivalent(ValueNode o) |
protected boolean |
TernaryOperatorNode.isEquivalent(ValueNode o) |
boolean |
ResultColumn.isEquivalent(ValueNode o) |
protected boolean |
JavaToSQLValueNode.isEquivalent(ValueNode o)
Tests if this node is equivalent to the specified ValueNode.
|
protected boolean |
ParameterNode.isEquivalent(ValueNode o) |
protected boolean |
DefaultNode.isEquivalent(ValueNode other) |
protected boolean |
GroupConcatNode.isEquivalent(ValueNode o) |
protected boolean |
RowConstructorNode.isEquivalent(ValueNode o) |
protected boolean |
ConstantNode.isEquivalent(ValueNode o) |
protected boolean |
BinaryOperatorNode.isEquivalent(ValueNode o) |
protected boolean |
CurrentDatetimeOperatorNode.isEquivalent(ValueNode o)
Tests if this node is equivalent to the specified ValueNode.
|
protected boolean |
CoalesceFunctionNode.isEquivalent(ValueNode o)
Tests if this node is equivalent to the specified ValueNode.
|
protected boolean |
CastNode.isEquivalent(ValueNode o)
Tests if this node is equivalent to the specified ValueNode.
|
protected boolean |
ConditionalNode.isEquivalent(ValueNode o)
Tests if this node is equivalent to the specified ValueNode.
|
protected boolean |
SpecialFunctionNode.isEquivalent(ValueNode o) |
protected abstract boolean |
ValueNode.isEquivalent(ValueNode other)
Tests if this node is equivalent to the specified ValueNode.
|
protected boolean |
ValueNode.isSameNodeType(ValueNode other)
Tests if this node is of the same type as the specified node as
reported by
QueryTreeNode.getNodeType() . |
void |
GroupByColumn.setColumnExpression(ValueNode cexpr) |
void |
ConditionalNode.setElseNode(ValueNode elseNode) |
void |
ResultColumn.setExpression(ValueNode expression)
Set the expression in this ResultColumn.
|
void |
SelectNode.setHavingClause(ValueNode havingClause) |
void |
JoinNode.setJoinClause(ValueNode joinClause) |
void |
BinaryListOperatorNode.setLeftOperand(ValueNode newLeftOperand)
Set the leftOperand to the specified ValueNode
|
void |
TernaryOperatorNode.setLeftOperand(ValueNode newLeftOperand)
Set the leftOperand to the specified ValueNode
|
void |
BinaryOperatorNode.setLeftOperand(ValueNode newLeftOperand)
Set the leftOperand to the specified ValueNode
|
void |
UnaryOperatorNode.setOperand(ValueNode operand) |
void |
TernaryOperatorNode.setReceiver(ValueNode receiver) |
void |
ParameterNode.setReturnOutputParam(ValueNode valueNode)
Mark this as a return output parameter (e.g.
|
void |
TernaryOperatorNode.setRightOperand(ValueNode newRightOperand)
Set the rightOperand to the specified ValueNode
|
void |
BinaryOperatorNode.setRightOperand(ValueNode newRightOperand)
Set the rightOperand to the specified ValueNode
|
void |
SQLToJavaValueNode.setSQLValueNode(ValueNode value) |
void |
ConditionalNode.setTestCondition(ValueNode testCondition) |
void |
ConditionalNode.setThenNode(ValueNode thenNode) |
void |
SelectNode.setWhereClause(ValueNode whereClause) |
Modifier and Type | Method and Description |
---|---|
void |
MethodCallNode.addParms(java.util.List<ValueNode> parameterList)
Add the parameter list
|
Copyright © 2013. All Rights Reserved.