Package io.deephaven.chunk
Class ObjectChunk<T,ATTR extends Any>
java.lang.Object
io.deephaven.chunk.ChunkBase<ATTR>
io.deephaven.chunk.ObjectChunk<T,ATTR>
- All Implemented Interfaces:
Chunk<ATTR>
- Direct Known Subclasses:
ObjectChunkPage
,ResettableObjectChunk
,WritableObjectChunk
Chunk
implementation for Object data.-
Nested Class Summary
Nested classes/interfaces inherited from interface io.deephaven.chunk.Chunk
Chunk.Visitor<ATTR extends Any>
-
Field Summary
Fields inherited from interface io.deephaven.chunk.Chunk
MAXIMUM_SIZE, SYSTEM_ARRAYCOPY_THRESHOLD, SYSTEM_ARRAYFILL_THRESHOLD
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescription<T_DERIV extends T>
ObjectChunk<T_DERIV,ATTR> final int
binarySearch
(int fromIndexInclusive, int toIndexExclusive, Object key) Search forkey
in this chunk in the index range[fromIndexInclusive, toIndexExclusive)
using Java's primitive ordering.final int
binarySearch
(Object key) Search forkey
in this chunk in the index range [0,size
) using Java's primitive ordering.static <T,
ATTR extends Any>
ObjectChunk<T,ATTR> chunkWrap
(T[] data) static <T,
ATTR extends Any>
ObjectChunk<T,ATTR> chunkWrap
(T[] data, int offset, int capacity) final void
copyToArray
(int srcOffset, Object dest, int destOffset, int length) Copy a subrange of this Chunk to the subrange of the 'dest' array.final void
copyToChunk
(int srcOffset, WritableChunk<? super ATTR> dest, int destOffset, int length) Copy a subrange of this Chunk to the subrange of the 'dest' writable chunk.final void
copyToTypedArray
(int srcOffset, T[] destData, int destOffset, int length) static <T,
ATTR extends Any, ATTR_DERIV extends ATTR>
ObjectChunk<T,ATTR_DERIV> downcast
(ObjectChunk<T, ATTR> self) final T
get
(int index) final ChunkType
static <T,
ATTR extends Any>
ObjectChunk<T,ATTR> final boolean
final boolean
static <T> T[]
makeArray
(int capacity) slice
(int offset, int capacity) Make a new Chunk that represents either exactly the same view on the underlying data as this Chunk, or a subrange of that view.final <V extends Chunk.Visitor<ATTR>>
Vwalk
(V visitor) Methods inherited from class io.deephaven.chunk.ChunkBase
internalCapacity, internalSetSize, size
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface io.deephaven.chunk.Chunk
asBooleanChunk, asByteChunk, asCharChunk, asDoubleChunk, asFloatChunk, asIntChunk, asLongChunk, asObjectChunk, asShortChunk, checkChunkType, copyToBuffer
-
Constructor Details
-
ObjectChunk
-
-
Method Details
-
getEmptyChunk
-
makeArray
public static <T> T[] makeArray(int capacity) -
chunkWrap
-
chunkWrap
public static <T,ATTR extends Any> ObjectChunk<T,ATTR> chunkWrap(T[] data, int offset, int capacity) -
getChunkType
- Returns:
- The underlying chunk type
-
get
-
slice
Description copied from interface:Chunk
Make a new Chunk that represents either exactly the same view on the underlying data as this Chunk, or a subrange of that view. The view is defined as [0..size) (in the coordinate space of this Chunk).- Parameters:
offset
- Offset of the new Chunk, relative to this Chunk. 0 ≤ offset ≤ this.sizecapacity
- Capacity and initial size of the new Chunk. 0 ≤ capacity ≤ this.size -offset
.- Returns:
- The new Chunk. A new Chunk will always be returned, even if the Chunks represent the same view.
-
copyToChunk
public final void copyToChunk(int srcOffset, WritableChunk<? super ATTR> dest, int destOffset, int length) Description copied from interface:Chunk
Copy a subrange of this Chunk to the subrange of the 'dest' writable chunk.- Parameters:
srcOffset
- Starting position in 'this' (the source)dest
- Destination writable chunk.destOffset
- Starting offset in the destination.length
- Number of values to copy
-
copyToArray
Description copied from interface:Chunk
Copy a subrange of this Chunk to the subrange of the 'dest' array.- Parameters:
srcOffset
- Starting position in 'this' (the source)dest
- Destination array.destOffset
- Starting offset in the destination.length
- Number of values to copy
-
copyToTypedArray
-
isAlias
- Returns:
- true iff this and array are aliases, that is they refer to the same underlying data
-
isAlias
- Returns:
- true iff this and chunk are aliases, that is they refer to the same underlying data
-
walk
-
asTypedObjectChunk
-
downcast
public static <T,ATTR extends Any, ObjectChunk<T,ATTR_DERIV extends ATTR> ATTR_DERIV> downcast(ObjectChunk<T, ATTR> self) -
binarySearch
Search forkey
in this chunk in the index range [0,size
) using Java's primitive ordering. This chunk must be sorted as byWritableObjectChunk.sort()
prior to this call.This method does not compare
null
orNaN
values according to Deephaven ordering rules.- Parameters:
key
- The key to search for- Returns:
- The index of the key in this chunk, or else
(-(insertion point) - 1)
as defined byArrays.binarySearch(long[], long)
-
binarySearch
Search forkey
in this chunk in the index range[fromIndexInclusive, toIndexExclusive)
using Java's primitive ordering. This chunk must be sorted over the search index range as byWritableObjectChunk.sort(int, int)
prior to this call.This method does not compare
null
orNaN
values according to Deephaven ordering rules.- Parameters:
fromIndexInclusive
- The first index to be searchedtoIndexExclusive
- The index after the last index to be searchedkey
- The key to search for- Returns:
- The index of the key in this chunk, or else
(-(insertion point) - 1)
as defined byArrays.binarySearch(T[], int, int, Object)
-