module Prolude.Uuid
(
Uuid
, randomUuid
, textToUuid
, uuidToText
, wordsToUuid
)
where
import qualified Control.Monad.IO.Class as Monad
import qualified Data.Maybe as Maybe
import qualified Data.Text as Text
import qualified Data.UUID as UUID
import qualified Data.UUID.V4 as UUID
import qualified Data.Word as Word
import qualified System.IO as IO
type Uuid = UUID.UUID
uuidToText :: Uuid -> Text.Text
uuidToText :: Uuid -> Text
uuidToText = Uuid -> Text
UUID.toText
textToUuid :: Text.Text -> Maybe.Maybe Uuid
textToUuid :: Text -> Maybe Uuid
textToUuid = Text -> Maybe Uuid
UUID.fromText
wordsToUuid :: Word.Word32 -> Word.Word32 -> Word.Word32 -> Word.Word32 -> Uuid
wordsToUuid :: Word32 -> Word32 -> Word32 -> Word32 -> Uuid
wordsToUuid = Word32 -> Word32 -> Word32 -> Word32 -> Uuid
UUID.fromWords
randomUuid :: Monad.MonadIO m => m Uuid
randomUuid :: m Uuid
randomUuid = IO Uuid -> m Uuid
forall (m :: * -> *) a. MonadIO m => IO a -> m a
Monad.liftIO IO Uuid
UUID.nextRandom