Interface BinaryReferenceTraverser
- All Known Implementing Classes:
 BinaryReferenceTraverser.InlinedComplexType,BinaryReferenceTraverser.ReferenceRangeTraverser,BinaryReferenceTraverser.ReferenceRangeTraverserReversed,BinaryReferenceTraverser.SkippingRangeTraverser
- Functional Interface:
 - This is a functional interface and can therefore be used as the assignment target for a lambda expression or method reference.
 
@FunctionalInterface public interface BinaryReferenceTraverser
- 
Nested Class Summary
Nested Classes Modifier and Type Interface Description static classBinaryReferenceTraverser.Analyzerstatic classBinaryReferenceTraverser.InlinedComplexTypestatic classBinaryReferenceTraverser.ReferenceRangeTraverserstatic classBinaryReferenceTraverser.ReferenceRangeTraverserReversedstatic classBinaryReferenceTraverser.SkippingRangeTraverserstatic classBinaryReferenceTraverser.Static - 
Method Summary
Modifier and Type Method Description longapply(long address, PersistenceObjectIdAcceptor acceptor)default intcoveredConstantByteCount()This method reports the amount of bytes that a particular instance of an implementing type covers or advances.default booleanhasReferences()static booleanhasReferences(BinaryReferenceTraverser[] traversers)default booleanisVariableLength()static voiditerateReferenceRange(long address, long referenceRange, PersistenceObjectIdAcceptor iterator)static voiditerateReferenceRangeReversed(long address, long referenceRange, PersistenceObjectIdAcceptor iterator)static longiterateReferences(long address, BinaryReferenceTraverser[] traversers, PersistenceObjectIdAcceptor acceptor)static BinaryReferenceTraverser[]none() 
- 
Method Details
- 
apply
 - 
coveredConstantByteCount
default int coveredConstantByteCount()This method reports the amount of bytes that a particular instance of an implementing type covers or advances. For example, an objectId is 8 bytes long. 5 objectIds are 40 bytes long. Skipping 6 bytes (primitives) is 6 bytes long. An implementation handling a variable length structure reports 0 bytes here. - 
hasReferences
default boolean hasReferences() - 
isVariableLength
default boolean isVariableLength() - 
iterateReferences
static long iterateReferences(long address, BinaryReferenceTraverser[] traversers, PersistenceObjectIdAcceptor acceptor) - 
iterateReferenceRange
static void iterateReferenceRange(long address, long referenceRange, PersistenceObjectIdAcceptor iterator) - 
iterateReferenceRangeReversed
static void iterateReferenceRangeReversed(long address, long referenceRange, PersistenceObjectIdAcceptor iterator) - 
none
 - 
hasReferences
 
 -