Stupid Rust Tricks
Enforcing deadlines with a macro
Rust has a really powerful macro system. You can use it to do great things safely… or you can have fun with it and quickly prototype coding productivity features. I chose the latter.
todo-macro
is a procedural Rust macro that stops compiling after a user-specified deadline. It’s like TODO comments, but with teeth. It’s probably best explained with an example:
Using todo-macro
It’s January 1, 2020. I’m working on some Rust code that compiles, but it’s not quite ready to ship.
I want to take a break, but I know myself – I’ll probably forget about the deficiency. I could add a TODO comment, but that depends on me actively searching for TODO comments next time I open the project.
To save me from myself, I add a quick todo macro with a deadline of January 2 (in ISO 8601 format):
// Implement the timeout handling
todo!("2020-01-02")