#[doc(inline)]
pub use self::{kinds::*, settings::*, types::*};
mod settings;
pub mod kinds {
#[doc(inline)]
pub use self::{network::*, scope::*, services::*, tracing::*};
mod network;
mod scope;
mod services;
mod tracing;
}
pub mod types {
#[doc(inline)]
pub use self::{environment::*, log_level::*, mode::*, netaddr::*};
mod environment;
mod log_level;
mod mode;
mod netaddr;
}
pub(crate) mod prelude {
pub use super::kinds::*;
pub use super::settings::*;
}
serde_display! {
json::<Display>(
Settings,
TracingConfig,
NetworkConfig,
ServicesConfig
)
}
pub trait Configurable {
type Config;
fn config(&self) -> &Self::Config;
}