A B C D E F G H I J K L M O P Q R S T U V W X

A

abort() - Method in class org.jxcl.cl.ClassTransformer
Abort the class transformation.
above(Directed) - Method in class org.jxcl.graph.Vertex
Is the graph a parent, grandparent of this vertex?
add(CodeVertex) - Method in class org.jxcl.cl.SortedBlocks
Add a vertex at its bytecode position.
add(int, Edge) - Method in class org.jxcl.cl.SortedBlocks
Add a vertex at bytecode offset pos along edge e.
addClassXformer(ClassXformer) - Method in class org.jxcl.cl.JXClassLoader
Add a class transformer.
addDelegated(String) - Method in class org.jxcl.cl.JXClassLoader
Add a class name prefix to the list of those to be delegated to the parent.
addExcluded(String) - Method in class org.jxcl.cl.JXClassLoader
Add a class name prefix to the list of those to be excluded from instrumentation.
addGraphXformer(GraphXformer) - Method in class org.jxcl.cl.JXClassLoader
Add a graph transformer.
addIncluded(String) - Method in class org.jxcl.cl.JXClassLoader
Add a class name prefix to the list of those to be instrumented.
addJXRegistry(String) - Method in class org.jxcl.cl.JXClassLoader
Add a new JXRegistry to the list.
addMethodXformer(MethodXformer) - Method in class org.jxcl.cl.JXClassLoader
Add a method transformer.
addPath(URL) - Method in class org.jxcl.cl.JXClassLoader
Add a path to the class loader's classpath.
anotherEdge(Edge) - Method in class org.jxcl.graph.Directed
Step edge count.
anotherVertex(Vertex) - Method in class org.jxcl.graph.Directed
Step count of vertices .

B

BinaryConnector - class org.jxcl.graph.BinaryConnector.
A Connector holding two edges.
BinaryConnector(Edge, Edge) - Constructor for class org.jxcl.graph.BinaryConnector
 
BinaryConnector(Connector, Edge) - Constructor for class org.jxcl.graph.BinaryConnector
 
BytecodeCollector - class org.jxcl.cl.BytecodeCollector.
Collects the bytecode for a method while walking the method control flow graph.
BytecodeCollector() - Constructor for class org.jxcl.cl.BytecodeCollector
No-arg constructor.

C

CEGSpy - class org.jxcl.cl.CEGSpy.
Dump the method's exception handler table before and after graph processing.
CEGSpy() - Constructor for class org.jxcl.cl.CEGSpy
 
CLASSPATH_DELIM_CHAR - Static variable in class org.jxcl.cl.JXClassLoader
 
CLASSPATH_DELIM_STR - Static variable in class org.jxcl.cl.JXClassLoader
 
CatchData - class org.jxcl.cl.CatchData.
Data structure describing an exception handler.
CatchData(Vertex, Vertex, Vertex, ObjectType) - Constructor for class org.jxcl.cl.CatchData
The information needed to set up an exception handler.
ClassFactory - class org.jxcl.cl.ClassFactory.
Class synthesizer.
ClassPath - class org.jxcl.cl.ClassPath.
Facility for converting a colon-delimited classpath into a URL array.
ClassPath(String) - Constructor for class org.jxcl.cl.ClassPath
 
ClassTransformer - class org.jxcl.cl.ClassTransformer.
Transform a JavaClass, if there are any class, method, or graph transformers.
ClassTransformer(List, List, List) - Constructor for class org.jxcl.cl.ClassTransformer
Creates class transformer and lower-level transformers.
ClassXformer - interface org.jxcl.cl.ClassXformer.
Application-specific pre- and post-processors for JXCL classes.
CodeVertex - class org.jxcl.cl.CodeVertex.
A Vertex extended to carry the initial bytecode offset, line number, and an instruction list.
CodeVertex(ControlFlowGraph) - Constructor for class org.jxcl.cl.CodeVertex
Create a code vertex with default bytecode offset, line number, empty instruction list, and no label.
CodeVertex(ControlFlowGraph, int) - Constructor for class org.jxcl.cl.CodeVertex
Create a code vertex, specifying a non-negative bytecode offset.
CodeVertex(ControlFlowGraph, String) - Constructor for class org.jxcl.cl.CodeVertex
Create a code vertex, specifying a label
ComplexConnector - class org.jxcl.graph.ComplexConnector.
A Connector holding a single edge plus a fixed size array of edges.
ComplexConnector(Edge, int) - Constructor for class org.jxcl.graph.ComplexConnector
Constructor for a Connector with a single edge plus a fixed-size array of edges.
ComplexConnector(Connector, int) - Constructor for class org.jxcl.graph.ComplexConnector
 
