Skip to main content

InternalVirtualTable

Trait InternalVirtualTable 

Source
pub trait InternalVirtualTable:
    Debug
    + Send
    + Sync {
    // Required methods
    fn name(&self) -> String;
    fn open(
        &self,
        conn: Arc<Connection>,
    ) -> Result<Arc<RwLock<dyn InternalVirtualTableCursor>>>;
    fn best_index(
        &self,
        constraints: &[ConstraintInfo],
        order_by: &[OrderByInfo],
    ) -> Result<IndexInfo, ResultCode>;
    fn sql(&self) -> String;
}

Required Methods§

Source

fn name(&self) -> String

Source

fn open( &self, conn: Arc<Connection>, ) -> Result<Arc<RwLock<dyn InternalVirtualTableCursor>>>

Source

fn best_index( &self, constraints: &[ConstraintInfo], order_by: &[OrderByInfo], ) -> Result<IndexInfo, ResultCode>

best_index is used by the optimizer. See the comment on Table::best_index.

Source

fn sql(&self) -> String

Dyn Compatibility§

This trait is dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety".

Implementors§