Top Methods
jdk.vm.ci.code.stack

public Interface StackIntrospection

Known Direct Implementers
jdk.vm.ci.hotspot.HotSpotStackIntrospection
Imports
jdk.vm.ci.meta.ResolvedJavaMethod

Method Summary

Modifier and TypeMethod and Description
public default boolean
public <T> T

Returns:

the last result returned by the visitor (which is non-null to indicate that iteration should stop), or null if the whole stack was iterated.
iterateFrames
(ResolvedJavaMethod[]
if this is non-null, then the stack walk will start at the first frame whose method is one of these methods.
initialMethods
,
ResolvedJavaMethod[]
if this is non-null, then only frames whose methods are in this array are visited
matchingMethods
,
int
the number of matching methods to skip (including the initial method)
initialSkip
,
InspectedFrameVisitor<T>
the visitor that is called for every matching method
visitor
)

Walks the current stack, providing InspectedFrames to the visitor that can be used to inspect the stack frame's contents.

Method Detail

canMaterializeVirtualObjectsback to summary
public default boolean canMaterializeVirtualObjects()

Determines if InspectedFrame#materializeVirtualObjects(boolean) can be called for frames visited by iterateFrames.

iterateFramesback to summary
public <T> T iterateFrames(ResolvedJavaMethod[] initialMethods, ResolvedJavaMethod[] matchingMethods, int initialSkip, InspectedFrameVisitor<T> visitor)

Walks the current stack, providing InspectedFrames to the visitor that can be used to inspect the stack frame's contents. Iteration continues as long as InspectedFrameVisitor#visitFrame, which is invoked for every InspectedFrame, returns null. A non-null return value from InspectedFrameVisitor#visitFrame indicates that frame iteration should stop.

Parameters
initialMethods:ResolvedJavaMethod[]

if this is non-null, then the stack walk will start at the first frame whose method is one of these methods.

matchingMethods:ResolvedJavaMethod[]

if this is non-null, then only frames whose methods are in this array are visited

initialSkip:int

the number of matching methods to skip (including the initial method)

visitor:InspectedFrameVisitor<T>

the visitor that is called for every matching method

Returns:T

the last result returned by the visitor (which is non-null to indicate that iteration should stop), or null if the whole stack was iterated.