Connector - class org.jxcl.graph.Connector.
Connector holding one or more edges.
Connector() - Constructor for class org.jxcl.graph.Connector
 
ControlFlowGraph - class org.jxcl.cl.ControlFlowGraph.
Directed graph extended for use in analyzing method instruction lists.
ControlFlowGraph() - Constructor for class org.jxcl.cl.ControlFlowGraph
Create a new top level control flow graph.
ControlFlowGraph(ControlFlowGraph) - Constructor for class org.jxcl.cl.ControlFlowGraph
Create a control flow graph without connecting it to this parent graph but sharing protected data structures.
checkForNull(Object, String) - Static method in class org.jxcl.graph.Directed
 
checkForNull(Object, String) - Static method in class org.jxcl.graph.Edge
 
checkForNull(Object, String) - Static method in class org.jxcl.graph.Vertex
Throw an exception if the argument is null.
classFileName(String) - Static method in class org.jxcl.cl.JXClassLoader
Convert a class name into a relative path name by replacing dots with forward slashes and appending ".class".
clear() - Method in class org.jxcl.reg.Registry
Remove all elements from the registry.
closestEntry(Directed) - Method in class org.jxcl.graph.Directed
If the edge points towards a vertex in a graph which is enclosed within the current graph, return a reference to the closest Entry.
collapseGraph(ControlFlowGraph) - Method in class org.jxcl.cl.GraphTransformer
Collapse a method control flow graph, writing bytecode back into the MethodGen data structures.
connInst_ - Variable in class org.jxcl.cl.CodeVertex
Instruction connecting this vertex to other(s).
connectSubgraph(Directed, Edge, int) - Static method in class org.jxcl.graph.Directed
Inserts a subgraph into an edge, putting the entry and exit points on the edge presented.
connector - Variable in class org.jxcl.graph.Vertex
Connects this vertex to one or more other vertices.
containsKey(String[]) - Method in class org.jxcl.reg.Registry
 
cxf - Variable in class org.jxcl.reg.JXRegistry
List of class transformers associated with this registry.

D

DELEGATED - Static variable in class org.jxcl.cl.JXClassLoader
Names of classes which must be loaded by the parent.
Directed - class org.jxcl.graph.Directed.
A graph consisting of vertices connected by directed, weighted edges.
Directed() - Constructor for class org.jxcl.graph.Directed
Builds a root directed graph with two vertices and two edges.
Directed(Directed) - Constructor for class org.jxcl.graph.Directed
Subgraph constructor; will have depth one more than parent.
discoverEdge(Edge) - Method in class org.jxcl.cl.BytecodeCollector
Action taken upon first encountering an edge.
discoverEdge(Edge) - Method in class org.jxcl.cl.GraphTalker
 
discoverEdge(Edge) - Method in interface org.jxcl.graph.Visitor
Called when initially visiting edge.
discoverGraph(Directed) - Method in class org.jxcl.cl.BytecodeCollector
Action taken upon beginning to visit the graph.
discoverGraph(Directed) - Method in class org.jxcl.cl.GraphTalker
 
discoverGraph(Directed) - Method in interface org.jxcl.graph.Visitor
Called at beginning of visiting a graph or subgraph.
discoverVertex(Vertex) - Method in class org.jxcl.cl.BytecodeCollector
Action taken upon beginning to visit a graph vertex.
discoverVertex(Vertex) - Method in class org.jxcl.cl.GraphTalker
 
discoverVertex(Vertex) - Method in interface org.jxcl.graph.Visitor
Called when beginning visit to vertex.

E

Edge - class org.jxcl.graph.Edge.
An edge in a JXCL graph.
Edge(Vertex, Vertex) - Constructor for class org.jxcl.graph.Edge
An edge in a directed graph.
Edge(Edge) - Constructor for class org.jxcl.graph.Edge
Copy constructor.
Entry - class org.jxcl.graph.Entry.
The entry vertex in a directed graph.
Entry(Directed) - Constructor for class org.jxcl.graph.Entry
 
Exit - class org.jxcl.graph.Exit.
An exit vertex in a directed graph.
Exit(Directed) - Constructor for class org.jxcl.graph.Exit
Constructor for the exit vertex for a JXCL directed graph.
endHandles - Variable in class org.jxcl.cl.ControlFlowGraph
Key code vertex, value handle on last instruction.
endLine_ - Variable in class org.jxcl.cl.CodeVertex
Line number in source code corresponding to the connecting instruction, or if there is no such instruction, to the last instruction in the block
exception - Variable in class org.jxcl.cl.CatchData
Type of exception handled.
exists(int) - Method in class org.jxcl.cl.SortedBlocks
Does a vertex exist with this bytecode offset?

