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

Reply via email to