scufflecloud_core_traits/lib.rs
1#![cfg_attr(coverage_nightly, feature(coverage_attribute))]
2#![cfg_attr(docsrs, feature(doc_auto_cfg))]
3// #![deny(missing_docs)]
4#![deny(unsafe_code)]
5#![deny(unreachable_pub)]
6#![deny(clippy::mod_module_files)]
7
8pub use crate::config::*;
9pub use crate::database::*;
10pub use crate::dataloader::*;
11pub use crate::email::*;
12pub use crate::http::*;
13pub use crate::mtls::*;
14pub use crate::redis::*;
15pub use crate::webauthn::*;
16
17mod config;
18mod database;
19mod dataloader;
20mod email;
21mod http;
22mod mtls;
23mod redis;
24mod webauthn;
25
26pub trait Global:
27 ConfigInterface
28 + DatabaseInterface
29 + DataloaderInterface
30 + HttpClientInterface
31 + geo_ip::GeoIpInterface
32 + EmailInterface
33 + RedisInterface
34 + WebAuthnInterface
35 + MtlsInterface
36 + Send
37 + Sync
38 + 'static
39{
40}