soot.tagkit
Interface Host

All Known Subinterfaces:
AddInst, AndInst, ArrayLengthInst, ArrayReadInst, ArrayWriteInst, AssignStmt, BreakpointStmt, CmpgInst, CmpInst, CmplInst, DefinitionStmt, DivInst, Dup1_x1Inst, Dup1_x2Inst, Dup1Inst, Dup2_x1Inst, Dup2_x2Inst, Dup2Inst, DupInst, 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, LoadInst, LookupSwitchInst, LookupSwitchStmt, MethodArgInst, MonitorStmt, MulInst, NegInst, NewArrayInst, NewInst, NewMultiArrayInst, NoArgInst, NopInst, NopStmt, OpTypeArgInst, OrInst, PopInst, PrimitiveCastInst, PushInst, RemInst, RetInst, RetStmt, ReturnInst, ReturnStmt, ReturnVoidInst, ReturnVoidStmt, ShlInst, ShrInst, SpecialInvokeInst, StaticGetInst, StaticInvokeInst, StaticPutInst, Stmt, StoreInst, SubInst, SwapInst, TableSwitchInst, TableSwitchStmt, TargetArgInst, ThrowInst, ThrowStmt, Unit, UshrInst, ValueBox, VirtualInvokeInst, XorInst
All Known Implementing Classes:
AbstractHost

public interface Host

A "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
 void addAllTagsOf(Host h)
          Adds all the tags from h to this host.
 void addTag(Tag t)
          Adds a tag.
 Tag getTag(java.lang.String aName)
          Returns the tag with the given name.
 java.util.List getTags()
          Gets a list of tags associated with the current object.
 boolean hasTag(java.lang.String aName)
          Returns true if this host has a tag with the given name.
 void removeAllTags()
          Removes all the tags from this host.
 void removeTag(java.lang.String name)
          Removes the first tag with the given name.
 

Method Detail

getTags

public java.util.List getTags()
Gets a list of tags associated with the current object.

getTag

public Tag getTag(java.lang.String aName)
Returns the tag with the given name.

addTag

public void addTag(Tag t)
Adds a tag.

removeTag

public void removeTag(java.lang.String name)
Removes the first tag with the given name.

hasTag

public boolean hasTag(java.lang.String aName)
Returns true if this host has a tag with the given name.

removeAllTags

public void removeAllTags()
Removes all the tags from this host.

addAllTagsOf

public void addAllTagsOf(Host h)
Adds all the tags from h to this host.