diff --git a/sdk/src/hash.rs b/sdk/src/hash.rs index dc8441def0..92c4808f35 100644 --- a/sdk/src/hash.rs +++ b/sdk/src/hash.rs @@ -76,6 +76,17 @@ impl FromStr for Hash { } } +/// New random hash value for tests and benchmarks. +#[cfg(feature = "everything")] +pub fn new_rand(rng: &mut R) -> Hash +where + R: rand::Rng, +{ + let mut buf = [0u8; HASH_BYTES]; + rng.fill(&mut buf); + Hash::new(&buf) +} + impl Hash { pub fn new(hash_slice: &[u8]) -> Self { Hash(<[u8; HASH_BYTES]>::try_from(hash_slice).unwrap()) @@ -90,14 +101,13 @@ impl Hash { } /// New random hash value for tests and benchmarks. - #[cfg(feature = "everything")] + #[cfg(all(feature = "everything", not(target_arch = "bpf")))] + #[deprecated(since = "1.3.9", note = "Please use 'hash::new_rand' instead")] pub fn new_rand(rng: &mut R) -> Self where R: rand::Rng, { - let mut buf = [0u8; HASH_BYTES]; - rng.fill(&mut buf); - Hash::new(&buf) + new_rand(rng) } }