Barrett Adair wrote:
4. Support for member function templates might be nice. Support for class templates would be especially nice. I realize a consistent API design for this would be difficult, but seems like a Boost-worthy task.
When you say "support for class templates", what do you mean?
5. There might be an interesting opportunity for this library to support progressive definition/reflection of namespaces. I'd like to see an attempt.
Further elaboration would be appreciated here as well. :-)
* Why is "modifiers" not a C++11 enum class?
That's interesting. The primitives take unsigned, not an enum, as their `modifiers` parameter. The reason they take unsigned is to make it easier to implement them as compiler built-ins, as compiler primitives depending on user-defined types is inconvenient.
* Why does this library not use Boost.PreProcessor? I wish that it did.
This would certainly have saved me a lot of trouble, but I didn't consider the dependency acceptable. To establish itself the library needs to be lightweight enough so that people would use it without second thought to describe their types. I'll remove even the Mp11 dependency, after I'm sure the implementation is stable. (And provide mp_for_each so that simple uses won't need anything else as well.)