Interface | Description |
---|---|
ClassMember |
Provides methods common to Soot objects belonging to classes,
namely SootField and SootMethod.
|
ClassProvider |
A class provider looks for a file of a specific format for a specified
class, and returns a ClassSource for it if it finds it.
|
Context |
A context in a context-sensitive all graph.
|
EquivTo |
An alternate equivalence relation
between objects.
|
EscapeAnalysis |
A generic interface to an escape analysis.
|
G.GlobalObjectGetter | |
HasPhaseOptions |
Interface for things like Packs and phases that have phase options.
|
IdentityUnit |
A unit that assigns to a variable from one of {parameters, this, caughtexception}.
|
Immediate |
A local or constant.
|
IntegerType |
Soot interface implemented by all classes representing
integer types [boolean, byte, short, char, and int].
|
Local |
A local variable, used within Body
classes.
|
MethodOrMethodContext |
A common interface for either just a method, or a method with context.
|
MethodSource |
A class which knows how to produce Body's for SootMethods.
|
PointsToAnalysis |
A generic interface to any type of pointer analysis.
|
PointsToSet |
A generic interface to some set of runtime objects computed by a
pointer analysis.
|
SideEffectTester |
Provides side effect information.
|
SootFieldRef |
Representation of a reference to a field as it appears in a class file.
|
SootMethodRef |
Representation of a reference to a method as it appears in a class file.
|
Trap |
A trap (exception catcher), used within Body
classes.
|
Unit |
A code fragment (eg Stmt or Inst), used within Body
classes.
|
UnitBox |
A box which can contain units.
|
UnitBoxOwner |
An implementor of this interface indicates that it may contain
UnitBoxes.
|
UnitPrinter |
Interface for different methods of printing out a Unit.
|
Value |
Data used as, for instance, arguments to instructions; typical implementations are
constants or expressions.
|
ValueBox |
A box which can contain values.
|
Class | Description |
---|---|
AbstractASMBackend |
Abstract super-class for ASM-based back-ends.
|
AbstractJasminClass | |
AbstractSootFieldRef |
Representation of a reference to a field as it appears in a class file.
|
AbstractTrap |
Partial implementation of trap (exception catcher), used within Body
classes.
|
AbstractUnit |
Provides default implementations for the methods in Unit.
|
AbstractUnitAllMapTo<K,V> | |
AbstractUnitBox |
Reference implementation for UnitBox; just
add a canContainUnit method.
|
AbstractUnitPrinter |
Partial default UnitPrinter implementation.
|
AbstractValueBox |
Reference implementation for ValueBox; just
add a canContainValue method.
|
AnySubType | |
ArrayType |
A class that models Java's array types.
|
AttributesUnitPrinter |
Adds PositionTags to ValueBoxes to identify their position in the output.
|
Body |
Abstract base class that models the body (code attribute) of a Java method.
|
BodyPack |
A wrapper object for a pack of optimizations.
|
BodyTransformer |
An abstract class which acts on a Body.
|
BooleanType |
Soot representation of the Java built-in type 'boolean'.
|
BriefUnitPrinter |
UnitPrinter implementation for normal (full) Jimple, Grimp, and Baf
|
ByteType |
Soot representation of the Java built-in type 'byte'.
|
CharType |
Soot representation of the Java built-in type 'char'.
|
ClassSource |
A class source is responsible for resolving a single class from a
particular source format (.class, .jimple, .java, etc.)
|
CoffiClassProvider |
A class provider looks for a file of a specific format for a specified
class, and returns a ClassSource for it if it finds it.
|
CoffiClassSource |
A class source for resolving from .class files through coffi.
|
DexClassProvider |
Looks for a dex file which includes the definition of a class.
|
DexClassSource |
Responsible for resolving a single class from a dex source format.
|
DoubleType |
Soot representation of the Java built-in type 'double'.
|
EntryPoints |
Returns the various potential entry points of a Java program.
|
EquivalentValue |
Encapsulates the Value class, but uses EquivTo for equality comparisons.
|
ErroneousType |
Soot representation used for untypable objects.
|
FastHierarchy |
Represents the class hierarchy.
|
FloatType |
Soot representation of the Java built-in type 'float'.
|
FoundFile | |
G |
A class to group together all the global variables in Soot.
|
Hierarchy |
Represents the class hierarchy.
|
IntType |
Soot representation of the Java built-in type 'int'.
|
JastAddInitialResolver |
An
IInitialResolver for the JastAdd frontend. |
JavaClassProvider |
A class provider looks for a file of a specific format for a specified
class, and returns a ClassSource for it if it finds it.
|
JavaClassSource |
A class source for resolving from .java files using javaToJimple.
|
JavaToJimpleBodyPack |
A wrapper object for a pack of optimizations.
|
JimpleBodyPack |
A wrapper object for a pack of optimizations.
|
JimpleClassProvider |
A class provider looks for a file of a specific format for a specified
class, and returns a ClassSource for it if it finds it.
|
JimpleClassSource |
A class source for resolving from .jimple files using the Jimple parser.
|
Kind |
Enumeration type representing the kind of a call graph edge.
|
LabeledUnitPrinter |
UnitPrinter implementation for representations that have labelled stmts,
such as Jimple, Grimp, and Baf
|
LongType |
Soot representation of the Java built-in type 'long'.
|
Main |
Main class for Soot; provides Soot's command-line user interface.
|
MethodContext |
Represents a pair of a method and a context.
|
MethodToContexts |
Keeps track of the various contexts associated with each method.
|
Modifier |
A class that provides static methods and constants to represent and
work with with Java modifiers (ie public, final,...)
Represents Java modifiers as int constants that can be packed and
combined by bitwise operations and methods to query these.
|
NormalUnitPrinter |
UnitPrinter implementation for normal (full) Jimple, Grimp, and Baf
|
NullType |
Soot representation of the Java type 'null'.
|
Pack |
A wrapper object for a pack of optimizations.
|
PackManager |
Manages the Packs containing the various phases and their options.
|
PatchingChain<E extends Unit> |
An implementation of a Chain which can contain only Units,
and handles patching to deal with element insertions and removals.
|
PhaseOptions |
Manages the phase options of the various soot phases.
|
PrimType |
Abstract class for Soot classes that that model Java primitive types
(ie all types except void, null, reference types, and array types)
|
Printer |
Prints out a class and all its methods.
|
RadioScenePack |
A wrapper object for a pack of optimizations.
|
RefLikeType |
Abstract class for Soot classes that model subtypes of java.lang.Object
(ie.
|
RefType |
A class that models Java's reference types.
|
Scene |
Manages the SootClasses of the application being analyzed.
|
ScenePack |
A wrapper object for a pack of optimizations.
|
SceneTransformer |
An abstract class which acts on the whole Scene.
|
ShortType |
Soot representation of the Java built-in type 'short'.
|
SootClass |
Soot representation of a Java class.
|
SootField |
Soot representation of a Java field.
|
SootMethod |
Soot representation of a Java method.
|
SootMethodRefImpl |
Representation of a reference to a method as it appears in a class file.
|
SootResolver |
Loads symbols for SootClasses from either class files or jimple files.
|
SourceLocator |
Provides utility methods to retrieve an input stream for a class name, given
a classfile, or jimple or baf output files.
|
StmtAddressType |
Soot representation of the Java type for a statement address.
|
Timer |
Utility class providing a timer.
|
Timers | |
Transform |
Maintains the pair (phaseName, singleton) needed for a
transformation.
|
Transformer |
An abstract class which acts on some Soot object.
|
TrapManager |
Utility methods for dealing with traps.
|
Type |
Represents types within Soot, eg
int , java.lang.String . |
TypeSwitch |
Implements Switchable on base Java types.
|
UnknownMethodSource |
A MethodSource for methods that don't know where to get Body's from.
|
UnknownType |
Soot representation used for not-yet-typed objects.
|
VoidType |
Represents the Java void type.
|
XMLAttributesPrinter |
Exception | Description |
---|---|
AndroidPlatformException |
Exception that is thrown when Soot cannot find the correct platform API
version for a DEX or APK file
|
CompilationDeathException | |
ConflictingFieldRefException |
Exception that is thrown when code tries to resolve a reference for some
field "fld: type1", but the target class already declares a field "fld:
type2".
|
JavaClassProvider.JarException | |
OptionsParseException | |
ResolutionFailedException |
Exception thrown when resolving a method or field reference fails.
|