Package org.apache.lucene.util.fst
Class BytesStore
java.lang.Object
org.apache.lucene.store.DataOutput
org.apache.lucene.util.fst.BytesStore
- All Implemented Interfaces:
Accountable
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate static final long
private final int
private final int
private final List<byte[]>
private final int
private byte[]
private int
Fields inherited from interface org.apache.lucene.util.Accountable
NULL_ACCOUNTABLE
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoid
copyBytes
(long src, byte[] dest, int offset, int len) Copies bytes from this store to a target byte array.void
copyBytes
(long src, long dest, int len) Absolute copy bytes self to self, without changing the position.void
Copy numBytes bytes from input to ourself.void
finish()
(package private) int
long
(package private) FST.BytesReader
getReverseReader
(boolean allowSingle) long
Return the memory usage of this object in bytes.void
reverse
(long srcPos, long destPos) Reverse from srcPos, inclusive, to destPos, inclusive.void
skipBytes
(int len) toString()
void
truncate
(long newLen) Pos must be less than the max position written so far! Ie, you cannot "grow" the file with this!void
writeByte
(byte b) Writes a single byte.void
writeByte
(long dest, byte b) Absolute write byte; you must ensure dest is < max position written so far.void
writeBytes
(byte[] b, int offset, int len) Writes an array of bytes.(package private) void
writeBytes
(long dest, byte[] b, int offset, int len) Absolute writeBytes without changing the current position.void
writeInt
(long pos, int value) Writes an int at the absolute position without changing the current pointer.void
writeTo
(DataOutput out) Writes all of our bytes to the targetDataOutput
.Methods inherited from class org.apache.lucene.store.DataOutput
writeBytes, writeInt, writeLong, writeMapOfStrings, writeSetOfStrings, writeShort, writeString, writeVInt, writeVLong, writeZInt, writeZLong
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
Methods inherited from interface org.apache.lucene.util.Accountable
getChildResources
-
Field Details
-
BASE_RAM_BYTES_USED
private static final long BASE_RAM_BYTES_USED -
blocks
-
blockSize
private final int blockSize -
blockBits
private final int blockBits -
blockMask
private final int blockMask -
current
private byte[] current -
nextWrite
private int nextWrite
-
-
Constructor Details
-
BytesStore
public BytesStore(int blockBits)
-
-
Method Details
-
writeByte
public void writeByte(long dest, byte b) Absolute write byte; you must ensure dest is < max position written so far. -
writeByte
public void writeByte(byte b) Description copied from class:DataOutput
Writes a single byte.The most primitive data type is an eight-bit byte. Files are accessed as sequences of bytes. All other data types are defined as sequences of bytes, so file formats are byte-order independent.
- Specified by:
writeByte
in classDataOutput
- See Also:
-
writeBytes
public void writeBytes(byte[] b, int offset, int len) Description copied from class:DataOutput
Writes an array of bytes.- Specified by:
writeBytes
in classDataOutput
- Parameters:
b
- the bytes to writeoffset
- the offset in the byte arraylen
- the number of bytes to write- See Also:
-
getBlockBits
int getBlockBits() -
writeBytes
void writeBytes(long dest, byte[] b, int offset, int len) Absolute writeBytes without changing the current position. Note: this cannot "grow" the bytes, so you must only call it on already written parts. -
copyBytes
Description copied from class:DataOutput
Copy numBytes bytes from input to ourself.- Overrides:
copyBytes
in classDataOutput
- Throws:
IOException
-
copyBytes
public void copyBytes(long src, long dest, int len) Absolute copy bytes self to self, without changing the position. Note: this cannot "grow" the bytes, so must only call it on already written parts. -
copyBytes
public void copyBytes(long src, byte[] dest, int offset, int len) Copies bytes from this store to a target byte array. -
writeInt
public void writeInt(long pos, int value) Writes an int at the absolute position without changing the current pointer. -
reverse
public void reverse(long srcPos, long destPos) Reverse from srcPos, inclusive, to destPos, inclusive. -
skipBytes
public void skipBytes(int len) -
getPosition
public long getPosition() -
truncate
public void truncate(long newLen) Pos must be less than the max position written so far! Ie, you cannot "grow" the file with this! -
finish
public void finish() -
writeTo
Writes all of our bytes to the targetDataOutput
.- Throws:
IOException
-
getForwardReader
-
getReverseReader
-
getReverseReader
-
ramBytesUsed
public long ramBytesUsed()Description copied from interface:Accountable
Return the memory usage of this object in bytes. Negative values are illegal.- Specified by:
ramBytesUsed
in interfaceAccountable
-
toString
-