Struct Open01
struct Open01
A distribution to sample floating point numbers uniformly in the open
interval (0, 1), i.e. not including either endpoint.
All values that can be generated are of the form n * ε + ε/2. For f32
the 23 most significant random bits of an u32 are used, for f64 52 from
an u64. The conversion uses a transmute-based method.
See also: StandardUniform which samples from [0, 1), OpenClosed01
which samples from (0, 1] and Uniform which samples from arbitrary
ranges.
Example
use Rng;
use Open01;
let val: f32 = rng.sample;
println!;
Implementations
impl Clone for Open01
fn clone(self: &Self) -> Open01
impl Copy for Open01
impl Debug for Open01
fn fmt(self: &Self, f: &mut Formatter<'_>) -> Result
impl Default for Open01
fn default() -> Open01
impl Distribution for Open01
fn sample<R: Rng + ?Sized>(self: &Self, rng: &mut R) -> f64
impl Distribution for Open01
fn sample<R: Rng + ?Sized>(self: &Self, rng: &mut R) -> f32
impl Freeze for Open01
impl RefUnwindSafe for Open01
impl Send for Open01
impl Serialize for Open01
fn serialize<__S>(self: &Self, __serializer: __S) -> Result<<__S as >::Ok, <__S as >::Error> where __S: Serializer
impl Sync for Open01
impl Unpin for Open01
impl UnsafeUnpin for Open01
impl UnwindSafe for Open01
impl<'de> Deserialize for Open01
fn deserialize<__D>(__deserializer: __D) -> Result<Self, <__D as >::Error> where __D: Deserializer<'de>
impl<T> Any for Open01
fn type_id(self: &Self) -> TypeId
impl<T> Borrow for Open01
fn borrow(self: &Self) -> &T
impl<T> BorrowMut for Open01
fn borrow_mut(self: &mut Self) -> &mut T
impl<T> CloneToUninit for Open01
unsafe fn clone_to_uninit(self: &Self, dest: *mut u8)
impl<T> DeserializeOwned for Open01
impl<T> From for Open01
fn from(t: T) -> TReturns the argument unchanged.
impl<T> ToOwned for Open01
fn to_owned(self: &Self) -> Tfn clone_into(self: &Self, target: &mut T)
impl<T, U> Into for Open01
fn into(self: Self) -> UCalls
U::from(self).That is, this conversion is whatever the implementation of
[From]<T> for Uchooses to do.
impl<T, U> TryFrom for Open01
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
impl<T, U> TryInto for Open01
fn try_into(self: Self) -> Result<U, <U as TryFrom<T>>::Error>
impl<V, T> VZip for Open01
fn vzip(self: Self) -> V