Constructor and Description |
---|
ReferenceTable() |
Modifier and Type | Method and Description |
---|---|
ReferenceTable |
add(LocalReference reference) |
ReferenceTable |
flatDeepCopy(boolean turnIntoConstants) |
ReferenceTable |
fork() |
LocalReference |
get(java.lang.String name) |
boolean |
hasReferenceFor(java.lang.String name) |
java.util.Collection<LocalReference> |
ownedReferences() |
java.util.Set<java.lang.String> |
ownedSymbols() |
java.util.Collection<LocalReference> |
references() |
void |
relink(ReferenceTable parent)
Make the given table a parent of this scope.
|
void |
relinkTopLevel(ReferenceTable topLevel)
Make the given table the top-level parent of this scope.
|
void |
remove(java.lang.String name) |
int |
size() |
java.util.Set<java.lang.String> |
symbols() |
java.lang.String |
toString() |
void |
updateFrom(GoloStatement statement) |
public ReferenceTable add(LocalReference reference)
public int size()
public boolean hasReferenceFor(java.lang.String name)
public void updateFrom(GoloStatement statement)
public LocalReference get(java.lang.String name)
public java.util.Set<java.lang.String> ownedSymbols()
public java.util.Collection<LocalReference> ownedReferences()
public void relink(ReferenceTable parent)
Scope
public void relinkTopLevel(ReferenceTable topLevel)
Scope
Go up in the hierarchy of parent scope, and set the root to the given table.
relinkTopLevel
in interface Scope
public java.util.Set<java.lang.String> symbols()
public java.util.Collection<LocalReference> references()
public ReferenceTable fork()
public ReferenceTable flatDeepCopy(boolean turnIntoConstants)
public void remove(java.lang.String name)
public java.lang.String toString()
toString
in class java.lang.Object