Blaze 0.0.1
The ultra high-performance JSON Schema evaluator
Loading...
Searching...
No Matches
Canonicalizer

Rewrite a JSON Schema into its analysis-canonical form. More...

Functions

SOURCEMETA_BLAZE_CANONICALIZER_EXPORT auto sourcemeta::blaze::canonicalize (sourcemeta::core::JSON &schema, const sourcemeta::core::SchemaWalker &walker, const sourcemeta::core::SchemaResolver &resolver, const std::string_view default_dialect="", const std::string_view default_id="") -> void

Detailed Description

Rewrite a JSON Schema into its analysis-canonical form.

This functionality is included as follows:

#include <sourcemeta/blaze/canonicalizer.h>

Function Documentation

◆ canonicalize()

SOURCEMETA_BLAZE_CANONICALIZER_EXPORT auto sourcemeta::blaze::canonicalize ( sourcemeta::core::JSON & schema,
const sourcemeta::core::SchemaWalker & walker,
const sourcemeta::core::SchemaResolver & resolver,
const std::string_view default_dialect = "",
const std::string_view default_id = "" )->void

Rewrite the given schema, in place, into its analysis-canonical form. For example:

#include <sourcemeta/blaze/canonicalizer.h>
#include <sourcemeta/core/jsonschema.h>
auto schema = sourcemeta::core::parse_json(R"JSON({
"$schema": "http://json-schema.org/draft-03/schema#",
"type": "boolean"
})JSON");
sourcemeta::blaze::canonicalize(schema, sourcemeta::core::schema_walker,
sourcemeta::core::schema_resolver);
SOURCEMETA_BLAZE_CANONICALIZER_EXPORT auto canonicalize(sourcemeta::core::JSON &schema, const sourcemeta::core::SchemaWalker &walker, const sourcemeta::core::SchemaResolver &resolver, const std::string_view default_dialect="", const std::string_view default_id="") -> void