mayo v0.1.0 Mayo
Summary
Macros
Validates data with a schema
Macros
Validates data with a schema.
iex> Mayo.validate "test", Mayo.String.min(4) |> String.capitalize
"Test"
iex> Mayo.validate 42, Mayo.Number.max(23)
{:error, %Mayo.Error{type: "number.max"}}
iex> Mayo.validate %{username: "johndoe"}, %{
...> username: Mayo.Any.string |> Mayo.String.min(6)
...> }
%{username: "johndoe"}
iex> Mayo.validate %{username: "test"}, %{
...> username: Mayo.Any.string |> Mayo.String.min(6)
...> }
{:error, %Mayo.Error{type: "string.min", path: :username}}