@addison Thanks, that's in line with
@alphastrata's suggestion and the advice I got afk.
I'm quite new to Rust and it's strange that something as simple as moving a couple of lines of code into a function (I'm still considering a macro actually) can require this much consideration, but I guess this is the price we pay for stability.