This is a kinda interesting pattern - could almost be a parse transform given appropriate specs and so on.