pub trait Migrations: Connection {
fn ensure_migrations_table<'life0, 'life1, 'async_trait>(
&'life0 mut self,
table_name: &'life1 str
) -> Pin<Box<dyn Future<Output = Result<(), Error>> + 'async_trait>>
where
'life0: 'async_trait,
'life1: 'async_trait,
Self: 'async_trait;
fn lock<'life0, 'async_trait>(
&'life0 mut self
) -> Pin<Box<dyn Future<Output = Result<(), Error>> + 'async_trait>>
where
'life0: 'async_trait,
Self: 'async_trait;
fn unlock<'life0, 'async_trait>(
&'life0 mut self
) -> Pin<Box<dyn Future<Output = Result<(), Error>> + 'async_trait>>
where
'life0: 'async_trait,
Self: 'async_trait;
fn list_migrations<'life0, 'life1, 'async_trait>(
&'life0 mut self,
table_name: &'life1 str
) -> Pin<Box<dyn Future<Output = Result<Vec<AppliedMigration<'static>>, Error>> + 'async_trait>>
where
'life0: 'async_trait,
'life1: 'async_trait,
Self: 'async_trait;
fn add_migration<'life0, 'life1, 'life2, 'async_trait>(
table_name: &'life0 str,
migration: AppliedMigration<'static>,
tx: &'life1 mut Transaction<'life2, Self::Database>
) -> Pin<Box<dyn Future<Output = Result<(), Error>> + 'async_trait>>
where
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
Self: 'async_trait;
fn remove_migration<'life0, 'life1, 'life2, 'async_trait>(
table_name: &'life0 str,
version: u64,
tx: &'life1 mut Transaction<'life2, Self::Database>
) -> Pin<Box<dyn Future<Output = Result<(), Error>> + 'async_trait>>
where
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
Self: 'async_trait;
fn clear_migrations<'life0, 'life1, 'async_trait>(
&'life0 mut self,
table_name: &'life1 str
) -> Pin<Box<dyn Future<Output = Result<(), Error>> + 'async_trait>>
where
'life0: 'async_trait,
'life1: 'async_trait,
Self: 'async_trait;
}