lib/types/const_type.ex
defmodule Talos.Types.ConstType do
@moduledoc """
Constant value validation
"""
defstruct value: nil, description: nil
@behaviour Talos.Types
@type t :: %__MODULE__{value: any, description: binary()}
def valid?(%__MODULE__{value: value_expected}, value) do
case value_expected == value do
true -> true
false -> false
end
end
def errors(type, value) do
case valid?(type, value) do
true -> []
false -> ["#{inspect(value)} should be equal #{inspect(type.value)}"]
end
end
end