Package | Description |
---|---|
soot |
Base Soot classes, shared by different intermediate representations.
|
soot.baf |
Public classes for the Baf intermediate representation.
|
soot.baf.internal |
Internal, messy, implementation-specific classes for the Baf intermediate representation.
|
soot.coffi |
Contains classes from the Coffi tool, by Clark Verbrugge.
|
soot.dava.internal.AST | |
soot.dava.internal.javaRep | |
soot.dexpler.typing | |
soot.grimp |
Public classes for the Grimp intermediate representation.
|
soot.grimp.internal |
Internal, messy, implementation-specific classes for the Grimp intermediate representation.
|
soot.jimple |
Public classes for the Jimple intermediate representation.
|
soot.jimple.internal |
Internal, messy, implementation-specific classes for the Jimple intermediate representation.
|
soot.jimple.toolkits.infoflow | |
soot.jimple.toolkits.thread.synchronization | |
soot.jimple.toolkits.typing.fast | |
soot.shimple |
Public classes for the SSA Shimple intermediate representation.
|
soot.shimple.internal |
Shimple internal messy stuff.
|
soot.shimple.toolkits.graph | |
soot.shimple.toolkits.scalar |
Some analyses based on Shimple.
|
soot.tagkit |
Classes supporting classfile annotation in Soot.
|
Modifier and Type | Interface and Description |
---|---|
interface |
IdentityUnit
A unit that assigns to a variable from one of {parameters, this, caughtexception}.
|
interface |
Immediate
A local or constant.
|
interface |
Local
A local variable, used within Body
classes.
|
interface |
Unit
A code fragment (eg Stmt or Inst), used within Body
classes.
|
interface |
Value
Data used as, for instance, arguments to instructions; typical implementations are
constants or expressions.
|
Modifier and Type | Class and Description |
---|---|
class |
AbstractUnit
Provides default implementations for the methods in Unit.
|
class |
AnySubType |
class |
ArrayType
A class that models Java's array types.
|
class |
BooleanType
Soot representation of the Java built-in type 'boolean'.
|
class |
ByteType
Soot representation of the Java built-in type 'byte'.
|
class |
CharType
Soot representation of the Java built-in type 'char'.
|
class |
DoubleType
Soot representation of the Java built-in type 'double'.
|
class |
EquivalentValue
Encapsulates the Value class, but uses EquivTo for equality comparisons.
|
class |
ErroneousType
Soot representation used for untypable objects.
|
class |
FloatType
Soot representation of the Java built-in type 'float'.
|
class |
IntType
Soot representation of the Java built-in type 'int'.
|
class |
LongType
Soot representation of the Java built-in type 'long'.
|
class |
NullType
Soot representation of the Java type 'null'.
|
class |
PrimType
Abstract class for Soot classes that that model Java primitive types
(ie all types except void, null, reference types, and array types)
|
class |
RefLikeType
Abstract class for Soot classes that model subtypes of java.lang.Object
(ie.
|
class |
RefType
A class that models Java's reference types.
|
class |
ShortType
Soot representation of the Java built-in type 'short'.
|
class |
StmtAddressType
Soot representation of the Java type for a statement address.
|
class |
Type
Represents types within Soot, eg
int , java.lang.String . |
class |
UnknownType
Soot representation used for not-yet-typed objects.
|
class |
VoidType
Represents the Java void type.
|
Modifier and Type | Interface and Description |
---|---|
interface |
AddInst |
interface |
AndInst |
interface |
ArrayLengthInst |
interface |
ArrayReadInst |
interface |
ArrayWriteInst |
interface |
CmpgInst |
interface |
CmpInst |
interface |
CmplInst |
interface |
DivInst |
interface |
Dup1_x1Inst |
interface |
Dup1_x2Inst |
interface |
Dup1Inst |
interface |
Dup2_x1Inst |
interface |
Dup2_x2Inst |
interface |
Dup2Inst |
interface |
DupInst |
interface |
DynamicInvokeInst |
interface |
EnterMonitorInst |
interface |
ExitMonitorInst |
interface |
FieldArgInst |
interface |
FieldGetInst |
interface |
FieldPutInst |
interface |
GotoInst |
interface |
IdentityInst |
interface |
IfCmpEqInst |
interface |
IfCmpGeInst |
interface |
IfCmpGtInst |
interface |
IfCmpLeInst |
interface |
IfCmpLtInst |
interface |
IfCmpNeInst |
interface |
IfEqInst |
interface |
IfGeInst |
interface |
IfGtInst |
interface |
IfLeInst |
interface |
IfLtInst |
interface |
IfNeInst |
interface |
IfNonNullInst |
interface |
IfNullInst |
interface |
IncInst |
interface |
Inst |
interface |
InstanceCastInst |
interface |
InstanceOfInst |
interface |
InterfaceInvokeInst |
interface |
JSRInst |
interface |
LoadInst |
interface |
LookupSwitchInst |
interface |
MethodArgInst |
interface |
MulInst |
interface |
NegInst |
interface |
NewArrayInst |
interface |
NewInst |
interface |
NewMultiArrayInst |
interface |
NoArgInst |
interface |
NopInst |
interface |
OpTypeArgInst |
interface |
OrInst |
interface |
PopInst |
interface |
PrimitiveCastInst |
interface |
PushInst |
interface |
RemInst |
interface |
RetInst |
interface |
ReturnInst |
interface |
ReturnVoidInst |
interface |
ShlInst |
interface |
ShrInst |
interface |
SpecialInvokeInst |
interface |
StaticGetInst |
interface |
StaticInvokeInst |
interface |
StaticPutInst |
interface |
StoreInst |
interface |
SubInst |
interface |
SwapInst |
interface |
TableSwitchInst |
interface |
TargetArgInst |
interface |
ThrowInst |
interface |
UshrInst |
interface |
VirtualInvokeInst |
interface |
XorInst |
Modifier and Type | Class and Description |
---|---|
class |
DoubleWordType |
class |
PlaceholderInst |
class |
WordType |
Modifier and Type | Class and Description |
---|---|
class |
Double2ndHalfType |
class |
Long2ndHalfType |
class |
UnusuableType |
Modifier and Type | Class and Description |
---|---|
class |
ASTControlFlowNode |
class |
ASTDoWhileNode |
class |
ASTForLoopNode |
class |
ASTIfElseNode |
class |
ASTIfNode |
class |
ASTLabeledBlockNode |
class |
ASTLabeledNode |
class |
ASTMethodNode |
class |
ASTNode |
class |
ASTStatementSequenceNode |
class |
ASTSwitchNode |
class |
ASTSynchronizedBlockNode |
class |
ASTTryNode |
class |
ASTUnconditionalLoopNode |
class |
ASTWhileNode |
Modifier and Type | Class and Description |
---|---|
class |
DAbruptStmt |
class |
DArrayInitExpr |
class |
DAssignStmt |
class |
DCmpExpr |
class |
DCmpgExpr |
class |
DCmplExpr |
class |
DDecrementStmt |
class |
DIdentityStmt |
class |
DIncrementStmt |
class |
DInstanceFieldRef |
class |
DIntConstant |
class |
DInterfaceInvokeExpr |
class |
DLengthExpr |
class |
DNegExpr |
class |
DNewArrayExpr |
class |
DNewInvokeExpr |
class |
DNewMultiArrayExpr |
class |
DNotExpr |
class |
DShortcutAssignStmt |
class |
DShortcutIf |
class |
DSpecialInvokeExpr |
class |
DStaticFieldRef |
class |
DStaticInvokeExpr |
class |
DThisRef |
class |
DVariableDeclarationStmt |
class |
DVirtualInvokeExpr |
Modifier and Type | Class and Description |
---|---|
class |
UntypedConstant |
class |
UntypedIntOrFloatConstant |
class |
UntypedLongOrDoubleConstant |
Modifier and Type | Interface and Description |
---|---|
interface |
NewInvokeExpr |
Modifier and Type | Class and Description |
---|---|
class |
AbstractGrimpFloatBinopExpr |
class |
AbstractGrimpIntBinopExpr |
class |
AbstractGrimpIntLongBinopExpr |
class |
GAddExpr |
class |
GAndExpr |
class |
GArrayRef |
class |
GAssignStmt |
class |
GCastExpr |
class |
GCmpExpr |
class |
GCmpgExpr |
class |
GCmplExpr |
class |
GDivExpr |
class |
GDynamicInvokeExpr |
class |
GEnterMonitorStmt |
class |
GEqExpr |
class |
GExitMonitorStmt |
class |
GGeExpr |
class |
GGtExpr |
class |
GIdentityStmt |
class |
GIfStmt |
class |
GInstanceFieldRef |
class |
GInstanceOfExpr |
class |
GInterfaceInvokeExpr |
class |
GInvokeStmt |
class |
GLeExpr |
class |
GLengthExpr |
class |
GLookupSwitchStmt |
class |
GLtExpr |
class |
GMulExpr |
class |
GNeExpr |
class |
GNegExpr |
class |
GNewArrayExpr |
class |
GNewInvokeExpr |
class |
GNewMultiArrayExpr |
class |
GOrExpr |
class |
GRemExpr |
class |
GReturnStmt |
class |
GShlExpr |
class |
GShrExpr |
class |
GSpecialInvokeExpr |
class |
GStaticInvokeExpr |
class |
GSubExpr |
class |
GTableSwitchStmt |
class |
GThrowStmt |
class |
GUshrExpr |
class |
GVirtualInvokeExpr |
class |
GXorExpr |
Modifier and Type | Interface and Description |
---|---|
interface |
AddExpr |
interface |
AndExpr |
interface |
AnyNewExpr
Any expression that allocates objects.
|
interface |
ArrayRef |
interface |
AssignStmt |
interface |
BinopExpr |
interface |
BreakpointStmt |
interface |
CastExpr |
interface |
CaughtExceptionRef |
interface |
CmpExpr |
interface |
CmpgExpr |
interface |
CmplExpr |
interface |
ConcreteRef |
interface |
ConditionExpr |
interface |
DefinitionStmt |
interface |
DivExpr |
interface |
DynamicInvokeExpr |
interface |
EnterMonitorStmt |
interface |
EqExpr |
interface |
ExitMonitorStmt |
interface |
Expr |
interface |
FieldRef |
interface |
GeExpr |
interface |
GotoStmt |
interface |
GtExpr |
interface |
IdentityRef |
interface |
IdentityStmt |
interface |
IfStmt |
interface |
InstanceFieldRef |
interface |
InstanceInvokeExpr |
interface |
InstanceOfExpr |
interface |
InterfaceInvokeExpr |
interface |
InvokeExpr |
interface |
InvokeStmt |
interface |
LeExpr |
interface |
LengthExpr |
interface |
LookupSwitchStmt |
interface |
LtExpr |
interface |
MonitorStmt |
interface |
MulExpr |
interface |
NeExpr |
interface |
NegExpr |
interface |
NewArrayExpr |
interface |
NewExpr |
interface |
NewMultiArrayExpr |
interface |
NopStmt |
interface |
OrExpr |
interface |
Ref |
interface |
RemExpr |
interface |
RetStmt |
interface |
ReturnStmt |
interface |
ReturnVoidStmt |
interface |
ShlExpr |
interface |
ShrExpr |
interface |
SpecialInvokeExpr |
interface |
StaticInvokeExpr |
interface |
Stmt |
interface |
SubExpr |
interface |
SwitchStmt |
interface |
TableSwitchStmt |
interface |
ThrowStmt |
interface |
UnopExpr |
interface |
UshrExpr |
interface |
VirtualInvokeExpr |
interface |
XorExpr |
Modifier and Type | Class and Description |
---|---|
class |
ArithmeticConstant |
class |
ClassConstant |
class |
Constant |
class |
DoubleConstant |
class |
FloatConstant |
class |
IntConstant |
class |
LongConstant |
class |
MethodHandle |
class |
NullConstant |
class |
NumericConstant |
class |
ParameterRef
ParameterRef objects are used by Body
objects to refer to the parameter slots on method entry. |
class |
PlaceholderStmt |
class |
RealConstant |
class |
StaticFieldRef |
class |
StringConstant |
class |
ThisRef |
Modifier and Type | Class and Description |
---|---|
class |
AbstractDataSource |
class |
CachedEquivalentValue
An
EquivalentValue with cached hash code and equals-relation. |
class |
FakeJimpleLocal |
Modifier and Type | Class and Description |
---|---|
class |
DeadlockAvoidanceEdge |
class |
NewStaticLock |
Modifier and Type | Class and Description |
---|---|
class |
BottomType |
class |
Integer127Type |
class |
Integer1Type |
class |
Integer32767Type |
Modifier and Type | Interface and Description |
---|---|
interface |
PhiExpr
A fully defined PhiExpr usually consists of a list of Values for
the arguments alongst with the corresponding control flow
predecessor for each argument.
|
interface |
PiExpr |
interface |
ShimpleExpr |
Modifier and Type | Class and Description |
---|---|
class |
SPhiExpr
Internal implementation of Phi nodes.
|
class |
SPiExpr |
Modifier and Type | Class and Description |
---|---|
protected static class |
ValueGraph.TypeValueWrapper |
Modifier and Type | Class and Description |
---|---|
static class |
SEvaluator.BottomConstant
Bottom i.e.
|
static class |
SEvaluator.MetaConstant
Head of a new hierarchy of constants -- Top and Bottom.
|
static class |
SEvaluator.TopConstant
Top i.e.
|
Modifier and Type | Class and Description |
---|---|
class |
AnnotationAnnotationElem
Represents the base class of annotation elements
each annotation can have several elements
for Java 1.5.
|
class |
AnnotationArrayElem
Represents the base class of annotation elements
each annotation can have several elements
for Java 1.5.
|
class |
AnnotationBooleanElem |
class |
AnnotationClassElem
Represents the base class of annotation elements
each annotation can have several elements
for Java 1.5.
|
class |
AnnotationDoubleElem
Represents the int annotation element
each annotation can have several elements
for Java 1.5.
|
class |
AnnotationElem
Represents the base class of annotation elements
each annotation can have several elements
for Java 1.5.
|
class |
AnnotationEnumElem
Represents the base class of annotation elements
each annotation can have several elements
for Java 1.5.
|
class |
AnnotationFloatElem
Represents the int annotation element
each annotation can have several elements
for Java 1.5.
|
class |
AnnotationIntElem
Represents the int annotation element
each annotation can have several elements
for Java 1.5.
|
class |
AnnotationLongElem
Represents the int annotation element
each annotation can have several elements
for Java 1.5.
|
class |
AnnotationStringElem
Represents the base class of annotation elements
each annotation can have several elements
for Java 1.5.
|