MCPcopy Create free account
hub / github.com/NodeDB-Lab/nodedb / check_bound_order

Function check_bound_order

nodedb-array/src/schema/validation/dims.rs:69–87  ·  view source on GitHub ↗
(array: &str, d: &DimSpec)

Source from the content-addressed store, hash-verified

67}
68
69fn check_bound_order(array: &str, d: &DimSpec) -> ArrayResult<()> {
70 let ordered = match (&d.domain.lo, &d.domain.hi) {
71 (DomainBound::Int64(lo), DomainBound::Int64(hi)) => lo <= hi,
72 (DomainBound::Float64(lo), DomainBound::Float64(hi)) => {
73 !lo.is_nan() && !hi.is_nan() && lo <= hi
74 }
75 (DomainBound::TimestampMs(lo), DomainBound::TimestampMs(hi)) => lo <= hi,
76 (DomainBound::String(lo), DomainBound::String(hi)) => lo <= hi,
77 _ => true,
78 };
79 if !ordered {
80 return Err(ArrayError::InvalidDim {
81 array: array.to_string(),
82 dim: d.name.clone(),
83 detail: "domain lo > hi (or non-finite float bound)".to_string(),
84 });
85 }
86 Ok(())
87}
88
89#[cfg(test)]
90mod tests {

Callers 1

checkFunction · 0.85

Calls 2

to_stringMethod · 0.80
cloneMethod · 0.45

Tested by

no test coverage detected