public class PDFSlice
extends java.lang.Object
Slicer) and fires off the PDF
viewer to view a dot-ted representation of the slice.
This is an example program on how to use the slicer.
See the 'PDFSlice' launcher included in the 'launchers' directory.
Slicer| Constructor and Description |
|---|
PDFSlice() |
| Modifier and Type | Method and Description |
|---|---|
static Statement |
getReturnStatementForCall(Statement s)
If s is a call statement, return the statement representing the normal return from s
|
static void |
main(java.lang.String[] args)
Usage: PDFSlice -appJar [jar file name] -mainClass [main class] -srcCaller [method name]
-srcCallee [method name] -dd [data dependence options] -cd [control dependence options] -dir
[forward|backward]
"jar file name" should be something like "c:/temp/testdata/java_cup.jar"
"main class" should beshould be something like "c:/temp/testdata/java_cup.jar"
"method name" should be the name of a method.
|
static com.ibm.wala.viz.NodeDecorator<Statement> |
makeNodeDecorator() |
static com.ibm.wala.util.graph.Graph<Statement> |
pruneSDG(SDG<InstanceKey> sdg,
java.util.Collection<Statement> slice)
return a view of the sdg restricted to the statements in the slice
|
static java.lang.Process |
run(java.lang.String[] args)
see
main(String[]) for command-line arguments |
static java.lang.Process |
run(java.lang.String appJar,
java.lang.String mainClass,
java.lang.String srcCaller,
java.lang.String srcCallee,
boolean goBackward,
Slicer.DataDependenceOptions dOptions,
Slicer.ControlDependenceOptions cOptions)
Compute a slice from a call statements, dot it, and fire off the PDF viewer to visualize the
result
|
public static void main(java.lang.String[] args)
throws java.lang.IllegalArgumentException,
com.ibm.wala.util.CancelException,
java.io.IOException
java.lang.IllegalArgumentExceptioncom.ibm.wala.util.CancelExceptionjava.io.IOExceptionSlicer.DataDependenceOptionspublic static java.lang.Process run(java.lang.String[] args)
throws java.lang.IllegalArgumentException,
com.ibm.wala.util.CancelException,
java.io.IOException
main(String[]) for command-line argumentsjava.lang.IllegalArgumentExceptioncom.ibm.wala.util.CancelExceptionjava.io.IOExceptionpublic static java.lang.Process run(java.lang.String appJar,
java.lang.String mainClass,
java.lang.String srcCaller,
java.lang.String srcCallee,
boolean goBackward,
Slicer.DataDependenceOptions dOptions,
Slicer.ControlDependenceOptions cOptions)
throws java.lang.IllegalArgumentException,
com.ibm.wala.util.CancelException,
java.io.IOException
appJar - should be something like "c:/temp/testdata/java_cup.jar"mainClass - should be something like "c:/temp/testdata/java_cup.jar"srcCaller - name of the method containing the statement of interestsrcCallee - name of the method called by the statement of interestgoBackward - do a backward slice?dOptions - options controlling data dependencecOptions - options controlling control dependencejava.lang.IllegalArgumentExceptioncom.ibm.wala.util.CancelExceptionjava.io.IOExceptionpublic static Statement getReturnStatementForCall(Statement s)
public static com.ibm.wala.util.graph.Graph<Statement> pruneSDG(SDG<InstanceKey> sdg, java.util.Collection<Statement> slice)
public static com.ibm.wala.viz.NodeDecorator<Statement> makeNodeDecorator()