org.eigenbase.sql.util
Interface SqlVisitor<R>

All Known Implementing Classes:
AggChecker, AggFinder, LucidDbSqlValidator.EquiJoinFinder, SqlBasicVisitor, SqlBetweenOperator.AndFinder, SqlScopedShuttle, SqlShuttle, SqlToRelConverter.AggConverter, SqlToRelConverter.Blackboard, SqlValidatorImpl.DeriveTypeVisitor, SqlValidatorImpl.Expander, SqlValidatorImpl.OrderExpressionExpander, SqlValidatorUtil.DeepCopier, Util.BacktrackVisitor

public interface SqlVisitor<R>

Visitor class, follows the visitor pattern.

The type parameter R is the return type of each visit() method. If the methods do not need to return a value, use Void.

Version:
$Id: //open/dev/farrago/src/org/eigenbase/sql/util/SqlVisitor.java#14 $
Author:
jhyde
See Also:
SqlBasicVisitor, SqlNode.accept(SqlVisitor), SqlOperator.acceptCall(org.eigenbase.sql.util.SqlVisitor, org.eigenbase.sql.SqlCall)

Method Summary
 R visit(SqlCall call)
          Visits a call to a SqlOperator.
 R visit(SqlDataTypeSpec type)
          Visits a datatype specification.
 R visit(SqlDynamicParam param)
          Visits a dynamic parameter.
 R visit(SqlIdentifier id)
          Visits an identifier.
 R visit(SqlIntervalQualifier intervalQualifier)
          Visits an interval qualifier
 R visit(SqlLiteral literal)
          Visits a literal.
 R visit(SqlNodeList nodeList)
          Visits a list of SqlNode objects.
 

Method Detail

visit

R visit(SqlLiteral literal)
Visits a literal.

Parameters:
literal - Literal
See Also:
SqlLiteral.accept(SqlVisitor)

visit

R visit(SqlCall call)
Visits a call to a SqlOperator.

Parameters:
call - Call
See Also:
SqlCall.accept(SqlVisitor)

visit

R visit(SqlNodeList nodeList)
Visits a list of SqlNode objects.

Parameters:
nodeList - list of nodes
See Also:
SqlNodeList.accept(SqlVisitor)

visit

R visit(SqlIdentifier id)
Visits an identifier.

Parameters:
id - identifier
See Also:
SqlIdentifier.accept(SqlVisitor)

visit

R visit(SqlDataTypeSpec type)
Visits a datatype specification.

Parameters:
type - datatype specification
See Also:
SqlDataTypeSpec.accept(SqlVisitor)

visit

R visit(SqlDynamicParam param)
Visits a dynamic parameter.

Parameters:
param - Dynamic parameter
See Also:
SqlDynamicParam.accept(SqlVisitor)

visit

R visit(SqlIntervalQualifier intervalQualifier)
Visits an interval qualifier

Parameters:
intervalQualifier - Interval qualifier
See Also:
SqlIntervalQualifier.accept(SqlVisitor)