Trait IExecutor

Source
pub trait IExecutor {
    type Locked: IExecutor;

    // Required methods
    fn lock(&self) -> DbResult<Self::Locked>;
    fn get_one<T, F: FnMut(&Row<'_>) -> DbResult<T>>(
        &self,
        query: &str,
        params: &[&dyn ToSql],
        serializer: F,
    ) -> DbResult<T>;
    fn get_many<T, F: FnMut(&Row<'_>) -> DbResult<T>>(
        &self,
        query: &str,
        params: &[&dyn ToSql],
        serializer: F,
    ) -> DbResult<Vec<T>>;
    fn execute(&self, query: &str, params: &[&dyn ToSql]) -> DbResult<()>;
    fn execute_return_id(
        &self,
        query: &str,
        params: &[&dyn ToSql],
    ) -> DbResult<i64>;
}

Required Associated Types§

Required Methods§

Source

fn lock(&self) -> DbResult<Self::Locked>

Source

fn get_one<T, F: FnMut(&Row<'_>) -> DbResult<T>>( &self, query: &str, params: &[&dyn ToSql], serializer: F, ) -> DbResult<T>

Source

fn get_many<T, F: FnMut(&Row<'_>) -> DbResult<T>>( &self, query: &str, params: &[&dyn ToSql], serializer: F, ) -> DbResult<Vec<T>>

Source

fn execute(&self, query: &str, params: &[&dyn ToSql]) -> DbResult<()>

Source

fn execute_return_id(&self, query: &str, params: &[&dyn ToSql]) -> DbResult<i64>

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.

Implementations on Foreign Types§

Source§

impl<Ex: IExecutor> IExecutor for &Ex

Source§

type Locked = <Ex as IExecutor>::Locked

Source§

fn lock(&self) -> DbResult<Self::Locked>

Source§

fn get_one<T, F: FnMut(&Row<'_>) -> DbResult<T>>( &self, query: &str, params: &[&dyn ToSql], serializer: F, ) -> DbResult<T>

Source§

fn get_many<T, F: FnMut(&Row<'_>) -> DbResult<T>>( &self, query: &str, params: &[&dyn ToSql], serializer: F, ) -> DbResult<Vec<T>>

Source§

fn execute(&self, query: &str, params: &[&dyn ToSql]) -> DbResult<()>

Source§

fn execute_return_id(&self, query: &str, params: &[&dyn ToSql]) -> DbResult<i64>

Implementors§