@@ -9,29 +9,35 @@ pub(crate) struct ByRefSized<'a, I>(pub &'a mut I);
9
9
impl < I : Iterator > Iterator for ByRefSized < ' _ , I > {
10
10
type Item = I :: Item ;
11
11
12
+ #[ inline]
12
13
fn next ( & mut self ) -> Option < Self :: Item > {
13
14
self . 0 . next ( )
14
15
}
15
16
17
+ #[ inline]
16
18
fn size_hint ( & self ) -> ( usize , Option < usize > ) {
17
19
self . 0 . size_hint ( )
18
20
}
19
21
22
+ #[ inline]
20
23
fn advance_by ( & mut self , n : usize ) -> Result < ( ) , usize > {
21
24
self . 0 . advance_by ( n)
22
25
}
23
26
27
+ #[ inline]
24
28
fn nth ( & mut self , n : usize ) -> Option < Self :: Item > {
25
29
self . 0 . nth ( n)
26
30
}
27
31
32
+ #[ inline]
28
33
fn fold < B , F > ( self , init : B , f : F ) -> B
29
34
where
30
35
F : FnMut ( B , Self :: Item ) -> B ,
31
36
{
32
37
self . 0 . fold ( init, f)
33
38
}
34
39
40
+ #[ inline]
35
41
fn try_fold < B , F , R > ( & mut self , init : B , f : F ) -> R
36
42
where
37
43
F : FnMut ( B , Self :: Item ) -> R ,
@@ -42,25 +48,30 @@ impl<I: Iterator> Iterator for ByRefSized<'_, I> {
42
48
}
43
49
44
50
impl < I : DoubleEndedIterator > DoubleEndedIterator for ByRefSized < ' _ , I > {
51
+ #[ inline]
45
52
fn next_back ( & mut self ) -> Option < Self :: Item > {
46
53
self . 0 . next_back ( )
47
54
}
48
55
56
+ #[ inline]
49
57
fn advance_back_by ( & mut self , n : usize ) -> Result < ( ) , usize > {
50
58
self . 0 . advance_back_by ( n)
51
59
}
52
60
61
+ #[ inline]
53
62
fn nth_back ( & mut self , n : usize ) -> Option < Self :: Item > {
54
63
self . 0 . nth_back ( n)
55
64
}
56
65
66
+ #[ inline]
57
67
fn rfold < B , F > ( self , init : B , f : F ) -> B
58
68
where
59
69
F : FnMut ( B , Self :: Item ) -> B ,
60
70
{
61
71
self . 0 . rfold ( init, f)
62
72
}
63
73
74
+ #[ inline]
64
75
fn try_rfold < B , F , R > ( & mut self , init : B , f : F ) -> R
65
76
where
66
77
F : FnMut ( B , Self :: Item ) -> R ,
0 commit comments