Oh wow! I iterated a bit on James Munns idea for a register trait that encodes register info as associated types and constants. Turns out I can pretty much replicate the macro from my `device-driver` crate with using the typesystem! (and some unstable const generics) https://github.com/diondokter/device-driver/blob/experiment/src/lib.rs#L254-L270