runmat_geometry_ops/queries.rs
1use runmat_geometry_core::{GeometryAsset, Region};
2
3#[derive(Debug, Clone, PartialEq, Eq)]
4pub enum QueryError {
5 RegionNotFound,
6}
7
8pub fn find_region<'a>(
9 asset: &'a GeometryAsset,
10 region_id: &str,
11) -> Result<&'a Region, QueryError> {
12 asset
13 .regions
14 .iter()
15 .find(|region| region.region_id == region_id)
16 .ok_or(QueryError::RegionNotFound)
17}