pub fn validate_id(id: &str, policy: IDPolicy) -> Result<(), IDValidationError>Expand description
Validate an ID string against the configured ID policy
§Arguments
id- The ID value to validatepolicy- The ID policy to enforce
§Returns
Ok(()) if the ID is valid for the policy, Err(IDValidationError) otherwise
§Errors
Returns IDValidationError if the ID does not conform to the specified policy.
For IDPolicy::UUID, the ID must be a valid UUID. For IDPolicy::OPAQUE, any string is valid.
§Examples
use fraiseql_core::validation::{IDPolicy, validate_id};
// UUID policy enforces UUID format
assert!(validate_id("550e8400-e29b-41d4-a716-446655440000", IDPolicy::UUID).is_ok());
assert!(validate_id("not-uuid", IDPolicy::UUID).is_err());
// OPAQUE policy accepts any string
assert!(validate_id("anything", IDPolicy::OPAQUE).is_ok());
assert!(validate_id("", IDPolicy::OPAQUE).is_ok());