ptolemy.data.expr
Class Variable.VariableScope

java.lang.Object
  extended by ptolemy.data.expr.ModelScope
      extended by ptolemy.data.expr.Variable.VariableScope
All Implemented Interfaces:
ParserScope
Enclosing class:
Variable

protected class Variable.VariableScope
extends ModelScope

Scope implementation with local caching.


Field Summary
private  NamedObj _reference
           
 
Constructor Summary
Variable.VariableScope()
          Construct a scope consisting of the variables of the container of the the enclosing instance of Variable and its containers and their scope-extending attributes.
Variable.VariableScope(NamedObj reference)
          Construct a scope consisting of the variables of the specified container its containers and their scope-extending attributes.
 
Method Summary
 Token get(java.lang.String name)
          Look up and return the attribute with the specified name in the scope.
 Type getType(java.lang.String name)
          Look up and return the type of the attribute 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.
 Variable getVariable(java.lang.String name)
          Look up and return the attribute with the specified name in the scope.
 java.util.Set identifierSet()
          Return the list of identifiers within the scope.
 
Methods inherited from class ptolemy.data.expr.ModelScope
getAllScopedObjectNames, getAllScopedVariableNames, getScopedAttribute, getScopedObject, getScopedVariable, preferenceValue
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

_reference

private NamedObj _reference
Constructor Detail

Variable.VariableScope

public Variable.VariableScope()
Construct a scope consisting of the variables of the container of the the enclosing instance of Variable and its containers and their scope-extending attributes.


Variable.VariableScope

public Variable.VariableScope(NamedObj reference)
Construct a scope consisting of the variables of the specified container its containers and their scope-extending attributes. If the argument is null, then use the container of the enclosing instance of Variable as the reference for the scope.

Parameters:
reference - The reference for the scope.
Method Detail

get

public Token get(java.lang.String name)
          throws IllegalActionException
Look up and return the attribute with the specified name in the scope. Return null if such an attribute does not exist.

Parameters:
name - The name of the attribute.
Returns:
The attribute with the specified 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 attribute with the specified name in the scope. Return null if such an attribute does not exist.

Parameters:
name - The name of the attribute.
Returns:
The attribute with the specified 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.

Parameters:
name - The name of the attribute.
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.

getVariable

public Variable getVariable(java.lang.String name)
                     throws IllegalActionException
Look up and return the attribute with the specified name in the scope. Return null if such an attribute does not exist.

Parameters:
name - The name of the attribute.
Returns:
The attribute with the specified 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 identifiers within the scope.

Returns:
The list of variable names within the scope.