I was thinking about how we approach marking which functions in a parser are results or settings, and think we can use decorators instead of the current (complicated, hard-to-maintain) function based-approach.
The decorators would be similar to partial, in that they add some attributes to the functions that store the name of the property, units etc.
Then, we could write a general "get all result function" that introspects the parser object and gets all functions with the functions that have the special fields added by the decorator.