Skip to main content

qail_core/transpiler/
dialect.rs

1use crate::transpiler::sql::postgres::PostgresGenerator;
2use crate::transpiler::sql::sqlite::SqliteGenerator;
3use crate::transpiler::traits::SqlGenerator;
4
5#[derive(Debug, Clone, Copy, PartialEq, Default)]
6pub enum Dialect {
7    #[default]
8    Postgres,
9    SQLite,
10}
11
12impl Dialect {
13    pub fn generator(&self) -> Box<dyn SqlGenerator> {
14        match self {
15            Dialect::Postgres => Box::new(PostgresGenerator),
16            Dialect::SQLite => Box::new(SqliteGenerator),
17        }
18    }
19}