- Ensure that type specific constraints are only applied if the processed
value has the matching type
- Support multiple types ("type": [ ... ])
- Merge object values when processing subschema variants
- Support sub schemas without any type
- Improve formatting of enumerations in error messages
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
Ensure that the validation document is returned even if the errors array
parameter is omitted when calling the validate() function.
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
- Rewrite generator code to support tracking location and all schema
errors in generated reader code
- Improve validation error messages
- Remove further dead code
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
Instead of redundantly pasting the validation inline multiple times, emit
global shared match functions and invoke those in the assert() expressions
instead.
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
- Generate code for validating formats
- Remove dead code
- Fix a wrong schema format discovered by the resulting reader code
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
- Handle schema references in object schema types
- Derive type from referenced sub schema if type property is missing
- Avoid outputting trailing white space
Signed-off-by: Jo-Philipp Wich <jo@mein.io>