F

FILE_PATH_DELIM_CHAR - Static variable in class org.jxcl.cl.JXClassLoader
Operating system specific
FILE_PATH_DELIM_STR - Static variable in class org.jxcl.cl.JXClassLoader
 
find(int, ControlFlowGraph, Edge) - Method in class org.jxcl.cl.SortedBlocks
Find or create a code vertex starting at a given position.
findClass(String) - Method in class org.jxcl.cl.JXClassLoader
Locate the class whose name is passed and define it.
finishEdge(Edge) - Method in class org.jxcl.cl.BytecodeCollector
Action taken before departing an edge.
finishEdge(Edge) - Method in class org.jxcl.cl.GraphTalker
 
finishEdge(Edge) - Method in interface org.jxcl.graph.Visitor
Called at end of visit to edge.
finishGraph(Directed) - Method in class org.jxcl.cl.BytecodeCollector
Finish the graph by fixing up JSRs.
finishGraph(Directed) - Method in class org.jxcl.cl.GraphTalker
 
finishGraph(Directed) - Method in interface org.jxcl.graph.Visitor
Called at end of visiting a graph or subgraph.
finishVertex(Vertex) - Method in class org.jxcl.cl.BytecodeCollector
Action taken before leaving a vertex in the graph.
finishVertex(Vertex) - Method in class org.jxcl.cl.GraphTalker
 
finishVertex(Vertex) - Method in interface org.jxcl.graph.Visitor
Called at end of vertex visit.

G

GraphBuildException - exception org.jxcl.cl.GraphBuildException.
An exception that occurs while building a control flow graph for a method.
GraphBuildException() - Constructor for class org.jxcl.cl.GraphBuildException
 
GraphBuildException(String) - Constructor for class org.jxcl.cl.GraphBuildException
 
GraphBuildException(String, Throwable) - Constructor for class org.jxcl.cl.GraphBuildException
 
GraphBuildException(Throwable) - Constructor for class org.jxcl.cl.GraphBuildException
 
GraphSpy - class org.jxcl.cl.GraphSpy.
Makes the control flow graph available to a wider audience.
GraphSpy() - Constructor for class org.jxcl.cl.GraphSpy
 
GraphTalker - class org.jxcl.cl.GraphTalker.
Walks through a control flow graph, displaying information about each vertex and edge.
GraphTalker() - Constructor for class org.jxcl.cl.GraphTalker
 
GraphTransformer - class org.jxcl.cl.GraphTransformer.
Build the control flow graph for a method, apply an arbitrary number of GraphXformers to it, and then collapse the graph back to an instruction list.
GraphTransformer(List) - Constructor for class org.jxcl.cl.GraphTransformer
Creates method control flow graphs, applies application- specific transforms, and then collapses the graph to produce a new instruction list.
GraphXformer - interface org.jxcl.cl.GraphXformer.
Transform the graph, possibly using information from ClassGen and MethodGen.
get(int) - Method in class org.jxcl.cl.SortedBlocks
Find the code vertex starting at a given bytecode offset.
get(String[]) - Method in class org.jxcl.reg.Registry
Get an object from the registry.
getCEGs(CatchData[]) - Method in class org.jxcl.cl.BytecodeCollector
Given an array of exception handler descriptions, return an array of CodeExceptionGen.
getCatchCount() - Method in class org.jxcl.cl.ControlFlowGraph
 
getCatchData() - Method in class org.jxcl.cl.TryStacks
Return an array of CatchData, with vertices for the beginning and end of the try block, a vertex for the handler, and the exception handled.
getClassData(String) - Method in class org.jxcl.cl.JXClassLoader
Find a class along the class path and load it as a byte array.
getClassHash() - Method in class org.jxcl.cl.ClassTransformer
 
getClassPath() - Method in class org.jxcl.cl.JXClassLoader
 
getComparator() - Method in class org.jxcl.cl.TryStacks
Return the class TryStack uses to sort exception handlers.
getConnInst() - Method in class org.jxcl.cl.CodeVertex
Get connecting instruction.
getConnector() - Method in class org.jxcl.graph.Entry
 
getConnector() - Method in class org.jxcl.graph.Exit
Get the connection, back to the entry vertex in a top-level graph.
getConnector() - Method in class org.jxcl.graph.Vertex
 
getDelegated() - Method in class org.jxcl.cl.JXClassLoader
 
getDepth() - Method in class org.jxcl.graph.Directed
 
