Trait flatk::TrustedRandomAccess [−][src]
pub unsafe trait TrustedRandomAccess: ExactSizeIterator {
unsafe fn get_unchecked(&mut self, index: usize) -> Self::Item;
fn may_have_side_effect() -> bool { ... }
}
Expand description
An iterator whose items are random-accessible efficiently
Safety
The iterator’s .len() and size_hint() must be exact.
.len()
must be cheap to call.
.get_unchecked() must return distinct mutable references for distinct indices (if applicable), and must return a valid reference if index is in 0..self.len().
Required methods
unsafe fn get_unchecked(&mut self, index: usize) -> Self::Item
unsafe fn get_unchecked(&mut self, index: usize) -> Self::Item
Gets the element at the given index from this iterator.
Safety
The index
must not exceed the number of items produced by this
iterator to avoid undefined behaviour.
Provided methods
fn may_have_side_effect() -> bool
fn may_have_side_effect() -> bool
Returns true
if getting an iterator element may have
side effects. Remember to take inner iterators into account.