struct SeekByAccCond<F, T>where
T: LazyMapMonoid,{
acc: T::Agg,
f: F,
_marker: PhantomData<fn() -> T>,
}Fields§
§acc: T::Agg§f: F§_marker: PhantomData<fn() -> T>Implementations§
Source§impl<F, T> SeekByAccCond<F, T>where
T: LazyMapMonoid,
impl<F, T> SeekByAccCond<F, T>where
T: LazyMapMonoid,
Sourcefn new(f: F) -> Self
fn new(f: F) -> Self
Examples found in repository?
crates/competitive/src/data_structure/splay_tree/sequence.rs (line 399)
393 pub fn position_acc<R, F>(&mut self, range: R, f: F) -> Option<usize>
394 where
395 R: RangeBounds<usize>,
396 F: FnMut(&T::Agg) -> bool,
397 {
398 let mut range = self.range(range);
399 let ord = range.root_mut().splay_by(SeekByAccCond::new(f));
400 if !matches!(ord, Some(Ordering::Equal)) {
401 return None;
402 }
403 let front_size = range.front().size();
404 let left_size = range.root().left_size();
405 Some(front_size + left_size)
406 }Trait Implementations§
Source§impl<F, T> SplaySeeker for SeekByAccCond<F, T>
impl<F, T> SplaySeeker for SeekByAccCond<F, T>
Auto Trait Implementations§
impl<F, T> Freeze for SeekByAccCond<F, T>
impl<F, T> RefUnwindSafe for SeekByAccCond<F, T>
impl<F, T> Send for SeekByAccCond<F, T>
impl<F, T> Sync for SeekByAccCond<F, T>
impl<F, T> Unpin for SeekByAccCond<F, T>
impl<F, T> UnwindSafe for SeekByAccCond<F, T>
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