Skip to main content

easy_sql/traits/
database_setup.rs

1use easy_macros::always_context;
2
3use crate::traits::{Driver, EasyExecutor};
4
5#[always_context]
6/// Defines part of the database to initialize
7///
8/// Prefer implementing this trait via the [`DatabaseSetup`](macro@crate::DatabaseSetup) derive macro;
9/// manual implementations may need updates across releases.
10pub trait DatabaseSetup<D: Driver + 'static> {
11    async fn setup(conn: &mut (impl EasyExecutor<D> + Send + Sync)) -> anyhow::Result<()>;
12}