1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
//! Tests that should be compile errors.
/// Test about [`crate::for_ref`].
///
/// Loop item should be irrefutable pattern.
///
/// ```compile_fail
/// # use ref_iter::prelude::*;
/// # use std::cell::RefCell;
/// #
/// let samples = vec![Some(1), Some(2), None];
/// let cell = RefCell::new(samples.clone());
/// let iter = RefIter::new(cell.borrow(), |x| x.iter());
/// for_ref!(&Some(_) in iter {
/// // nop.
/// });
/// ```
/// Test about [`crate::for_ref_mut`].
///
/// Loop item should be irrefutable pattern.
///
/// ```compile_fail
/// # use ref_iter::prelude::*;
/// # use std::cell::RefCell;
/// #
/// let samples = vec![Some(1), Some(2), None];
/// let cell = RefCell::new(samples.clone());
/// let iter = RefMutIter::new(cell.borrow_mut(), |x| x.iter_mut());
/// for_ref_mut!(&mut Some(_) in iter {
/// // nop.
/// });
/// ```