module Uuidm:Universally unique identifiers (UUIDs).sig
..end
Uuidm
implements 128 bits universally unique identifiers version
3, 5 (name based with MD5, SHA-1 hashing) and 4 (random based)
according to RFC 4122.
Release 0.9.5 - Daniel Bünzli <daniel.buenzli at erratique.ch>
References
type
t
typeversion =
[ `V3 of t * string | `V4 | `V5 of t * string ]
`V3
and `V5
specify a namespace and a name for the generation. `V4
is random based
with a private state seeded with Random.State.make_self_init
, use
Uuidm.v4_gen
to specify your own seed.val nil : t
nil
is the nil UUID.val ns_dns : t
ns_dns
is the DNS namespace UUID.val ns_url : t
ns_url
is the URL namespace UUID.val ns_oid : t
ns_oid
is the ISO OID namespace UUID.val ns_X500 : t
ns_dn
is the X.500 DN namespace UUID.val create : version -> t
create version
is an UUID of the given version
.val v3 : t -> string -> t
v3 ns n
is create `V3 (ns, n)
.val v5 : t -> string -> t
v5 ns n
is create `V5 (ns, n)
.val v4_gen : Random.State.t -> unit -> t
v4 seed
is a function that generates random version 4 UUIDs with
the given seed
.val compare : t -> t -> int
val equal : t -> t -> bool
equal u u'
is true
iff u
and u'
are equal.val of_bytes : ?pos:int -> string -> t option
of_bytes pos s
is the UUID represented by the 16 bytes starting
at pos
in s
(pos
defaults to 0
). Returns None
if the
string is not long enough.val to_bytes : t -> string
to_bytes u
is u
as a 16 bytes long string.val of_string : ?pos:int -> string -> t option
of_string pos s
converts the substring of s
starting at pos
(defaults to 0
) of the form "XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX"
where X is a lower or upper case hexadecimal number to an
UUID. Returns None
if a parse error occured.val to_string : ?upper:bool -> t -> string
to_string u
is u
as a string of the form
"XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX"
where X is
a lower case hexadecimal number (or upper if upper
is
true
).val print : ?upper:bool -> Format.formatter -> t -> unit
Uuidm.to_string
.