pub fn validate_command(cmd: &CommandDefinition) -> Result<()>Expand description
Validate a single command definition
Checks:
- Argument types are valid
- No duplicate argument/option names
- Validation rules are consistent with types
- Required arguments come before optional ones
§Arguments
cmd- The command definition to validate
§Errors
ConfigError::InvalidSchemafor structural issuesConfigError::Inconsistencyfor logical problems
§Example
use dynamic_cli::config::{
schema::{CommandDefinition, ArgumentType},
validator::validate_command,
};
let cmd = CommandDefinition {
name: "test".to_string(),
aliases: vec![],
description: "Test command".to_string(),
required: false,
arguments: vec![],
options: vec![],
implementation: "test_handler".to_string(),
};
validate_command(&cmd)?;