Package soot.tagkit
Interface Host
-
- All Known Subinterfaces:
AddInst,AndInst,ArrayLengthInst,ArrayReadInst,ArrayWriteInst,AssignStmt,BranchableStmt,BreakpointStmt,CmpgInst,CmpInst,CmplInst,DefinitionStmt,DivInst,Dup1_x1Inst,Dup1_x2Inst,Dup1Inst,Dup2_x1Inst,Dup2_x2Inst,Dup2Inst,DupInst,DynamicInvokeInst,EnterMonitorInst,EnterMonitorStmt,ExitMonitorInst,ExitMonitorStmt,FieldArgInst,FieldGetInst,FieldPutInst,GotoInst,GotoStmt,IdentityInst,IdentityStmt,IdentityUnit,IfCmpEqInst,IfCmpGeInst,IfCmpGtInst,IfCmpLeInst,IfCmpLtInst,IfCmpNeInst,IfEqInst,IfGeInst,IfGtInst,IfLeInst,IfLtInst,IfNeInst,IfNonNullInst,IfNullInst,IfStmt,IncInst,Inst,InstanceCastInst,InstanceOfInst,InterfaceInvokeInst,InvokeStmt,JSRInst,LoadInst,LookupSwitchInst,LookupSwitchStmt,MethodArgInst,MonitorStmt,MulInst,NegInst,NewArrayInst,NewInst,NewMultiArrayInst,NoArgInst,NopInst,NopStmt,NopUnit,OpTypeArgInst,OrInst,PopInst,PrimitiveCastInst,PushInst,RemInst,RetInst,RetStmt,ReturnInst,ReturnStmt,ReturnVoidInst,ReturnVoidStmt,ShlInst,ShrInst,SpecialInvokeInst,StaticGetInst,StaticInvokeInst,StaticPutInst,Stmt,StoreInst,SubInst,SwapInst,SwitchInst,SwitchStmt,TableSwitchInst,TableSwitchStmt,TargetArgInst,ThrowInst,ThrowStmt,Unit,UshrInst,ValueBox,VirtualInvokeInst,XorInst
- All Known Implementing Classes:
AbstractBranchInst,AbstractDefinitionStmt,AbstractHost,AbstractInst,AbstractInvokeInst,AbstractOpStmt,AbstractOpTypeBranchInst,AbstractOpTypeInst,AbstractRefTypeInst,AbstractStmt,AbstractSwitchInst,AbstractSwitchStmt,AbstractUnit,AbstractValueBox,ASTControlFlowNode,ASTDoWhileNode,ASTForLoopNode,ASTIfElseNode,ASTIfNode,ASTLabeledBlockNode,ASTLabeledNode,ASTMethodNode,ASTNode,ASTStatementSequenceNode,ASTSwitchNode,ASTSynchronizedBlockNode,ASTTryNode,ASTUnconditionalLoopNode,ASTWhileNode,BAddInst,BafBody,BafLocalBox,BAndInst,BArrayLengthInst,BArrayReadInst,BArrayWriteInst,BCmpgInst,BCmpInst,BCmplInst,BDivInst,BDup1_x1Inst,BDup1_x2Inst,BDup1Inst,BDup2_x1Inst,BDup2_x2Inst,BDup2Inst,BDupInst,BDynamicInvokeInst,BeginStmt,BEnterMonitorInst,BExitMonitorInst,BFieldGetInst,BFieldPutInst,BGotoInst,BIdentityInst,BIfCmpEqInst,BIfCmpGeInst,BIfCmpGtInst,BIfCmpLeInst,BIfCmpLtInst,BIfCmpNeInst,BIfEqInst,BIfGeInst,BIfGtInst,BIfLeInst,BIfLtInst,BIfNeInst,BIfNonNullInst,BIfNullInst,BIncInst,BInstanceCastInst,BInstanceOfInst,BInterfaceInvokeInst,BJSRInst,BLoadInst,BLookupSwitchInst,BMulInst,BNegInst,BNewArrayInst,BNewInst,BNewMultiArrayInst,BNopInst,Body,BOrInst,BPopInst,BPrimitiveCastInst,BPushInst,BRemInst,BReturnInst,BReturnVoidInst,BShlInst,BShrInst,BSpecialInvokeInst,BStaticGetInst,BStaticInvokeInst,BStaticPutInst,BStoreInst,BSubInst,BSwapInst,BTableSwitchInst,BThrowInst,BUshrInst,BVirtualInvokeInst,BXorInst,ConditionExprBox,DAbruptStmt,DArrayInitValueBox,DAssignStmt,DavaBody,DDecrementStmt,DIdentityStmt,DIncrementStmt,DShortcutAssignStmt,DVariableDeclarationStmt,ExprBox,GAssignStmt,GEnterMonitorStmt,GExitMonitorStmt,GIdentityStmt,GIfStmt,GInvokeStmt,GLookupSwitchStmt,GReturnStmt,GrimpBody,GRValueBox,GTableSwitchStmt,GThrowStmt,IdentityRefBox,ImmediateBox,InvokeExprBox,JAssignStmt,JAssignStmt.LinkedRValueBox,JAssignStmt.LinkedVariableBox,JBreakpointStmt,JEnterMonitorStmt,JExitMonitorStmt,JGotoStmt,JIdentityStmt,JIfStmt,JimpleBody,JimpleLocalBox,JInvokeStmt,JLookupSwitchStmt,JNopStmt,JoinStmt,JPegStmt,JRetStmt,JReturnStmt,JReturnVoidStmt,JTableSwitchStmt,JThrowStmt,MonitorEntryStmt,MonitorExitStmt,NotifiedEntryStmt,NotifyAllStmt,NotifyStmt,ObjExprBox,OtherStmt,PlaceholderInst,PlaceholderStmt,RValueBox,ShimpleBody,SootClass,SootField,SootMethod,SootModuleInfo,StartStmt,StmtBody,SValueUnitPair,ValueUnitPair,VariableBox,WaitingStmt,WaitStmt
public interface HostA "taggable" object. Implementing classes can have arbitrary labelled data attached to them. Currently, only classes, fields, methods and the Scene are Hosts. One example of a tag would be to store Boolean values, associated with array accesses, indicating whether bounds checks can be omitted.- See Also:
Tag
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description voidaddAllTagsOf(Host h)Adds all the tags from h to this host.voidaddTag(Tag t)Adds a tag.intgetJavaSourceStartColumnNumber()Returns the Java source line column if available.intgetJavaSourceStartLineNumber()Returns the Java source line number if available.TaggetTag(String aName)Returns the tag with the given name.List<Tag>getTags()Gets a list of tags associated with the current object.booleanhasTag(String aName)Returns true if this host has a tag with the given name.voidremoveAllTags()Removes all the tags from this host.voidremoveTag(String name)Removes the first tag with the given name.
-
-
-
Method Detail
-
addTag
void addTag(Tag t)
Adds a tag.
-
removeTag
void removeTag(String name)
Removes the first tag with the given name.
-
hasTag
boolean hasTag(String aName)
Returns true if this host has a tag with the given name.
-
removeAllTags
void removeAllTags()
Removes all the tags from this host.
-
addAllTagsOf
void addAllTagsOf(Host h)
Adds all the tags from h to this host.
-
getJavaSourceStartLineNumber
int getJavaSourceStartLineNumber()
Returns the Java source line number if available. Returns -1 if not.
-
getJavaSourceStartColumnNumber
int getJavaSourceStartColumnNumber()
Returns the Java source line column if available. Returns -1 if not.
-
-