pub struct Product2<X, DX: Distribution<X> + Clone, Y, DY: Distribution<Y> + Clone, Z, F: Fn(X, Y) -> Z + Clone> {
pub dx: DX,
pub dy: DY,
pub f: F,
pub pd: PhantomData<(X, Y, Z)>,
}Expand description
A distribution that combines two independent distributions dx and dy using a function f.
Fields§
§dx: DX§dy: DY§f: F§pd: PhantomData<(X, Y, Z)>Trait Implementations§
Source§impl<X: Clone, DX: Clone + Distribution<X> + Clone, Y: Clone, DY: Clone + Distribution<Y> + Clone, Z: Clone, F: Clone + Fn(X, Y) -> Z + Clone> Clone for Product2<X, DX, Y, DY, Z, F>
impl<X: Clone, DX: Clone + Distribution<X> + Clone, Y: Clone, DY: Clone + Distribution<Y> + Clone, Z: Clone, F: Clone + Fn(X, Y) -> Z + Clone> Clone for Product2<X, DX, Y, DY, Z, F>
Source§impl<X, DX: Distribution<X> + Clone, Y, DY: Distribution<Y> + Clone, Z, F: Fn(X, Y) -> Z + Clone> Distribution<Z> for Product2<X, DX, Y, DY, Z, F>
impl<X, DX: Distribution<X> + Clone, Y, DY: Distribution<Y> + Clone, Z, F: Fn(X, Y) -> Z + Clone> Distribution<Z> for Product2<X, DX, Y, DY, Z, F>
Auto Trait Implementations§
impl<X, DX, Y, DY, Z, F> Freeze for Product2<X, DX, Y, DY, Z, F>
impl<X, DX, Y, DY, Z, F> RefUnwindSafe for Product2<X, DX, Y, DY, Z, F>where
DX: RefUnwindSafe,
DY: RefUnwindSafe,
F: RefUnwindSafe,
X: RefUnwindSafe,
Y: RefUnwindSafe,
Z: RefUnwindSafe,
impl<X, DX, Y, DY, Z, F> Send for Product2<X, DX, Y, DY, Z, F>
impl<X, DX, Y, DY, Z, F> Sync for Product2<X, DX, Y, DY, Z, F>
impl<X, DX, Y, DY, Z, F> Unpin for Product2<X, DX, Y, DY, Z, F>
impl<X, DX, Y, DY, Z, F> UnwindSafe for Product2<X, DX, Y, DY, Z, F>
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