pub struct InstantDistribution<T, U, FF, FS> where
T: RandomVariable,
U: RandomVariable,
FF: Fn(&T, &U) -> Result<f64, DistributionError> + Clone + Send + Sync,
FS: Fn(&U, &mut dyn RngCore) -> Result<T, DistributionError> + Clone + Send + Sync, { /* private fields */ }Implementations
sourceimpl<T, U, FF, FS> InstantDistribution<T, U, FF, FS> where
T: RandomVariable,
U: RandomVariable,
FF: Fn(&T, &U) -> Result<f64, DistributionError> + Clone + Send + Sync,
FS: Fn(&U, &mut dyn RngCore) -> Result<T, DistributionError> + Clone + Send + Sync,
impl<T, U, FF, FS> InstantDistribution<T, U, FF, FS> where
T: RandomVariable,
U: RandomVariable,
FF: Fn(&T, &U) -> Result<f64, DistributionError> + Clone + Send + Sync,
FS: Fn(&U, &mut dyn RngCore) -> Result<T, DistributionError> + Clone + Send + Sync,
Trait Implementations
sourceimpl<T, U, Rhs, URhs, FF, FS> BitAnd<Rhs> for InstantDistribution<T, U, FF, FS> where
T: RandomVariable,
U: RandomVariable,
Rhs: Distribution<Value = U, Condition = URhs>,
URhs: RandomVariable,
FF: Fn(&T, &U) -> Result<f64, DistributionError> + Clone + Send + Sync,
FS: Fn(&U, &mut dyn RngCore) -> Result<T, DistributionError> + Clone + Send + Sync,
impl<T, U, Rhs, URhs, FF, FS> BitAnd<Rhs> for InstantDistribution<T, U, FF, FS> where
T: RandomVariable,
U: RandomVariable,
Rhs: Distribution<Value = U, Condition = URhs>,
URhs: RandomVariable,
FF: Fn(&T, &U) -> Result<f64, DistributionError> + Clone + Send + Sync,
FS: Fn(&U, &mut dyn RngCore) -> Result<T, DistributionError> + Clone + Send + Sync,
type Output = DependentJoint<InstantDistribution<T, U, FF, FS>, Rhs, T, U, URhs>
type Output = DependentJoint<InstantDistribution<T, U, FF, FS>, Rhs, T, U, URhs>
The resulting type after applying the & operator.
sourceimpl<T: Clone, U: Clone, FF: Clone, FS: Clone> Clone for InstantDistribution<T, U, FF, FS> where
T: RandomVariable,
U: RandomVariable,
FF: Fn(&T, &U) -> Result<f64, DistributionError> + Clone + Send + Sync,
FS: Fn(&U, &mut dyn RngCore) -> Result<T, DistributionError> + Clone + Send + Sync,
impl<T: Clone, U: Clone, FF: Clone, FS: Clone> Clone for InstantDistribution<T, U, FF, FS> where
T: RandomVariable,
U: RandomVariable,
FF: Fn(&T, &U) -> Result<f64, DistributionError> + Clone + Send + Sync,
FS: Fn(&U, &mut dyn RngCore) -> Result<T, DistributionError> + Clone + Send + Sync,
sourcefn clone(&self) -> InstantDistribution<T, U, FF, FS>
fn clone(&self) -> InstantDistribution<T, U, FF, FS>
Returns a copy of the value. Read more
1.0.0 · sourcefn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from source. Read more
sourceimpl<T, U, FF, FS> Debug for InstantDistribution<T, U, FF, FS> where
T: RandomVariable,
U: RandomVariable,
FF: Fn(&T, &U) -> Result<f64, DistributionError> + Clone + Send + Sync,
FS: Fn(&U, &mut dyn RngCore) -> Result<T, DistributionError> + Clone + Send + Sync,
impl<T, U, FF, FS> Debug for InstantDistribution<T, U, FF, FS> where
T: RandomVariable,
U: RandomVariable,
FF: Fn(&T, &U) -> Result<f64, DistributionError> + Clone + Send + Sync,
FS: Fn(&U, &mut dyn RngCore) -> Result<T, DistributionError> + Clone + Send + Sync,
sourceimpl<T, U, FF, FS> Distribution for InstantDistribution<T, U, FF, FS> where
T: RandomVariable,
U: RandomVariable,
FF: Fn(&T, &U) -> Result<f64, DistributionError> + Clone + Send + Sync,
FS: Fn(&U, &mut dyn RngCore) -> Result<T, DistributionError> + Clone + Send + Sync,
impl<T, U, FF, FS> Distribution for InstantDistribution<T, U, FF, FS> where
T: RandomVariable,
U: RandomVariable,
FF: Fn(&T, &U) -> Result<f64, DistributionError> + Clone + Send + Sync,
FS: Fn(&U, &mut dyn RngCore) -> Result<T, DistributionError> + Clone + Send + Sync,
sourceimpl<T, U, Rhs, TRhs, FF, FS> Mul<Rhs> for InstantDistribution<T, U, FF, FS> where
T: RandomVariable,
U: RandomVariable,
Rhs: Distribution<Value = TRhs, Condition = U>,
TRhs: RandomVariable,
FF: Fn(&T, &U) -> Result<f64, DistributionError> + Clone + Send + Sync,
FS: Fn(&U, &mut dyn RngCore) -> Result<T, DistributionError> + Clone + Send + Sync,
impl<T, U, Rhs, TRhs, FF, FS> Mul<Rhs> for InstantDistribution<T, U, FF, FS> where
T: RandomVariable,
U: RandomVariable,
Rhs: Distribution<Value = TRhs, Condition = U>,
TRhs: RandomVariable,
FF: Fn(&T, &U) -> Result<f64, DistributionError> + Clone + Send + Sync,
FS: Fn(&U, &mut dyn RngCore) -> Result<T, DistributionError> + Clone + Send + Sync,
type Output = IndependentJoint<InstantDistribution<T, U, FF, FS>, Rhs, T, TRhs, U>
type Output = IndependentJoint<InstantDistribution<T, U, FF, FS>, Rhs, T, TRhs, U>
The resulting type after applying the * operator.
Auto Trait Implementations
impl<T, U, FF, FS> RefUnwindSafe for InstantDistribution<T, U, FF, FS> where
FF: RefUnwindSafe,
FS: RefUnwindSafe,
T: RefUnwindSafe,
U: RefUnwindSafe,
impl<T, U, FF, FS> Send for InstantDistribution<T, U, FF, FS>
impl<T, U, FF, FS> Sync for InstantDistribution<T, U, FF, FS>
impl<T, U, FF, FS> Unpin for InstantDistribution<T, U, FF, FS> where
FF: Unpin,
FS: Unpin,
T: Unpin,
U: Unpin,
impl<T, U, FF, FS> UnwindSafe for InstantDistribution<T, U, FF, FS> where
FF: UnwindSafe,
FS: UnwindSafe,
T: UnwindSafe,
U: UnwindSafe,
Blanket Implementations
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
sourceimpl<D, T, U1> ConditionableDistribution for D where
D: Distribution<Value = T, Condition = U1>,
T: RandomVariable,
U1: Event,
impl<D, T, U1> ConditionableDistribution for D where
D: Distribution<Value = T, Condition = U1>,
T: RandomVariable,
U1: Event,
sourcefn condition<U2, F>(
self,
condition: F
) -> ConditionedDistribution<D, <D as Distribution>::Value, <D as Distribution>::Condition, U2, F> where
U2: Event,
F: Fn(&U2) -> Result<<D as Distribution>::Condition, DistributionError> + Clone + Send + Sync,
fn condition<U2, F>(
self,
condition: F
) -> ConditionedDistribution<D, <D as Distribution>::Value, <D as Distribution>::Condition, U2, F> where
U2: Event,
F: Fn(&U2) -> Result<<D as Distribution>::Condition, DistributionError> + Clone + Send + Sync,
impl<T> Pointable for T
impl<T> Pointable for T
sourceimpl<D, T, U> SwitchableDistribution<U> for D where
D: Distribution<Value = T, Condition = U>,
T: RandomVariable,
U: Event,
impl<D, T, U> SwitchableDistribution<U> for D where
D: Distribution<Value = T, Condition = U>,
T: RandomVariable,
U: Event,
fn switch(
&'a self,
map: &'a HashMap<u32, U, RandomState>
) -> SwitchedDistribution<'a, D, <D as Distribution>::Value, U>
sourceimpl<T> ToOwned for T where
T: Clone,
impl<T> ToOwned for T where
T: Clone,
type Owned = T
type Owned = T
The resulting type after obtaining ownership.
sourcefn clone_into(&self, target: &mut T)
fn clone_into(&self, target: &mut T)
🔬 This is a nightly-only experimental API. (
toowned_clone_into)Uses borrowed data to replace owned data, usually by cloning. Read more