ExParamsSchema.Schema.Defaults (ex_params_schema v0.1.0)

Copy Markdown View Source

フィールドの既定値をキャストし、生成した JSON Schema に対して検証します。

スキーマのコンパイル時に使用する内部モジュールです。

Summary

Functions

default 値をフィールド型へ変換し、対応する JSON Schema で検証します。

Functions

normalize!(fields, resolved)

default 値をフィールド型へ変換し、対応する JSON Schema で検証します。

iex> fields = ExParamsSchema.Definition.compile_fields!([
...>   {:count, :integer, [default: "2", minimum: 1]}
...> ])
iex> {json_schema, _errors} = ExParamsSchema.Schema.JsonSchema.build(fields, false)
iex> resolved = ExJsonSchema.Schema.resolve(json_schema)
iex> [field] = ExParamsSchema.Schema.Defaults.normalize!(fields, resolved)
iex> Keyword.fetch!(field.options, :default)
2

変換できない値や制約を満たさない値は ArgumentError になります。