org.eigenbase.sql.validate
Class UnnestNamespace
java.lang.Object
org.eigenbase.sql.validate.AbstractNamespace
org.eigenbase.sql.validate.UnnestNamespace
- All Implemented Interfaces:
- SqlValidatorNamespace
class UnnestNamespace
- extends AbstractNamespace
Namespace for UNNEST.
- Since:
- Mar 25, 2003
- Version:
- $Id: //open/dev/farrago/src/org/eigenbase/sql/validate/UnnestNamespace.java#11 $
- Author:
- wael
Methods inherited from class org.eigenbase.sql.validate.AbstractNamespace |
fieldExists, getEnclosingNode, getMonotonicExprs, getMonotonicity, getRowType, 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 |
unnest
private final SqlCall unnest
scope
private final SqlValidatorScope scope
UnnestNamespace
UnnestNamespace(SqlValidatorImpl validator,
SqlCall unnest,
SqlValidatorScope scope,
SqlNode enclosingNode)
validateImpl
protected 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
inferReturnType
private RelDataType inferReturnType()
- Returns the type of the argument to UNNEST.
getNode
public SqlNode getNode()
- Description copied from interface:
SqlValidatorNamespace
- Returns the parse tree node at the root of this namespace.
- Returns:
- parse tree node