#[non_exhaustive]pub enum TileError {
InvalidExtent,
BufferTooLarge,
PolylineTooLarge,
TooManyTiles,
Overflow,
Conflict(Vec<TileId>),
}Expand description
Something the slicer or combiner cannot process. Returned in place of a panic or a silently-wrong result.
Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
InvalidExtent
The per-tile output resolution / tile side (extent) was zero, or larger than i32::MAX.
BufferTooLarge
The buffer was too large for the tile size: it must be strictly less than half the
extent, so geometry near a tile edge spills into at most one neighboring tile per axis.
PolylineTooLarge
A line has more than u16::MAX vertices, or the geometry has more than u16::MAX lines —
beyond what the slicer’s compact indexing supports.
TooManyTiles
The geometry reaches too many tiles to slice: it spans more than i16::MAX tiles from its
first vertex on an axis, or its segments would collectively require examining more candidate
tiles than the slicer’s working-set bound.
Overflow
Coordinate arithmetic overflowed i32 — a coordinate or tile lies too close to the limits of
the representable range for the given extent/buffer.
Conflict(Vec<TileId>)
While combining tiles, the added tile disagreed with the already-added tiles on a
shared border segment (see Mosaic::add). Ids are sorted and unique;
the mosaic is left unchanged.
Trait Implementations§
impl Eq for TileError
Source§impl Error for TileError
impl Error for TileError
1.30.0 · Source§fn source(&self) -> Option<&(dyn Error + 'static)>
fn source(&self) -> Option<&(dyn Error + 'static)>
1.0.0 · Source§fn description(&self) -> &str
fn description(&self) -> &str
use the Display impl or to_string()