getEdge() - Method in class org.jxcl.graph.BinaryConnector
Get the preferred edge.
getEdge() - Method in class org.jxcl.graph.ComplexConnector
Get the single edge.
getEdge(int) - Method in class org.jxcl.graph.ComplexConnector
Get the Nth edge from the array.
getEdge() - Method in class org.jxcl.graph.Connector
Get the outgoing edge.
getEdge() - Method in class org.jxcl.graph.Entry
 
getEdge() - Method in class org.jxcl.graph.Exit
Get the outgoing edge.
getEdge() - Method in class org.jxcl.graph.MultiConnector
 
getEdge(int) - Method in class org.jxcl.graph.MultiConnector
 
getEdge() - Method in class org.jxcl.graph.UnaryConnector
Get the edge.
getEdge() - Method in class org.jxcl.graph.Vertex
 
getEndHandles() - Method in class org.jxcl.cl.ControlFlowGraph
Get a reference to the map of handles on last instructions.
getEndLine() - Method in class org.jxcl.cl.CodeVertex
Get the line number in source code corresponding to the connecting instruction or last instruction in the block.
getEntry() - Method in class org.jxcl.graph.Directed
 
getExceptionHandlers() - Method in class org.jxcl.cl.GraphTransformer
Returns array of exception handlers, empty if the instruction list was null or there were no exception handlers.
getExcluded() - Method in class org.jxcl.cl.JXClassLoader
 
getExit() - Method in class org.jxcl.graph.Directed
 
getGotoFixMeUps() - Method in class org.jxcl.cl.ControlFlowGraph
Get a reference to the source/target vertex map where the connecting instruction is a GotoInstruction.
getGraph() - Method in class org.jxcl.graph.Edge
 
getGraph() - Method in class org.jxcl.graph.Vertex
Get the graph this vertex is in.
getHasFinally() - Method in class org.jxcl.cl.ControlFlowGraph
Does this subgraph have a finally clause?
getIncluded() - Method in class org.jxcl.cl.JXClassLoader
 
getIndex() - Method in class org.jxcl.graph.Directed
 
getIndex() - Method in class org.jxcl.graph.Vertex
 
getInstance() - Static method in class org.jxcl.cl.ClassFactory
Use this method to get to the ClassFactory singleton.
getInstructionList() - Method in class org.jxcl.cl.BytecodeCollector
Get the instruction list after completing walking the graph, that is, after calling visit.
getInstructionList() - Method in class org.jxcl.cl.CodeVertex
Get a reference to the InstructionList carried by the vertex.
getInstructionList() - Method in class org.jxcl.cl.ControlFlowGraph
Get a reference to the instruction list built while walking the graph.
getLabel() - Method in class org.jxcl.graph.Vertex
 
getMethodHash() - Method in class org.jxcl.cl.MethodTransformer
Get a reference to the hash used to share data between this and other transformers.
getName() - Method in class org.jxcl.cl.CEGSpy
Get the report name for method processor.
getName() - Method in interface org.jxcl.cl.ClassXformer
Get the preprocessor's report name.
getName() - Static method in class org.jxcl.cl.GraphSpy
 
getName() - Static method in class org.jxcl.cl.GraphTalker
 
getName() - Method in class org.jxcl.cl.IListSpy
Get the report name for method processor.
getName() - Method in interface org.jxcl.cl.MethodXformer
Get the report name for method processor.
getOtherEdge() - Method in class org.jxcl.graph.BinaryConnector
Get the other edge.
getOtherTarget() - Method in class org.jxcl.graph.BinaryConnector
Get the target of the other edge
getParent() - Method in class org.jxcl.graph.Directed
 
getPosition() - Method in class org.jxcl.cl.CodeVertex
Get the bytecode offset of the first instruction.
getRegistry(String) - Method in class org.jxcl.cl.JXClassLoader
Get a reference to a JXCL registry.
getReport() - Method in class org.jxcl.cl.JXClassLoader
Get reports from any or all registries.
getReport() - Method in class org.jxcl.reg.JXRegistry
Dumps the registry in a form appropriate to the application.
getResourceAsStream(String) - Method in class org.jxcl.cl.ClassFactory
Get the bytecode for a synthesized class.
getSource() - Method in class org.jxcl.graph.Edge
 
getStartHandles() - Method in class org.jxcl.cl.ControlFlowGraph
Get a reference to the map of handles on first instructions.
getStartLine() - Method in class org.jxcl.cl.CodeVertex
Get the source code line number of the first instruction in a code vertex.
getSynthEnabled() - Method in class org.jxcl.cl.JXClassLoader
Get synthesizing-enabled flag.
getSynthPrefix() - Method in class org.jxcl.cl.JXClassLoader
 
