blocxx
|
UUIDs (Universally Unique IDentifiers), also known as GUIDs (Globally Unique IDentifiers), are 128 bits long. More...
#include <UUID.hpp>
Public Member Functions | |
UUID () | |
Create a new UUID. | |
UUID (const String &uuidStr) | |
Construct a UUID from string representation. | |
String | toString () const |
Get the string representation of this UUID. | |
Private Attributes | |
unsigned char | m_uuid [16] |
Friends | |
BLOCXX_COMMON_API bool | operator== (const UUID &x, const UUID &y) |
BLOCXX_COMMON_API bool | operator< (const UUID &x, const UUID &y) |
UUIDs (Universally Unique IDentifiers), also known as GUIDs (Globally Unique IDentifiers), are 128 bits long.
It is either guaranteed to be different from all other UUIDs/GUIDs generated until 3400 A.D. or extremely likely to be different. sizeof(UUID) == 16. The internal data is stored in network byte order, independent of host byte order.
This implementation based off of IETF internet draft: draft-leach-uuids-guids-01.txt That has expired, so if you want a real spec, see: DCE: Remote Procedure Call, Open Group CAE Specification C309 ISBN 1-85912-041-5 28cm. 674p. pbk. 1,655g. 8/94
BLOCXX_NAMESPACE::UUID::UUID | ( | ) |
BLOCXX_NAMESPACE::UUID::UUID | ( | const String & | uuidStr | ) |
Construct a UUID from string representation.
The formal definition of the UUID string representation is provided by the following extended BNF:
UUID = <time_low> "-" <time_mid> "-" <time_high_and_version> "-" <clock_seq_and_reserved> <clock_seq_low> "-" <node> time_low = 4*<hexOctet> time_mid = 2*<hexOctet> time_high_and_version = 2*<hexOctet> clock_seq_and_reserved = <hexOctet> clock_seq_low = <hexOctet> node = 6*<hexOctet> hexOctet = <hexDigit> <hexDigit> hexDigit = "0" | "1" | "2" | "3" | "4" | "5" | "6" | "7" | "8" | "9" | "a" | "b" | "c" | "d" | "e" | "f" | "A" | "B" | "C" | "D" | "E" | "F"
The following is an example of the string representation of a UUID: f81d4fae-7dec-11d0-a765-00a0c91e6bf6
UUIDException | if uuidStr isn't valid. |
Definition at line 250 of file UUID.cpp.
References BLOCXX_THROW.
String BLOCXX_NAMESPACE::UUID::toString | ( | ) | const |
unsigned char BLOCXX_NAMESPACE::UUID::m_uuid[16] [private] |