Packages
A web application in pursuit of meaning in life.
Retired package: Complete rewrite, scratch old versions
Current section
Files
Jump to
Current section
Files
lib/udia/permalink.ex
defmodule Udia.Permalink do
@behaviour Ecto.Type
def type, do: :id
def cast(binary) when is_binary(binary) do
case Integer.parse(binary) do
{int, _} when int > 0 -> {:ok, int}
_ -> :error
end
end
def cast(integer) when is_integer(integer) do
{:ok, integer}
end
def cast(_) do
:error
end
def dump(integer) when is_integer(integer) do
{:ok, integer}
end
def load(integer) when is_integer(integer) do
{:ok, integer}
end
end