validate<T extends Point<num>> static method

BoundedSeries<LineString<T>> validate<T extends Point<num>>(
  1. Iterable<LineString<T>> rings
)

Validate rings to have at least one exterior and all must be rings.

Implementation

static BoundedSeries<LineString<T>> validate<T extends Point>(
  Iterable<LineString<T>> rings,
) {
  if (rings.isEmpty) {
    throw ArgumentError('Polygon must have exterior ring.');
  }
  for (final ring in rings) {
    if (ring.type != LineStringType.ring) {
      throw ArgumentError('Not a linear ring.');
    }
  }
  return rings is BoundedSeries<LineString<T>>
      ? rings
      : BoundedSeries.view(rings);
}