getTarget() - Method in class org.jxcl.graph.BinaryConnector
Get the target of the preferred edge.
getTarget() - Method in class org.jxcl.graph.ComplexConnector
Get the target of the single edge.
getTarget(int) - Method in class org.jxcl.graph.ComplexConnector
Get the target of the Nth edge.
getTarget() - Method in class org.jxcl.graph.Connector
Get the target of the preferred edge.
getTarget() - Method in class org.jxcl.graph.Edge
 
getTarget() - Method in class org.jxcl.graph.Entry
 
getTarget() - Method in class org.jxcl.graph.Exit
Get its target.
getTarget() - Method in class org.jxcl.graph.MultiConnector
 
getTarget(int) - Method in class org.jxcl.graph.MultiConnector
 
getTarget() - Method in class org.jxcl.graph.UnaryConnector
Get the target of the connection.
getTarget() - Method in class org.jxcl.graph.Vertex
 
getTheGraph() - Static method in class org.jxcl.cl.GraphSpy
 
getURLs() - Method in class org.jxcl.cl.ClassPath
 
gotoFixMeUps - Variable in class org.jxcl.cl.ControlFlowGraph
Key source vertex, value target vertex where connecting instruction is GotoInstruction.
graph - Variable in class org.jxcl.graph.Vertex
The graph this vertex belongs to.
graphIndex - Static variable in class org.jxcl.graph.Directed
Index of most recently built graph.
gxf - Variable in class org.jxcl.reg.JXRegistry
List of graph transformers associated with this registry.

H

handlerPC - Variable in class org.jxcl.cl.CatchData
First code vertex in handler.
hasInbound(InstructionHandle) - Static method in class org.jxcl.cl.GraphTransformer
Whether this instruction is target of branch instruction or starts catch block.

I

IListSpy - class org.jxcl.cl.IListSpy.
Dump the method's instruction list before and after graph processing.
IListSpy() - Constructor for class org.jxcl.cl.IListSpy
 
ilist - Variable in class org.jxcl.cl.CodeVertex
the bytecode iteself
ilist - Variable in class org.jxcl.cl.ControlFlowGraph
Instruction list built in walking the graph.
index - Variable in class org.jxcl.graph.Vertex
Unique non-negative assigned to the Vertex; -1 means 'unassigned'
insert(Vertex) - Method in class org.jxcl.graph.Edge
Insert a vertex with a UnaryConnector into an edge.
insertCodeVertex(Edge) - Method in class org.jxcl.cl.ControlFlowGraph
Insert a code vertex along an edge, retargeting the edge to the vertex inserted.
insertCodeVertex(CodeVertex, Edge) - Method in class org.jxcl.cl.ControlFlowGraph
Insert a pre-existing CodeVertex along an edge.
insertVertex(Vertex, Edge) - Method in class org.jxcl.graph.Directed
Insert a (new) Vertex into the graph along the edge provided.
insertVertex(Edge) - Method in class org.jxcl.graph.Directed
Create a new Vertex with a Unary connector and insert into this graph's edge e.
isEmpty() - Method in class org.jxcl.reg.Registry
 

J

JXCLException - exception org.jxcl.exception.JXCLException.
A superclass for all exceptions that can be thrown by JXCL.
JXCLException() - Constructor for class org.jxcl.exception.JXCLException
 
JXCLException(String) - Constructor for class org.jxcl.exception.JXCLException
 
JXClassLoader - class org.jxcl.cl.JXClassLoader.
Transforming class loader.
JXClassLoader(URL[], String[]) - Constructor for class org.jxcl.cl.JXClassLoader
Constructor with abbreviated argument list.
JXClassLoader(URL[], ClassLoader, String[], String[], String[]) - Constructor for class org.jxcl.cl.JXClassLoader
Constructor with full argument list.
JXIC - class org.jxcl.JXIC.
A stub guaranteed to be loaded by JXClassLoader.
JXIC(int, int[]) - Constructor for class org.jxcl.JXIC
 
JXRegistry - class org.jxcl.reg.JXRegistry.
A registry for use by JXCL class loaders.
JXRegistry(JXClassLoader) - Constructor for class org.jxcl.reg.JXRegistry
 
jsrFixMeUps - Variable in class org.jxcl.cl.ControlFlowGraph
Handles on jsr instructions in this graph.

K

keySet() - Method in class org.jxcl.reg.Registry
XXX An overly powerful method.

L

label_ - Variable in class org.jxcl.graph.Vertex
Optional label.
loadClass(String) - Method in class org.jxcl.cl.JXClassLoader
Class loader.

M

