Public Methods | |
Slicer (SootClass relClasses[], AnnotationManager annoManager) | |
Slicer (SootClass relClasses[], Vector interestVector, AnnotationManager annoManager) | |
void | buildPDG () |
PostProcessOnAnnotation | getPostProcessOnAnnotation () |
void | postProcessingOnAnnotation () |
boolean | preProcessing (Vector sliceCriterionVector) |
void | printCriterion () |
SootClass[] | result () |
void | run () throws Exception |
void | slicing () |
Static Public Attributes | |
boolean | Turn_On_BOFA = true |
edu ksu cis bandera bofa Analysis | BOFA_Analysis = null |
AnnotationManager | annManagerForSlicer = null |
Set | reachableMethods |
Set | unreachableClasses |
Map | sootMethodInfoMap = null |
SliceTraceNode | sliceTraceRoot |
Set | allSliceTraceNodes |
Private Methods | |
void | basicInformation () |
void | buildInterfaceAndSuperClassMap () |
void | collectOriginalMethods () |
void | collectReachableMethods () |
void | dumpJimpleCode (SootClass dumpedClasses[], String extension) |
Set | getInvokedMdsFrom (InvokeExpr invokeExpr, SootMethod enclosingMethod) |
Set | getInvokedMdsFrom (Stmt stmt, SootMethod enclosingMethod) |
Set | getStartingMethods () |
boolean | haveStaticFields (SootClass sootClass) |
void | moreInformation () |
void | outputResidualCls (boolean sliced) |
void | postProcessing () |
void | slicingMethods () |
Static Private Methods | |
boolean | isMethodOfObject (SootMethod sm) |
boolean | isObjectClass (SootClass sc) |
boolean | isRemovableClass (SootClass sootClass, Set residualSootClasses) |
void | printJimpleClass (SootClass sClass) |
Private Attributes | |
PostProcessOnAnnotation | postProcessOnAnnotation = null |
SootClass | residualSootClassArray [] |
List | classInfoList = new ArrayList() |
AnnotationManager | cfanns |
Vector | sliceInterestVec |
Static Private Attributes | |
Map | interfaceImplementedByMap = null |
Set | originalMethods = null |
int | classNum |
SootClass | relevantClassArray [] |
Slicer slicer = new Slicer(sootClassArray, sliceCriterion, annotationManager);
slicer.run();
... ...
SootClass sliceResult[] = slicer.result();
Definition at line 66 of file Slicer.java.
|
The constructor for the case that there is NO slicing criterion specified by users.
Definition at line 128 of file Slicer.java. |
|
The constructor for the case that there is slicing criterion specified by users.
Definition at line 159 of file Slicer.java. |
|
Build up classInfoList and interfaceImplementedByMap for each class. Definition at line 169 of file Slicer.java. Referenced by buildPDG(), and run().
|
|
Insert the method's description here. Creation date: (00-10-21 1:16:30) Definition at line 208 of file Slicer.java. Referenced by buildPDG(), and run().
|
|
Build PDG without slicing criterion: basicInformation(), moreInformation(). Definition at line 258 of file Slicer.java. |
|
Collect all methods with slicing criterion into originalMethods. Definition at line 275 of file Slicer.java. Referenced by buildPDG(), and run().
|
|
Insert the method's description here. Creation date: (00-10-21 0:03:47) Definition at line 288 of file Slicer.java. Referenced by buildPDG(), and run().
|
|
Dump a set of soot classes into files with provided extension.
Definition at line 341 of file Slicer.java. |
|
Insert the method's description here. Creation date: (00-10-21 1:38:48)
Definition at line 399 of file Slicer.java. |
|
Insert the method's description here. Creation date: (00-10-21 1:48:49)
Definition at line 362 of file Slicer.java. Referenced by collectReachableMethods(), and getInvokedMdsFrom().
|
|
Insert the method's description here. Creation date: (00-12-6 16:17:08)
Definition at line 425 of file Slicer.java. |
|
Insert the method's description here. Creation date: (00-10-21 0:09:43)
Definition at line 433 of file Slicer.java. Referenced by collectReachableMethods().
|
|
Insert the method's description here. Creation date: (00-12-18 10:59:00)
Definition at line 487 of file Slicer.java. Referenced by basicInformation().
|
|
Insert the method's description here. Creation date: (00-10-26 20:25:41)
Definition at line 502 of file Slicer.java. Referenced by slicingMethods().
|
|
Insert the method's description here. Creation date: (00-10-31 9:27:42)
Definition at line 513 of file Slicer.java. Referenced by buildInterfaceAndSuperClassMap(), getStartingMethods(), and isMethodOfObject().
|
|
Insert the method's description here. Creation date: (00-10-31 16:28:43)
Definition at line 524 of file Slicer.java. Referenced by outputResidualCls().
|
|
Analyse program for building PDG: Definition at line 544 of file Slicer.java. Referenced by buildPDG(), and run().
|
|
Dump slicing result into residualSootClassArray. Definition at line 566 of file Slicer.java. Referenced by postProcessing(), and preProcessing().
|
|
Insert the method's description here. Creation date: (00-12-5 10:09:36) Definition at line 635 of file Slicer.java. Referenced by run().
|
|
Insert the method's description here. Creation date: (00-12-5 10:09:36) Definition at line 650 of file Slicer.java. |
|
Insert the method's description here. Creation date: (00-12-5 10:11:32) Definition at line 660 of file Slicer.java. Referenced by run().
|
|
Print out slicing criterion for each class and method. Definition at line 685 of file Slicer.java. Referenced by preProcessing().
|
|
Print out Jimple code of a soot class.
Definition at line 707 of file Slicer.java. |
|
Get result of slicing as an array of SootClass. Definition at line 715 of file Slicer.java. |
|
Start the slicer after creating an object of Slicer.
Definition at line 730 of file Slicer.java. |
|
Slice each method need to be sliced --- slicingMethods(); Definition at line 767 of file Slicer.java. Referenced by run().
|
|
Slice each method with SlicingMethod.
The process of slicing is fix point reaching process: Definition at line 786 of file Slicer.java. Referenced by slicing().
|
|
a set of SliceTraceNode. Definition at line 97 of file Slicer.java. |
|
a list of ClassInfo. Definition at line 86 of file Slicer.java. |
|
number of involved classes. Definition at line 113 of file Slicer.java. |
|
a map from SootClass to a Set of SootClass, representing that one interface is implemented by a set of classes, or one abstract class is implemented(extended) by a set of classes. Definition at line 104 of file Slicer.java. |
|
a Set of MethodInfo such that the corresponding method has slicing criterion. Definition at line 109 of file Slicer.java. |
|
a set of reachable SootMethod. Definition at line 74 of file Slicer.java. |
|
an array for residual classes. Definition at line 82 of file Slicer.java. |
|
slicing criterion --- a vector of SliceInterest. Definition at line 119 of file Slicer.java. |
|
a map from SootMethod to MethodInfo, for all methods of all involved classes. Definition at line 92 of file Slicer.java. |
|
a set of unreachable SootClass. Definition at line 78 of file Slicer.java. |