public class PathExhibitor extends Object
PathElements pathElements = new PathElements(10); PathExhibitor pathFinder = PathExhibitor.factory(); PathExhibitor.TestingBackDoor.findPathToObject(pathFinder, jarEntry, pathElements); pathElements.toLog(Log.log());
Modifier and Type | Class and Description |
---|---|
static class |
PathExhibitor.BootImageHeapElement
A path element for a reference from the native image heap.
|
static class |
PathExhibitor.CyclicElement
A path element for a cyclic reference.
|
static class |
PathExhibitor.FrameVisitor
A reusable StackFrameVisitor.
|
static class |
PathExhibitor.HeapElement
A path element for a reference from a Object field.
|
static class |
PathExhibitor.LeafElement
A path element for a leaf.
|
static class |
PathExhibitor.PathElement |
static class |
PathExhibitor.PathElements |
static class |
PathExhibitor.StackElement
A path element for a reference from a stack frame.
|
static class |
PathExhibitor.TestingBackDoor
For debugging.
|
Modifier and Type | Field and Description |
---|---|
protected static com.oracle.svm.core.genscavenge.PathExhibitor.BootImageHeapObjRefVisitor |
bootImageHeapObjRefVisitor |
protected static com.oracle.svm.core.genscavenge.PathExhibitor.FrameSlotVisitor |
frameSlotVisitor |
protected static com.oracle.svm.core.genscavenge.PathExhibitor.HeapObjectVisitor |
heapObjectVisitor |
protected static com.oracle.svm.core.genscavenge.PathExhibitor.HeapObjRefVisitor |
heapObjRefVisitor |
protected ArrayList<PathExhibitor.PathElement> |
path |
protected static PathExhibitor.FrameVisitor |
stackFrameVisitor |
Modifier | Constructor and Description |
---|---|
protected |
PathExhibitor() |
Modifier and Type | Method and Description |
---|---|
protected boolean |
checkForCycles(Object currentObject) |
static PathExhibitor |
factory() |
protected void |
findPathInBootImageHeap(Object targetObject,
Object firstObject,
Object lastObject,
PathExhibitor.PathElements result) |
protected void |
findPathInBootImageHeap(Object targetObject,
PathExhibitor.PathElements result) |
protected void |
findPathInHeap(Object obj,
PathExhibitor.PathElements result) |
protected void |
findPathInStack(Object obj,
PathExhibitor.PathElements result) |
protected void |
findPathToObject(Object obj,
PathExhibitor.PathElements result) |
boolean |
findPathToRoot(Object leaf) |
void |
toLog(Log log) |
protected final ArrayList<PathExhibitor.PathElement> path
protected static final com.oracle.svm.core.genscavenge.PathExhibitor.FrameSlotVisitor frameSlotVisitor
protected static final PathExhibitor.FrameVisitor stackFrameVisitor
protected static final com.oracle.svm.core.genscavenge.PathExhibitor.BootImageHeapObjRefVisitor bootImageHeapObjRefVisitor
protected static final com.oracle.svm.core.genscavenge.PathExhibitor.HeapObjRefVisitor heapObjRefVisitor
protected static final com.oracle.svm.core.genscavenge.PathExhibitor.HeapObjectVisitor heapObjectVisitor
public static PathExhibitor factory()
public boolean findPathToRoot(Object leaf)
public void toLog(Log log)
protected void findPathToObject(Object obj, PathExhibitor.PathElements result)
protected void findPathInStack(Object obj, PathExhibitor.PathElements result)
protected void findPathInBootImageHeap(Object targetObject, PathExhibitor.PathElements result)
protected void findPathInBootImageHeap(Object targetObject, Object firstObject, Object lastObject, PathExhibitor.PathElements result)
protected void findPathInHeap(Object obj, PathExhibitor.PathElements result)
protected boolean checkForCycles(Object currentObject)