A Rust macro to automatically split functions into a generic and non-generic part with the aim of improving compilation times.