Skip to content

Commit d0f99dd

Browse files
committed
Fix the tracking issue for hash_raw_entry
It used to point to the implementation PR.
1 parent dae6c93 commit d0f99dd

File tree

1 file changed

+38
-38
lines changed
  • src/libstd/collections/hash

1 file changed

+38
-38
lines changed

src/libstd/collections/hash/map.rs

+38-38
Original file line numberDiff line numberDiff line change
@@ -1571,7 +1571,7 @@ impl<K, V, S> HashMap<K, V, S>
15711571
/// so that the map now contains keys which compare equal, search may start
15721572
/// acting erratically, with two keys randomly masking each other. Implementations
15731573
/// are free to assume this doesn't happen (within the limits of memory-safety).
1574-
#[unstable(feature = "hash_raw_entry", issue = "54043")]
1574+
#[unstable(feature = "hash_raw_entry", issue = "56167")]
15751575
pub fn raw_entry_mut(&mut self) -> RawEntryBuilderMut<K, V, S> {
15761576
self.reserve(1);
15771577
RawEntryBuilderMut { map: self }
@@ -1592,7 +1592,7 @@ impl<K, V, S> HashMap<K, V, S>
15921592
/// `get` should be preferred.
15931593
///
15941594
/// Immutable raw entries have very limited use; you might instead want `raw_entry_mut`.
1595-
#[unstable(feature = "hash_raw_entry", issue = "54043")]
1595+
#[unstable(feature = "hash_raw_entry", issue = "56167")]
15961596
pub fn raw_entry(&self) -> RawEntryBuilder<K, V, S> {
15971597
RawEntryBuilder { map: self }
15981598
}
@@ -1844,7 +1844,7 @@ impl<'a, K, V> InternalEntry<K, V, &'a mut RawTable<K, V>> {
18441844
///
18451845
/// [`HashMap::raw_entry_mut`]: struct.HashMap.html#method.raw_entry_mut
18461846
1847-
#[unstable(feature = "hash_raw_entry", issue = "54043")]
1847+
#[unstable(feature = "hash_raw_entry", issue = "56167")]
18481848
pub struct RawEntryBuilderMut<'a, K: 'a, V: 'a, S: 'a> {
18491849
map: &'a mut HashMap<K, V, S>,
18501850
}
@@ -1858,7 +1858,7 @@ pub struct RawEntryBuilderMut<'a, K: 'a, V: 'a, S: 'a> {
18581858
/// [`HashMap`]: struct.HashMap.html
18591859
/// [`Entry`]: enum.Entry.html
18601860
/// [`raw_entry`]: struct.HashMap.html#method.raw_entry
1861-
#[unstable(feature = "hash_raw_entry", issue = "54043")]
1861+
#[unstable(feature = "hash_raw_entry", issue = "56167")]
18621862
pub enum RawEntryMut<'a, K: 'a, V: 'a, S: 'a> {
18631863
/// An occupied entry.
18641864
Occupied(RawOccupiedEntryMut<'a, K, V>),
@@ -1870,7 +1870,7 @@ pub enum RawEntryMut<'a, K: 'a, V: 'a, S: 'a> {
18701870
/// It is part of the [`RawEntryMut`] enum.
18711871
///
18721872
/// [`RawEntryMut`]: enum.RawEntryMut.html
1873-
#[unstable(feature = "hash_raw_entry", issue = "54043")]
1873+
#[unstable(feature = "hash_raw_entry", issue = "56167")]
18741874
pub struct RawOccupiedEntryMut<'a, K: 'a, V: 'a> {
18751875
elem: FullBucket<K, V, &'a mut RawTable<K, V>>,
18761876
}
@@ -1879,7 +1879,7 @@ pub struct RawOccupiedEntryMut<'a, K: 'a, V: 'a> {
18791879
/// It is part of the [`RawEntryMut`] enum.
18801880
///
18811881
/// [`RawEntryMut`]: enum.RawEntryMut.html
1882-
#[unstable(feature = "hash_raw_entry", issue = "54043")]
1882+
#[unstable(feature = "hash_raw_entry", issue = "56167")]
18831883
pub struct RawVacantEntryMut<'a, K: 'a, V: 'a, S: 'a> {
18841884
elem: VacantEntryState<K, V, &'a mut RawTable<K, V>>,
18851885
hash_builder: &'a S,
@@ -1890,7 +1890,7 @@ pub struct RawVacantEntryMut<'a, K: 'a, V: 'a, S: 'a> {
18901890
/// See the [`HashMap::raw_entry`] docs for usage examples.
18911891
///
18921892
/// [`HashMap::raw_entry`]: struct.HashMap.html#method.raw_entry
1893-
#[unstable(feature = "hash_raw_entry", issue = "54043")]
1893+
#[unstable(feature = "hash_raw_entry", issue = "56167")]
18941894
pub struct RawEntryBuilder<'a, K: 'a, V: 'a, S: 'a> {
18951895
map: &'a HashMap<K, V, S>,
18961896
}
@@ -1900,7 +1900,7 @@ impl<'a, K, V, S> RawEntryBuilderMut<'a, K, V, S>
19001900
K: Eq + Hash,
19011901
{
19021902
/// Create a `RawEntryMut` from the given key.
1903-
#[unstable(feature = "hash_raw_entry", issue = "54043")]
1903+
#[unstable(feature = "hash_raw_entry", issue = "56167")]
19041904
pub fn from_key<Q: ?Sized>(self, k: &Q) -> RawEntryMut<'a, K, V, S>
19051905
where K: Borrow<Q>,
19061906
Q: Hash + Eq
@@ -1911,7 +1911,7 @@ impl<'a, K, V, S> RawEntryBuilderMut<'a, K, V, S>
19111911
}
19121912

19131913
/// Create a `RawEntryMut` from the given key and its hash.
1914-
#[unstable(feature = "hash_raw_entry", issue = "54043")]
1914+
#[unstable(feature = "hash_raw_entry", issue = "56167")]
19151915
pub fn from_key_hashed_nocheck<Q: ?Sized>(self, hash: u64, k: &Q) -> RawEntryMut<'a, K, V, S>
19161916
where K: Borrow<Q>,
19171917
Q: Eq
@@ -1941,7 +1941,7 @@ impl<'a, K, V, S> RawEntryBuilderMut<'a, K, V, S>
19411941
}
19421942
}
19431943
/// Create a `RawEntryMut` from the given hash.
1944-
#[unstable(feature = "hash_raw_entry", issue = "54043")]
1944+
#[unstable(feature = "hash_raw_entry", issue = "56167")]
19451945
pub fn from_hash<F>(self, hash: u64, is_match: F) -> RawEntryMut<'a, K, V, S>
19461946
where for<'b> F: FnMut(&'b K) -> bool,
19471947
{
@@ -1951,7 +1951,7 @@ impl<'a, K, V, S> RawEntryBuilderMut<'a, K, V, S>
19511951
/// Search possible locations for an element with hash `hash` until `is_match` returns true for
19521952
/// one of them. There is no guarantee that all keys passed to `is_match` will have the provided
19531953
/// hash.
1954-
#[unstable(feature = "hash_raw_entry", issue = "54043")]
1954+
#[unstable(feature = "hash_raw_entry", issue = "56167")]
19551955
pub fn search_bucket<F>(self, hash: u64, is_match: F) -> RawEntryMut<'a, K, V, S>
19561956
where for<'b> F: FnMut(&'b K) -> bool,
19571957
{
@@ -1963,7 +1963,7 @@ impl<'a, K, V, S> RawEntryBuilder<'a, K, V, S>
19631963
where S: BuildHasher,
19641964
{
19651965
/// Access an entry by key.
1966-
#[unstable(feature = "hash_raw_entry", issue = "54043")]
1966+
#[unstable(feature = "hash_raw_entry", issue = "56167")]
19671967
pub fn from_key<Q: ?Sized>(self, k: &Q) -> Option<(&'a K, &'a V)>
19681968
where K: Borrow<Q>,
19691969
Q: Hash + Eq
@@ -1974,7 +1974,7 @@ impl<'a, K, V, S> RawEntryBuilder<'a, K, V, S>
19741974
}
19751975

19761976
/// Access an entry by a key and its hash.
1977-
#[unstable(feature = "hash_raw_entry", issue = "54043")]
1977+
#[unstable(feature = "hash_raw_entry", issue = "56167")]
19781978
pub fn from_key_hashed_nocheck<Q: ?Sized>(self, hash: u64, k: &Q) -> Option<(&'a K, &'a V)>
19791979
where K: Borrow<Q>,
19801980
Q: Hash + Eq
@@ -1997,7 +1997,7 @@ impl<'a, K, V, S> RawEntryBuilder<'a, K, V, S>
19971997
}
19981998

19991999
/// Access an entry by hash.
2000-
#[unstable(feature = "hash_raw_entry", issue = "54043")]
2000+
#[unstable(feature = "hash_raw_entry", issue = "56167")]
20012001
pub fn from_hash<F>(self, hash: u64, is_match: F) -> Option<(&'a K, &'a V)>
20022002
where F: FnMut(&K) -> bool
20032003
{
@@ -2007,7 +2007,7 @@ impl<'a, K, V, S> RawEntryBuilder<'a, K, V, S>
20072007
/// Search possible locations for an element with hash `hash` until `is_match` returns true for
20082008
/// one of them. There is no guarantee that all keys passed to `is_match` will have the provided
20092009
/// hash.
2010-
#[unstable(feature = "hash_raw_entry", issue = "54043")]
2010+
#[unstable(feature = "hash_raw_entry", issue = "56167")]
20112011
pub fn search_bucket<F>(self, hash: u64, is_match: F) -> Option<(&'a K, &'a V)>
20122012
where F: FnMut(&K) -> bool
20132013
{
@@ -2033,7 +2033,7 @@ impl<'a, K, V, S> RawEntryMut<'a, K, V, S> {
20332033
/// *map.raw_entry_mut().from_key("poneyland").or_insert("poneyland", 10).1 *= 2;
20342034
/// assert_eq!(map["poneyland"], 6);
20352035
/// ```
2036-
#[unstable(feature = "hash_raw_entry", issue = "54043")]
2036+
#[unstable(feature = "hash_raw_entry", issue = "56167")]
20372037
pub fn or_insert(self, default_key: K, default_val: V) -> (&'a mut K, &'a mut V)
20382038
where K: Hash,
20392039
S: BuildHasher,
@@ -2061,7 +2061,7 @@ impl<'a, K, V, S> RawEntryMut<'a, K, V, S> {
20612061
///
20622062
/// assert_eq!(map["poneyland"], "hoho".to_string());
20632063
/// ```
2064-
#[unstable(feature = "hash_raw_entry", issue = "54043")]
2064+
#[unstable(feature = "hash_raw_entry", issue = "56167")]
20652065
pub fn or_insert_with<F>(self, default: F) -> (&'a mut K, &'a mut V)
20662066
where F: FnOnce() -> (K, V),
20672067
K: Hash,
@@ -2099,7 +2099,7 @@ impl<'a, K, V, S> RawEntryMut<'a, K, V, S> {
20992099
/// .or_insert("poneyland", 0);
21002100
/// assert_eq!(map["poneyland"], 43);
21012101
/// ```
2102-
#[unstable(feature = "hash_raw_entry", issue = "54043")]
2102+
#[unstable(feature = "hash_raw_entry", issue = "56167")]
21032103
pub fn and_modify<F>(self, f: F) -> Self
21042104
where F: FnOnce(&mut K, &mut V)
21052105
{
@@ -2118,82 +2118,82 @@ impl<'a, K, V, S> RawEntryMut<'a, K, V, S> {
21182118

21192119
impl<'a, K, V> RawOccupiedEntryMut<'a, K, V> {
21202120
/// Gets a reference to the key in the entry.
2121-
#[unstable(feature = "hash_raw_entry", issue = "54043")]
2121+
#[unstable(feature = "hash_raw_entry", issue = "56167")]
21222122
pub fn key(&self) -> &K {
21232123
self.elem.read().0
21242124
}
21252125

21262126
/// Gets a mutable reference to the key in the entry.
2127-
#[unstable(feature = "hash_raw_entry", issue = "54043")]
2127+
#[unstable(feature = "hash_raw_entry", issue = "56167")]
21282128
pub fn key_mut(&mut self) -> &mut K {
21292129
self.elem.read_mut().0
21302130
}
21312131

21322132
/// Converts the entry into a mutable reference to the key in the entry
21332133
/// with a lifetime bound to the map itself.
2134-
#[unstable(feature = "hash_raw_entry", issue = "54043")]
2134+
#[unstable(feature = "hash_raw_entry", issue = "56167")]
21352135
pub fn into_key(self) -> &'a mut K {
21362136
self.elem.into_mut_refs().0
21372137
}
21382138

21392139
/// Gets a reference to the value in the entry.
2140-
#[unstable(feature = "hash_raw_entry", issue = "54043")]
2140+
#[unstable(feature = "hash_raw_entry", issue = "56167")]
21412141
pub fn get(&self) -> &V {
21422142
self.elem.read().1
21432143
}
21442144

21452145
/// Converts the OccupiedEntry into a mutable reference to the value in the entry
21462146
/// with a lifetime bound to the map itself.
2147-
#[unstable(feature = "hash_raw_entry", issue = "54043")]
2147+
#[unstable(feature = "hash_raw_entry", issue = "56167")]
21482148
pub fn into_mut(self) -> &'a mut V {
21492149
self.elem.into_mut_refs().1
21502150
}
21512151

21522152
/// Gets a mutable reference to the value in the entry.
2153-
#[unstable(feature = "hash_raw_entry", issue = "54043")]
2153+
#[unstable(feature = "hash_raw_entry", issue = "56167")]
21542154
pub fn get_mut(&mut self) -> &mut V {
21552155
self.elem.read_mut().1
21562156
}
21572157

21582158
/// Gets a reference to the key and value in the entry.
2159-
#[unstable(feature = "hash_raw_entry", issue = "54043")]
2159+
#[unstable(feature = "hash_raw_entry", issue = "56167")]
21602160
pub fn get_key_value(&mut self) -> (&K, &V) {
21612161
self.elem.read()
21622162
}
21632163

21642164
/// Gets a mutable reference to the key and value in the entry.
2165-
#[unstable(feature = "hash_raw_entry", issue = "54043")]
2165+
#[unstable(feature = "hash_raw_entry", issue = "56167")]
21662166
pub fn get_key_value_mut(&mut self) -> (&mut K, &mut V) {
21672167
self.elem.read_mut()
21682168
}
21692169

21702170
/// Converts the OccupiedEntry into a mutable reference to the key and value in the entry
21712171
/// with a lifetime bound to the map itself.
2172-
#[unstable(feature = "hash_raw_entry", issue = "54043")]
2172+
#[unstable(feature = "hash_raw_entry", issue = "56167")]
21732173
pub fn into_key_value(self) -> (&'a mut K, &'a mut V) {
21742174
self.elem.into_mut_refs()
21752175
}
21762176

21772177
/// Sets the value of the entry, and returns the entry's old value.
2178-
#[unstable(feature = "hash_raw_entry", issue = "54043")]
2178+
#[unstable(feature = "hash_raw_entry", issue = "56167")]
21792179
pub fn insert(&mut self, value: V) -> V {
21802180
mem::replace(self.get_mut(), value)
21812181
}
21822182

21832183
/// Sets the value of the entry, and returns the entry's old value.
2184-
#[unstable(feature = "hash_raw_entry", issue = "54043")]
2184+
#[unstable(feature = "hash_raw_entry", issue = "56167")]
21852185
pub fn insert_key(&mut self, key: K) -> K {
21862186
mem::replace(self.key_mut(), key)
21872187
}
21882188

21892189
/// Takes the value out of the entry, and returns it.
2190-
#[unstable(feature = "hash_raw_entry", issue = "54043")]
2190+
#[unstable(feature = "hash_raw_entry", issue = "56167")]
21912191
pub fn remove(self) -> V {
21922192
pop_internal(self.elem).1
21932193
}
21942194

21952195
/// Take the ownership of the key and value from the map.
2196-
#[unstable(feature = "hash_raw_entry", issue = "54043")]
2196+
#[unstable(feature = "hash_raw_entry", issue = "56167")]
21972197
pub fn remove_entry(self) -> (K, V) {
21982198
let (k, v, _) = pop_internal(self.elem);
21992199
(k, v)
@@ -2203,7 +2203,7 @@ impl<'a, K, V> RawOccupiedEntryMut<'a, K, V> {
22032203
impl<'a, K, V, S> RawVacantEntryMut<'a, K, V, S> {
22042204
/// Sets the value of the entry with the VacantEntry's key,
22052205
/// and returns a mutable reference to it.
2206-
#[unstable(feature = "hash_raw_entry", issue = "54043")]
2206+
#[unstable(feature = "hash_raw_entry", issue = "56167")]
22072207
pub fn insert(self, key: K, value: V) -> (&'a mut K, &'a mut V)
22082208
where K: Hash,
22092209
S: BuildHasher,
@@ -2215,7 +2215,7 @@ impl<'a, K, V, S> RawVacantEntryMut<'a, K, V, S> {
22152215

22162216
/// Sets the value of the entry with the VacantEntry's key,
22172217
/// and returns a mutable reference to it.
2218-
#[unstable(feature = "hash_raw_entry", issue = "54043")]
2218+
#[unstable(feature = "hash_raw_entry", issue = "56167")]
22192219
pub fn insert_hashed_nocheck(self, hash: u64, key: K, value: V) -> (&'a mut K, &'a mut V) {
22202220
let hash = SafeHash::new(hash);
22212221
let b = match self.elem {
@@ -2236,15 +2236,15 @@ impl<'a, K, V, S> RawVacantEntryMut<'a, K, V, S> {
22362236
}
22372237
}
22382238

2239-
#[unstable(feature = "hash_raw_entry", issue = "54043")]
2239+
#[unstable(feature = "hash_raw_entry", issue = "56167")]
22402240
impl<'a, K, V, S> Debug for RawEntryBuilderMut<'a, K, V, S> {
22412241
fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result {
22422242
f.debug_struct("RawEntryBuilder")
22432243
.finish()
22442244
}
22452245
}
22462246

2247-
#[unstable(feature = "hash_raw_entry", issue = "54043")]
2247+
#[unstable(feature = "hash_raw_entry", issue = "56167")]
22482248
impl<'a, K: Debug, V: Debug, S> Debug for RawEntryMut<'a, K, V, S> {
22492249
fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result {
22502250
match *self {
@@ -2262,7 +2262,7 @@ impl<'a, K: Debug, V: Debug, S> Debug for RawEntryMut<'a, K, V, S> {
22622262
}
22632263
}
22642264

2265-
#[unstable(feature = "hash_raw_entry", issue = "54043")]
2265+
#[unstable(feature = "hash_raw_entry", issue = "56167")]
22662266
impl<'a, K: Debug, V: Debug> Debug for RawOccupiedEntryMut<'a, K, V> {
22672267
fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result {
22682268
f.debug_struct("RawOccupiedEntryMut")
@@ -2272,15 +2272,15 @@ impl<'a, K: Debug, V: Debug> Debug for RawOccupiedEntryMut<'a, K, V> {
22722272
}
22732273
}
22742274

2275-
#[unstable(feature = "hash_raw_entry", issue = "54043")]
2275+
#[unstable(feature = "hash_raw_entry", issue = "56167")]
22762276
impl<'a, K, V, S> Debug for RawVacantEntryMut<'a, K, V, S> {
22772277
fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result {
22782278
f.debug_struct("RawVacantEntryMut")
22792279
.finish()
22802280
}
22812281
}
22822282

2283-
#[unstable(feature = "hash_raw_entry", issue = "54043")]
2283+
#[unstable(feature = "hash_raw_entry", issue = "56167")]
22842284
impl<'a, K, V, S> Debug for RawEntryBuilder<'a, K, V, S> {
22852285
fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result {
22862286
f.debug_struct("RawEntryBuilder")

0 commit comments

Comments
 (0)