Skip to main content

ValidatableConfig

Trait ValidatableConfig 

Source
pub trait ValidatableConfig:
    Clone
    + Send
    + Sync {
    // Required method
    fn validate(&self) -> Result<()>;
}
Expand description

Configuration validation trait.

All configuration structs should implement this trait to provide consistent validation across the ecosystem.

§Example

use rust_ai_core::{ValidatableConfig, CoreError, Result};

#[derive(Clone)]
struct LoraConfig {
    rank: usize,
    alpha: f32,
}

impl ValidatableConfig for LoraConfig {
    fn validate(&self) -> Result<()> {
        if self.rank == 0 {
            return Err(CoreError::invalid_config("rank must be > 0"));
        }
        if self.alpha <= 0.0 {
            return Err(CoreError::invalid_config("alpha must be positive"));
        }
        Ok(())
    }
}

Required Methods§

Source

fn validate(&self) -> Result<()>

Validate the configuration parameters.

§Returns

Ok(()) if configuration is valid.

§Errors

Returns CoreError::InvalidConfig if validation fails.

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementors§