View Source JetExt.Ecto.Version (jet_ext v0.2.5)
A Ecto Type for Version
that follows SemVer 2.0.
Examples
# cast
iex> cast("2.0.1-alpha1")
{:ok, %Version{
major: 2,
minor: 0,
patch: 1,
pre: ["alpha1"]
}}
iex> cast(Version.parse!("2.0.1-alpha1"))
{:ok, %Version{
major: 2,
minor: 0,
patch: 1,
pre: ["alpha1"]
}}
iex> cast("1")
:error
iex> cast(:foo)
:error
# load
iex> load("2.0.1-alpha1")
{:ok, %Version{
major: 2,
minor: 0,
patch: 1,
pre: ["alpha1"]
}}
iex> load(Version.parse!("2.0.1-alpha1"))
{:ok, %Version{
major: 2,
minor: 0,
patch: 1,
pre: ["alpha1"]
}}
iex> load("1")
:error
iex> load(:foo)
:error
# dump
iex> dump(Version.parse!("2.0.1-alpha1"))
{:ok, "2.0.1-alpha1"}
iex> dump(%{})
:error
iex> dump(:foo)
:error
Summary
Functions
Callback implementation for Ecto.Type.embed_as/1
.
Callback implementation for Ecto.Type.equal?/2
.
Functions
Callback implementation for Ecto.Type.embed_as/1
.
Callback implementation for Ecto.Type.equal?/2
.