Interface _Private_ByteTransferReader


public interface _Private_ByteTransferReader
An IonReader facet that can rapidly bulk-copy Ion binary data under certain circumstances.
  • Method Summary

    Modifier and Type
    Method
    Description
    boolean
    Determines whether the reader's symbol table is compatible (i.e., a subset of) the given symbol table.
    boolean
    Copies the raw bytes representing the current value, excluding any field name or annotations, if possible.
  • Method Details

    • transferCurrentValue

      boolean transferCurrentValue(_Private_ByteTransferSink writer) throws IOException
      Copies the raw bytes representing the current value, excluding any field name or annotations, if possible.
      Parameters:
      writer - the sink for the bytes
      Returns:
      true if the byte transfer occurred; false if it was not possible.
      Throws:
      IOException - if thrown by the sink during transfer.
    • isSymbolTableCompatible

      boolean isSymbolTableCompatible(SymbolTable symbolTable)
      Determines whether the reader's symbol table is compatible (i.e., a subset of) the given symbol table. When true, values can be transferred from the reader to the writer verbatim.
      Parameters:
      symbolTable - the symbol table active in the writer.
      Returns:
      true if the reader's symbol table is compatible; otherwise, false.