Trait tidb_query_expr::types::function::RpnFnArg[][src]

pub trait RpnFnArg: Debug {
    type Type;
    fn get(&self, row: usize) -> Self::Type;
fn get_bit_vec(&self) -> (Option<&BitVec>, bool); }

A single argument of an RPN function.

Associated Types

type Type[src]

Loading content...

Required methods

fn get(&self, row: usize) -> Self::Type[src]

Gets the value in the given row.

fn get_bit_vec(&self) -> (Option<&BitVec>, bool)[src]

Gets the bit vector of the arg. Returns None if scalar value, and bool indicates whether all is null or isn’t null, otherwise a BitVec. Returns Some if vector value, and bool indicates whether stored bitmap vector has the same layout as elements, aka. logical_rows is identical or not. If logical_rows is identical, the second tuple element yields true.

Loading content...

Implementors

impl<'a, T: EvaluableRef<'a>> RpnFnArg for ScalarArg<'a, T>[src]

type Type = Option<T>

fn get(&self, _row: usize) -> Option<T>[src]

Gets the value in the given row. All rows of a ScalarArg share the same value.

impl<'a, T: EvaluableRef<'a>, C: 'a + ChunkRef<'a, T>> RpnFnArg for VectorArg<'a, T, C>[src]

type Type = Option<T>

Loading content...