Boost logo

Boost :

From: Janek Kozicki (janek_listy_at_[hidden])
Date: 2007-06-08 16:28:49


Hello

  Boost.UUID and Boost.Serizalition question at the bottom. thanks ;)

Jeremy Pack said: (by the date of Thu, 7 Jun 2007 08:18:25 -0700)

> > >> 2. how else do you identify them if not with UUID ?
> > >
> > Plain strings, e.g. equal to class names (including namespaces):
> >
> > "my::namespace::MyClass"
> >
>
> I'll make sure to detail that specific example in the Boost.Extension tutorial.

Yes. using a full class name including namespaces is a solution I'd
like to use also. Simple and straightforward. In fact I'd like to use
this in many aspects in my framework (currently I'm using just a class name):

A. plugin loading (currently self written code)

B. serialization (currently self written code also)

C. multimethods (self written also ;) - this one requires also
   full runtime inheritance info to operate correctly (side effect is
   that you can draw an inheritance tree from inside the program for all
   classes).

Heh, writing that stuff was a great learning experience for me. But
now I want to switch to boost, because they lack some functionality,
and better to use fully tested and supported libraries, than a
home-brewn ones :)

On the other side I'm considering to refactor and submit my
multimethods library, but I need special time for that - since that's
the only missing part that is not in boost already (and I'd need to
still use my home-brewn version).

I wanted to add that "C++ interpreter" thingy to the pack, but
luckily you will do Reflection before me :)

Important thing in code refactoring is class renaming. For that
reason an especially useful feature for all of above (A,B,C) is that
when I rename a class or change its namespace, I can just add an
'alias name' for it - so that (A,B,C) will flawlessly work with old
and new name (eg. loading a correct plugin, deserializating data from
file, etc...).

In fact I wanted to ask Andy and his Boost.UUID library, if this is supported?

And - question to Robert - (see old discussion thread "Support for
multiple class name strings") - how do you see cooperation with Andy
about supporting Boost.UUID in Serialization, and BOOST_CLASS_EXPORT_ALIAS()
macro in particulear?

please remember that I'm still talking about UUIDs (old name / new name):

"my::namespace::MyClass"
"other::namespace::BetterName"

best regards :)

-- 
Janek Kozicki                                                         |

Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk