フィールドの既定値をキャストし、生成した JSON Schema に対して検証します。
スキーマのコンパイル時に使用する内部モジュールです。
Summary
Functions
default 値をフィールド型へ変換し、対応する JSON Schema で検証します。
Functions
@spec normalize!([ExParamsSchema.Definition.Field.t()], ExJsonSchema.Schema.Root.t()) :: [ ExParamsSchema.Definition.Field.t() ]
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 になります。