1#![cfg_attr(all(feature = "pg", feature = "sqlite"), doc = include_str!("../readme.md"))]
2
3#[cfg(feature = "pg")]
4pub mod pg;
5#[cfg(feature = "sqlite")]
6pub mod sqlite;
7pub mod runtime;
8
9pub use good_ormning_core::{
10 utils,
11 graphmigrate,
12 QueryResCount,
13};
14
15#[macro_export]
33macro_rules! good_module{
34 ($vis: vis $mod_name: ident) => {
35 #[allow(unused)] $vis mod $mod_name {
36 include!(concat!(env!("OUT_DIR"), "/good_ormning_.rs"));
37 }
38 };
39 ($vis: vis $mod_name: ident, $db_name: literal) => {
40 #[allow(unused)] $vis mod $mod_name {
41 include!(concat!(env!("OUT_DIR"), "/good_ormning_", $db_name, ".rs"));
42 }
43 };
44}
45
46#[cfg(feature = "pg")]
47pub use crate::pg::{
48 PgType,
49 PgFieldTypeBuilder,
50 pg_type_i32,
51 pg_type_i64,
52 pg_type_u32,
53 pg_type_f32,
54 pg_type_f64,
55 pg_type_bool,
56 pg_type_bytes,
57 pg_type_str,
58 GenerateArgs as PgGenerateArgs,
59};
60#[cfg(all(feature = "pg", feature = "chrono"))]
61pub use crate::pg::pg_type_utctime_s_chrono;
62#[cfg(all(feature = "pg", feature = "jiff"))]
63pub use crate::pg::pg_type_utctime_s_jiff;
64#[cfg(feature = "sqlite")]
65pub use crate::sqlite::{
66 SqliteType,
67 SqliteFieldTypeBuilder,
68 sqlite_type_i32,
69 sqlite_type_i64,
70 sqlite_type_u32,
71 sqlite_type_f32,
72 sqlite_type_f64,
73 sqlite_type_bool,
74 sqlite_type_bytes,
75 sqlite_type_str,
76 GenerateArgs as SqliteGenerateArgs,
77};
78#[cfg(all(feature = "sqlite", feature = "chrono"))]
79pub use crate::sqlite::sqlite_type_utctime_s_chrono;
80#[cfg(all(feature = "sqlite", feature = "jiff"))]
81pub use crate::sqlite::sqlite_type_utctime_s_jiff;