@InterfaceAudience.Public public class StructIterator extends Object implements Iterator<Object>
Iterator over encoded Struct members.
This iterates over each serialized Struct field from the specified DataTypes<?>[]
definition. It allows you to read the field or skip over its serialized bytes using
next() and skip(), respectively. This is in contrast to the Struct
method which allow you to Struct.decode(PositionedByteRange) or
Struct.skip(PositionedByteRange) over the entire Struct at once.
This iterator may also be used to read bytes from any Struct for which the specified
DataType<?>[] is a prefix. For example, if the specified Struct definition has a
RawInteger and a RawStringTerminated field, you may parse the serialized output
of a Struct whose fields are RawInteger, RawStringTerminated, and
RawBytes. The iterator would return a number followed by a String. The trailing
byte[] would be ignored.
| Modifier and Type | Field and Description |
|---|---|
protected int |
idx |
protected PositionedByteRange |
src |
protected DataType[] |
types |
| Constructor and Description |
|---|
StructIterator(PositionedByteRange src,
DataType[] types)
Construct
StructIterator over the values encoded in src using the specified
types definition. |
| Modifier and Type | Method and Description |
|---|---|
boolean |
hasNext() |
Object |
next() |
void |
remove() |
int |
skip()
Bypass the next encoded value.
|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitforEachRemainingprotected final PositionedByteRange src
protected int idx
public StructIterator(PositionedByteRange src, DataType[] types)
StructIterator over the values encoded in src using the specified
types definition.src - The buffer from which to read encoded values.types - The sequence of types to use as the schema for this Struct.public int skip()
Copyright © 2007–2020 The Apache Software Foundation. All rights reserved.