Top Inners Fields Constructors Methods
com.amazon.ion.impl

pack-priv final Class IonReaderTreeUserX

extends IonReaderTreeSystem
implements _Private_ReaderWriter
Class Inheritance
All Implemented Interfaces
com.amazon.ion.impl._Private_ReaderWriter
Static Imports
com.amazon.ion.SymbolTable.UNKNOWN_SYMBOL_ID, .SystemSymbols.ION_1_0_SID, .SystemSymbols.ION_SYMBOL_TABLE

Nested and Inner Type Summary

Modifier and TypeClass and Description
private class
private static class

Field Summary

Modifier and TypeField and Description
pack-priv IonCatalog
private final _Private_LocalSymbolTableFactory
private SymbolTable[]
private int
private SymbolTable
Inherited from com.amazon.ion.impl.IonReaderTreeSystem:
_curr_eof_iter_next_parent_system_symtab_top

Constructor Summary

AccessConstructor and Description
public

Method Summary

Modifier and TypeMethod and Description
public <T> T
asFacet(Class<T>
The type token of the requested facet type.
facetType
)

Overrides com.amazon.ion.impl.IonReaderTreeSystem.asFacet.

Implements com.amazon.ion.facet.Faceted.asFacet.

Returns a facet of this subject if supported.

private void
private final Span
public SymbolTable
getSymbolTable()

Overrides com.amazon.ion.impl.IonReaderTreeSystem.getSymbolTable.

Implements com.amazon.ion.IonReader.getSymbolTable.

Returns the symbol table that is applicable to the current value.

public boolean
hasNext()

Overrides com.amazon.ion.impl.IonReaderTreeSystem.hasNext.

Implements com.amazon.ion.IonReader.hasNext.

Determines whether there is another value at the current depth; in other words whether there is a sibling value that may be reached using next().

private void
public IonType
next()

Overrides com.amazon.ion.impl.IonReaderTreeSystem.next.

Implements com.amazon.ion.IonReader.next.

Positions this reader on the next sibling after the current value, returning the type of that value.

pack-priv boolean
public SymbolTable
private void
pack-priv void
Inherited from com.amazon.ion.impl.IonReaderTreeSystem:
bigDecimalValuebigIntegerValuebooleanValuebyteSizeclosedateValuedecimalValuedoubleValuegetBytesgetDepthgetFieldIdgetFieldNamegetFieldNameSymbolgetIntegerSizegetIonValuegetTypegetTypeAnnotationsgetTypeAnnotationSymbolsintValueisInStructisNullValueiterateTypeAnnotationslongValuenewBytesnext_helper_systemstepInstepOutstringValuesymbolValuetimestampValuevalueToString

Field Detail

_catalogback to summary
pack-priv IonCatalog _catalog
_lstFactoryback to summary
private final _Private_LocalSymbolTableFactory _lstFactory
_symbol_table_stackback to summary
private SymbolTable[] _symbol_table_stack
_symbol_table_topback to summary
private int _symbol_table_top
_symbolsback to summary
private SymbolTable _symbols

Constructor Detail

IonReaderTreeUserXback to summary
public IonReaderTreeUserX(IonValue value, IonCatalog catalog, _Private_LocalSymbolTableFactory lstFactory)

Method Detail

asFacetback to summary
public <T> T asFacet(Class<T> facetType)

Overrides com.amazon.ion.impl.IonReaderTreeSystem.asFacet.

Implements com.amazon.ion.facet.Faceted.asFacet.

Doc from com.amazon.ion.facet.Faceted.asFacet.

Returns a facet of this subject if supported.

Parameters
<T>
The requested facet type.
facetType:Class<T>

The type token of the requested facet type.

Returns:T

Doc from com.amazon.ion.impl.IonReaderTreeSystem.asFacet.

This implementation always returns null.

Annotations
@Override
clear_system_value_stackback to summary
private void clear_system_value_stack()
currentSpanImplback to summary
private final Span currentSpanImpl()
getSymbolTableback to summary
public SymbolTable getSymbolTable()

Overrides com.amazon.ion.impl.IonReaderTreeSystem.getSymbolTable.

Implements com.amazon.ion.IonReader.getSymbolTable.

Doc from com.amazon.ion.IonReader.getSymbolTable.

Returns the symbol table that is applicable to the current value. This may be either a system or local symbol table.

