uk.ac.starlink.parquet

## Interface Decoder<T>

-     public interface Decoder<T>

  Can read values from a particular column in a parquet file. Instances of this class should not be used from multiple threads concurrently.
  Since:
    24 Feb 2021

- - ### Method Summary

    All Methods Instance Methods Abstract Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `clearValue()` Resets this reader to the state in which no reads have been called.
    `java.lang.Class<T>` | `getContentClass()` Class of object that is read from column data.
    `T` | `getValue()` Returns the value that has been read into this reader.
    `void` | `readItem(ColumnReader crdr)` Reads a primitive value from the supplied column reader into this decoder's current value.
    `void` | `readNull()` Reads a null value into this decoder's current value.

- - ### Method Detail

    - #### getContentClass

          java.lang.Class<T> getContentClass()

      Class of object that is read from column data.
      Returns:
        content class

    - #### readItem

          void readItem(ColumnReader crdr)

      Reads a primitive value from the supplied column reader into this decoder's current value.
      Parameters:
        `crdr` - column reader with a primitive value ready to read

    - #### readNull

          void readNull()

      Reads a null value into this decoder's current value.

    - #### clearValue

          void clearValue()

      Resets this reader to the state in which no reads have been called.

    - #### getValue

          T getValue()

      Returns the value that has been read into this reader. It will be the result of all the `readItem` and `readNull()` calls since the last call to `clearValue()` (in the case of a scalar value, there will only have been one such call).
      Returns:
        value of the most recently read column cell