View Source JetExt.Ecto.URN (jet_ext v0.2.3)
An Ecto type for URN (RFC 8141)
Examples
# cast
iex> cast("urn:ietf:params:scim:schemas:extension:enterprise:2.0:User:userName")
{:ok, %URN{
nid: "ietf",
nss: "params:scim:schemas:extension:enterprise:2.0:User:userName"
}}
iex> cast(:foo)
:error
iex> cast("ur:nid:nss")
:error
# load
iex> load("urn:ietf:params:scim:schemas:extension:enterprise:2.0:User:userName")
{:ok, %URN{
nid: "ietf",
nss: "params:scim:schemas:extension:enterprise:2.0:User:userName"
}}
iex> load(URN.parse!("urn:ietf:params:scim:schemas:extension:enterprise:2.0:User:userName"))
{:ok, %URN{
nid: "ietf",
nss: "params:scim:schemas:extension:enterprise:2.0:User:userName"
}}
iex> load(%{})
:error
iex> load(:path)
:error
# dump
iex> dump(URN.parse!("urn:ietf:params:scim:schemas:extension:enterprise:2.0:User:userName"))
{:ok, "urn:ietf:params:scim:schemas:extension:enterprise:2.0:User:userName"}
iex> dump(%{})
:error
iex> dump(:path)
:error
Summary
Types
@type t() :: URN.t()