ptolemy.data.expr
Class ExplicitScope

java.lang.Object
  extended by ptolemy.data.expr.ExplicitScope
All Implemented Interfaces:
ParserScope

public class ExplicitScope
extends java.lang.Object
implements ParserScope

An implementation of ParserScope that includes an explicit list of Variables in the scope.

Since:
Ptolemy II 2.1
Version:
$Id: ExplicitScope.java 47482 2007-12-06 18:33:55Z cxh $
Author:
Steve Neuendorffer
Accepted Rating:
Red (liuxj)
Proposed Rating:
Red (liuxj)

Field Summary
private  NamedList _list
           
 
Constructor Summary
ExplicitScope(NamedList list)
          Construct a new scope that includes the objects in the given list, which must contain only variables.
 
Method Summary
 Token get(java.lang.String name)
          Look up and return the value with the specified name in the scope.
 Type getType(java.lang.String name)
          Look up and return the type of the value with the specified name in the scope.
 InequalityTerm getTypeTerm(java.lang.String name)
          Look up and return the type term for the specified name in the scope.
 java.util.Set identifierSet()
          Return the list of variables within the scope.
 NamedList variableList()
          Return the list of variables in this scope.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

_list

private NamedList _list
Constructor Detail

ExplicitScope

public ExplicitScope(NamedList list)
Construct a new scope that includes the objects in the given list, which must contain only variables.

Parameters:
list - The list of variables for the scope.
Method Detail

get

public Token get(java.lang.String name)
          throws IllegalActionException
Look up and return the value with the specified name in the scope. Return null if the name is not defined in this scope.

Specified by:
get in interface ParserScope
Parameters:
name - The name of the variable to be looked up.
Returns:
The token associated with the given name in the scope.
Throws:
IllegalActionException - If a value in the scope exists with the given name, but cannot be evaluated.

getType

public Type getType(java.lang.String name)
             throws IllegalActionException
Look up and return the type of the value with the specified name in the scope. Return null if the name is not defined in this scope.

Specified by:
getType in interface ParserScope
Parameters:
name - The name of the variable to be looked up.
Returns:
The token associated with the given name in the scope.
Throws:
IllegalActionException - If a value in the scope exists with the given name, but cannot be evaluated.

getTypeTerm

public InequalityTerm getTypeTerm(java.lang.String name)
                           throws IllegalActionException
Look up and return the type term for the specified name in the scope. Return null if the name is not defined in this scope, or is a constant type.

Specified by:
getTypeTerm in interface ParserScope
Parameters:
name - The name of the variable to be looked up.
Returns:
The InequalityTerm associated with the given name in the scope.
Throws:
IllegalActionException - If a value in the scope exists with the given name, but cannot be evaluated.

identifierSet

public java.util.Set identifierSet()
Return the list of variables within the scope.

Specified by:
identifierSet in interface ParserScope
Returns:
The list of variables within the scope.

variableList

public NamedList variableList()
Return the list of variables in this scope.

Returns:
The list of variables in this scope.