pub struct UniConstraintStream<S, A, E, F, Sc>where
Sc: Score,{ /* private fields */ }Implementations§
Source§impl<S, A, E, Sc> UniConstraintStream<S, A, E, TrueFilter, Sc>
impl<S, A, E, Sc> UniConstraintStream<S, A, E, TrueFilter, Sc>
Source§impl<S, A, E, F, Sc> UniConstraintStream<S, A, E, F, Sc>
impl<S, A, E, F, Sc> UniConstraintStream<S, A, E, F, Sc>
pub fn filter<P>( self, predicate: P, ) -> UniConstraintStream<S, A, E, AndUniFilter<F, FnUniFilter<impl Fn(&S, &A) -> bool + Send + Sync>>, Sc>
pub fn join<J>(self, target: J) -> J::Outputwhere
J: JoinTarget<S, A, E, F, Sc>,
pub fn group_by<K, KF, C>( self, key_fn: KF, collector: C, ) -> GroupedConstraintStream<S, A, K, E, F, KF, C, Sc>
pub fn balance<K, KF>( self, key_fn: KF, ) -> BalanceConstraintStream<S, A, K, E, F, KF, Sc>
pub fn if_exists_filtered<B, EB, K, KA, KB>( self, extractor_b: EB, joiner: EqualJoiner<KA, KB, K>, ) -> IfExistsStream<S, A, B, K, E, EB, KA, KB, F, Sc>
pub fn if_not_exists_filtered<B, EB, K, KA, KB>( self, extractor_b: EB, joiner: EqualJoiner<KA, KB, K>, ) -> IfExistsStream<S, A, B, K, E, EB, KA, KB, F, Sc>
pub fn penalize(
self,
weight: Sc,
) -> UniConstraintBuilder<S, A, E, F, impl Fn(&A) -> Sc + Send + Sync, Sc>where
Sc: Copy,
pub fn penalize_with<W>( self, weight_fn: W, ) -> UniConstraintBuilder<S, A, E, F, W, Sc>
pub fn penalize_hard_with<W>( self, weight_fn: W, ) -> UniConstraintBuilder<S, A, E, F, W, Sc>
pub fn reward(
self,
weight: Sc,
) -> UniConstraintBuilder<S, A, E, F, impl Fn(&A) -> Sc + Send + Sync, Sc>where
Sc: Copy,
pub fn reward_with<W>( self, weight_fn: W, ) -> UniConstraintBuilder<S, A, E, F, W, Sc>
pub fn reward_hard_with<W>( self, weight_fn: W, ) -> UniConstraintBuilder<S, A, E, F, W, Sc>
pub fn penalize_hard(
self,
) -> UniConstraintBuilder<S, A, E, F, impl Fn(&A) -> Sc + Send + Sync, Sc>where
Sc: Copy,
pub fn penalize_soft(
self,
) -> UniConstraintBuilder<S, A, E, F, impl Fn(&A) -> Sc + Send + Sync, Sc>where
Sc: Copy,
pub fn reward_hard(
self,
) -> UniConstraintBuilder<S, A, E, F, impl Fn(&A) -> Sc + Send + Sync, Sc>where
Sc: Copy,
pub fn reward_soft(
self,
) -> UniConstraintBuilder<S, A, E, F, impl Fn(&A) -> Sc + Send + Sync, Sc>where
Sc: Copy,
Trait Implementations§
Auto Trait Implementations§
impl<S, A, E, F, Sc> Freeze for UniConstraintStream<S, A, E, F, Sc>
impl<S, A, E, F, Sc> RefUnwindSafe for UniConstraintStream<S, A, E, F, Sc>where
E: RefUnwindSafe,
F: RefUnwindSafe,
impl<S, A, E, F, Sc> Send for UniConstraintStream<S, A, E, F, Sc>
impl<S, A, E, F, Sc> Sync for UniConstraintStream<S, A, E, F, Sc>
impl<S, A, E, F, Sc> Unpin for UniConstraintStream<S, A, E, F, Sc>
impl<S, A, E, F, Sc> UnsafeUnpin for UniConstraintStream<S, A, E, F, Sc>where
E: UnsafeUnpin,
F: UnsafeUnpin,
impl<S, A, E, F, Sc> UnwindSafe for UniConstraintStream<S, A, E, F, Sc>where
E: UnwindSafe,
F: 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