Class UnboxedLongBackedColumnSource<T>

java.lang.Object
io.deephaven.engine.table.impl.AbstractColumnSource<Long>
io.deephaven.engine.table.impl.sources.UnboxedLongBackedColumnSource<T>
All Implemented Interfaces:
ChunkSource<Values>, ChunkSource.WithPrev<Values>, ColumnSource<Long>, ElementSource<Long>, FillContextMaker, GetContextMaker, ColumnSourceGetDefaults.ForLong, ColumnSourceGetDefaults.LongBacked<Long>, DefaultChunkSource<Values>, DefaultChunkSource.WithPrev<Values>, MutableColumnSource<Long>, MutableColumnSourceGetDefaults.ForLong, MutableColumnSourceGetDefaults.LongBacked<Long>, Releasable, TupleExporter<Long>, TupleSource<Long>

public class UnboxedLongBackedColumnSource<T> extends AbstractColumnSource<Long> implements MutableColumnSourceGetDefaults.ForLong
Reinterpret result for many ColumnSource implementations that internally represent Instant values as long values.
  • Constructor Details

    • UnboxedLongBackedColumnSource

      public UnboxedLongBackedColumnSource(ColumnSource<T> alternateColumnSource)
  • Method Details

    • getLong

      public long getLong(long rowKey)
      Description copied from interface: ElementSource
      Get the value at the rowKey as a long. RowKeys that are not present are undefined.
      Specified by:
      getLong in interface ElementSource<T>
      Parameters:
      rowKey - the location in key space to get the value from.
      Returns:
      the long at the rowKey, null values are represented by QueryConstants.NULL_LONG
    • getPrevLong

      public long getPrevLong(long rowKey)
      Description copied from interface: ElementSource
      Get the previous value at the rowKey as a long. See ElementSource.getPrev(long) for more details.
      Specified by:
      getPrevLong in interface ElementSource<T>
      Parameters:
      rowKey - the location in key space to get the previous value from.
      Returns:
      the previous long at the rowKey, null values are represented by QueryConstants.NULL_LONG
    • isImmutable

      public boolean isImmutable()
      Description copied from interface: ColumnSource
      Determine if this column source is immutable, meaning that the values at a given row key never change.
      Specified by:
      isImmutable in interface ColumnSource<T>
      Specified by:
      isImmutable in interface MutableColumnSource<T>
      Returns:
      true if the values at a given row key of the column source never change, false otherwise
    • allowsReinterpret

      public <ALTERNATE_DATA_TYPE> boolean allowsReinterpret(@NotNull @NotNull Class<ALTERNATE_DATA_TYPE> alternateDataType)
      Description copied from interface: ColumnSource
      Test if a reinterpret call will succeed.
      Specified by:
      allowsReinterpret in interface ColumnSource<T>
      Overrides:
      allowsReinterpret in class AbstractColumnSource<Long>
      Parameters:
      alternateDataType - The alternative type to consider
      Returns:
      If a reinterpret on this column source with the supplied alternateDataType will succeed.
    • doReinterpret

      public <ALTERNATE_DATA_TYPE> ColumnSource<ALTERNATE_DATA_TYPE> doReinterpret(@NotNull @NotNull Class<ALTERNATE_DATA_TYPE> alternateDataType) throws IllegalArgumentException
      Description copied from class: AbstractColumnSource
      Supply allowed reinterpret results. The default implementation handles the most common case to avoid code duplication.
      Overrides:
      doReinterpret in class AbstractColumnSource<Long>
      Parameters:
      alternateDataType - The alternate data type
      Returns:
      The resulting ColumnSource
      Throws:
      IllegalArgumentException