org.eigenbase.sql.util
Class SqlBasicVisitor<R>

java.lang.Object
  extended by org.eigenbase.sql.util.SqlBasicVisitor<R>
All Implemented Interfaces:
SqlVisitor<R>
Direct Known Subclasses:
AggChecker, AggFinder, LucidDbSqlValidator.EquiJoinFinder, SqlBetweenOperator.AndFinder, SqlShuttle, Util.BacktrackVisitor

public class SqlBasicVisitor<R>
extends Object
implements SqlVisitor<R>

Basic implementation of SqlVisitor which does nothing at each node.

This class is useful as a base class for classes which implement the SqlVisitor interface. The derived class can override whichever methods it chooses.

Version:
$Id: //open/dev/farrago/src/org/eigenbase/sql/util/SqlBasicVisitor.java#15 $
Author:
jhyde

Nested Class Summary
static interface SqlBasicVisitor.ArgHandler<R>
           
static class SqlBasicVisitor.ArgHandlerImpl<R>
          Default implementation of SqlBasicVisitor.ArgHandler which merely calls SqlNode.accept(org.eigenbase.sql.util.SqlVisitor) on each operand.
 
Constructor Summary
SqlBasicVisitor()
           
 
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.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

SqlBasicVisitor

public SqlBasicVisitor()
Method Detail

visit

public R visit(SqlLiteral literal)
Description copied from interface: SqlVisitor
Visits a literal.

Specified by:
visit in interface SqlVisitor<R>
Parameters:
literal - Literal
See Also:
SqlLiteral.accept(SqlVisitor)

visit

public R visit(SqlCall call)
Description copied from interface: SqlVisitor
Visits a call to a SqlOperator.

Specified by:
visit in interface SqlVisitor<R>
Parameters:
call - Call
See Also:
SqlCall.accept(SqlVisitor)

visit

public R visit(SqlNodeList nodeList)
Description copied from interface: SqlVisitor
Visits a list of SqlNode objects.

Specified by:
visit in interface SqlVisitor<R>
Parameters:
nodeList - list of nodes
See Also:
SqlNodeList.accept(SqlVisitor)

visit

public R visit(SqlIdentifier id)
Description copied from interface: SqlVisitor
Visits an identifier.

Specified by:
visit in interface SqlVisitor<R>
Parameters:
id - identifier
See Also:
SqlIdentifier.accept(SqlVisitor)

visit

public R visit(SqlDataTypeSpec type)
Description copied from interface: SqlVisitor
Visits a datatype specification.

Specified by:
visit in interface SqlVisitor<R>
Parameters:
type - datatype specification
See Also:
SqlDataTypeSpec.accept(SqlVisitor)

visit

public R visit(SqlDynamicParam param)
Description copied from interface: SqlVisitor
Visits a dynamic parameter.

Specified by:
visit in interface SqlVisitor<R>
Parameters:
param - Dynamic parameter
See Also:
SqlDynamicParam.accept(SqlVisitor)

visit

public R visit(SqlIntervalQualifier intervalQualifier)
Description copied from interface: SqlVisitor
Visits an interval qualifier

Specified by:
visit in interface SqlVisitor<R>
Parameters:
intervalQualifier - Interval qualifier
See Also:
SqlIntervalQualifier.accept(SqlVisitor)