Struct tidb_query_codegen::rpn_function::VargsRpnFn[][src]

struct VargsRpnFn {
    captures: Vec<Expr>,
    max_args: Option<usize>,
    min_args: Option<usize>,
    extra_validator: Option<TokenStream>,
    metadata_type: Option<TokenStream>,
    metadata_mapper: Option<TokenStream>,
    nullable: bool,
    writer: bool,
    item_fn: ItemFn,
    arg_type: TypePath,
    arg_type_anonymous: TokenStream,
    ret_type: TypePath,
}

Generates a varg RPN fn.

Fields

captures: Vec<Expr>max_args: Option<usize>min_args: Option<usize>extra_validator: Option<TokenStream>metadata_type: Option<TokenStream>metadata_mapper: Option<TokenStream>nullable: boolwriter: boolitem_fn: ItemFnarg_type: TypePatharg_type_anonymous: TokenStreamret_type: TypePath

Implementations

impl VargsRpnFn[src]

fn new(attr: RpnFnAttr, item_fn: ItemFn) -> Result<Self>[src]

fn get_args_type(
    attr: &RpnFnAttr,
    fn_arg: &FnArg
) -> Result<VargsRpnFnSignatureParam>
[src]

fn generate(self) -> TokenStream[src]

fn generate_constructor(&self) -> TokenStream[src]

Trait Implementations

impl Debug for VargsRpnFn[src]

Auto Trait Implementations

impl RefUnwindSafe for VargsRpnFn

impl !Send for VargsRpnFn

impl !Sync for VargsRpnFn

impl Unpin for VargsRpnFn

impl UnwindSafe for VargsRpnFn

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<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[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.