pub mod jsf;
pub mod lcg;
pub mod mersenne;
pub mod pcg;
pub mod philox;
pub mod sfc;
pub mod splitmix;
pub mod squares;
pub mod threefry;
pub mod xoroshiro;
pub mod xorshift;
pub mod xoshiro;
pub use jsf::Jsf32;
#[cfg(feature = "simd")]
pub use jsf::{Jsf32x8, Jsf32x16};
#[allow(deprecated)]
pub use lcg::Lcg32;
pub use mersenne::{
Mt19937, Sfmt607, Sfmt1279, Sfmt2281, Sfmt4253, Sfmt11213, Sfmt19937, Sfmt44497, Sfmt86243,
Sfmt132049, Sfmt216091,
};
pub use pcg::Pcg32;
#[cfg(feature = "simd")]
pub use pcg::{Pcg32Simd, Pcg32x8};
pub use philox::Philox32x4;
#[cfg(feature = "simd")]
pub use philox::{Philox32, Philox32x4x4};
pub use sfc::Sfc32;
#[cfg(feature = "simd")]
pub use sfc::{Sfc32x4, Sfc32x8, Sfc32x16};
pub use splitmix::SplitMix32;
#[cfg(feature = "simd")]
pub use splitmix::{SplitMix32Simd, SplitMix32x16};
pub use squares::Squares32;
#[cfg(feature = "simd")]
pub use squares::{Squares32Simd, Squares32x8};
pub use threefry::{Threefry32x2, Threefry32x4};
pub use xoroshiro::Xoroshiro64Ss;
#[cfg(feature = "simd")]
pub use xoroshiro::Xoroshiro64Ssx16;
pub use xorshift::{Xorshift32, Xorshift128, Xorwow};
pub use xoshiro::{Xoshiro128Pp, Xoshiro128Ss};
#[cfg(feature = "simd")]
pub use xoshiro::{Xoshiro128Ppx16, Xoshiro128Ssx16};
#[cfg(all(feature = "cabi", feature = "simd"))]
pub(crate) use pcg::{PCG32_MULT, PCG32X8_LANE, PCG32X8_PAR_CHUNK, PCG32X8_PAR_CHUNK_BLOCKS};
#[cfg(all(feature = "cabi", feature = "simd"))]
pub(crate) use philox::{
PHILOX32x4x4_CHUNK_RATIO, PHILOX32x4x4_PAR_CHUNK, PHILOX32x4x4_SHIFT, PHILOX32x16,
PHILOX32x16_SHIFT,
};
#[cfg(all(feature = "cabi", feature = "simd"))]
pub(crate) use splitmix::{SPLITMIX32_GAMMA, SPLITMIX32x16, SPLITMIX32x16_PAR_CHUNK};
#[cfg(all(feature = "cabi", feature = "simd"))]
pub(crate) use squares::SQUARES32x8;
crate::impl_default_from_seed32!(
Jsf32,
Mt19937,
Sfc32,
SplitMix32,
Xoroshiro64Ss,
Xorshift32,
Xorshift128,
Xorwow,
Xoshiro128Pp,
Xoshiro128Ss,
);
crate::impl_default_from_seed64!(
Pcg32, Sfmt19937, Sfmt607, Sfmt1279, Sfmt2281, Sfmt4253, Sfmt11213, Sfmt44497, Sfmt86243,
Sfmt132049, Sfmt216091, Squares32,
);