public abstract class SqlAlter extends SqlCall
EMPTY_ARRAY, pos
Constructor and Description |
---|
SqlAlter(SqlParserPos pos) |
SqlAlter(SqlParserPos pos,
String scope) |
Modifier and Type | Method and Description |
---|---|
String |
getScope() |
void |
setScope(String scope) |
void |
unparse(SqlWriter writer,
int leftPrec,
int rightPrec)
Writes a SQL representation of this node to a writer.
|
protected abstract void |
unparseAlterOperation(SqlWriter writer,
int leftPrec,
int rightPrec) |
accept, clone, equalsDeep, findValidOptions, getCallSignature, getFunctionQuantifier, getKind, getMonotonicity, getOperandList, getOperator, isCountStar, isExpanded, operand, operandCount, setOperand, validate
clone, clone, cloneArray, equalDeep, equalDeep, equalsDeep, getParserPosition, isA, toList, toList, toSqlString, toSqlString, toSqlString, toString, unparseWithParentheses, validateExpr
public SqlAlter(SqlParserPos pos)
public SqlAlter(SqlParserPos pos, String scope)
public final void unparse(SqlWriter writer, int leftPrec, int rightPrec)
SqlNode
The leftPrec
and rightPrec
parameters give
us enough context to decide whether we need to enclose the expression in
parentheses. For example, we need parentheses around "2 + 3" if preceded
by "5 *". This is because the precedence of the "*" operator is greater
than the precedence of the "+" operator.
The algorithm handles left- and right-associative operators by giving them slightly different left- and right-precedence.
If SqlWriter.isAlwaysUseParentheses()
is true, we use
parentheses even when they are not required by the precedence rules.
For the details of this algorithm, see SqlCall.unparse(org.apache.calcite.sql.SqlWriter, int, int)
.
protected abstract void unparseAlterOperation(SqlWriter writer, int leftPrec, int rightPrec)
public String getScope()
public void setScope(String scope)
Copyright © 2012-2020 Apache Software Foundation. All Rights Reserved.