pub trait Database:
CommandExecutor
+ SqlExecutor
+ Debug {
// Required method
fn get_type(&self) -> &DatabaseType;
// Provided methods
async fn transaction<'a>(
&'a self,
) -> LunaOrmResult<Transaction<'a, Self::G>> { ... }
async fn remove<SE>(
&mut self,
primary: &dyn Primary,
selection: &dyn Selection,
) -> LunaOrmResult<Option<SE>>
where SE: SelectedEntity + Send + Unpin { ... }
async fn transact(
&mut self,
commands: &[WriteCommand],
) -> LunaOrmResult<bool> { ... }
}Required Methods§
fn get_type(&self) -> &DatabaseType
Provided Methods§
async fn transaction<'a>(&'a self) -> LunaOrmResult<Transaction<'a, Self::G>>
async fn remove<SE>( &mut self, primary: &dyn Primary, selection: &dyn Selection, ) -> LunaOrmResult<Option<SE>>
async fn transact(&mut self, commands: &[WriteCommand]) -> LunaOrmResult<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.