MethodTransformer - class org.jxcl.cl.MethodTransformer.
Optionally preprocesses a method, optionally transforms its control flow graph, optionally postprocesses it.
MethodTransformer(List, List) - Constructor for class org.jxcl.cl.MethodTransformer
Sets up method transformer, saving MethodXformer vector here and passing GraphXformer vector to that transformer.
MethodXformer - interface org.jxcl.cl.MethodXformer.
Process a MethodGen method before and after graph creation and manipulation.
MultiConnector - class org.jxcl.graph.MultiConnector.
A Connector holding a array of edges, where the array has at least one member.
MultiConnector(Edge, int) - Constructor for class org.jxcl.graph.MultiConnector
Constructor for fixed-size array of edges.
MultiConnector(Connector, int) - Constructor for class org.jxcl.graph.MultiConnector
Constructor initialized from an existing UnaryConnector.
makeBinary() - Method in class org.jxcl.graph.Vertex
Convert the existing connector to a BinaryConnector.
makeBinaryFlowThrough() - Method in class org.jxcl.graph.Vertex
Convert an existing unary connector to binary, moving the existing edge to the 'other' position.
makeClass(String, String) - Method in class org.jxcl.cl.ClassFactory
Generate a class with a single no-arg constructor and a runTest method.
makeComplex(int) - Method in class org.jxcl.graph.Vertex
Convert the exiting connector to a ComplexConnector, using the existing Edge as seed.
makeConstructor(ClassGen) - Method in class org.jxcl.cl.ClassFactory
Creates the constructor for the synthesized class.
makeGraph(ClassGen, MethodGen) - Method in class org.jxcl.cl.GraphTransformer
Build the graph for the method.
makeMethod(ClassGen) - Method in class org.jxcl.cl.ClassFactory
Creates a method with bytecode determined by the name of the class.
makeMulti(int) - Method in class org.jxcl.graph.Vertex
Convert the exiting connector to a MultiConnector, using the existing Edge as seed.
makePublic(ClassGen) - Static method in class org.jxcl.cl.ClassTransformer
Make the class public.
mgDefault(ClassGen) - Method in class org.jxcl.cl.ClassFactory
Generates bytecode for a method which simply returns 2.
mgIfThen(ClassGen) - Method in class org.jxcl.cl.ClassFactory
Generates instructions for a method consisting of a single if-then clause.
mgNPENoCatch(ClassGen) - Method in class org.jxcl.cl.ClassFactory
Creates bytecode which will throw a NullPointerException without a catch block.
mgNPEWithCatch(ClassGen) - Method in class org.jxcl.cl.ClassFactory
Returns bytecode which will throw a NullPointerException, but it will catch the NPE.
mgSelect(ClassGen) - Method in class org.jxcl.cl.ClassFactory
Generates bytecode for a switch statement:
mgWhile(ClassGen) - Method in class org.jxcl.cl.ClassFactory
Generates code for a while loop.
moveGoto(CodeVertex) - Method in class org.jxcl.cl.CodeVertex
Move this code vertex's Goto to another code vertex.
mxf - Variable in class org.jxcl.reg.JXRegistry
List of method transformers associated with this registry.

O

org.jxcl - package org.jxcl
 
org.jxcl.cl - package org.jxcl.cl
 
org.jxcl.exception - package org.jxcl.exception
 
org.jxcl.graph - package org.jxcl.graph
 
org.jxcl.reg - package org.jxcl.reg
 

P

pos - Variable in class org.jxcl.cl.CodeVertex
initial offset of first instruction in bytecode
postGraph(ClassGen, MethodGen) - Method in class org.jxcl.cl.CEGSpy
Process method after graph generation and manipulation is complete.
postGraph(ClassGen, MethodGen) - Method in class org.jxcl.cl.IListSpy
Process method after graph generation and manipulation is complete.
postGraph(ClassGen, MethodGen) - Method in interface org.jxcl.cl.MethodXformer
Process method after graph generation and manipulation is complete.
postMethods(ClassGen) - Method in interface org.jxcl.cl.ClassXformer
Postprocessor applied to the class after looking at methods.
preGraph(ClassGen, MethodGen) - Method in class org.jxcl.cl.CEGSpy
Apply processing to method before graph is generated.
preGraph(ClassGen, MethodGen) - Method in class org.jxcl.cl.IListSpy
Apply processing to method before graph is generated.
preGraph(ClassGen, MethodGen) - Method in interface org.jxcl.cl.MethodXformer
Apply processing to method before graph is generated.
preMethods(ClassGen) - Method in interface org.jxcl.cl.ClassXformer
Preprocessor applied to the class before looking at methods.
put(String[], Object) - Method in class org.jxcl.reg.Registry
Add an object to the registry, overwriting any existing value.

Q

qcl_ - Variable in class org.jxcl.reg.JXRegistry
The JXCL class loader using this registry.

R

Registry - class org.jxcl.reg.Registry.
A registry for storing JXCL run-time options.
Registry() - Constructor for class org.jxcl.reg.Registry
No-arg constructor.
RunTest - interface org.jxcl.cl.RunTest.
Interface implemented by all classes synthesized by ClassFactory.
regMap - Variable in class org.jxcl.cl.JXClassLoader
Map of registries by String name.
remove(String[]) - Method in class org.jxcl.reg.Registry
Remove an item from the registry.
reset() - Method in class org.jxcl.reg.JXRegistry
Resets items in the registry in an application-specific manner.
runTest(int) - Method in interface org.jxcl.cl.RunTest
Standard test method.

S

SYNTH_PREFIX - Static variable in class org.jxcl.cl.JXClassLoader
Prefix indicating that the class should be synthesized.
SortedBlocks - class org.jxcl.cl.SortedBlocks.
Manages an index into the bytecode vertices in a method's control flow graph.
SortedBlocks() - Constructor for class org.jxcl.cl.SortedBlocks
Creates an empty map.
setCatchCount(int) - Method in class org.jxcl.cl.ControlFlowGraph
Set the number of catch blocks in a subgraph
setClassPath(String) - Method in class org.jxcl.cl.JXClassLoader
Convert classpath in normal form to URL[] and sets loader classpath to the corresponding value.
setClassTransformer(ClassTransformer) - Method in interface org.jxcl.cl.ClassXformer
 
setConnInst(Instruction) - Method in class org.jxcl.cl.CodeVertex
Set the connecting instruction for this vertex.
setConnector(Connector) - Method in class org.jxcl.graph.Vertex
 
setEndLine(int) - Method in class org.jxcl.cl.CodeVertex
Set the source line number of the connecting instruction, or of the last line number in the block if there is no connecting instruction.
setExcluded(String) - Method in class org.jxcl.cl.JXClassLoader
Sets the list of classes to be excluded from instrumentation.
setHasFinally(boolean) - Method in class org.jxcl.cl.ControlFlowGraph
Whether this subgraph has a finally clause.
setIncluded(String) - Method in class org.jxcl.cl.JXClassLoader
Sets the list of classes to be instrumented.
setLabel(String) - Method in class org.jxcl.graph.Vertex
Assign a label to the Vertex.
setName(String) - Method in class org.jxcl.cl.CEGSpy
Assign a name to the method processor.
setName(String) - Method in interface org.jxcl.cl.ClassXformer
Set the preprocessor's name for reports.
setName(String) - Static method in class org.jxcl.cl.GraphSpy
 
setName(String) - Static method in class org.jxcl.cl.GraphTalker
 
setName(String) - Method in class org.jxcl.cl.IListSpy
Assign a name to the method processor.
setName(String) - Method in interface org.jxcl.cl.MethodXformer
Assign a name to the method processor.
setOtherTarget(Vertex) - Method in class org.jxcl.graph.BinaryConnector
Set the target of the other edge.
setPos(int) - Method in class org.jxcl.cl.CodeVertex
Set the bytecode offset for the first instruction.
setSource(Vertex) - Method in class org.jxcl.graph.Edge
 
setStartLine(int) - Method in class org.jxcl.cl.CodeVertex
Set the source code line number.
setSynthEnabled(boolean) - Method in class org.jxcl.cl.JXClassLoader
Enable class synthesizing.
setTarget(Vertex) - Method in class org.jxcl.graph.BinaryConnector
Change the target of the preferred edge.
setTarget(Vertex) - Method in class org.jxcl.graph.ComplexConnector
Change the target of the single edge.
setTarget(Vertex, int) - Method in class org.jxcl.graph.ComplexConnector
Change the target of the Nth edge.
setTarget(Vertex) - Method in class org.jxcl.graph.Connector
Set the target of the connector's preferred edge.
setTarget(Vertex) - Method in class org.jxcl.graph.Edge
Change the target of this edge.
setTarget(Vertex) - Method in class org.jxcl.graph.Entry
 
setTarget(Vertex) - Method in class org.jxcl.graph.Exit
Set its target.
setTarget(Vertex) - Method in class org.jxcl.graph.MultiConnector
 
setTarget(Vertex, int) - Method in class org.jxcl.graph.MultiConnector
 
setTarget(Vertex) - Method in class org.jxcl.graph.UnaryConnector
Set the target of the connection.
setTransformers() - Method in class org.jxcl.reg.JXRegistry
Attaches transformers to the class loader; classes extending this class should call in the constructor after setting up the lists.
size() - Method in class org.jxcl.cl.SortedBlocks
How many code vertices are currently in the index?
size() - Method in class org.jxcl.graph.BinaryConnector
 
