@@ -12,7 +12,6 @@ use rayon::iter::{
12
12
13
13
use raw:: { RawIterRange , RawTable } ;
14
14
15
-
16
15
#[ inline]
17
16
unsafe fn raw_iter_range_split_and_convert < T , P > ( iter_range : RawIterRange < T > ) -> ( P , Option < P > )
18
17
where
22
21
( P :: from ( left) , right. map ( P :: from) )
23
22
}
24
23
25
-
26
24
/// Parallel iterator over shared references to entries in a map.
27
25
///
28
26
/// This iterator is created by the [`par_iter`] method on [`HashMap`]
@@ -52,7 +50,8 @@ impl<'a, K: Sync, V: Sync> ParallelIterator for ParIter<'a, K, V> {
52
50
type Item = ( & ' a K , & ' a V ) ;
53
51
54
52
fn drive_unindexed < C > ( self , consumer : C ) -> C :: Result
55
- where C : UnindexedConsumer < Self :: Item >
53
+ where
54
+ C : UnindexedConsumer < Self :: Item > ,
56
55
{
57
56
let buckets = unsafe { self . table . iter ( ) . iter } ;
58
57
let producer = ParIterProducer :: from ( buckets) ;
@@ -62,7 +61,9 @@ impl<'a, K: Sync, V: Sync> ParallelIterator for ParIter<'a, K, V> {
62
61
63
62
impl < ' a , K , V > Clone for ParIter < ' a , K , V > {
64
63
fn clone ( & self ) -> Self {
65
- ParIter { table : & * self . table }
64
+ ParIter {
65
+ table : & * self . table ,
66
+ }
66
67
}
67
68
}
68
69
@@ -86,7 +87,10 @@ struct ParIterProducer<'a, K: 'a, V: 'a> {
86
87
impl < ' a , K , V > From < RawIterRange < ( K , V ) > > for ParIterProducer < ' a , K , V > {
87
88
#[ inline]
88
89
fn from ( iter : RawIterRange < ( K , V ) > ) -> Self {
89
- Self { iter, marker : PhantomData }
90
+ Self {
91
+ iter,
92
+ marker : PhantomData ,
93
+ }
90
94
}
91
95
}
92
96
@@ -100,7 +104,8 @@ impl<'a, K: Sync, V: Sync> UnindexedProducer for ParIterProducer<'a, K, V> {
100
104
}
101
105
102
106
fn fold_with < F > ( self , folder : F ) -> F
103
- where F : Folder < Self :: Item >
107
+ where
108
+ F : Folder < Self :: Item > ,
104
109
{
105
110
let iter = self . iter . map ( |bucket| unsafe {
106
111
let ( ref k, ref v) = * bucket. as_ref ( ) ;
@@ -110,7 +115,6 @@ impl<'a, K: Sync, V: Sync> UnindexedProducer for ParIterProducer<'a, K, V> {
110
115
}
111
116
}
112
117
113
-
114
118
/// Parallel iterator over shared references to keys in a map.
115
119
///
116
120
/// This iterator is created by the [`par_keys`] method on [`HashMap`].
@@ -146,16 +150,16 @@ impl<'a, K: Sync, V> ParallelIterator for ParKeys<'a, K, V> {
146
150
147
151
impl < ' a , K , V > Clone for ParKeys < ' a , K , V > {
148
152
fn clone ( & self ) -> Self {
149
- ParKeys { table : & * self . table }
153
+ ParKeys {
154
+ table : & * self . table ,
155
+ }
150
156
}
151
157
}
152
158
153
159
impl < ' a , K : fmt:: Debug , V > fmt:: Debug for ParKeys < ' a , K , V > {
154
160
fn fmt ( & self , f : & mut fmt:: Formatter ) -> fmt:: Result {
155
161
let iter = unsafe { self . table . iter ( ) } ;
156
- let entries = iter. map ( |bucket| unsafe {
157
- & bucket. as_ref ( ) . 0
158
- } ) ;
162
+ let entries = iter. map ( |bucket| unsafe { & bucket. as_ref ( ) . 0 } ) ;
159
163
160
164
f. debug_list ( ) . entries ( entries) . finish ( )
161
165
}
@@ -169,7 +173,10 @@ struct ParKeysProducer<'a, K: 'a, V: 'a> {
169
173
impl < ' a , K , V > From < RawIterRange < ( K , V ) > > for ParKeysProducer < ' a , K , V > {
170
174
#[ inline]
171
175
fn from ( iter : RawIterRange < ( K , V ) > ) -> Self {
172
- Self { iter, marker : PhantomData }
176
+ Self {
177
+ iter,
178
+ marker : PhantomData ,
179
+ }
173
180
}
174
181
}
175
182
@@ -186,14 +193,11 @@ impl<'a, K: Sync, V> UnindexedProducer for ParKeysProducer<'a, K, V> {
186
193
where
187
194
F : Folder < Self :: Item > ,
188
195
{
189
- let iter = self . iter . map ( |bucket| unsafe {
190
- & bucket. as_ref ( ) . 0
191
- } ) ;
196
+ let iter = self . iter . map ( |bucket| unsafe { & bucket. as_ref ( ) . 0 } ) ;
192
197
folder. consume_iter ( iter)
193
198
}
194
199
}
195
200
196
-
197
201
/// Parallel iterator over shared references to values in a map.
198
202
///
199
203
/// This iterator is created by the [`par_values`] method on [`HashMap`].
@@ -229,16 +233,16 @@ impl<'a, K, V: Sync> ParallelIterator for ParValues<'a, K, V> {
229
233
230
234
impl < ' a , K , V > Clone for ParValues < ' a , K , V > {
231
235
fn clone ( & self ) -> Self {
232
- ParValues { table : & * self . table }
236
+ ParValues {
237
+ table : & * self . table ,
238
+ }
233
239
}
234
240
}
235
241
236
242
impl < ' a , K , V : fmt:: Debug > fmt:: Debug for ParValues < ' a , K , V > {
237
243
fn fmt ( & self , f : & mut fmt:: Formatter ) -> fmt:: Result {
238
244
let iter = unsafe { self . table . iter ( ) } ;
239
- let entries = iter. map ( |bucket| unsafe {
240
- & bucket. as_ref ( ) . 1
241
- } ) ;
245
+ let entries = iter. map ( |bucket| unsafe { & bucket. as_ref ( ) . 1 } ) ;
242
246
243
247
f. debug_list ( ) . entries ( entries) . finish ( )
244
248
}
@@ -252,7 +256,10 @@ struct ParValuesProducer<'a, K: 'a, V: 'a> {
252
256
impl < ' a , K , V > From < RawIterRange < ( K , V ) > > for ParValuesProducer < ' a , K , V > {
253
257
#[ inline]
254
258
fn from ( iter : RawIterRange < ( K , V ) > ) -> Self {
255
- Self { iter, marker : PhantomData }
259
+ Self {
260
+ iter,
261
+ marker : PhantomData ,
262
+ }
256
263
}
257
264
}
258
265
@@ -269,14 +276,11 @@ impl<'a, K, V: Sync> UnindexedProducer for ParValuesProducer<'a, K, V> {
269
276
where
270
277
F : Folder < Self :: Item > ,
271
278
{
272
- let iter = self . iter . map ( |bucket| unsafe {
273
- & bucket. as_ref ( ) . 1
274
- } ) ;
279
+ let iter = self . iter . map ( |bucket| unsafe { & bucket. as_ref ( ) . 1 } ) ;
275
280
folder. consume_iter ( iter)
276
281
}
277
282
}
278
283
279
-
280
284
/// Parallel iterator over mutable references to entries in a map.
281
285
///
282
286
/// This iterator is created by the [`par_iter_mut`] method on [`HashMap`]
@@ -336,7 +340,10 @@ struct ParIterMutProducer<'a, K: 'a, V: 'a> {
336
340
impl < ' a , K , V > From < RawIterRange < ( K , V ) > > for ParIterMutProducer < ' a , K , V > {
337
341
#[ inline]
338
342
fn from ( iter : RawIterRange < ( K , V ) > ) -> Self {
339
- Self { iter, marker : PhantomData }
343
+ Self {
344
+ iter,
345
+ marker : PhantomData ,
346
+ }
340
347
}
341
348
}
342
349
@@ -361,7 +368,6 @@ impl<'a, K: Sync, V: Send> UnindexedProducer for ParIterMutProducer<'a, K, V> {
361
368
}
362
369
}
363
370
364
-
365
371
/// Parallel iterator over mutable references to values in a map.
366
372
///
367
373
/// This iterator is created by the [`par_values_mut`] method on [`HashMap`].
@@ -398,9 +404,7 @@ impl<'a, K, V: Send> ParallelIterator for ParValuesMut<'a, K, V> {
398
404
impl < ' a , K , V : fmt:: Debug > fmt:: Debug for ParValuesMut < ' a , K , V > {
399
405
fn fmt ( & self , f : & mut fmt:: Formatter ) -> fmt:: Result {
400
406
let iter = unsafe { self . table . iter ( ) } ;
401
- let entries = iter. map ( |bucket| unsafe {
402
- & bucket. as_ref ( ) . 1
403
- } ) ;
407
+ let entries = iter. map ( |bucket| unsafe { & bucket. as_ref ( ) . 1 } ) ;
404
408
405
409
f. debug_list ( ) . entries ( entries) . finish ( )
406
410
}
@@ -415,7 +419,10 @@ struct ParValuesMutProducer<'a, K: 'a, V: 'a> {
415
419
impl < ' a , K , V > From < RawIterRange < ( K , V ) > > for ParValuesMutProducer < ' a , K , V > {
416
420
#[ inline]
417
421
fn from ( iter : RawIterRange < ( K , V ) > ) -> Self {
418
- Self { iter, marker : PhantomData }
422
+ Self {
423
+ iter,
424
+ marker : PhantomData ,
425
+ }
419
426
}
420
427
}
421
428
@@ -432,14 +439,11 @@ impl<'a, K, V: Send> UnindexedProducer for ParValuesMutProducer<'a, K, V> {
432
439
where
433
440
F : Folder < Self :: Item > ,
434
441
{
435
- let iter = self . iter . map ( |bucket| unsafe {
436
- & mut bucket. as_mut ( ) . 1
437
- } ) ;
442
+ let iter = self . iter . map ( |bucket| unsafe { & mut bucket. as_mut ( ) . 1 } ) ;
438
443
folder. consume_iter ( iter)
439
444
}
440
445
}
441
446
442
-
443
447
/// Parallel iterator over entries of a consumed map.
444
448
///
445
449
/// This iterator is created by the [`into_par_iter`] method on [`HashMap`]
@@ -512,9 +516,7 @@ impl<K: Send, V: Send> UnindexedProducer for IntoParIterProducer<K, V> {
512
516
where
513
517
F : Folder < Self :: Item > ,
514
518
{
515
- let iter = self . iter . by_ref ( ) . map ( |bucket| unsafe {
516
- bucket. read ( )
517
- } ) ;
519
+ let iter = self . iter . by_ref ( ) . map ( |bucket| unsafe { bucket. read ( ) } ) ;
518
520
folder. consume_iter ( iter)
519
521
}
520
522
}
0 commit comments