<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /><title>Data.UUID</title><link href="ocean.css" rel="stylesheet" type="text/css" title="Ocean" /><script src="haddock-util.js" type="text/javascript"></script><script type="text/javascript">//<![CDATA[ window.onload = function () {pageLoad();setSynopsis("mini_Data-UUID.html");}; //]]> </script></head><body><div id="package-header"><ul class="links" id="page-menu"><li><a href="src/Data-UUID.html">Source</a></li><li><a href="index.html">Contents</a></li><li><a href="doc-index.html">Index</a></li></ul><p class="caption">uuid-1.2.13: For creating, comparing, parsing and printing Universally Unique Identifiers</p></div><div id="content"><div id="module-header"><table class="info"><tr><th>Portability</th><td>portable</td></tr><tr><th>Stability</th><td>experimental</td></tr><tr><th>Maintainer</th><td>aslatter@gmail.com</td></tr><tr><th>Safe Haskell</th><td>Safe-Infered</td></tr></table><p class="caption">Data.UUID</p></div><div id="description"><p class="caption">Description</p><div class="doc"><p>This library is useful for comparing, parsing and printing Universally Unique Identifiers. See <a href="http://en.wikipedia.org/wiki/UUID">http://en.wikipedia.org/wiki/UUID</a> for the general idea. See <a href="http://tools.ietf.org/html/rfc4122">http://tools.ietf.org/html/rfc4122</a> for the specification. </p><ul><li> Random UUIDs may be generated using <code><a href="Data-UUID-V4.html#v:nextRandom">nextRandom</a></code> or your favorite instance of <code><a href="/usr/share/doc/ghc/html/libraries/random-1.0.1.1/System-Random.html#t:Random">Random</a></code>. </li><li> We have an implementation of generating a UUID from the hardware MAC address and current system time in <a href="Data-UUID-V1.html">Data.UUID.V1</a>. </li><li> For name-based generation of UUIDs using SHA-1 hashing see <a href="Data-UUID-V5.html">Data.UUID.V5</a>. </li></ul></div></div><div id="synopsis"><p id="control.syn" class="caption expander" onclick="toggleSection('syn')">Synopsis</p><ul id="section.syn" class="hide" onclick="toggleSection('syn')"><li class="src short"><span class="keyword">data</span> <a href="#t:UUID">UUID</a> </li><li class="src short"><a href="#v:toString">toString</a> :: <a href="Data-UUID.html#t:UUID">UUID</a> -> <a href="/usr/share/doc/ghc/html/libraries/base-4.5.0.0/Data-String.html#t:String">String</a></li><li class="src short"><a href="#v:fromString">fromString</a> :: <a href="/usr/share/doc/ghc/html/libraries/base-4.5.0.0/Data-String.html#t:String">String</a> -> <a href="/usr/share/doc/ghc/html/libraries/base-4.5.0.0/Data-Maybe.html#t:Maybe">Maybe</a> <a href="Data-UUID.html#t:UUID">UUID</a></li><li class="src short"><a href="#v:toByteString">toByteString</a> :: <a href="Data-UUID.html#t:UUID">UUID</a> -> <a href="/usr/share/doc/ghc/html/libraries/bytestring-0.9.2.1/Data-ByteString-Lazy.html#t:ByteString">ByteString</a></li><li class="src short"><a href="#v:fromByteString">fromByteString</a> :: <a href="/usr/share/doc/ghc/html/libraries/bytestring-0.9.2.1/Data-ByteString-Lazy.html#t:ByteString">ByteString</a> -> <a href="/usr/share/doc/ghc/html/libraries/base-4.5.0.0/Data-Maybe.html#t:Maybe">Maybe</a> <a href="Data-UUID.html#t:UUID">UUID</a></li><li class="src short"><a href="#v:toWords">toWords</a> :: <a href="Data-UUID.html#t:UUID">UUID</a> -> (<a href="/usr/share/doc/ghc/html/libraries/base-4.5.0.0/Data-Word.html#t:Word32">Word32</a>, <a href="/usr/share/doc/ghc/html/libraries/base-4.5.0.0/Data-Word.html#t:Word32">Word32</a>, <a href="/usr/share/doc/ghc/html/libraries/base-4.5.0.0/Data-Word.html#t:Word32">Word32</a>, <a href="/usr/share/doc/ghc/html/libraries/base-4.5.0.0/Data-Word.html#t:Word32">Word32</a>)</li><li class="src short"><a href="#v:fromWords">fromWords</a> :: <a href="/usr/share/doc/ghc/html/libraries/base-4.5.0.0/Data-Word.html#t:Word32">Word32</a> -> <a href="/usr/share/doc/ghc/html/libraries/base-4.5.0.0/Data-Word.html#t:Word32">Word32</a> -> <a href="/usr/share/doc/ghc/html/libraries/base-4.5.0.0/Data-Word.html#t:Word32">Word32</a> -> <a href="/usr/share/doc/ghc/html/libraries/base-4.5.0.0/Data-Word.html#t:Word32">Word32</a> -> <a href="Data-UUID.html#t:UUID">UUID</a></li><li class="src short"><a href="#v:null">null</a> :: <a href="Data-UUID.html#t:UUID">UUID</a> -> <a href="/usr/share/doc/ghc/html/libraries/base-4.5.0.0/Data-Bool.html#t:Bool">Bool</a></li><li class="src short"><a href="#v:nil">nil</a> :: <a href="Data-UUID.html#t:UUID">UUID</a></li></ul></div><div id="interface"><h1>Documentation</h1><div class="top"><p class="src"><span class="keyword">data</span> <a name="t:UUID" class="def">UUID</a> <a href="src/Data-UUID-Internal.html#UUID" class="link">Source</a></p><div class="doc"><p>The UUID type. A <code><a href="/usr/share/doc/ghc/html/libraries/random-1.0.1.1/System-Random.html#t:Random">Random</a></code> instance is provided which produces version 4 UUIDs as specified in RFC 4122. The <code><a href="/usr/share/doc/ghc/html/libraries/base-4.5.0.0/Foreign-Storable.html#t:Storable">Storable</a></code> and <code><a href="/usr/share/doc/ghc/html/libraries/binary-0.5.1.0/Data-Binary.html#t:Binary">Binary</a></code> instances are compatible with RFC 4122, storing the fields in network order as 16 bytes. </p></div><div class="subs instances"><p id="control.i:UUID" class="caption collapser" onclick="toggleSection('i:UUID')">Instances</p><div id="section.i:UUID" class="show"><table><tr><td class="src"><a href="/usr/share/doc/ghc/html/libraries/base-4.5.0.0/Data-Eq.html#t:Eq">Eq</a> <a href="Data-UUID.html#t:UUID">UUID</a></td><td class="doc empty"> </td></tr><tr><td class="src"><a href="/usr/share/doc/ghc/html/libraries/base-4.5.0.0/Data-Data.html#t:Data">Data</a> <a href="Data-UUID.html#t:UUID">UUID</a></td><td class="doc empty"> </td></tr><tr><td class="src"><a href="/usr/share/doc/ghc/html/libraries/base-4.5.0.0/Data-Ord.html#t:Ord">Ord</a> <a href="Data-UUID.html#t:UUID">UUID</a></td><td class="doc empty"> </td></tr><tr><td class="src"><a href="/usr/share/doc/ghc/html/libraries/base-4.5.0.0/Text-Read.html#t:Read">Read</a> <a href="Data-UUID.html#t:UUID">UUID</a></td><td class="doc empty"> </td></tr><tr><td class="src"><a href="/usr/share/doc/ghc/html/libraries/base-4.5.0.0/Text-Show.html#t:Show">Show</a> <a href="Data-UUID.html#t:UUID">UUID</a></td><td class="doc empty"> </td></tr><tr><td class="src"><a href="/usr/share/doc/ghc/html/libraries/base-4.5.0.0/Data-Typeable-Internal.html#t:Typeable">Typeable</a> <a href="Data-UUID.html#t:UUID">UUID</a></td><td class="doc empty"> </td></tr><tr><td class="src"><a href="/usr/share/doc/ghc/html/libraries/base-4.5.0.0/Foreign-Storable.html#t:Storable">Storable</a> <a href="Data-UUID.html#t:UUID">UUID</a></td><td class="doc empty"> </td></tr><tr><td class="src"><a href="/usr/share/doc/ghc/html/libraries/binary-0.5.1.0/Data-Binary.html#t:Binary">Binary</a> <a href="Data-UUID.html#t:UUID">UUID</a></td><td class="doc empty"> </td></tr><tr><td class="src"><a href="/usr/share/doc/ghc/html/libraries/random-1.0.1.1/System-Random.html#t:Random">Random</a> <a href="Data-UUID.html#t:UUID">UUID</a></td><td class="doc empty"> </td></tr></table></div></div></div><div class="top"><p class="src"><a name="v:toString" class="def">toString</a> :: <a href="Data-UUID.html#t:UUID">UUID</a> -> <a href="/usr/share/doc/ghc/html/libraries/base-4.5.0.0/Data-String.html#t:String">String</a><a href="src/Data-UUID-Internal.html#toString" class="link">Source</a></p><div class="doc"><p>Convert a UUID into a hypenated string using lower-case letters. Example: </p><pre> toString $ fromString "550e8400-e29b-41d4-a716-446655440000" </pre></div></div><div class="top"><p class="src"><a name="v:fromString" class="def">fromString</a> :: <a href="/usr/share/doc/ghc/html/libraries/base-4.5.0.0/Data-String.html#t:String">String</a> -> <a href="/usr/share/doc/ghc/html/libraries/base-4.5.0.0/Data-Maybe.html#t:Maybe">Maybe</a> <a href="Data-UUID.html#t:UUID">UUID</a><a href="src/Data-UUID-Internal.html#fromString" class="link">Source</a></p><div class="doc"><p>If the passed in <code><a href="/usr/share/doc/ghc/html/libraries/base-4.5.0.0/Data-String.html#t:String">String</a></code> can be parsed as a <code><a href="Data-UUID.html#t:UUID">UUID</a></code>, it will be. The hyphens may not be omitted. Example: </p><pre> fromString "c2cc10e1-57d6-4b6f-9899-38d972112d8c" </pre><p>Hex digits may be upper or lower-case. </p></div></div><div class="top"><p class="src"><a name="v:toByteString" class="def">toByteString</a> :: <a href="Data-UUID.html#t:UUID">UUID</a> -> <a href="/usr/share/doc/ghc/html/libraries/bytestring-0.9.2.1/Data-ByteString-Lazy.html#t:ByteString">ByteString</a><a href="src/Data-UUID-Internal.html#toByteString" class="link">Source</a></p><div class="doc"><p>Encode a UUID into a <code>ByteString</code> in network order. </p></div></div><div class="top"><p class="src"><a name="v:fromByteString" class="def">fromByteString</a> :: <a href="/usr/share/doc/ghc/html/libraries/bytestring-0.9.2.1/Data-ByteString-Lazy.html#t:ByteString">ByteString</a> -> <a href="/usr/share/doc/ghc/html/libraries/base-4.5.0.0/Data-Maybe.html#t:Maybe">Maybe</a> <a href="Data-UUID.html#t:UUID">UUID</a><a href="src/Data-UUID-Internal.html#fromByteString" class="link">Source</a></p><div class="doc"><p>Extract a UUID from a <code>ByteString</code> in network byte order. The argument must be 16 bytes long, otherwise <code><a href="/usr/share/doc/ghc/html/libraries/base-4.5.0.0/Data-Maybe.html#v:Nothing">Nothing</a></code> is returned. </p></div></div><div class="top"><p class="src"><a name="v:toWords" class="def">toWords</a> :: <a href="Data-UUID.html#t:UUID">UUID</a> -> (<a href="/usr/share/doc/ghc/html/libraries/base-4.5.0.0/Data-Word.html#t:Word32">Word32</a>, <a href="/usr/share/doc/ghc/html/libraries/base-4.5.0.0/Data-Word.html#t:Word32">Word32</a>, <a href="/usr/share/doc/ghc/html/libraries/base-4.5.0.0/Data-Word.html#t:Word32">Word32</a>, <a href="/usr/share/doc/ghc/html/libraries/base-4.5.0.0/Data-Word.html#t:Word32">Word32</a>)<a href="src/Data-UUID-Internal.html#toWords" class="link">Source</a></p><div class="doc"><p>Covert a <code><a href="Data-UUID.html#t:UUID">UUID</a></code> into a sequence of <code><a href="/usr/share/doc/ghc/html/libraries/base-4.5.0.0/Data-Word.html#t:Word32">Word32</a></code> values. Usefull for when you need to serialize a UUID and neither <code><a href="/usr/share/doc/ghc/html/libraries/base-4.5.0.0/Foreign-Storable.html#t:Storable">Storable</a></code> nor <code><a href="/usr/share/doc/ghc/html/libraries/binary-0.5.1.0/Data-Binary.html#t:Binary">Binary</a></code> are appropriate. Introduced in version 1.2.2. </p></div></div><div class="top"><p class="src"><a name="v:fromWords" class="def">fromWords</a> :: <a href="/usr/share/doc/ghc/html/libraries/base-4.5.0.0/Data-Word.html#t:Word32">Word32</a> -> <a href="/usr/share/doc/ghc/html/libraries/base-4.5.0.0/Data-Word.html#t:Word32">Word32</a> -> <a href="/usr/share/doc/ghc/html/libraries/base-4.5.0.0/Data-Word.html#t:Word32">Word32</a> -> <a href="/usr/share/doc/ghc/html/libraries/base-4.5.0.0/Data-Word.html#t:Word32">Word32</a> -> <a href="Data-UUID.html#t:UUID">UUID</a><a href="src/Data-UUID-Internal.html#fromWords" class="link">Source</a></p><div class="doc"><p>Create a <code><a href="Data-UUID.html#t:UUID">UUID</a></code> from a sequence of <code><a href="/usr/share/doc/ghc/html/libraries/base-4.5.0.0/Data-Word.html#t:Word32">Word32</a></code>. The opposite of <code><a href="Data-UUID.html#v:toWords">toWords</a></code>. Useful when you need a total function for constructing <code><a href="Data-UUID.html#t:UUID">UUID</a></code> values. Introduced in version 1.2.2. </p></div></div><div class="top"><p class="src"><a name="v:null" class="def">null</a> :: <a href="Data-UUID.html#t:UUID">UUID</a> -> <a href="/usr/share/doc/ghc/html/libraries/base-4.5.0.0/Data-Bool.html#t:Bool">Bool</a><a href="src/Data-UUID-Internal.html#null" class="link">Source</a></p><div class="doc"><p>Returns true if the passed-in UUID is the <code><a href="Data-UUID.html#v:nil">nil</a></code> UUID. </p></div></div><div class="top"><p class="src"><a name="v:nil" class="def">nil</a> :: <a href="Data-UUID.html#t:UUID">UUID</a><a href="src/Data-UUID-Internal.html#nil" class="link">Source</a></p><div class="doc"><p>The nil UUID, as defined in RFC 4122. It is a UUID of all zeros. <code><code><a href="Data-UUID.html#v:null">null</a></code> u</code> iff <code><code>u</code> == <code><a href="Data-UUID.html#v:nil">nil</a></code></code>. </p></div></div></div></div><div id="footer"><p>Produced by <a href="http://www.haskell.org/haddock/">Haddock</a> version 2.10.0</p></div></body></html>