(s: &str)
| 149 | } |
| 150 | |
| 151 | fn parse_polygon(s: &str) -> Option<Geometry> { |
| 152 | let inner = strip_parens(s)?; |
| 153 | let rings = split_top_level_parens(inner)?; |
| 154 | let ring_coords: Option<Vec<Vec<[f64; 2]>>> = rings |
| 155 | .iter() |
| 156 | .map(|r| parse_coord_list(strip_parens(r.trim())?)) |
| 157 | .collect(); |
| 158 | Some(Geometry::Polygon { |
| 159 | coordinates: ring_coords?, |
| 160 | }) |
| 161 | } |
| 162 | |
| 163 | fn parse_multipoint(s: &str) -> Option<Geometry> { |
| 164 | let inner = strip_parens(s)?; |
no test coverage detected