@@ -28,11 +28,17 @@ impl RawTableProvider {
2828 }
2929}
3030
31+ #[ cfg( feature = "duckdb" ) ]
3132pub mod duckdb;
33+ #[ cfg( feature = "flight" ) ]
3234pub mod flight;
35+ #[ cfg( feature = "mysql" ) ]
3336pub mod mysql;
37+ #[ cfg( feature = "odbc" ) ]
3438pub mod odbc;
39+ #[ cfg( feature = "postgres" ) ]
3540pub mod postgres;
41+ #[ cfg( feature = "sqlite" ) ]
3642pub mod sqlite;
3743pub mod utils;
3844
@@ -41,29 +47,47 @@ pub mod utils;
4147fn _internal ( py : Python , m : & Bound < ' _ , PyModule > ) -> PyResult < ( ) > {
4248 m. add_class :: < RawTableProvider > ( ) ?;
4349
44- let sqlite = PyModule :: new ( py, "sqlite" ) ?;
45- sqlite:: init_module ( & sqlite) ?;
46- m. add_submodule ( & sqlite) ?;
50+ #[ cfg( feature = "sqlite" ) ]
51+ {
52+ let sqlite = PyModule :: new ( py, "sqlite" ) ?;
53+ sqlite:: init_module ( & sqlite) ?;
54+ m. add_submodule ( & sqlite) ?;
55+ }
4756
48- let duckdb = PyModule :: new ( py, "duckdb" ) ?;
49- duckdb:: init_module ( & duckdb) ?;
50- m. add_submodule ( & duckdb) ?;
57+ #[ cfg( feature = "duckdb" ) ]
58+ {
59+ let duckdb = PyModule :: new ( py, "duckdb" ) ?;
60+ duckdb:: init_module ( & duckdb) ?;
61+ m. add_submodule ( & duckdb) ?;
62+ }
5163
52- let odbc = PyModule :: new ( py, "odbc" ) ?;
53- odbc:: init_module ( & odbc) ?;
54- m. add_submodule ( & odbc) ?;
64+ #[ cfg( feature = "odbc" ) ]
65+ {
66+ let odbc = PyModule :: new ( py, "odbc" ) ?;
67+ odbc:: init_module ( & odbc) ?;
68+ m. add_submodule ( & odbc) ?;
69+ }
5570
56- let mysql = PyModule :: new ( py, "mysql" ) ?;
57- mysql:: init_module ( & mysql) ?;
58- m. add_submodule ( & mysql) ?;
71+ #[ cfg( feature = "mysql" ) ]
72+ {
73+ let mysql = PyModule :: new ( py, "mysql" ) ?;
74+ mysql:: init_module ( & mysql) ?;
75+ m. add_submodule ( & mysql) ?;
76+ }
5977
60- let postgres = PyModule :: new ( py, "postgres" ) ?;
61- postgres:: init_module ( & postgres) ?;
62- m. add_submodule ( & postgres) ?;
78+ #[ cfg( feature = "postgres" ) ]
79+ {
80+ let postgres = PyModule :: new ( py, "postgres" ) ?;
81+ postgres:: init_module ( & postgres) ?;
82+ m. add_submodule ( & postgres) ?;
83+ }
6384
64- let flight = PyModule :: new ( py, "flight" ) ?;
65- flight:: init_module ( & flight) ?;
66- m. add_submodule ( & flight) ?;
85+ #[ cfg( feature = "flight" ) ]
86+ {
87+ let flight = PyModule :: new ( py, "flight" ) ?;
88+ flight:: init_module ( & flight) ?;
89+ m. add_submodule ( & flight) ?;
90+ }
6791
6892 Ok ( ( ) )
6993}
0 commit comments