| Interface | Description |
|---|---|
| PurityNode |
Interface shared by all kinds of nodes in a PurityGraph.
|
| SootMethodFilter |
Allows specifying which SootMethod you want to analyse in a
AbstractInterproceduralAnalysis.
|
| Class | Description |
|---|---|
| AbstractInterproceduralAnalysis<S> |
Inter-procedural iterator skeleton for summary-based analysis
A "summary" is an abstract element associated to each method that fully
models the effect of calling the method.
|
| DirectedCallGraph |
Builds a DirectedGraph from a CallGraph and SootMethodFilter.
|
| PurityAnalysis |
Purity analysis phase.
|
| PurityEdge |
An edge in a purity graph.
|
| PurityGlobalNode |
The GBL node.
|
| PurityGraph |
Modifications with respect to the article:
- "unanalizable call" are treated by first constructing a conservative
calee graph where all parameters escape globally and return points to
the global node, and then applying the standard analysable call construction
- unanalysable calls add a mutation on the global node; the "field" is named
"outside-world" and models the mutation of any static field, but also
side-effects by native methods, such as I/O, that make methods impure
(see below).
|
| PurityGraphBox |
Simple box class that encapsulates a reference to a PurityGraph.
|
| PurityInterproceduralAnalysis | |
| PurityIntraproceduralAnalysis |
Intra-procedural purity-graph analysis.
|
| PurityMethodNode |
Kind of Stmt inside node, but global to the method.
|
| PurityParamNode |
A node representing a method parameter.
|
| PurityStmtNode |
A node created dynamically and attached to a statement Stmt.
|
| PurityThisNode |
A node representing the this parameter.
|