public static class AstTranslator.AstLexicalInformation extends Object implements AstMethod.LexicalInformation
| Constructor and Description |
|---|
AstLexicalInformation(AstTranslator.AstLexicalInformation original) |
| Modifier and Type | Method and Description |
|---|---|
IntSet |
getAllExposedUses()
return all value numbers appearing as entries in either
AstMethod.LexicalInformation.getExposedUses(int) or AstMethod.LexicalInformation.getExitExposedUses() |
int[] |
getExitExposedUses()
maps each exposed name (via its index in
AstMethod.LexicalInformation.getExposedNames()) to
its value number at method exit. |
Pair<String,String>[] |
getExposedNames()
names possibly accessed in a nested lexical scope, represented as pairs
(name,nameOfDefiningEntity)
|
int[] |
getExposedUses(int instructionOffset)
get a map from exposed name (via its index in
AstMethod.LexicalInformation.getExposedNames())
to its value number at the instruction at offset instructionOffset. |
String |
getScopingName()
get the name of this entity, as it appears in the definer portion of a
lexical name
|
String[] |
getScopingParents()
return the names of the enclosing methods declaring names that are
lexically accessed by the entity
|
static boolean |
hasExposedUses(CGNode caller,
CallSiteReference site) |
boolean |
isReadOnly(String name)
returns true if name may be read in nested lexical scopes but cannot be
written
|
public AstLexicalInformation(AstTranslator.AstLexicalInformation original)
public int[] getExitExposedUses()
AstMethod.LexicalInformationAstMethod.LexicalInformation.getExposedNames()) to
its value number at method exit.getExitExposedUses in interface AstMethod.LexicalInformationpublic int[] getExposedUses(int instructionOffset)
AstMethod.LexicalInformationAstMethod.LexicalInformation.getExposedNames())
to its value number at the instruction at offset instructionOffset.getExposedUses in interface AstMethod.LexicalInformationpublic IntSet getAllExposedUses()
AstMethod.LexicalInformationAstMethod.LexicalInformation.getExposedUses(int) or AstMethod.LexicalInformation.getExitExposedUses()getAllExposedUses in interface AstMethod.LexicalInformationpublic Pair<String,String>[] getExposedNames()
AstMethod.LexicalInformationgetExposedNames in interface AstMethod.LexicalInformationpublic String[] getScopingParents()
AstMethod.LexicalInformationgetScopingParents in interface AstMethod.LexicalInformationpublic boolean isReadOnly(String name)
AstMethod.LexicalInformationisReadOnly in interface AstMethod.LexicalInformationpublic String getScopingName()
AstMethod.LexicalInformationgetScopingName in interface AstMethod.LexicalInformationpublic static boolean hasExposedUses(CGNode caller, CallSiteReference site)