Groovy Documentation

## org.codehaus.groovy.ast
[Java] Class VariableScope

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

    public class VariableScope
    extends java.lang.Object

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

Authors:
  James Strachan
  Jochen Theodorou

Version:
  \$Revision\$

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

Method Summary
`VariableScope` | `copy()`
`ClassNode` | `getClassScope()` Non-null iff this scope corresponds to a class; as opposed to a method, "if" statement, block statement, etc.
`Variable` | `getDeclaredVariable(java.lang.String name)`
`VariableScope` | `getParent()`
`Variable` | `getReferencedClassVariable(java.lang.String name)`
`java.util.Map` | `getReferencedClassVariables()` Gets a map containing the class variables referenced by this scope.
`java.util.Iterator` | `getReferencedClassVariablesIterator()` Gets an iterator for the referenced class variables.
`Variable` | `getReferencedLocalVariable(java.lang.String name)`
`int` | `getReferencedLocalVariablesCount()`
`java.util.Iterator` | `getReferencedLocalVariablesIterator()`
`boolean` | `isClassScope()` Returns true iff this scope corresponds to a class; as opposed to a method, "if" statement, block statement, etc.
`boolean` | `isInStaticContext()`
`boolean` | `isReferencedClassVariable(java.lang.String name)`
`boolean` | `isReferencedLocalVariable(java.lang.String name)`
`boolean` | `isRoot()`
`void` | `putDeclaredVariable(Variable var)`
`void` | `putReferencedClassVariable(Variable var)`
`void` | `putReferencedLocalVariable(Variable var)`
`java.lang.Object` | `removeReferencedClassVariable(java.lang.String name)`
`void` | `setClassScope(ClassNode node)`
`void` | `setInStaticContext(boolean inStaticContext)`

Methods inherited from class java.lang.Object
java.lang.Object#wait(long), java.lang.Object#wait(long, int), java.lang.Object#wait(), java.lang.Object#equals(java.lang.Object), java.lang.Object#toString(), java.lang.Object#hashCode(), java.lang.Object#getClass(), java.lang.Object#notify(), java.lang.Object#notifyAll()

Constructor Detail

### VariableScope

    public VariableScope()

### VariableScope

    public VariableScope(VariableScope parent)

Method Detail

### copy

    public VariableScope copy()

### getClassScope

    public ClassNode getClassScope()

  Non-null iff this scope corresponds to a class; as opposed to a method, "if" statement, block statement, etc.

### getDeclaredVariable

    public Variable getDeclaredVariable(java.lang.String name)

### getParent

    public VariableScope getParent()

### getReferencedClassVariable

    public Variable getReferencedClassVariable(java.lang.String name)

### getReferencedClassVariables

    public java.util.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 java.util.Iterator getReferencedClassVariablesIterator()

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

### getReferencedLocalVariable

    public Variable getReferencedLocalVariable(java.lang.String name)

### getReferencedLocalVariablesCount

    public int getReferencedLocalVariablesCount()

### getReferencedLocalVariablesIterator

    public java.util.Iterator getReferencedLocalVariablesIterator()

### isClassScope

    public boolean isClassScope()

  Returns true iff this scope corresponds to a class; as opposed to a method, "if" statement, block statement, etc.

### isInStaticContext

    public boolean isInStaticContext()

### isReferencedClassVariable

    public boolean isReferencedClassVariable(java.lang.String name)

### isReferencedLocalVariable

    public boolean isReferencedLocalVariable(java.lang.String name)

### isRoot

    public boolean isRoot()

### putDeclaredVariable

    public void putDeclaredVariable(Variable var)

### putReferencedClassVariable

    public void putReferencedClassVariable(Variable var)

### putReferencedLocalVariable

    public void putReferencedLocalVariable(Variable var)

### removeReferencedClassVariable

    public java.lang.Object removeReferencedClassVariable(java.lang.String name)

### setClassScope

    public void setClassScope(ClassNode node)

### setInStaticContext

    public void setInStaticContext(boolean inStaticContext)

Groovy Documentation