1 #![allow(clippy::uninlined_format_args)]
3 use syn
::punctuated
::{Pair, Punctuated}
;
9 macro_rules
! check_exact_size_iterator
{
12 let size_hint
= iter
.size_hint();
14 let count
= iter
.count();
15 assert_eq
!(len
, count
);
16 assert_eq
!(size_hint
, (count
, Some(count
)));
22 let mut p
: Punctuated
<_
, Token
![,]> = punctuated
!(2, 3, 4);
24 check_exact_size_iterator
!(p
.pairs());
25 check_exact_size_iterator
!(p
.pairs_mut());
26 check_exact_size_iterator
!(p
.into_pairs());
28 let mut p
: Punctuated
<_
, Token
![,]> = punctuated
!(2, 3, 4);
30 assert_eq
!(p
.pairs().next_back().map(Pair
::into_value
), Some(&4));
32 p
.pairs_mut().next_back().map(Pair
::into_value
),
35 assert_eq
!(p
.into_pairs().next_back().map(Pair
::into_value
), Some(4));
40 let mut p
: Punctuated
<_
, Token
![,]> = punctuated
!(2, 3, 4);
42 check_exact_size_iterator
!(p
.iter());
43 check_exact_size_iterator
!(p
.iter_mut());
44 check_exact_size_iterator
!(p
.into_iter());
46 let mut p
: Punctuated
<_
, Token
![,]> = punctuated
!(2, 3, 4);
48 assert_eq
!(p
.iter().next_back(), Some(&4));
49 assert_eq
!(p
.iter_mut().next_back(), Some(&mut 4));
50 assert_eq
!(p
.into_iter().next_back(), Some(4));
55 let p
: Punctuated
<_
, Token
![,]> = punctuated
!(2, 3, 4);
63 let mut p
: Punctuated
<_
, Token
![,]> = punctuated
!(2, 3, 4);
64 for element
in &mut p
{