for_loop/
for_vec.rs

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