32 lines
608 B
Rust
32 lines
608 B
Rust
// Declarative macros
|
|
|
|
// macro_rules! custom_vec {
|
|
// ( $( $x:expr ),* ) => {
|
|
// {
|
|
// let mut temp_vec = Vec::new();
|
|
// $(
|
|
// temp_vec.push($x);
|
|
// )*
|
|
// temp_vec
|
|
// }
|
|
// };
|
|
// // ( $( $x:expr ),*; mult = $mult:expr ) => {
|
|
// // custom_vec![$( $x * $mult ),*]
|
|
// // };
|
|
// }
|
|
|
|
fn main() {
|
|
let mut a = Vec::new();
|
|
a.push(1);
|
|
a.push(2);
|
|
a.push(3);
|
|
|
|
// let a = vec![1, 2, 3];
|
|
|
|
// let a = custom_vec!(1, 2, 3);
|
|
|
|
// let a = custom_vec!(1, 2, 3; mult = 2);
|
|
|
|
println!("{a:?}");
|
|
}
|