## org.codehaus.groovy.ast
Class VariableScope

    java.lang.Object
      org.codehaus.groovy.ast.VariableScope

    public class VariableScope

extends Object

Represents a variable scope. This is primarily used to determine variable sharing across method and closure boundaries.

Version:
  $Revision: 9929 $
Author:
  James Strachan, Jochen Theodorou

Constructor Summary
`VariableScope()`
`VariableScope(VariableScope parent)`

Method Summary
`VariableScope` `copy()`
`ClassNode` `getClassScope()`
`Variable` `getDeclaredVariable(String name)`
`VariableScope` `getParent()`
`Variable` `getReferencedClassVariable(String name)`
`Map` `getReferencedClassVariables()` Gets a map containing the class variables referenced by this scope.
`Iterator` `getReferencedClassVariablesIterator()` Gets an iterator for the referenced class variables.
`Variable` `getReferencedLocalVariable(String name)`
`int` `getReferencedLocalVariablesCount()`
`Iterator` `getReferencedLocalVariablesIterator()`
`boolean` `isClassScope()`
`boolean` `isInStaticContext()`
`boolean` `isReferencedClassVariable(String name)`
`boolean` `isReferencedLocalVariable(String name)`
`boolean` `isResolvingDynamic()`
`boolean` `isRoot()`
`void` `putDeclaredVariable(Variable var)`
`void` `putReferencedClassVariable(Variable var)`
`void` `putReferencedLocalVariable(Variable var)`
`Object` `removeReferencedClassVariable(String name)`
`void` `setClassScope(ClassNode node)`
`void` `setDynamicResolving(boolean resolvesDynamic)`
`void` `setInStaticContext(boolean inStaticContext)`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Constructor Detail

### VariableScope

    public VariableScope()

### VariableScope

    public VariableScope(VariableScope parent)

Method Detail

### getDeclaredVariable

    public Variable getDeclaredVariable(String name)

### isReferencedLocalVariable

    public boolean isReferencedLocalVariable(String name)

### isReferencedClassVariable

    public boolean isReferencedClassVariable(String name)

### getParent

    public VariableScope getParent()

### isInStaticContext

    public boolean isInStaticContext()

### setInStaticContext

    public void setInStaticContext(boolean inStaticContext)

### isResolvingDynamic

    public boolean isResolvingDynamic()

### setDynamicResolving

    public void setDynamicResolving(boolean resolvesDynamic)

### setClassScope

    public void setClassScope(ClassNode node)

### getClassScope

    public ClassNode getClassScope()

### isClassScope

    public boolean isClassScope()

### isRoot

    public boolean isRoot()

### copy

    public VariableScope copy()

### putDeclaredVariable

    public void putDeclaredVariable(Variable var)

### getReferencedLocalVariablesIterator

    public Iterator getReferencedLocalVariablesIterator()

### getReferencedLocalVariablesCount

    public int getReferencedLocalVariablesCount()

### getReferencedLocalVariable

    public Variable getReferencedLocalVariable(String name)

### putReferencedLocalVariable

    public void putReferencedLocalVariable(Variable var)

### putReferencedClassVariable

    public void putReferencedClassVariable(Variable var)

### getReferencedClassVariable

    public Variable getReferencedClassVariable(String name)

### removeReferencedClassVariable

    public Object removeReferencedClassVariable(String name)

### getReferencedClassVariables

    public Map getReferencedClassVariables()

  Gets a map containing the class variables referenced by this scope. This not can not be modified.

  Returns:
    a map containing the class variable references

### getReferencedClassVariablesIterator

    public Iterator getReferencedClassVariablesIterator()

  Gets an iterator for the referenced class variables. The remove operation is not supported.

  Returns:
    an iterator for the referenced class variables

Copyright © 2003-2008 The Codehaus. All rights reserved.