size() - Method in class org.jxcl.graph.ComplexConnector
Returns the number of edges in the connector EXCLUDING the preferred edge.
size() - Method in class org.jxcl.graph.Connector
Returns total number of edges in the connector.
size() - Method in class org.jxcl.graph.Directed
 
size() - Method in class org.jxcl.graph.MultiConnector
 
size() - Method in class org.jxcl.graph.UnaryConnector
 
size() - Method in class org.jxcl.reg.Registry
 
source_ - Variable in class org.jxcl.graph.Edge
 
splitClassName(String) - Method in class org.jxcl.reg.Registry
Convert a class or method name into a String array.
startHandles - Variable in class org.jxcl.cl.ControlFlowGraph
Key code vertex, value handle on first instruction.
startLine_ - Variable in class org.jxcl.cl.CodeVertex
Line number in source code corresponding to first instruction, or if there is no such instruction, of the connecting instruction.
subgraph(Edge, int) - Method in class org.jxcl.cl.ControlFlowGraph
Create a control flow graph, connecting it to this graph as its parent by inserting it along the directed edge e (the Entry first, followed by the subgraph Exit.
subgraph(Edge, int) - Method in class org.jxcl.graph.Directed
Constructs a subgraph and inserts it into the parent graph on the edge presented.

T

TryStacks - class org.jxcl.cl.TryStacks.
Manages try/catch blocks.
TryStacks(CodeExceptionGen[], SortedBlocks, ControlFlowGraph) - Constructor for class org.jxcl.cl.TryStacks
Constructor setting up try/catch arrays.
target_ - Variable in class org.jxcl.graph.Edge
 
theGraph - Static variable in class org.jxcl.cl.GraphSpy
 
toString() - Method in class org.jxcl.cl.CodeVertex
Less verbose toString.
toString(boolean) - Method in class org.jxcl.cl.CodeVertex
Optionally more verbose method.
toString() - Method in class org.jxcl.cl.SortedBlocks
Standard toString(), XXX needs some work.
toString() - Method in class org.jxcl.cl.TryStacks
 
toString() - Method in class org.jxcl.graph.Edge
 
toString() - Method in class org.jxcl.graph.Entry
 
toString() - Method in class org.jxcl.graph.Exit
 
toString() - Method in class org.jxcl.graph.Vertex
 
tryEnd - Variable in class org.jxcl.cl.CatchData
Last code Vertex in try block.
tryStart - Variable in class org.jxcl.cl.CatchData
First code vertex in try block.

U

UnaryConnector - class org.jxcl.graph.UnaryConnector.
A Connector holding a single edge.
UnaryConnector(Edge) - Constructor for class org.jxcl.graph.UnaryConnector
 
urlsToString() - Method in class org.jxcl.cl.JXClassLoader
 

V

Vertex - class org.jxcl.graph.Vertex.
A vertex in a directed graph.
Vertex() - Constructor for class org.jxcl.graph.Vertex
Creates a vertex without an index and belonging to no graph.
Vertex(Directed) - Constructor for class org.jxcl.graph.Vertex
Creates a vertex belonging to a graph, assigns an index unique within this graph.
Visitor - interface org.jxcl.graph.Visitor.
Methods for visiting a JXCL directed graph.
version - Variable in class org.jxcl.JXIC
 
visit(Directed, Visitor) - Method in class org.jxcl.graph.Walker
Walk through the entire graph.

W

Walker - class org.jxcl.graph.Walker.
Walks a Visitor through a JXCL directed graph, visiting each vertex and edge once and only once.
Walker() - Constructor for class org.jxcl.graph.Walker
No-arg constructor.

X

xform(JavaClass) - Method in class org.jxcl.cl.ClassTransformer
 
xform(ClassGen, MethodGen, ControlFlowGraph) - Method in class org.jxcl.cl.GraphSpy
 
xform(ClassGen, MethodGen, ControlFlowGraph) - Method in class org.jxcl.cl.GraphTalker
 
xform(ClassGen, MethodGen) - Method in class org.jxcl.cl.GraphTransformer
Build a control flow graph for a method's instruction list, apply any transformers to it, and collapse the graph into a new instruction list.
xform(ClassGen, MethodGen, ControlFlowGraph) - Method in interface org.jxcl.cl.GraphXformer
Apply the transformation to the graph.
xform(ClassGen, Method) - Method in class org.jxcl.cl.MethodTransformer
Transform a specific method, first applying preprocessors, then transforming the graph, then applying method postprocessors.
xformer - Variable in class org.jxcl.cl.JXClassLoader
Responsible for instrumenting classes.

A B C D E F G H I J K L M O P Q R S T U V W X