continuity_runtime/
validation.rs1use crate::error::{ContinuityValidationError, ContinuityValidationResult};
2
3pub(crate) fn require_non_empty(value: &str, field: &'static str) -> ContinuityValidationResult {
4 if value.trim().is_empty() {
5 return Err(ContinuityValidationError::MissingField(field));
6 }
7 Ok(())
8}
9
10pub(crate) fn require_non_empty_slice<T>(
11 values: &[T],
12 field: &'static str,
13) -> ContinuityValidationResult {
14 if values.is_empty() {
15 return Err(ContinuityValidationError::MissingField(field));
16 }
17 Ok(())
18}
19
20pub(crate) fn require_schema_version(
21 found: &str,
22 expected: &'static str,
23) -> ContinuityValidationResult {
24 if found != expected {
25 return Err(ContinuityValidationError::SchemaVersionMismatch {
26 expected,
27 found: found.to_string(),
28 });
29 }
30 Ok(())
31}