David Abrahams wrote: > A problem with this is that the introspection information is only > available at runtime. A more-flexible system would use GCC-XML output > to generate something like: > > template <> > struct class_<Driver> > { > typedef mpl::vector<Person> bases; > > typedef mpl::vector< > member<int Driver::*, &Driver::licence_id> > , member<Date Driver::*, &Driver::licence_issue_date> > , member<void (Driver::*)(), &Driver::accelerate> > > members; > > ... > }; > > So all the introspection information could be available at > compile-time.
Sometimes it's fine to have an introspection only at runtime. I just want to avoid duplications of class descriptions by multiple libraries. For example, Python and luabind could share common introspection information. This is why I'm using visitors. Every intronspection elelemnt has correspondent node that can be visited. The challenge is to build a complete set of nodes with a complete set of operations. -- Alexander Nasonov Remove minus and all between minus and at from my e-mail for timely response _______________________________________________ Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost