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::redis::*;
14pub use crate::webauthn::*;
15
16mod config;
17mod database;
18mod dataloader;
19mod email;
20mod http;
21mod redis;
22mod webauthn;
23
24mod std_ext;
25pub use std_ext::*;
26
27pub trait Global:
28 ConfigInterface
29 + DatabaseInterface
30 + DataloaderInterface
31 + HttpClientInterface
32 + geo_ip::GeoIpInterface
33 + EmailInterface
34 + RedisInterface
35 + WebAuthnInterface
36 + Send
37 + Sync
38 + 'static
39{
40}