public class GrowableWriter extends Object implements PackedInts.Mutable
PackedInts.Mutable
, but grows the
bit count of the underlying packed ints on-demand.
@lucene.internal
Constructor and Description |
---|
GrowableWriter(int startBitsPerValue,
int valueCount,
float acceptableOverheadRatio) |
Modifier and Type | Method and Description |
---|---|
void |
clear()
Sets all values to 0.
|
void |
fill(int fromIndex,
int toIndex,
long val)
Fill the mutable from
fromIndex (inclusive) to
toIndex (exclusive) with val . |
long |
get(int index) |
int |
get(int index,
long[] arr,
int off,
int len)
Bulk get: read at least one and at most
len longs starting
from index into arr[off:off+len] and return
the actual number of values that have been read. |
Object |
getArray()
Expert: if the bit-width of this reader matches one of
java's native types, returns the underlying array
(ie, byte[], short[], int[], long[]); else, returns
null.
|
int |
getBitsPerValue() |
PackedInts.Mutable |
getMutable() |
boolean |
hasArray()
Returns true if this implementation is backed by a
native java array.
|
long |
ramBytesUsed()
Return the in-memory size in bytes.
|
GrowableWriter |
resize(int newSize) |
void |
save(DataOutput out)
Save this mutable into
out . |
void |
set(int index,
long value)
Set the value at the given index in the array.
|
int |
set(int index,
long[] arr,
int off,
int len)
Bulk set: set at least one and at most
len longs starting
at off in arr into this mutable, starting at
index . |
int |
size() |
public GrowableWriter(int startBitsPerValue, int valueCount, float acceptableOverheadRatio)
public long get(int index)
get
in interface PackedInts.Reader
index
- the position of the wanted value.public int size()
size
in interface PackedInts.Reader
public int getBitsPerValue()
getBitsPerValue
in interface PackedInts.Reader
bitsPerValue * #values
as implementations are free to
use non-space-optimal packing of bits.public PackedInts.Mutable getMutable()
public Object getArray()
PackedInts.Reader
getArray
in interface PackedInts.Reader
public boolean hasArray()
PackedInts.Reader
hasArray
in interface PackedInts.Reader
PackedInts.Reader.getArray()
public void set(int index, long value)
PackedInts.Mutable
set
in interface PackedInts.Mutable
index
- where the value should be positioned.value
- a value conforming to the constraints set by the array.public void clear()
PackedInts.Mutable
clear
in interface PackedInts.Mutable
public GrowableWriter resize(int newSize)
public int get(int index, long[] arr, int off, int len)
PackedInts.Reader
len
longs starting
from index
into arr[off:off+len]
and return
the actual number of values that have been read.get
in interface PackedInts.Reader
public int set(int index, long[] arr, int off, int len)
PackedInts.Mutable
len
longs starting
at off
in arr
into this mutable, starting at
index
. Returns the actual number of values that have been
set.set
in interface PackedInts.Mutable
public void fill(int fromIndex, int toIndex, long val)
PackedInts.Mutable
fromIndex
(inclusive) to
toIndex
(exclusive) with val
.fill
in interface PackedInts.Mutable
public long ramBytesUsed()
PackedInts.Reader
ramBytesUsed
in interface PackedInts.Reader
public void save(DataOutput out) throws IOException
PackedInts.Mutable
out
. Instantiating a reader from
the generated data will return a reader with the same number of bits
per value.save
in interface PackedInts.Mutable
IOException
Copyright © 2000-2012 Apache Software Foundation. All Rights Reserved.