std::ops::Index
andstd::ops::IndexMut
implementations matching those for the std::ops range types- implemented on ranges of
usize
forString
,str
,CStr
,CString
,OsString
,[T]
, andVec<T>
where applicable - unfortunately, the
std::slice::SliceIndex
trait is sealed so we couldn't do everything we wanted to
- implemented on ranges of
- conversion methods (
From
implementations) between this crate's range types and the std::ops range types where applicable:BoundedRange
->Range
andRangeInclusive
EmptyRange
->Range
andRangeInclusive
LowerBoundedRange
->RangeFrom
UnboundedRange
->RangeFull
UpperBoundedRange
->RangeTo
andRangeToInclusive
to_bound
methods onUpperBound
andLowerBound
with stern comment warning of pitfalls- this changelog
- optional
serde
dependency for derivingSerialize
andDeserialize
where applicable
EmptyRange
typeRangeComplement
trait andcomplement
method for theRangetools
traitflipped
method forBound
- Iterators! Previously the range types implemented
Iterator
directly. Now they implementIntoIterator
and have corresponding iterator types (BoundedRangeIter
,LowerBoundedRangeIter
,BoundedSetIter
, andLowerBoundedSetIter
)
intersects
method for theRangetools
trait
- Specialized
Bound
intoLowerBound
andUpperBound
#5 (fixed bug in BoundedRange's iterator implementation #4)
Initial Release