Paraiso.process

You're seeing just the function process, go back to Paraiso module for more information.
Link to this function

process(params, props)

Specs

process(map(), [prop()]) ::
  {:ok, map()} | {:error, atom() | [atom() | integer()], atom()}

第一引数paramsに対して第二引数propsで宣言されたバリデーションおよびサニタイズを実行する

返り値

検証成功の場合

{:ok, <サニタイズされた値>} が返る

paramsでキーがStringの場合atomに変換される。またpropsに含まれないキーは削除される

iex> Paraiso.process(%{"a" => "abc", "b" => "cde"}, [Paraiso.prop(:a, :required, "abc")])
{:ok, %{a: "abc"}}

検証失敗の場合

{:error, <失敗箇所>, <失敗理由>} が返る

あるpropで検証失敗した場合その時点で検証処理は打ち切られる。