On 16.06.2012 15:30, Johannes Pfau wrote:
Am Tue, 12 Jun 2012 13:46:17 +0200
schrieb Johannes Pfau<[email protected]>:
Am Mon, 11 Jun 2012 13:12:49 +0200
schrieb Johannes Pfau<[email protected]>:
Am Sun, 10 Jun 2012 18:49:03 +0200
schrieb Johannes Pfau<[email protected]>:
Am Sat, 09 Jun 2012 21:30:57 +0400
schrieb Dmitry Olshansky<[email protected]>:
Code: https://github.com/jpf91/phobos/blob/std.uuid/std/uuid.d
API-Docs: http://dl.dropbox.com/u/24218791/d/src/uuid.html
I pushed these changes suggested by Dmitry Olshansky and Jonas
Drewsen:
* Add documentation table
* Rename UUID.isNil --> UUID.empty
* Merge ParserException and IsufficientInputException into
UUIDParserException
* Add note about std.variant.Variant
* Rewrite example to avoid cast
* Add non-working(commented out) variadic constructor
* Rename extractRegex --> uuidRegex
* Use std.algorithm.swap instead of swapRanges
* parseUUID now supports InputRanges with ElementType == dchar (all
string types are still supported as well)
* randomUUID now creates the RNG only once per thread.
* randomUUID lazily seeds the RNG once (per thread) on the first
function call
* randomUUID now uses the new seed overload (requires
https://github.com/D-Programming-Language/phobos/pull/627 )
* the unsafe randomUUID overload taking only a type has been removed.
* Add changes suggested by Jonathan M Davis (see
https://github.com/jpf91/phobos/commit/91cd1c1f4385cfe1cd868c0720aff257d9436822
)
Surely, a better way then making a global is to routinely check for zeros.
Plus, you can cast .ptr to size_t* and compare word by word in 4 or 2
ops(!). You'd better watch out for __ctfe though, it deon't allow
casting pointers this way.
--
Dmitry Olshansky