Expand description
This small library provides the Holds trait, which can be
implemented for a type that contains another value. This trait is meant for
“Range”-like types. Obviously Rust’s Range* types fit this definition,
but slices like [T] and str do too (they contain a starting reference
and a length, and contain a number of subslices or discrete values in
between their start and end points).
Holds exposes the holds method, which returns a bool
representing whether the value was held within. This library also provides
the Reassign trait, which is a subtrait of Holds.
Reassign is intended soley for references, so that the lifetime of a
value reference can be extended if it’s held by a container that lives
longer. reassign therefore takes &'a self and &'b T and returns
Option < &'a T >.