Class AstTranslator.AstLexicalInformation
java.lang.Object
com.ibm.wala.cast.ir.translator.AstTranslator.AstLexicalInformation
- All Implemented Interfaces:
AstMethod.LexicalInformation
- Enclosing class:
AstTranslator
public static class AstTranslator.AstLexicalInformation
extends Object
implements AstMethod.LexicalInformation
lexical access information for some entity scope. used during call graph construction to handle
lexical accesses.
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionreturn all value numbers appearing as entries in eitherAstMethod.LexicalInformation.getExposedUses(int)
orAstMethod.LexicalInformation.getExitExposedUses()
int[]
maps each exposed name (via its index inAstMethod.LexicalInformation.getExposedNames()
) to its value number at method exit.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 inAstMethod.LexicalInformation.getExposedNames()
) to its value number at the instruction at offset instructionOffset.get the name of this entity, as it appears in the definer portion of a lexical nameString[]
return the names of the enclosing methods declaring names that are lexically accessed by the entitystatic 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
-
Constructor Details
-
AstLexicalInformation
-
-
Method Details
-
getExitExposedUses
public int[] getExitExposedUses()Description copied from interface:AstMethod.LexicalInformation
maps each exposed name (via its index inAstMethod.LexicalInformation.getExposedNames()
) to its value number at method exit.- Specified by:
getExitExposedUses
in interfaceAstMethod.LexicalInformation
-
getExposedUses
public int[] getExposedUses(int instructionOffset) Description copied from interface:AstMethod.LexicalInformation
get a map from exposed name (via its index inAstMethod.LexicalInformation.getExposedNames()
) to its value number at the instruction at offset instructionOffset.- Specified by:
getExposedUses
in interfaceAstMethod.LexicalInformation
-
getAllExposedUses
Description copied from interface:AstMethod.LexicalInformation
return all value numbers appearing as entries in eitherAstMethod.LexicalInformation.getExposedUses(int)
orAstMethod.LexicalInformation.getExitExposedUses()
- Specified by:
getAllExposedUses
in interfaceAstMethod.LexicalInformation
-
getExposedNames
Description copied from interface:AstMethod.LexicalInformation
names possibly accessed in a nested lexical scope, represented as pairs (name,nameOfDefiningEntity)- Specified by:
getExposedNames
in interfaceAstMethod.LexicalInformation
-
getScopingParents
Description copied from interface:AstMethod.LexicalInformation
return the names of the enclosing methods declaring names that are lexically accessed by the entity- Specified by:
getScopingParents
in interfaceAstMethod.LexicalInformation
-
isReadOnly
Description copied from interface:AstMethod.LexicalInformation
returns true if name may be read in nested lexical scopes but cannot be written- Specified by:
isReadOnly
in interfaceAstMethod.LexicalInformation
-
getScopingName
Description copied from interface:AstMethod.LexicalInformation
get the name of this entity, as it appears in the definer portion of a lexical name- Specified by:
getScopingName
in interfaceAstMethod.LexicalInformation
-
hasExposedUses
-