Macros are a form of metaprogramming in Rust. Macros are able to take in a variable number of parameters (like println!
) and generate Rust code to satisfy the listed parameters.
eprintln!
does the same thing as println!
, but prints to stderr
instead.