I don't know. It looks like a lot of boilerplate just to tag a tiny bit of metadata onto a function pointer...
I guess I'll need to do some more reading on how this works in larger applications with more complex model structures. Thanks for the links!