pub struct GroupedConstraintStream<S, A, K, E, Fi, KF, C, Sc>where
Sc: Score,{ /* private fields */ }Implementations§
Source§impl<S, A, K, E, Fi, KF, C, Sc> GroupedConstraintStream<S, A, K, E, Fi, KF, C, Sc>where
S: Send + Sync + 'static,
A: Clone + Send + Sync + 'static,
K: Clone + Eq + Hash + Send + Sync + 'static,
E: Fn(&S) -> &[A] + Send + Sync,
Fi: UniFilter<S, A>,
KF: Fn(&A) -> K + Send + Sync,
C: UniCollector<A> + Send + Sync + 'static,
C::Accumulator: Send + Sync,
C::Result: Clone + Send + Sync,
Sc: Score + 'static,
impl<S, A, K, E, Fi, KF, C, Sc> GroupedConstraintStream<S, A, K, E, Fi, KF, C, Sc>where
S: Send + Sync + 'static,
A: Clone + Send + Sync + 'static,
K: Clone + Eq + Hash + Send + Sync + 'static,
E: Fn(&S) -> &[A] + Send + Sync,
Fi: UniFilter<S, A>,
KF: Fn(&A) -> K + Send + Sync,
C: UniCollector<A> + Send + Sync + 'static,
C::Accumulator: Send + Sync,
C::Result: Clone + Send + Sync,
Sc: Score + 'static,
pub fn penalize_with<W>( self, weight_fn: W, ) -> GroupedConstraintBuilder<S, A, K, E, Fi, KF, C, W, Sc>
pub fn penalize_hard_with<W>( self, weight_fn: W, ) -> GroupedConstraintBuilder<S, A, K, E, Fi, KF, C, W, Sc>
pub fn reward_with<W>( self, weight_fn: W, ) -> GroupedConstraintBuilder<S, A, K, E, Fi, KF, C, W, Sc>
pub fn reward_hard_with<W>( self, weight_fn: W, ) -> GroupedConstraintBuilder<S, A, K, E, Fi, KF, C, W, Sc>
pub fn complement<B, EB, KB, D>( self, extractor_b: EB, key_b: KB, default_fn: D, ) -> ComplementedConstraintStream<S, A, B, K, E, EB, impl Fn(&A) -> Option<K> + Send + Sync, KB, C, D, Sc>
pub fn complement_with_key<B, EB, KA2, KB, D>( self, extractor_b: EB, key_a: KA2, key_b: KB, default_fn: D, ) -> ComplementedConstraintStream<S, A, B, K, E, EB, KA2, KB, C, D, Sc>
Trait Implementations§
Auto Trait Implementations§
impl<S, A, K, E, Fi, KF, C, Sc> Freeze for GroupedConstraintStream<S, A, K, E, Fi, KF, C, Sc>
impl<S, A, K, E, Fi, KF, C, Sc> RefUnwindSafe for GroupedConstraintStream<S, A, K, E, Fi, KF, C, Sc>
impl<S, A, K, E, Fi, KF, C, Sc> Send for GroupedConstraintStream<S, A, K, E, Fi, KF, C, Sc>
impl<S, A, K, E, Fi, KF, C, Sc> Sync for GroupedConstraintStream<S, A, K, E, Fi, KF, C, Sc>
impl<S, A, K, E, Fi, KF, C, Sc> Unpin for GroupedConstraintStream<S, A, K, E, Fi, KF, C, Sc>
impl<S, A, K, E, Fi, KF, C, Sc> UnsafeUnpin for GroupedConstraintStream<S, A, K, E, Fi, KF, C, Sc>
impl<S, A, K, E, Fi, KF, C, Sc> UnwindSafe for GroupedConstraintStream<S, A, K, E, Fi, KF, C, 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