for_loop/
for_vec_iter.rs

1// File: ./bin-hello/examples/for_loop/for_vec_iter.rs
2// clear && cargo run --example for_loop --features ok -- for_vec_iter | bat -l cmd
3// clear && cargo run --example for_loop --features cp -- for_vec_iter | bat -l cmd
4// clear && cargo run --example for_loop --features err_03
5// clear && cargo run --example for_loop -- for_vec_iter
6
7//=======
8
9
10//=======
11#[cfg(feature = "ok")]
12pub fn adjoin() {
13    // ANCHOR: feature-ok
14    // File: ./bin-hello/examples/for_loop/for_vec_iter.rs
15    // #[cfg(feature = "ok")]
16
17    let instance = vec![1u8, 2, 3];
18    println!("{:>13} {} {:p}", "instance raw", "=", instance.as_ptr());
19
20    print!("{:>13} {} ", "for vec ref", "=");
21    for item in &instance {
22        let ref_item: &u8 = item;
23        print!("{:p} ", ref_item); // OK: item IS Pointer
24    }
25    println!("");
26
27    print!("{:>13} {} ", "for vec iter", "=");
28    for item in instance.iter() {
29        let ref_item: &u8 = item;
30        print!("{:p} ", ref_item); // OK: item IS Pointer
31    }
32    println!("");
33
34    println!("{:>13} {} {:?}", "instance vec", "=", instance);
35
36    // ANCHOR_END: feature-ok
37}
38
39
40
41//=======
42#[cfg(feature = "cp")]
43pub fn adjoin() {
44    // ANCHOR: feature-cp
45    // File: ./bin-hello/examples/for_loop/for_vec_iter.rs
46    // #[cfg(feature = "cp")]
47
48    let instance = vec![1u8, 2, 3];
49    println!("{:>13} {} {:p}", "instance raw", "=", instance.as_ptr());
50
51    print!("{:>13} {} ", "for into_iter", "=");
52    for item in instance.into_iter() {
53        let u8_item: u8 = item;
54        //print!("{:p} ", item); // ERROR: item IS {integer}, NOT Pointer
55        print!("{:p} ", &u8_item);
56    }
57    println!("");
58
59    //println!("{:>13} {} {:?}", "instance vec", "=", instance);
60
61    // ANCHOR_END: feature-cp
62}
63
64
65
66
67//=======
68#[cfg(feature = "err_03")]
69// error[E0277]
70pub fn adjoin() {
71    // ANCHOR: feature-err
72    // File: ./bin-hello/examples/for_loop/for_vec_iter.rs
73    // #[cfg(feature = "err_03")]
74
75    let instance = vec![1, 2, 3];
76    println!("{:>13} {} {:p}", "instance raw", "=", instance.as_ptr());
77
78    print!("{:>13} {} ", "for into_iter", "=");
79    for item in instance.into_iter() {
80        let u8_item: u8 = item;
81        print!("{:p} ", &u8_item);
82    }
83    println!("");
84
85    println!("{:>13} {} {:?}", "instance vec", "=", instance);
86
87    // ANCHOR_END: feature-err
88}
89
90
91
92//=======
93#[cfg(all(not(feature = "ok"), not(feature = "cp"), not(feature = "err_03")))]
94pub fn adjoin() {
95    use aide::hello;
96    hello();
97}