org.eigenbase.sql.validate
Class ParameterNamespace

java.lang.Object
  extended by org.eigenbase.sql.validate.AbstractNamespace
      extended by org.eigenbase.sql.validate.ParameterNamespace
All Implemented Interfaces:
SqlValidatorNamespace

 class ParameterNamespace
extends AbstractNamespace

Namespace representing the type of a dynamic parameter.

Since:
Mar 25, 2003
Version:
$Id: //open/dev/farrago/src/org/eigenbase/sql/validate/ParameterNamespace.java#8 $
Author:
jhyde
See Also:
ParameterScope

Field Summary
private  RelDataType type
           
 
Fields inherited from class org.eigenbase.sql.validate.AbstractNamespace
enclosingNode, rowType, validator
 
Constructor Summary
ParameterNamespace(SqlValidatorImpl validator, RelDataType type)
           
 
Method Summary
 SqlNode getNode()
          Returns the parse tree node at the root of this namespace.
 RelDataType getRowType()
          Returns the row type of this namespace, which comprises a list of names and types of the output columns.
 RelDataType validateImpl()
          Validates this scope and returns the type of the records it returns.
 
Methods inherited from class org.eigenbase.sql.validate.AbstractNamespace
fieldExists, getEnclosingNode, getMonotonicExprs, getMonotonicity, getRowTypeSansSystemColumns, getTable, getValidator, isWrapperFor, lookupChild, makeNullable, setRowType, translate, unwrap, validate
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

type

private final RelDataType type
Constructor Detail

ParameterNamespace

public ParameterNamespace(SqlValidatorImpl validator,
                          RelDataType type)
Method Detail

getNode

public SqlNode getNode()
Description copied from interface: SqlValidatorNamespace
Returns the parse tree node at the root of this namespace.

Returns:
parse tree node

validateImpl

public RelDataType validateImpl()
Description copied from class: AbstractNamespace
Validates this scope and returns the type of the records it returns. External users should call AbstractNamespace.validate(), which uses the AbstractNamespace.status field to protect against cycles.

Specified by:
validateImpl in class AbstractNamespace
Returns:
record data type, never null

getRowType

public RelDataType getRowType()
Description copied from interface: SqlValidatorNamespace
Returns the row type of this namespace, which comprises a list of names and types of the output columns. If the scope's type has not yet been derived, derives it. Never returns null.

Specified by:
getRowType in interface SqlValidatorNamespace
Overrides:
getRowType in class AbstractNamespace