pub trait MultiPolygon<'a>: Send + Sync { type ItemType: 'a + Polygon<'a>; type Iter: Iterator<Item = &'a Self::ItemType>; fn polygons(&'a self) -> Self::Iter; }