summaryrefslogtreecommitdiff
path: root/rand/rand_xoshiro/src/splitmix64.rs
diff options
context:
space:
mode:
Diffstat (limited to 'rand/rand_xoshiro/src/splitmix64.rs')
-rw-r--r--rand/rand_xoshiro/src/splitmix64.rs7
1 files changed, 3 insertions, 4 deletions
diff --git a/rand/rand_xoshiro/src/splitmix64.rs b/rand/rand_xoshiro/src/splitmix64.rs
index a7cac9f..3a41450 100644
--- a/rand/rand_xoshiro/src/splitmix64.rs
+++ b/rand/rand_xoshiro/src/splitmix64.rs
@@ -6,7 +6,7 @@
// option. This file may not be copied, modified, or distributed
// except according to those terms.
-use byteorder::{ByteOrder, LittleEndian};
+#[cfg(feature="serde1")] use serde::{Serialize, Deserialize};
use rand_core::le::read_u64_into;
use rand_core::impls::fill_bytes_via_next;
use rand_core::{RngCore, SeedableRng, Error};
@@ -22,6 +22,7 @@ use rand_core::{RngCore, SeedableRng, Error};
/// from [`dsiutils`](http://dsiutils.di.unimi.it/) is used.
#[allow(missing_copy_implementations)]
#[derive(Debug, Clone)]
+#[cfg_attr(feature="serde1", derive(Serialize, Deserialize))]
pub struct SplitMix64 {
x: u64,
}
@@ -77,9 +78,7 @@ impl SeedableRng for SplitMix64 {
/// Seed a `SplitMix64` from a `u64`.
fn seed_from_u64(seed: u64) -> SplitMix64 {
- let mut x = [0; 8];
- LittleEndian::write_u64(&mut x, seed);
- SplitMix64::from_seed(x)
+ SplitMix64::from_seed(seed.to_le_bytes())
}
}