> parse!("#{} @ {},{}: {}x{}", id, x, y, w, h);
> This would be a clean inverse of println!.
The text_io crate does this exactly.
https://crates.io/crates/text_io
#[macro_use]
extern crate text_io;
fn main() {
let id: u32;
let x: u32;
let y: u32;
let w: u32;
let h: u32;
scan!("#{} @ {},{}: {}x{}", id, x, y, w, h);
}