private static final class MarkCompactCollector.FromCursor extends MarkCompactCollector.RegionCursor
cursor, limit, region
Constructor and Description |
---|
FromCursor() |
Modifier and Type | Method and Description |
---|---|
(package private) void |
advanceToNextForwardableRegion(MarkCompactSpace space)
Advance the cursor either to the next region in the list,
or to a new region allocated from the global list.
|
(package private) void |
advanceToNextRegion()
Override the superclass with an additional assertion - we only advance
when we have read to the end, and the cursor must point *precisely*
to the last allocated byte in the region.
|
(package private) ObjectReference |
advanceToObject()
Advance from the cursor to the start of the next object.
|
(package private) void |
advanceToObjectEnd(ObjectReference current)
Advances the cursor to the end of the given object.
|
(package private) boolean |
hasMoreObjects() |
(package private) void |
init(Address region)
Initialize the cursor - the limit is the end of the allocated data
|
assertCursorInBounds, get, getLimit, getRegion, inc, incTo, isAvailable, isInRegion, isValid, print, sameRegion
FromCursor()
void init(Address region)
init
in class MarkCompactCollector.RegionCursor
region
- The region to be processed.ObjectReference advanceToObject()
void advanceToObjectEnd(ObjectReference current)
current
- the object's referencevoid advanceToNextForwardableRegion(MarkCompactSpace space)
space
- the space that acts as the global listvoid advanceToNextRegion()
advanceToNextRegion
in class MarkCompactCollector.RegionCursor
boolean hasMoreObjects()
true
if there are more objects in this region