pub struct BinarySearchableVec<V> { /* private fields */ }Implementations§
Trait Implementations§
Source§impl<V> BinarySearchable<usize, V> for BinarySearchableVec<V>
impl<V> BinarySearchable<usize, V> for BinarySearchableVec<V>
Source§fn get_val(&mut self, index: &usize) -> V
fn get_val(&mut self, index: &usize) -> V
Gets the value at the given index. Called at with the midpoint at the beginning of each
loop. Can mutate internal state.
Source§fn found_result(
&mut self,
val: &V,
_lower_bound: &usize,
_index: &usize,
_upper_bound: &usize,
) -> bool
fn found_result( &mut self, val: &V, _lower_bound: &usize, _index: &usize, _upper_bound: &usize, ) -> bool
Called immediately after retrieving the
val at the midpoint using get_val(). Returns
whether the result has been found. Returning true will exit the loop, returning val and its
index. Can mutate internal state.Source§fn set_next_bounds(
&mut self,
val: &V,
lower_bound: &mut usize,
index: &usize,
upper_bound: &mut usize,
) -> bool
fn set_next_bounds( &mut self, val: &V, lower_bound: &mut usize, index: &usize, upper_bound: &mut usize, ) -> bool
Called immediately after
found_result(), provided that found_result() returned false. The
purpose is to mutate lower_bound and upper_bound. The return value indicates whether to
abort the search in failure. Returning true will result in the loop exiting and returning
None. Can mutate internal state.fn binary_search(&mut self, lower_bound: I, upper_bound: I) -> Option<(I, V)>
Auto Trait Implementations§
impl<V> Freeze for BinarySearchableVec<V>where
V: Freeze,
impl<V> RefUnwindSafe for BinarySearchableVec<V>where
V: RefUnwindSafe,
impl<V> Send for BinarySearchableVec<V>where
V: Send,
impl<V> Sync for BinarySearchableVec<V>where
V: Sync,
impl<V> Unpin for BinarySearchableVec<V>where
V: Unpin,
impl<V> UnwindSafe for BinarySearchableVec<V>where
V: UnwindSafe,
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more