pub trait Driver:
Default
+ Clone
+ Sync
+ Send
+ Debug {
type Connection: Connection<Driver = Self> + Debug;
type SqlWriter: SqlWriter;
type Prepared: Prepared;
type Transaction<'c>: Transaction<'c>;
const NAME: &'static [&'static str];
// Required method
fn sql_writer(&self) -> Self::SqlWriter;
// Provided methods
fn name(&self) -> &'static str { ... }
fn connect_pool(
&self,
url: Cow<'static, str>,
config: PoolConfig,
) -> impl Future<Output = Result<impl ConnectionPool<Self>>> + Send { ... }
}Expand description
Backend connector and dialect.
Required Associated Constants§
Required Associated Types§
Sourcetype Connection: Connection<Driver = Self> + Debug
type Connection: Connection<Driver = Self> + Debug
Concrete connection type.
Sourcetype Transaction<'c>: Transaction<'c>
type Transaction<'c>: Transaction<'c>
Transaction implementation.
Required Methods§
Sourcefn sql_writer(&self) -> Self::SqlWriter
fn sql_writer(&self) -> Self::SqlWriter
Returns a dialect-specific SQL writer for query construction.
Provided Methods§
Sourcefn connect_pool(
&self,
url: Cow<'static, str>,
config: PoolConfig,
) -> impl Future<Output = Result<impl ConnectionPool<Self>>> + Send
fn connect_pool( &self, url: Cow<'static, str>, config: PoolConfig, ) -> impl Future<Output = Result<impl ConnectionPool<Self>>> + Send
Creates a new connection to the database at the specified URL.
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety".