IntoRangeMapSafe

Trait IntoRangeMapSafe 

Source
pub trait IntoRangeMapSafe<V>: IntoIterator<Item = (Option<Range<u64>>, V)> + Sized
where V: Clone + Debug + Eq,
{ // Provided method fn into_rangemap_safe(self) -> RangeMap<u64, V> { ... } }
Expand description

This trait exists to allow creating RangeMaps from possibly-overlapping input data.

The RangeMap struct will panic if you attempt to initialize it with overlapping data, and we deal with many sources of untrusted input data that could run afoul of this. Upstream issue

Provided Methods§

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementors§

Source§

impl<I, V> IntoRangeMapSafe<V> for I
where I: IntoIterator<Item = (Option<Range<u64>>, V)> + Sized, V: Clone + Debug + Eq,