pub fn validate_config(config: &CommandsConfig) -> Result<()>Expand description
Validate the entire configuration
Performs comprehensive validation of the configuration structure, checking for:
- Duplicate command names and aliases
- Valid argument types
- Consistent validation rules
- Option/argument naming conflicts
§Arguments
config- The configuration to validate
§Errors
ConfigError::DuplicateCommandif command names/aliases conflictConfigError::InvalidSchemaif structural issues are foundConfigError::Inconsistencyif logical inconsistencies are detected
§Example
use dynamic_cli::config::schema::{CommandsConfig, Metadata};
use dynamic_cli::config::validator::validate_config;
metadata: Metadata {
version: "1.0.0".to_string(),
prompt: "test".to_string(),
prompt_suffix: " >".to_string()
},
commands: vec![],
global_options: vec![]
};
// After loading configuration
validate_config(&config)?;