Class AbstractEntity
java.lang.Object
com.ibm.wala.cast.ir.translator.AbstractEntity
- All Implemented Interfaces:
CAstEntity
- Direct Known Subclasses:
AbstractClassEntity, AbstractCodeEntity, AbstractFieldEntity, AbstractGlobalEntity
-
Field Summary
Fields inherited from interface CAstEntity
FIELD_ENTITY, FILE_ENTITY, FUNCTION_ENTITY, GLOBAL_ENTITY, MACRO_ENTITY, RULE_ENTITY, SCRIPT_ENTITY, SUB_LANGUAGE_BASE, TYPE_ENTITYModifier and TypeFieldDescriptionstatic final intThis entity is a field in an object-oriented language.static final intThis entity is a source file (i.e.static final intThis entity is a function.static final intThis entity represents a global variablestatic final intThis entity is a macro.static final intThis entity represents a rule in a logic language.static final intThis entity is a program script for a scripting language.static final intLanguages that introduce new kinds of CAstEntity should use this number as the base of integers chosen to denote the new entity types.static final intThis entity is a type in an object-oriented language. -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidaddScopedEntity(CAstNode construct, CAstEntity child) Map<CAstNode, @NonNull Collection<CAstEntity>> Some programming language constructs have a lexical structure.Returns the set of any annotations this entity may haveThe source position of this entity.getScopedEntities(CAstNode construct) Some programming language constructs have a lexical structure.Some programming language constructs have signatures, which are like names but usually have some detail to distinguish the construct from others with the same name.voidMethods inherited from class Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface CAstEntity
getArgumentCount, getArgumentDefaults, getArgumentNames, getAST, getControlFlow, getKind, getName, getNamePosition, getNodeTypeMap, getOriginal, getPosition, getQualifiers, getSourceMap, getTypeModifier and TypeMethodDescriptionintSome programming language constructs have a specific number of arguments.CAstNode[]Some programming language constructs allow arguments to have default values.String[]Some programming language constructs have named arguments.getAST()The CAPA AST of this entity.The control flow map for the CAPA AST of this entity.intgetKind()What kind of entity is this? The answer should be one of the constants in this file.getName()Some programming language constructs have names.The source position of the token denoting this entity's name.The map from CAstNodes to types.default CAstEntityAllow finding original entity after rewritesgetPosition(int arg) The source position of argument 'arg' this entity, if any;Returns an Iterator over the qualifiers of the given entity, if it has any, e.g., "final", "private".The map of CAstNodes to source positions for the CAPA AST of this entity.getType()The CAst type of this entity.
-
Constructor Details
-
AbstractEntity
public AbstractEntity()
-
-
Method Details
-
getAllScopedEntities
Description copied from interface:CAstEntitySome programming language constructs have a lexical structure. This should be those constructs that are directly inside the current one. The result of this method is a map from source construct to the set of entities induced by that construct. Entities induced by no particular construct are mapped by the null key.- Specified by:
getAllScopedEntitiesin interfaceCAstEntity
-
getSignature
Description copied from interface:CAstEntitySome programming language constructs have signatures, which are like names but usually have some detail to distinguish the construct from others with the same name. Signatures often denote typing information as well, but this is not required. This method should return a signature if appropriate, and null otherwise.- Specified by:
getSignaturein interfaceCAstEntity
-
getAnnotations
Description copied from interface:CAstEntityReturns the set of any annotations this entity may have- Specified by:
getAnnotationsin interfaceCAstEntity
-
setPosition
-
getPosition
Description copied from interface:CAstEntityThe source position of this entity.- Specified by:
getPositionin interfaceCAstEntity
-
getScopedEntities
Description copied from interface:CAstEntitySome programming language constructs have a lexical structure. This should be those constructs that are directly inside the current one. The result of this method is the scoped entities induced by the construct `construct' (i.e. a node of the AST returned byEnclosed entities not induced by a specific AST node are mapped by the construct 'null'.
- Specified by:
getScopedEntitiesin interfaceCAstEntity
-
addScopedEntity
-