Trait VTabModule

Source
pub trait VTabModule: 'static {
    type VCursor: VTabCursor;

    const NAME: &'static str;

    // Required methods
    fn connect(api: &ExtensionApi) -> ResultCode;
    fn open() -> Self::VCursor;
    fn filter(
        cursor: &mut Self::VCursor,
        arg_count: i32,
        args: &[Value],
    ) -> ResultCode;
    fn column(cursor: &Self::VCursor, idx: u32) -> Value;
    fn next(cursor: &mut Self::VCursor) -> ResultCode;
    fn eof(cursor: &Self::VCursor) -> bool;
}

Required Associated Constants§

Source

const NAME: &'static str

Required Associated Types§

Required Methods§

Source

fn connect(api: &ExtensionApi) -> ResultCode

Source

fn open() -> Self::VCursor

Source

fn filter( cursor: &mut Self::VCursor, arg_count: i32, args: &[Value], ) -> ResultCode

Source

fn column(cursor: &Self::VCursor, idx: u32) -> Value

Source

fn next(cursor: &mut Self::VCursor) -> ResultCode

Source

fn eof(cursor: &Self::VCursor) -> bool

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementors§