Current section
Files
Jump to
Current section
Files
lib/uuid.ex
defmodule UUID do
@moduledoc """
This is a shim for the `UUID` module provided by the elixir_uuid library,
to allow for drop-in integration with legacy code.
"""
def info(uuid), do: Uniq.UUID.info(uuid, :keyword)
def info!(uuid), do: Uniq.UUID.info!(uuid, :keyword)
defdelegate binary_to_string(uuid), to: Uniq.UUID, as: :to_string
defdelegate string_to_binary!(uuid), to: Uniq.UUID
defdelegate uuid1(format \\ :default), to: Uniq.UUID
defdelegate uuid1(clock_seq, node, format \\ :default), to: Uniq.UUID
defdelegate uuid3(namespace_or_uuid, name, format \\ :default), to: Uniq.UUID
defdelegate uuid4(format \\ :default), to: Uniq.UUID
defdelegate uuid5(namespace_or_uuid, name, format \\ :default), to: Uniq.UUID
# Strictly speaking, these aren't provided by elixir_uuid, but since people may
# be likely to use this shim to access uniq, it makes sense to expose the additional
# functionality
defdelegate valid?(string), to: Uniq.UUID
defdelegate uuid6(format \\ :default), to: Uniq.UUID
defdelegate to_string(uuid), to: Uniq.UUID
defdelegate to_string(uuid, format), to: Uniq.UUID
end