(s: &str)
| 209 | } |
| 210 | |
| 211 | fn parse_geometry_collection(s: &str) -> Option<Geometry> { |
| 212 | let inner = strip_parens(s)?; |
| 213 | // Split by top-level commas (not inside parentheses). |
| 214 | let parts = split_top_level_items(inner); |
| 215 | let geoms: Option<Vec<Geometry>> = parts.iter().map(|p| geometry_from_wkt(p.trim())).collect(); |
| 216 | Some(Geometry::GeometryCollection { geometries: geoms? }) |
| 217 | } |
| 218 | |
| 219 | /// Split by commas at the top level of parentheses nesting. |
| 220 | /// "(...), (...)" → ["(...)", "(...)"] |
no test coverage detected