#[non_exhaustive]pub struct RullstConfig {
pub app: AppConfig,
pub database: DatabaseConfig,
pub security: SecurityConfig,
pub storage: StorageConfig,
}Expand description
Main configuration container for Rullst applications.
Fields (Non-exhaustive)§
This struct is marked as non-exhaustive
Non-exhaustive structs could have additional fields added in future. Therefore, non-exhaustive structs cannot be constructed in external crates using the traditional
Struct { .. } syntax; cannot be matched against without a wildcard ..; and struct update syntax will not work.app: AppConfigGeneral application settings.
database: DatabaseConfigDatabase settings.
security: SecurityConfigSecurity policies and configuration parameters.
storage: StorageConfigFile storage settings.
Implementations§
Source§impl RullstConfig
impl RullstConfig
Sourcepub fn global() -> &'static RullstConfig
pub fn global() -> &'static RullstConfig
Gets the global configuration reference, initializing it with default values if not set.
Sourcepub fn set_global(config: Self) -> Result<(), Self>
pub fn set_global(config: Self) -> Result<(), Self>
Sets the global configuration instance.
Sourcepub fn validate(&self) -> Result<(), ConfigError>
pub fn validate(&self) -> Result<(), ConfigError>
Validates cross-field configuration invariants before any global state is published.
Sourcepub fn from_toml(content: &str) -> Result<Self, ConfigError>
pub fn from_toml(content: &str) -> Result<Self, ConfigError>
Parses a complete Rullst.toml document.
A failure reports only the line and column. The toml error text quotes
the offending source line and can echo values, such as app_key or a
database URL, so it never reaches ConfigError::Parse.
Sourcepub fn environment(&self) -> Result<Environment, ConfigError>
pub fn environment(&self) -> Result<Environment, ConfigError>
Resolves the validated runtime environment for this configuration.
Sourcepub async fn load_from_file(path: &str) -> Result<Self, ConfigError>
pub async fn load_from_file(path: &str) -> Result<Self, ConfigError>
Loads and parses the configuration from a TOML file.
Trait Implementations§
Source§impl Clone for RullstConfig
impl Clone for RullstConfig
Source§impl Debug for RullstConfig
impl Debug for RullstConfig
Source§impl Default for RullstConfig
impl Default for RullstConfig
Source§impl<'de> Deserialize<'de> for RullstConfig
impl<'de> Deserialize<'de> for RullstConfig
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Auto Trait Implementations§
impl Freeze for RullstConfig
impl RefUnwindSafe for RullstConfig
impl Send for RullstConfig
impl Sync for RullstConfig
impl Unpin for RullstConfig
impl UnsafeUnpin for RullstConfig
impl UnwindSafe for RullstConfig
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more