Package org.apache.druid.segment.data
Class ArrayBasedIndexedInts
- java.lang.Object
-
- org.apache.druid.segment.data.ArrayBasedIndexedInts
-
- All Implemented Interfaces:
HotLoopCallee
,IndexedInts
public final class ArrayBasedIndexedInts extends Object implements IndexedInts
-
-
Constructor Summary
Constructors Constructor Description ArrayBasedIndexedInts()
ArrayBasedIndexedInts(int[] expansion)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
ensureSize(int size)
int
get(int index)
void
inspectRuntimeShape(RuntimeShapeInspector inspector)
Implementations of this method should callinspector.visit()
with all fields of this class, which meet two conditions: 1.void
setSize(int size)
void
setValue(int index, int value)
void
setValues(int[] values, int size)
Sets the values from the given array.int
size()
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.apache.druid.segment.data.IndexedInts
debugToString, forEach, get, get
-
-
-
-
Method Detail
-
ensureSize
public void ensureSize(int size)
-
setSize
public void setSize(int size)
-
setValues
public void setValues(int[] values, int size)
Sets the values from the given array. The given values array is not reused and not prone to be mutated later. Instead, the values from this array are copied into an array which is internal to ArrayBasedIndexedInts.
-
setValue
public void setValue(int index, int value)
-
size
public int size()
- Specified by:
size
in interfaceIndexedInts
-
get
public int get(int index)
- Specified by:
get
in interfaceIndexedInts
-
inspectRuntimeShape
public void inspectRuntimeShape(RuntimeShapeInspector inspector)
Description copied from interface:HotLoopCallee
Implementations of this method should callinspector.visit()
with all fields of this class, which meet two conditions: 1. They are used in methods of this class, annotated withCalledFromHotLoop
2. They are either: a. Nullable objects b. Instances of HotLoopCallee c. Objects, which don't always have a specific class in runtime. For example, a field of typeSet
could beHashSet
orTreeSet
in runtime, depending on how this instance (the instance on which inspectRuntimeShape() is called) is configured. d. ByteBuffer or similar objects, where byte order matters e. boolean flags, affecting branch taking f. Arrays of objects, meeting any of conditions a-e.- Specified by:
inspectRuntimeShape
in interfaceHotLoopCallee
-
-