org.eigenbase.sql.validate
Class ParameterScope

java.lang.Object
  extended by org.eigenbase.sql.validate.EmptyScope
      extended by org.eigenbase.sql.validate.ParameterScope
All Implemented Interfaces:
SqlValidatorScope

public class ParameterScope
extends EmptyScope

A scope which contains nothing besides a few parameters. Like EmptyScope (which is its base class), it has no parent scope.

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

Field Summary
private  Map<String,RelDataType> nameToTypeMap
          Map from the simple names of the parameters to types of the parameters (RelDataType).
 
Fields inherited from class org.eigenbase.sql.validate.EmptyScope
validator
 
Constructor Summary
ParameterScope(SqlValidatorImpl validator, Map<String,RelDataType> nameToTypeMap)
           
 
Method Summary
 SqlIdentifier fullyQualify(SqlIdentifier identifier)
          Converts an identifier into a fully-qualified identifier.
 SqlValidatorScope getOperandScope(SqlCall call)
          Returns the scope within which operands to a call are to be validated.
 SqlValidatorNamespace resolve(String name, SqlValidatorScope[] ancestorOut, int[] offsetOut)
          Looks up a node with a given name.
 
Methods inherited from class org.eigenbase.sql.validate.EmptyScope
addChild, findAliases, findAllColumnNames, findAllTableNames, findQualifyingTableName, getMonotonicity, getNode, getOrderList, getValidator, lookupWindow, resolveColumn, validateExpr
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

nameToTypeMap

private final Map<String,RelDataType> nameToTypeMap
Map from the simple names of the parameters to types of the parameters (RelDataType).

Constructor Detail

ParameterScope

public ParameterScope(SqlValidatorImpl validator,
                      Map<String,RelDataType> nameToTypeMap)
Method Detail

fullyQualify

public SqlIdentifier fullyQualify(SqlIdentifier identifier)
Description copied from interface: SqlValidatorScope
Converts an identifier into a fully-qualified identifier. For example, the "empno" in "select empno from emp natural join dept" becomes "emp.empno".

Specified by:
fullyQualify in interface SqlValidatorScope
Overrides:
fullyQualify in class EmptyScope

getOperandScope

public SqlValidatorScope getOperandScope(SqlCall call)
Description copied from interface: SqlValidatorScope
Returns the scope within which operands to a call are to be validated. Usually it is this scope, but when the call is to an aggregate function and this is an aggregating scope, it will be a a different scope.

Specified by:
getOperandScope in interface SqlValidatorScope
Overrides:
getOperandScope in class EmptyScope
Parameters:
call - Call
Returns:
Scope within which to validate arguments to call.

resolve

public SqlValidatorNamespace resolve(String name,
                                     SqlValidatorScope[] ancestorOut,
                                     int[] offsetOut)
Description copied from interface: SqlValidatorScope
Looks up a node with a given name. Returns null if none is found.

Specified by:
resolve in interface SqlValidatorScope
Overrides:
resolve in class EmptyScope
Parameters:
name - Name of node to find
ancestorOut - If not null, writes the ancestor scope here
offsetOut - If not null, writes the offset within the ancestor here