Struct tidb_query_datatype::codec::batch::LazyBatchColumnVec[][src]

pub struct LazyBatchColumnVec {
    columns: Vec<LazyBatchColumn>,
}

Stores multiple LazyBatchColumns. Each column has an equal length.

Fields

columns: Vec<LazyBatchColumn>

Multiple lazy batch columns. Each column is either decoded, or not decoded.

For decoded columns, they may be in different types. If the column is in type LazyBatchColumn::Raw, it means that it is not decoded.

Implementations

impl LazyBatchColumnVec[src]

pub fn empty() -> Self[src]

Creates a new empty LazyBatchColumnVec, which does not have columns and rows.

Because column numbers won’t change, it means constructed instance will be always empty.

pub fn clone_empty(&self, capacity: usize) -> Self[src]

Creates a new empty LazyBatchColumnVec with the same number of columns and schema.

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

Returns the number of columns.

It might be possible that there is no row but multiple columns.

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

Returns the number of rows.

pub fn assert_columns_equal_length(&self)[src]

Asserts that all columns have equal length.

pub fn maximum_encoded_size(
    &self,
    logical_rows: &[usize],
    output_offsets: &[u32]
) -> usize
[src]

Returns maximum encoded size.

pub fn maximum_encoded_size_chunk(
    &self,
    logical_rows: &[usize],
    output_offsets: &[u32]
) -> usize
[src]

Returns maximum encoded size in chunk format.

pub fn encode(
    &self,
    logical_rows: &[usize],
    output_offsets: &[u32],
    schema: &[FieldType],
    output: &mut Vec<u8>,
    ctx: &mut EvalContext
) -> Result<()>
[src]

Encodes into binary format.

pub fn encode_chunk(
    &mut self,
    logical_rows: &[usize],
    output_offsets: &[u32],
    schema: &[FieldType],
    output: &mut Vec<u8>,
    ctx: &mut EvalContext
) -> Result<()>
[src]

Encode into chunk format.

pub fn truncate_into_equal_length(&mut self)[src]

Truncates columns into equal length. The new length of all columns would be the length of the shortest column before calling this function.

pub fn as_slice(&self) -> &[LazyBatchColumn][src]

Returns the inner columns as a slice.

pub fn as_mut_slice(&mut self) -> &mut [LazyBatchColumn][src]

Returns the inner columns as a mutable slice.

Trait Implementations

impl Clone for LazyBatchColumnVec[src]

impl Debug for LazyBatchColumnVec[src]

impl From<Vec<LazyBatchColumn, Global>> for LazyBatchColumnVec[src]

impl From<Vec<VectorValue, Global>> for LazyBatchColumnVec[src]

impl Index<Range<usize>> for LazyBatchColumnVec[src]

type Output = [LazyBatchColumn]

The returned type after indexing.

impl Index<RangeFrom<usize>> for LazyBatchColumnVec[src]

type Output = [LazyBatchColumn]

The returned type after indexing.

impl Index<RangeTo<usize>> for LazyBatchColumnVec[src]

type Output = [LazyBatchColumn]

The returned type after indexing.

impl Index<usize> for LazyBatchColumnVec[src]

type Output = LazyBatchColumn

The returned type after indexing.

impl IndexMut<Range<usize>> for LazyBatchColumnVec[src]

impl IndexMut<RangeFrom<usize>> for LazyBatchColumnVec[src]

impl IndexMut<RangeTo<usize>> for LazyBatchColumnVec[src]

impl IndexMut<usize> for LazyBatchColumnVec[src]

Auto Trait Implementations

impl RefUnwindSafe for LazyBatchColumnVec

impl Send for LazyBatchColumnVec

impl Sync for LazyBatchColumnVec

impl Unpin for LazyBatchColumnVec

impl UnwindSafe for LazyBatchColumnVec

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> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

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]