Current section

Files

Jump to
zoi lib zoi validations one_of.ex
Raw

lib/zoi/validations/one_of.ex

defprotocol Zoi.Validations.OneOf do
@moduledoc false
@fallback_to_any true
@spec validate(Zoi.schema(), Zoi.input(), list(), Zoi.options()) ::
:ok | {:error, Zoi.Error.t()}
def validate(schema, input, values, opts)
end
defimpl Zoi.Validations.OneOf, for: Any do
def validate(_schema, input, values, opts) do
if input in values do
:ok
else
{:error, Zoi.Error.not_in_values(values, opts)}
end
end
end