Release 0.3 (#235)
This commit is contained in:
+11
-7
@@ -1,19 +1,23 @@
|
||||
#[cfg(not(feature = "std"))]
|
||||
pub(crate) use rand::rngs::SmallRng as RngImpl;
|
||||
#[cfg(feature = "std")]
|
||||
pub(crate) use rand::rngs::StdRng as RngImpl;
|
||||
#[cfg(not(feature = "std_rand"))]
|
||||
pub use rand::rngs::SmallRng as RngImpl;
|
||||
#[cfg(feature = "std_rand")]
|
||||
pub use rand::rngs::StdRng as RngImpl;
|
||||
use rand::SeedableRng;
|
||||
|
||||
pub(crate) fn get_rng_impl(seed: Option<u64>) -> RngImpl {
|
||||
/// Custom switch for random fuctions
|
||||
pub fn get_rng_impl(seed: Option<u64>) -> RngImpl {
|
||||
match seed {
|
||||
Some(seed) => RngImpl::seed_from_u64(seed),
|
||||
None => {
|
||||
cfg_if::cfg_if! {
|
||||
if #[cfg(feature = "std")] {
|
||||
if #[cfg(feature = "std_rand")] {
|
||||
use rand::RngCore;
|
||||
RngImpl::seed_from_u64(rand::thread_rng().next_u64())
|
||||
} else {
|
||||
panic!("seed number needed for non-std build");
|
||||
// no std_random feature build, use getrandom
|
||||
let mut buf = [0u8; 64];
|
||||
getrandom::getrandom(&mut buf).unwrap();
|
||||
RngImpl::seed_from_u64(buf[0] as u64)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user