Annotations
@Override
hasNextback to summary
public boolean hasNext()

Overrides com.amazon.ion.impl.IonReaderTreeSystem.hasNext.

Implements com.amazon.ion.IonReader.hasNext.

Doc from com.amazon.ion.IonReader.hasNext.

Determines whether there is another value at the current depth; in other words whether there is a sibling value that may be reached using next(). This method may be called multiple times, which does not move the current position.

Warning

this method alters the internal state of the reader such that you cannot reliably get values from the "current" element. The only thing you should call after hasNext() is next()!

Annotations
@Override
hoistImplback to summary
private void hoistImpl(Span span)
nextback to summary
public IonType next()

Overrides com.amazon.ion.impl.IonReaderTreeSystem.next.

Implements com.amazon.ion.IonReader.next.

Doc from com.amazon.ion.IonReader.next.

Positions this reader on the next sibling after the current value, returning the type of that value. Once so positioned the contents of this value can be accessed with the *Value() methods.

A sequence of next() calls traverses the data at a constant depth, within the same container. Use stepIn() to traverse down into any containers, and stepOut() to traverse up to the parent container.

Returns:IonType

the type of the next Ion value (never IonType#DATAGRAM), or null when there are no more elements at the current depth in the same container.

Annotations
@Override
next_helper_userback to summary
pack-priv boolean next_helper_user()
pop_passed_symbol_tableback to summary
public SymbolTable pop_passed_symbol_table()

Overrides com.amazon.ion.impl.IonReaderTreeSystem.pop_passed_symbol_table.

Implements com.amazon.ion.impl._Private_ReaderWriter.pop_passed_symbol_table.

push_symbol_tableback to summary
private void push_symbol_table(SymbolTable symbols)
re_initback to summary
pack-priv void re_init(IonValue value, boolean hoisted)

Overrides com.amazon.ion.impl.IonReaderTreeSystem.re_init.

Annotations
@Override
com.amazon.ion.impl back to summary

private Class IonReaderTreeUserX.SeekableReaderFacet

extends Object
implements SeekableReader
Class Inheritance
All Implemented Interfaces
com.amazon.ion.SeekableReader, com.amazon.ion.SpanProvider

Constructor Summary

AccessConstructor and Description
private

Method Summary

Modifier and TypeMethod and Description
public Span
currentSpan()

Implements com.amazon.ion.SpanProvider.currentSpan.

Gets the current span of this object, generally covering a single value on the source.

public void
hoist(Span span)

Implements com.amazon.ion.SeekableReader.hoist.

Seeks this reader to produce the given span as if its values were at top-level.

Inherited from java.lang.Object:
cloneequalsfinalizegetClasshashCodenotifynotifyAlltoStringwaitwaitwait

Constructor Detail

SeekableReaderFacetback to summary
private SeekableReaderFacet()

Method Detail

currentSpanback to summary
public Span currentSpan()

Implements com.amazon.ion.SpanProvider.currentSpan.

Doc from com.amazon.ion.SpanProvider.currentSpan.

Gets the current span of this object, generally covering a single value on the source.

hoistback to summary
public void hoist(Span span)

Implements com.amazon.ion.SeekableReader.hoist.

Doc from com.amazon.ion.SeekableReader.hoist.

Seeks this reader to produce the given span as if its values were at top-level. The caller cannot stepOut from the span nor continue reading beyond it.

After calling this method, this reader's current span will be empty and positioned just before the first value of the given span; the caller must call next() to begin reading values. At the end of the span, the reader will behave as if it's at EOF regardless whether the source has more data beyond the span.

Hoisting makes the span's values appear to be at top-level even if they have containers in the source. The depth will be zero, and calls to getFieldName() will return null even if the span's original parent was a struct.

com.amazon.ion.impl back to summary

private final Class IonReaderTreeUserX.TreeSpan

extends DowncastingFaceted
implements Span
Class Inheritance
All Implemented Interfaces
com.amazon.ion.Span, com.amazon.ion.facet.Faceted

Field Summary

Modifier and TypeField and Description
pack-priv IonValue

Constructor Summary

AccessConstructor and Description
private

Method Summary

Inherited from com.amazon.ion.impl.DowncastingFaceted:
asFacet

Field Detail

_valueback to summary
pack-priv IonValue _value

Constructor Detail

TreeSpanback to summary
private TreeSpan()