Struct tidb_query_datatype::codec::chunk::chunk::Chunk[][src]

pub struct Chunk {
    columns: Vec<Column>,
}

Chunk stores multiple rows of data. Values are appended in compact format and can be directly accessed without decoding. When the chunk is done processing, we can reuse the allocated memory by resetting it.

Fields

columns: Vec<Column>

Implementations

impl Chunk[src]

pub fn from_columns(columns: Vec<Column>) -> Chunk[src]

Creates a new Chunk from Chunk columns.

pub fn new(field_types: &[FieldType], cap: usize) -> Chunk[src]

Create a new chunk with field types and capacity.

pub fn reset(&mut self)[src]

Reset the chunk, so the memory it allocated can be reused. Make sure all the data in the chunk is not used anymore before you reuse this chunk.

pub fn num_cols(&self) -> usize[src]

Get the number of rows in the chunk.

pub fn num_rows(&self) -> usize[src]

Get the number of rows in the chunk.

pub fn append_datum(&mut self, col_idx: usize, v: &Datum) -> Result<()>[src]

Append a datum to the column

pub fn get_row(&self, idx: usize) -> Option<Row<'_>>[src]

Get the Row in the chunk with the row index.

pub fn iter(&self) -> RowIterator<'_>

Notable traits for RowIterator<'a>

impl<'a> Iterator for RowIterator<'a> type Item = Row<'a>;
[src]

Auto Trait Implementations

impl RefUnwindSafe for Chunk

impl Send for Chunk

impl Sync for Chunk

impl Unpin for Chunk

impl UnwindSafe for Chunk

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<V, W> ConvertFrom<W> for V where
    W: ConvertTo<V>, 
[src]

impl<T> From<T> for T[src]

impl<T> Instrument for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> Pointable for T[src]

type Init = T

The type for initializers.

impl<T> Same<T> for T[src]

type Output = T

Should always be Self

impl<T> Sealed<T> for T where
    T: ?Sized
[src]

impl<T> SendSyncUnwindSafe for T where
    T: Send + Sync + UnwindSafe + ?Sized
[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.

impl<V, T> VZip<V> for T where
    V: MultiLane<T>, 
[src]