Skip to content

Commit c5f020a

Browse files
committed
Make the deprecated unstable SipHasher24 type private.
It is still used by the deprecated *stable* `SipHasher` type.
1 parent cc34ca1 commit c5f020a

File tree

3 files changed

+13
-46
lines changed

3 files changed

+13
-46
lines changed

src/libcore/hash/mod.rs

+1-1
Original file line numberDiff line numberDiff line change
@@ -101,7 +101,7 @@ pub use self::sip::SipHasher;
101101

102102
#[unstable(feature = "sip_hash_13", issue = "34767")]
103103
#[allow(deprecated)]
104-
pub use self::sip::{SipHasher13, SipHasher24};
104+
pub use self::sip::SipHasher13;
105105

106106
mod sip;
107107

src/libcore/hash/sip.rs

+6-39
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,7 @@ pub struct SipHasher13 {
3838
#[rustc_deprecated(since = "1.13.0",
3939
reason = "use `std::collections::hash_map::DefaultHasher` instead")]
4040
#[derive(Debug, Clone, Default)]
41-
pub struct SipHasher24 {
41+
struct SipHasher24 {
4242
hasher: Hasher<Sip24Rounds>,
4343
}
4444

@@ -156,7 +156,9 @@ impl SipHasher {
156156
#[rustc_deprecated(since = "1.13.0",
157157
reason = "use `std::collections::hash_map::DefaultHasher` instead")]
158158
pub fn new_with_keys(key0: u64, key1: u64) -> SipHasher {
159-
SipHasher(SipHasher24::new_with_keys(key0, key1))
159+
SipHasher(SipHasher24 {
160+
hasher: Hasher::new_with_keys(key0, key1)
161+
})
160162
}
161163
}
162164

@@ -182,28 +184,6 @@ impl SipHasher13 {
182184
}
183185
}
184186

185-
impl SipHasher24 {
186-
/// Creates a new `SipHasher24` with the two initial keys set to 0.
187-
#[inline]
188-
#[unstable(feature = "sip_hash_13", issue = "34767")]
189-
#[rustc_deprecated(since = "1.13.0",
190-
reason = "use `std::collections::hash_map::DefaultHasher` instead")]
191-
pub fn new() -> SipHasher24 {
192-
SipHasher24::new_with_keys(0, 0)
193-
}
194-
195-
/// Creates a `SipHasher24` that is keyed off the provided keys.
196-
#[inline]
197-
#[unstable(feature = "sip_hash_13", issue = "34767")]
198-
#[rustc_deprecated(since = "1.13.0",
199-
reason = "use `std::collections::hash_map::DefaultHasher` instead")]
200-
pub fn new_with_keys(key0: u64, key1: u64) -> SipHasher24 {
201-
SipHasher24 {
202-
hasher: Hasher::new_with_keys(key0, key1)
203-
}
204-
}
205-
}
206-
207187
impl<S: Sip> Hasher<S> {
208188
#[inline]
209189
fn new_with_keys(key0: u64, key1: u64) -> Hasher<S> {
@@ -271,12 +251,12 @@ impl<S: Sip> Hasher<S> {
271251
impl super::Hasher for SipHasher {
272252
#[inline]
273253
fn write(&mut self, msg: &[u8]) {
274-
self.0.write(msg)
254+
self.0.hasher.write(msg)
275255
}
276256

277257
#[inline]
278258
fn finish(&self) -> u64 {
279-
self.0.finish()
259+
self.0.hasher.finish()
280260
}
281261
}
282262

@@ -293,19 +273,6 @@ impl super::Hasher for SipHasher13 {
293273
}
294274
}
295275

296-
#[unstable(feature = "sip_hash_13", issue = "34767")]
297-
impl super::Hasher for SipHasher24 {
298-
#[inline]
299-
fn write(&mut self, msg: &[u8]) {
300-
self.hasher.write(msg)
301-
}
302-
303-
#[inline]
304-
fn finish(&self) -> u64 {
305-
self.hasher.finish()
306-
}
307-
}
308-
309276
impl<S: Sip> super::Hasher for Hasher<S> {
310277
// see short_write comment for explanation
311278
#[inline]

src/libcore/tests/hash/sip.rs

+6-6
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@
1111
#![allow(deprecated)]
1212

1313
use core::hash::{Hash, Hasher};
14-
use core::hash::{SipHasher, SipHasher13, SipHasher24};
14+
use core::hash::{SipHasher, SipHasher13};
1515
use core::{slice, mem};
1616

1717
// Hash just the bytes of the slice, without length prefix
@@ -224,14 +224,14 @@ fn test_siphash_2_4() {
224224
let k1 = 0x_0f_0e_0d_0c_0b_0a_09_08;
225225
let mut buf = Vec::new();
226226
let mut t = 0;
227-
let mut state_inc = SipHasher24::new_with_keys(k0, k1);
227+
let mut state_inc = SipHasher::new_with_keys(k0, k1);
228228

229229
while t < 64 {
230230
let vec = u8to64_le!(vecs[t], 0);
231-
let out = hash_with(SipHasher24::new_with_keys(k0, k1), &Bytes(&buf));
231+
let out = hash_with(SipHasher::new_with_keys(k0, k1), &Bytes(&buf));
232232
assert_eq!(vec, out);
233233

234-
let full = hash_with(SipHasher24::new_with_keys(k0, k1), &Bytes(&buf));
234+
let full = hash_with(SipHasher::new_with_keys(k0, k1), &Bytes(&buf));
235235
let i = state_inc.finish();
236236

237237
assert_eq!(full, i);
@@ -322,13 +322,13 @@ fn test_hash_no_concat_alias() {
322322
#[test]
323323
fn test_write_short_works() {
324324
let test_usize = 0xd0c0b0a0usize;
325-
let mut h1 = SipHasher24::new();
325+
let mut h1 = SipHasher::new();
326326
h1.write_usize(test_usize);
327327
h1.write(b"bytes");
328328
h1.write(b"string");
329329
h1.write_u8(0xFFu8);
330330
h1.write_u8(0x01u8);
331-
let mut h2 = SipHasher24::new();
331+
let mut h2 = SipHasher::new();
332332
h2.write(unsafe {
333333
slice::from_raw_parts(&test_usize as *const _ as *const u8,
334334
mem::size_of::<usize>())

0 commit comments

Comments
 (0)