Modules
LiveView、Phoenix Controller、JSON API などで受け取る文字列中心の params を検証し、 型付き構造体へ変換するための DSL です。
DSL の組み込み型へ入力値を変換します。
use ExParamsSchema で宣言されたフィールドから、構造体と関連関数をコンパイル時に生成します。
DSL と map 形式のフィールド定義を正規化・検証します。
正規化済みのフィールド定義を表す内部構造体です。
正規化済みフィールドから、生成する構造体の型仕様 AST を組み立てます。
LiveView callback に params schema を関連付け、受信値を変換します。
ExParamsSchema.Handler の注釈を callback 実装へ展開します。
コンパイル済みスキーマに対するパラメーターの変換・検証を実行します。
正規化済みフィールド、JSON Schema、検証用データをまとめるコンパイル済みスキーマです。
フィールドの既定値をキャストし、生成した JSON Schema に対して検証します。
JSON Schema のエラーパスを、スキーマのエラー定義へ対応付けます。
JSON Pointer とフィールドパスを変換・照合する純粋関数を提供します。
正規化済みフィールドから JSON Schema Draft 7 を組み立てます。
schema-level option の既定値と正規化規則を管理します。
変換済みの値を JSON Schema 検証用の JSON 互換の値へ変換します。
JSON Schema による検証結果を ExParamsSchema のエラー形式へ変換します。
独自型を ExParamsSchema のフィールドとして利用するための仕様です。
parse_detailed/1 と parse_detailed/2 が返す検証エラーです。
正規化済みの型定義に従って、単一値、配列、object を再帰的に変換します。