Boost logo

Boost :

From: Caleb Epstein (caleb.epstein_at_[hidden])
Date: 2006-02-13 15:00:32


On 2/13/06, Andy Tompkins <atompkins_at_[hidden]> wrote:
>
> I have uploaded my initial version to the root directory of boost vault in
> order that others can view and critique it. In the near future, I plan to
> add
> code so that it conforms to the requirements of boost.

Overall the code looks pretty good. I do have a few minorquibbles:

   - Use forward slashes (/) in include paths, not backslashes.
   - The ostream inserter might make good use of the IO State Saver class
   (http://boost.org/libs/io/doc/ios_state.html)
   - I'd ditch the braces in the stream input and output operations (but
   I'm not a big GUID user so perhaps these are handy). Or perhaps this could
   be controlled using a custom manipulator.
   - Do the stream operators need the try/catch block? I assume these
   exist to handle the case where the stream has exceptions enabled. In the
   catch block, the exception is just re-thrown, so is your exception handling
   even necessary?
   - The guid::create method only works for Windows. Perhaps an
   implementation using Boost.Random could be provided for other
   platforms without "native" GUID creation?

There is a class called "zuid_t" in the Adobe Open-Source Libraries (
http://opensource.adobe.com/classadobe_1_1zuid__t.html) which might be
useful as a reference design. It makes use of MD5 to produce a seed state
for "zuid_t" generation.

--
Caleb Epstein
caleb dot epstein at gmail dot com

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