public class DummyScope extends java.lang.Object implements Scope
Constructor and Description |
---|
DummyScope() |
Modifier and Type | Method and Description |
---|---|
void |
addDeclaration(ClassNameDeclaration decl)
Add a class declaration to this scope
|
void |
addDeclaration(MethodNameDeclaration decl)
Add a method declaration to this scope
|
void |
addDeclaration(VariableNameDeclaration decl)
Add a variable declaration to this scope
|
NameDeclaration |
addVariableNameOccurrence(NameOccurrence occ)
Adds a NameOccurrence to this scope - only call this after getting
a true back from contains()
|
boolean |
contains(NameOccurrence occ)
Tests whether or not a NameOccurrence is directly contained in the scope
Note that this search is just for this scope - it doesn't go diving into any
child scopes.
|
java.util.Map<ClassNameDeclaration,java.util.List<NameOccurrence>> |
getClassDeclarations()
Returns a Map (VariableNameDeclaration->List(NameOccurrence,NameOccurrence)) of declarations that
exist at this scope
|
ClassScope |
getEnclosingClassScope()
Goes searching up the tree for this scope's enclosing ClassScope
This is handy if you're buried down in a LocalScope and need to
hop up to the ClassScope to find a method name.
|
MethodScope |
getEnclosingMethodScope()
Goes searching up the tree for this scope's enclosing MethodScope
This is handy if you're buried down in a LocalScope and need to
hop up to the MethodScope to find a method parameter.
|
SourceFileScope |
getEnclosingSourceFileScope()
Goes searching up the tree for this scope's enclosing SourceFileScope
This is handy if you're buried down in a LocalScope and need to
hop up to the SourceFileScope to find a class name.
|
Scope |
getParent()
Retrieves this scope's parent
|
java.util.Map<VariableNameDeclaration,java.util.List<NameOccurrence>> |
getVariableDeclarations()
Returns a Map (VariableNameDeclaration->List(NameOccurrence,NameOccurrence)) of declarations that
exist at this scope
|
void |
setParent(Scope parent)
Points this scope to its parent
|
public java.util.Map<VariableNameDeclaration,java.util.List<NameOccurrence>> getVariableDeclarations()
Scope
getVariableDeclarations
in interface Scope
public java.util.Map<ClassNameDeclaration,java.util.List<NameOccurrence>> getClassDeclarations()
Scope
getClassDeclarations
in interface Scope
public void addDeclaration(ClassNameDeclaration decl)
Scope
addDeclaration
in interface Scope
public void addDeclaration(VariableNameDeclaration decl)
Scope
addDeclaration
in interface Scope
public void addDeclaration(MethodNameDeclaration decl)
Scope
addDeclaration
in interface Scope
public boolean contains(NameOccurrence occ)
Scope
public NameDeclaration addVariableNameOccurrence(NameOccurrence occ)
Scope
addVariableNameOccurrence
in interface Scope
public void setParent(Scope parent)
Scope
public Scope getParent()
Scope
public ClassScope getEnclosingClassScope()
Scope
getEnclosingClassScope
in interface Scope
public SourceFileScope getEnclosingSourceFileScope()
Scope
getEnclosingSourceFileScope
in interface Scope
public MethodScope getEnclosingMethodScope()
Scope
getEnclosingMethodScope
in interface Scope