defmodule Piazza.Ecto.UUID do def generate_monotonic() do timestamp = :os.system_time(:millisecond) random = :crypto.strong_rand_bytes(10) <> = <> {:ok, res} = Ecto.UUID.load(<>) res end def decode(<>) do {:ok, {timestamp, rand}} end def decode(_), do: :error end