Package org.apache.calcite.sql.util
Class SqlShuttle.CallCopyingArgHandler
- java.lang.Object
-
- org.apache.calcite.sql.util.SqlShuttle.CallCopyingArgHandler
-
- All Implemented Interfaces:
SqlBasicVisitor.ArgHandler<SqlNode>
- Enclosing class:
- SqlShuttle
protected class SqlShuttle.CallCopyingArgHandler extends java.lang.Object implements SqlBasicVisitor.ArgHandler<SqlNode>
Implementation ofSqlBasicVisitor.ArgHandler
that deep-copiesSqlCall
s and their operands.
-
-
Field Summary
Fields Modifier and Type Field Description private boolean
alwaysCopy
private SqlCall
call
(package private) SqlNode[]
clonedOperands
(package private) boolean
update
-
Constructor Summary
Constructors Constructor Description CallCopyingArgHandler(SqlCall call, boolean alwaysCopy)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description SqlNode
result()
Returns the result of visiting all children of a call to an operator, then the call itself.SqlNode
visitChild(SqlVisitor<SqlNode> visitor, SqlNode expr, int i, SqlNode operand)
Visits a particular operand of a call, using a given visitor.
-
-
-
Constructor Detail
-
CallCopyingArgHandler
public CallCopyingArgHandler(SqlCall call, boolean alwaysCopy)
-
-
Method Detail
-
result
public SqlNode result()
Description copied from interface:SqlBasicVisitor.ArgHandler
Returns the result of visiting all children of a call to an operator, then the call itself.Typically the result will be the result of the last child visited, or (if R is
Boolean
) whether all children were visited successfully.- Specified by:
result
in interfaceSqlBasicVisitor.ArgHandler<SqlNode>
-
visitChild
public SqlNode visitChild(SqlVisitor<SqlNode> visitor, SqlNode expr, int i, SqlNode operand)
Description copied from interface:SqlBasicVisitor.ArgHandler
Visits a particular operand of a call, using a given visitor.- Specified by:
visitChild
in interfaceSqlBasicVisitor.ArgHandler<SqlNode>
-
-