public interface Scope
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.
|
Map<ClassNameDeclaration,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
|
Map<VariableNameDeclaration,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
|
Map<VariableNameDeclaration,List<NameOccurrence>> getVariableDeclarations()
Map<ClassNameDeclaration,List<NameOccurrence>> getClassDeclarations()
void addDeclaration(ClassNameDeclaration decl)
void addDeclaration(VariableNameDeclaration decl)
void addDeclaration(MethodNameDeclaration decl)
boolean contains(NameOccurrence occ)
NameDeclaration addVariableNameOccurrence(NameOccurrence occ)
void setParent(Scope parent)
Scope getParent()
ClassScope getEnclosingClassScope()
SourceFileScope getEnclosingSourceFileScope()
MethodScope getEnclosingMethodScope()
Copyright © 2002-2013 InfoEther. All Rights Reserved.