public class LazyFixedWidthBlock extends AbstractFixedWidthBlock
fixedSize
Constructor and Description |
---|
LazyFixedWidthBlock(int fixedSize,
int positionCount,
LazyBlockLoader<LazyFixedWidthBlock> loader) |
Modifier and Type | Method and Description |
---|---|
void |
assureLoaded()
Assures that all data for the block is in memory.
|
Block |
copyPositions(List<Integer> positions)
Returns a block containing the specified positions.
|
Block |
copyRegion(int positionOffset,
int length)
Returns a block starting at the specified position and extends for the
specified length.
|
int |
getPositionCount()
Returns the number of positions in this block.
|
protected io.airlift.slice.Slice |
getRawSlice() |
Block |
getRegion(int positionOffset,
int length)
Returns a block starting at the specified position and extends for the
specified length.
|
int |
getRetainedSizeInBytes()
Returns the retained size of this block in memory.
|
int |
getSizeInBytes()
Returns the logical size of this block in memory.
|
protected boolean |
isEntryNull(int position) |
void |
setNullVector(boolean[] valueIsNull) |
void |
setRawSlice(io.airlift.slice.Slice slice) |
String |
toString() |
bytesCompare, bytesEqual, checkReadablePosition, compareTo, equals, getByte, getDouble, getEncoding, getFixedSize, getFloat, getInt, getLength, getLong, getShort, getSingleValueBlock, getSlice, hash, isNull, writeBytesTo, writePositionTo
public LazyFixedWidthBlock(int fixedSize, int positionCount, LazyBlockLoader<LazyFixedWidthBlock> loader)
protected io.airlift.slice.Slice getRawSlice()
getRawSlice
in class AbstractFixedWidthBlock
protected boolean isEntryNull(int position)
isEntryNull
in class AbstractFixedWidthBlock
public int getPositionCount()
Block
public int getSizeInBytes()
Block
public int getRetainedSizeInBytes()
Block
public Block copyPositions(List<Integer> positions)
Block
The returned block must be a compact representation of the original block.
public Block getRegion(int positionOffset, int length)
Block
The region can be a view over this block. If this block is released the region block may also be released. If the region block is released this block may also be released.
public Block copyRegion(int positionOffset, int length)
Block
The region returned must be a compact representation of the original block, unless their internal representation will be exactly the same. This method is useful for operators that hold on to a range of values without holding on to the entire block.
public void assureLoaded()
Block
This allows streaming data sources to skip sections that are not accessed in a query.
assureLoaded
in interface Block
assureLoaded
in class AbstractFixedWidthBlock
public void setRawSlice(io.airlift.slice.Slice slice)
public void setNullVector(boolean[] valueIsNull)
Copyright © 2012-2016. All Rights Reserved.