pub struct QuadConstraintStream<S, A, K, E, KE, F, Sc>where
Sc: Score,{ /* private fields */ }Implementations§
Source§impl<S, A, K, E, KE, Sc> QuadConstraintStream<S, A, K, E, KE, TrueFilter, Sc>
impl<S, A, K, E, KE, Sc> QuadConstraintStream<S, A, K, E, KE, TrueFilter, Sc>
pub fn new_self_join(extractor: E, key_extractor: KE) -> Self
Source§impl<S, A, K, E, KE, F, Sc> QuadConstraintStream<S, A, K, E, KE, F, Sc>
impl<S, A, K, E, KE, F, Sc> QuadConstraintStream<S, A, K, E, KE, F, Sc>
pub fn new_self_join_with_filter( extractor: E, key_extractor: KE, filter: F, ) -> Self
pub fn filter<P>( self, predicate: P, ) -> QuadConstraintStream<S, A, K, E, KE, AndQuadFilter<F, FnQuadFilter<impl Fn(&S, &A, &A, &A, &A) -> bool + Send + Sync>>, Sc>
pub fn penalize(
self,
weight: Sc,
) -> QuadConstraintBuilder<S, A, K, E, KE, F, impl Fn(&A, &A, &A, &A) -> Sc + Send + Sync, Sc>where
Sc: Copy,
pub fn penalize_with<W>( self, weight_fn: W, ) -> QuadConstraintBuilder<S, A, K, E, KE, F, W, Sc>
pub fn penalize_hard_with<W>( self, weight_fn: W, ) -> QuadConstraintBuilder<S, A, K, E, KE, F, W, Sc>
pub fn reward(
self,
weight: Sc,
) -> QuadConstraintBuilder<S, A, K, E, KE, F, impl Fn(&A, &A, &A, &A) -> Sc + Send + Sync, Sc>where
Sc: Copy,
pub fn reward_with<W>( self, weight_fn: W, ) -> QuadConstraintBuilder<S, A, K, E, KE, F, W, Sc>
pub fn reward_hard_with<W>( self, weight_fn: W, ) -> QuadConstraintBuilder<S, A, K, E, KE, F, W, Sc>
pub fn penalize_hard(
self,
) -> QuadConstraintBuilder<S, A, K, E, KE, F, impl Fn(&A, &A, &A, &A) -> Sc + Send + Sync, Sc>where
Sc: Copy,
pub fn penalize_soft(
self,
) -> QuadConstraintBuilder<S, A, K, E, KE, F, impl Fn(&A, &A, &A, &A) -> Sc + Send + Sync, Sc>where
Sc: Copy,
pub fn reward_hard(
self,
) -> QuadConstraintBuilder<S, A, K, E, KE, F, impl Fn(&A, &A, &A, &A) -> Sc + Send + Sync, Sc>where
Sc: Copy,
pub fn reward_soft(
self,
) -> QuadConstraintBuilder<S, A, K, E, KE, F, impl Fn(&A, &A, &A, &A) -> Sc + Send + Sync, Sc>where
Sc: Copy,
Source§impl<S, A, K, E, KE, F, Sc> QuadConstraintStream<S, A, K, E, KE, F, Sc>
impl<S, A, K, E, KE, F, Sc> QuadConstraintStream<S, A, K, E, KE, F, Sc>
pub fn join<J>(
self,
joiner: J,
) -> PentaConstraintStream<S, A, K, E, KE, impl PentaFilter<S, A, A, A, A, A>, Sc>where
J: Joiner<A, A> + 'static,
F: 'static,
Trait Implementations§
Auto Trait Implementations§
impl<S, A, K, E, KE, F, Sc> Freeze for QuadConstraintStream<S, A, K, E, KE, F, Sc>
impl<S, A, K, E, KE, F, Sc> RefUnwindSafe for QuadConstraintStream<S, A, K, E, KE, F, Sc>
impl<S, A, K, E, KE, F, Sc> Send for QuadConstraintStream<S, A, K, E, KE, F, Sc>
impl<S, A, K, E, KE, F, Sc> Sync for QuadConstraintStream<S, A, K, E, KE, F, Sc>
impl<S, A, K, E, KE, F, Sc> Unpin for QuadConstraintStream<S, A, K, E, KE, F, Sc>
impl<S, A, K, E, KE, F, Sc> UnsafeUnpin for QuadConstraintStream<S, A, K, E, KE, F, Sc>
impl<S, A, K, E, KE, F, Sc> UnwindSafe for QuadConstraintStream<S, A, K, E, KE, F, Sc>
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