Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
6 changes: 6 additions & 0 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -109,6 +109,12 @@ jobs:
- run: >
cmake --install ./build --prefix ./build/dist --config Release --verbose
--component sourcemeta_core_dev
- run: >
cmake --install ./build --prefix ./build/dist --config Release --verbose
--component sourcemeta_blaze
- run: >
cmake --install ./build --prefix ./build/dist --config Release --verbose
--component sourcemeta_blaze_dev
- run: >
cmake --install ./build --prefix ./build/dist --config Release --verbose
--component sourcemeta_jsonbinpack
Expand Down
4 changes: 1 addition & 3 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,7 @@ option(JSONBINPACK_ADDRESS_SANITIZER "Build JSON BinPack with an address sanitiz
option(JSONBINPACK_UNDEFINED_SANITIZER "Build JSON BinPack with an undefined behavior sanitizer" OFF)

find_package(Core REQUIRED)
find_package(Blaze REQUIRED)
Copy link
Copy Markdown

@augmentcode augmentcode Bot Apr 21, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

CMakeLists.txt:21 find_package(Blaze REQUIRED) is unconditional even though JSONBINPACK_COMPILER can be turned OFF, so builds that only want numeric/runtime will still require Blaze.

Severity: medium

Fix This in Augment

🤖 Was this useful? React with 👍 or 👎, or 🚀 if it prevented an incident/outage.


if(JSONBINPACK_INSTALL)
include(GNUInstallDirs)
Expand All @@ -36,9 +37,6 @@ if(JSONBINPACK_INSTALL)
COMPONENT sourcemeta_jsonbinpack_dev)
endif()

# Dependencies
find_package(Core REQUIRED)

# Numeric
if(JSONBINPACK_NUMERIC)
add_subdirectory(src/numeric)
Expand Down
3 changes: 2 additions & 1 deletion DEPENDENCIES
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
vendorpull https://github.com/sourcemeta/vendorpull 1dcbac42809cf87cb5b045106b863e17ad84ba02
core https://github.com/sourcemeta/core 57e8c91ed68e3ee903526fd2f45cb16ca46759d8
core https://github.com/sourcemeta/core efaed8a73fa1ba38f0c2fdcbd11d0b3223c5a70e
blaze https://github.com/sourcemeta/blaze 0ff98cb5e537f571bdf04f0d59a031a0d8634e07
bootstrap https://github.com/twbs/bootstrap 1a6fdfae6be09b09eaced8f0e442ca6f7680a61e
4 changes: 4 additions & 0 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -27,6 +27,10 @@ compile: .always
--component sourcemeta_core
$(CMAKE) --install ./build --prefix ./build/dist --config $(PRESET) --verbose \
--component sourcemeta_core_dev
$(CMAKE) --install ./build --prefix ./build/dist --config $(PRESET) --verbose \
--component sourcemeta_blaze
$(CMAKE) --install ./build --prefix ./build/dist --config $(PRESET) --verbose \
--component sourcemeta_blaze_dev
$(CMAKE) --install ./build --prefix ./build/dist --config $(PRESET) --verbose \
--component sourcemeta_jsonbinpack
$(CMAKE) --install ./build --prefix ./build/dist --config $(PRESET) --verbose \
Expand Down
14 changes: 14 additions & 0 deletions cmake/FindBlaze.cmake
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
if(NOT Blaze_FOUND)
if(JSONBINPACK_INSTALL)
Copy link
Copy Markdown

@cubic-dev-ai cubic-dev-ai Bot Apr 21, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2: Set BLAZE_INSTALL here, not SOURCEMETA_BLAZE_INSTALL.

Otherwise vendored Blaze keeps its install rules enabled even when JSONBinPack installs are disabled.

Prompt for AI agents
Check if this issue is valid — if so, understand the root cause and fix it. At cmake/FindBlaze.cmake, line 2:

<comment>Set `BLAZE_INSTALL` here, not `SOURCEMETA_BLAZE_INSTALL`.

Otherwise vendored Blaze keeps its install rules enabled even when JSONBinPack installs are disabled.</comment>

<file context>
@@ -0,0 +1,14 @@
+if(NOT Blaze_FOUND)
+  if(JSONBINPACK_INSTALL)
+    set(SOURCEMETA_BLAZE_INSTALL ON CACHE BOOL "enable installation")
+  else()
</file context>
Fix with Cubic

set(SOURCEMETA_BLAZE_INSTALL ON CACHE BOOL "enable installation")
Copy link
Copy Markdown

@augmentcode augmentcode Bot Apr 21, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

cmake/FindBlaze.cmake:3 The vendored Blaze project appears to gate installs on BLAZE_INSTALL (not SOURCEMETA_BLAZE_INSTALL), so this cache variable may not actually control Blaze installation behavior when included as a subproject.

Severity: low

Fix This in Augment

🤖 Was this useful? React with 👍 or 👎, or 🚀 if it prevented an incident/outage.

else()
set(SOURCEMETA_BLAZE_INSTALL OFF CACHE BOOL "disable installation")
endif()

set(BLAZE_TEST OFF CACHE BOOL "disable")
set(BLAZE_CONFIGURATION OFF CACHE BOOL "disable")
set(BLAZE_CONTRIB OFF CACHE BOOL "disable")
add_subdirectory("${PROJECT_SOURCE_DIR}/vendor/blaze")
include(Sourcemeta)
set(Blaze_FOUND ON)
endif()
2 changes: 1 addition & 1 deletion cmake/FindCore.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ if(NOT Core_FOUND)
set(SOURCEMETA_CORE_GZIP OFF CACHE BOOL "disable")
set(SOURCEMETA_CORE_MD5 OFF CACHE BOOL "disable")
set(SOURCEMETA_CORE_JSONL OFF CACHE BOOL "disable JSONL support")
set(SOURCEMETA_CORE_YAML OFF CACHE BOOL "disable YAML support")
set(SOURCEMETA_CORE_YAML ON CACHE BOOL "needed by Blaze")
set(SOURCEMETA_CORE_EXTENSION_OPTIONS OFF CACHE BOOL "disable")
set(SOURCEMETA_CORE_EXTENSION_BUILD OFF CACHE BOOL "disable")
set(SOURCEMETA_CORE_CONTRIB_GOOGLETEST ${JSONBINPACK_TESTS} CACHE BOOL "GoogleTest")
Expand Down
3 changes: 2 additions & 1 deletion config.cmake.in
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,8 @@ if(NOT JSONBINPACK_COMPONENTS)
endif()

include(CMakeFindDependencyMacro)
find_dependency(Core COMPONENTS regex uri json jsonpointer jsonschema alterschema)
find_dependency(Core COMPONENTS regex uri json jsonpointer jsonschema)
find_dependency(Blaze COMPONENTS alterschema)
Copy link
Copy Markdown

@cubic-dev-ai cubic-dev-ai Bot Apr 21, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2: Make the Blaze dependency conditional on the compiler component; otherwise runtime/numeric-only consumers require an unnecessary package.

Prompt for AI agents
Check if this issue is valid — if so, understand the root cause and fix it. At config.cmake.in, line 14:

<comment>Make the Blaze dependency conditional on the compiler component; otherwise runtime/numeric-only consumers require an unnecessary package.</comment>

<file context>
@@ -10,7 +10,8 @@ if(NOT JSONBINPACK_COMPONENTS)
 include(CMakeFindDependencyMacro)
-find_dependency(Core COMPONENTS regex uri json jsonpointer jsonschema alterschema)
+find_dependency(Core COMPONENTS regex uri json jsonpointer jsonschema)
+find_dependency(Blaze COMPONENTS alterschema)
 
 foreach(component ${JSONBINPACK_COMPONENTS})
</file context>
Suggested change
find_dependency(Blaze COMPONENTS alterschema)
list(FIND JSONBINPACK_COMPONENTS compiler JSONBINPACK_COMPILER_INDEX)
if(JSONBINPACK_COMPILER_INDEX GREATER -1)
find_dependency(Blaze COMPONENTS alterschema)
endif()
Fix with Cubic

Copy link
Copy Markdown

@augmentcode augmentcode Bot Apr 21, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

config.cmake.in:14 find_dependency(Blaze COMPONENTS alterschema) runs before component selection, so consumers requesting only numeric or runtime will still need Blaze available.

Severity: medium

Fix This in Augment

🤖 Was this useful? React with 👍 or 👎, or 🚀 if it prevented an incident/outage.


foreach(component ${JSONBINPACK_COMPONENTS})
if(component STREQUAL "numeric")
Expand Down
2 changes: 1 addition & 1 deletion src/compiler/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -31,4 +31,4 @@ target_link_libraries(sourcemeta_jsonbinpack_compiler PRIVATE
target_link_libraries(sourcemeta_jsonbinpack_compiler PUBLIC
sourcemeta::core::jsonschema)
target_link_libraries(sourcemeta_jsonbinpack_compiler PRIVATE
sourcemeta::core::alterschema)
sourcemeta::blaze::alterschema)
20 changes: 10 additions & 10 deletions src/compiler/compiler.cc
Original file line number Diff line number Diff line change
@@ -1,19 +1,19 @@
#include <sourcemeta/jsonbinpack/compiler.h>
#include <sourcemeta/jsonbinpack/numeric.h>

#include <sourcemeta/core/alterschema.h>
#include <sourcemeta/blaze/alterschema.h>
#include <sourcemeta/core/jsonpointer.h>

#include "encoding.h"

#include <cassert> // assert
#include <type_traits> // std::true_type

static auto
transformer_callback_noop(const sourcemeta::core::Pointer &,
const std::string_view, const std::string_view,
const sourcemeta::core::SchemaTransformRule::Result &,
[[maybe_unused]] const bool applied) -> void {
static auto transformer_callback_noop(
const sourcemeta::core::Pointer &, const std::string_view,
const std::string_view,
const sourcemeta::blaze::SchemaTransformRule::Result &,
[[maybe_unused]] const bool applied) -> void {
Copy link
Copy Markdown

@augmentcode augmentcode Bot Apr 21, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

src/compiler/compiler.cc:16 Blaze’s SchemaTransformer::Callback last boolean argument represents whether the rule mutates (it’s passed as mutates in Blaze), not “applied”, so naming it applied and asserting it can trigger debug aborts if any non-mutating checks invoke the callback.

Severity: medium

Fix This in Augment

🤖 Was this useful? React with 👍 or 👎, or 🚀 if it prevented an incident/outage.

assert(applied);
}

Expand All @@ -23,9 +23,9 @@ auto canonicalize(sourcemeta::core::JSON &schema,
const sourcemeta::core::SchemaWalker &walker,
const sourcemeta::core::SchemaResolver &resolver,
const std::string_view default_dialect) -> void {
sourcemeta::core::SchemaTransformer canonicalizer;
sourcemeta::core::add(canonicalizer,
sourcemeta::core::AlterSchemaMode::Canonicalizer);
sourcemeta::blaze::SchemaTransformer canonicalizer;
sourcemeta::blaze::add(canonicalizer,
sourcemeta::blaze::AlterSchemaMode::Canonicalizer);
[[maybe_unused]] const auto result =
canonicalizer.apply(schema, walker, make_resolver(resolver),
transformer_callback_noop, default_dialect);
Expand Down Expand Up @@ -63,7 +63,7 @@ auto compile(sourcemeta::core::JSON &schema,
const std::string_view default_dialect) -> void {
canonicalize(schema, walker, resolver, default_dialect);

sourcemeta::core::SchemaTransformer mapper;
sourcemeta::blaze::SchemaTransformer mapper;

// Enums
mapper.add<Enum8Bit>();
Expand Down
8 changes: 4 additions & 4 deletions src/compiler/mapper/enum_8_bit.h
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
// TODO: Unit test this mapping once we have container encodings
class Enum8Bit final : public sourcemeta::core::SchemaTransformRule {
class Enum8Bit final : public sourcemeta::blaze::SchemaTransformRule {
public:
using mutates = std::true_type;
using reframe_after_transform = std::true_type;
Enum8Bit() : sourcemeta::core::SchemaTransformRule{"enum_8_bit", ""} {};
Enum8Bit() : sourcemeta::blaze::SchemaTransformRule{"enum_8_bit", ""} {};

[[nodiscard]] auto
condition(const sourcemeta::core::JSON &schema,
Expand All @@ -13,7 +13,7 @@ class Enum8Bit final : public sourcemeta::core::SchemaTransformRule {
const sourcemeta::core::SchemaFrame::Location &location,
const sourcemeta::core::SchemaWalker &,
const sourcemeta::core::SchemaResolver &) const
-> sourcemeta::core::SchemaTransformRule::Result override {
-> sourcemeta::blaze::SchemaTransformRule::Result override {
return location.dialect == "https://json-schema.org/draft/2020-12/schema" &&
vocabularies.contains(sourcemeta::core::Vocabularies::Known::
JSON_Schema_2020_12_Validation) &&
Expand All @@ -24,7 +24,7 @@ class Enum8Bit final : public sourcemeta::core::SchemaTransformRule {
}

auto transform(sourcemeta::core::JSON &schema,
const sourcemeta::core::SchemaTransformRule::Result &) const
const sourcemeta::blaze::SchemaTransformRule::Result &) const
-> void override {
auto options = sourcemeta::core::JSON::make_object();
options.assign("choices", schema.at("enum"));
Expand Down
8 changes: 4 additions & 4 deletions src/compiler/mapper/enum_8_bit_top_level.h
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
class Enum8BitTopLevel final : public sourcemeta::core::SchemaTransformRule {
class Enum8BitTopLevel final : public sourcemeta::blaze::SchemaTransformRule {
public:
using mutates = std::true_type;
using reframe_after_transform = std::true_type;
Enum8BitTopLevel()
: sourcemeta::core::SchemaTransformRule{"enum_8_bit_top_level", ""} {};
: sourcemeta::blaze::SchemaTransformRule{"enum_8_bit_top_level", ""} {};

[[nodiscard]] auto
condition(const sourcemeta::core::JSON &schema,
Expand All @@ -13,7 +13,7 @@ class Enum8BitTopLevel final : public sourcemeta::core::SchemaTransformRule {
const sourcemeta::core::SchemaFrame::Location &location,
const sourcemeta::core::SchemaWalker &,
const sourcemeta::core::SchemaResolver &) const
-> sourcemeta::core::SchemaTransformRule::Result override {
-> sourcemeta::blaze::SchemaTransformRule::Result override {
return location.dialect == "https://json-schema.org/draft/2020-12/schema" &&
vocabularies.contains(sourcemeta::core::Vocabularies::Known::
JSON_Schema_2020_12_Validation) &&
Expand All @@ -24,7 +24,7 @@ class Enum8BitTopLevel final : public sourcemeta::core::SchemaTransformRule {
}

auto transform(sourcemeta::core::JSON &schema,
const sourcemeta::core::SchemaTransformRule::Result &) const
const sourcemeta::blaze::SchemaTransformRule::Result &) const
-> void override {
auto options = sourcemeta::core::JSON::make_object();
options.assign("choices", schema.at("enum"));
Expand Down
8 changes: 4 additions & 4 deletions src/compiler/mapper/enum_arbitrary.h
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
// TODO: Unit test this mapping once we have container encodings
class EnumArbitrary final : public sourcemeta::core::SchemaTransformRule {
class EnumArbitrary final : public sourcemeta::blaze::SchemaTransformRule {
public:
using mutates = std::true_type;
using reframe_after_transform = std::true_type;
EnumArbitrary()
: sourcemeta::core::SchemaTransformRule{"enum_arbitrary", ""} {};
: sourcemeta::blaze::SchemaTransformRule{"enum_arbitrary", ""} {};

[[nodiscard]] auto
condition(const sourcemeta::core::JSON &schema,
Expand All @@ -14,7 +14,7 @@ class EnumArbitrary final : public sourcemeta::core::SchemaTransformRule {
const sourcemeta::core::SchemaFrame::Location &location,
const sourcemeta::core::SchemaWalker &,
const sourcemeta::core::SchemaResolver &) const
-> sourcemeta::core::SchemaTransformRule::Result override {
-> sourcemeta::blaze::SchemaTransformRule::Result override {
return location.dialect == "https://json-schema.org/draft/2020-12/schema" &&
vocabularies.contains(sourcemeta::core::Vocabularies::Known::
JSON_Schema_2020_12_Validation) &&
Expand All @@ -25,7 +25,7 @@ class EnumArbitrary final : public sourcemeta::core::SchemaTransformRule {
}

auto transform(sourcemeta::core::JSON &schema,
const sourcemeta::core::SchemaTransformRule::Result &) const
const sourcemeta::blaze::SchemaTransformRule::Result &) const
-> void override {
auto options = sourcemeta::core::JSON::make_object();
options.assign("choices", schema.at("enum"));
Expand Down
8 changes: 4 additions & 4 deletions src/compiler/mapper/enum_singleton.h
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
class EnumSingleton final : public sourcemeta::core::SchemaTransformRule {
class EnumSingleton final : public sourcemeta::blaze::SchemaTransformRule {
public:
using mutates = std::true_type;
using reframe_after_transform = std::true_type;
EnumSingleton()
: sourcemeta::core::SchemaTransformRule{"enum_singleton", ""} {};
: sourcemeta::blaze::SchemaTransformRule{"enum_singleton", ""} {};

[[nodiscard]] auto
condition(const sourcemeta::core::JSON &schema,
Expand All @@ -13,7 +13,7 @@ class EnumSingleton final : public sourcemeta::core::SchemaTransformRule {
const sourcemeta::core::SchemaFrame::Location &location,
const sourcemeta::core::SchemaWalker &,
const sourcemeta::core::SchemaResolver &) const
-> sourcemeta::core::SchemaTransformRule::Result override {
-> sourcemeta::blaze::SchemaTransformRule::Result override {
return location.dialect == "https://json-schema.org/draft/2020-12/schema" &&
vocabularies.contains(sourcemeta::core::Vocabularies::Known::
JSON_Schema_2020_12_Validation) &&
Expand All @@ -22,7 +22,7 @@ class EnumSingleton final : public sourcemeta::core::SchemaTransformRule {
}

auto transform(sourcemeta::core::JSON &schema,
const sourcemeta::core::SchemaTransformRule::Result &) const
const sourcemeta::blaze::SchemaTransformRule::Result &) const
-> void override {
auto options = sourcemeta::core::JSON::make_object();
options.assign("value", schema.at("enum").at(0));
Expand Down
8 changes: 4 additions & 4 deletions src/compiler/mapper/integer_bounded_8_bit.h
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
class IntegerBounded8Bit final : public sourcemeta::core::SchemaTransformRule {
class IntegerBounded8Bit final : public sourcemeta::blaze::SchemaTransformRule {
public:
using mutates = std::true_type;
using reframe_after_transform = std::true_type;
IntegerBounded8Bit()
: sourcemeta::core::SchemaTransformRule{"integer_bounded_8_bit", ""} {};
: sourcemeta::blaze::SchemaTransformRule{"integer_bounded_8_bit", ""} {};

[[nodiscard]] auto
condition(const sourcemeta::core::JSON &schema,
Expand All @@ -13,7 +13,7 @@ class IntegerBounded8Bit final : public sourcemeta::core::SchemaTransformRule {
const sourcemeta::core::SchemaFrame::Location &location,
const sourcemeta::core::SchemaWalker &,
const sourcemeta::core::SchemaResolver &) const
-> sourcemeta::core::SchemaTransformRule::Result override {
-> sourcemeta::blaze::SchemaTransformRule::Result override {
return location.dialect == "https://json-schema.org/draft/2020-12/schema" &&
vocabularies.contains(sourcemeta::core::Vocabularies::Known::
JSON_Schema_2020_12_Validation) &&
Expand All @@ -26,7 +26,7 @@ class IntegerBounded8Bit final : public sourcemeta::core::SchemaTransformRule {
}

auto transform(sourcemeta::core::JSON &schema,
const sourcemeta::core::SchemaTransformRule::Result &) const
const sourcemeta::blaze::SchemaTransformRule::Result &) const
-> void override {
auto minimum = schema.at("minimum");
auto maximum = schema.at("maximum");
Expand Down
8 changes: 4 additions & 4 deletions src/compiler/mapper/integer_bounded_greater_than_8_bit.h
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
class IntegerBoundedGreaterThan8Bit final
: public sourcemeta::core::SchemaTransformRule {
: public sourcemeta::blaze::SchemaTransformRule {
public:
using mutates = std::true_type;
using reframe_after_transform = std::true_type;
IntegerBoundedGreaterThan8Bit()
: sourcemeta::core::SchemaTransformRule{
: sourcemeta::blaze::SchemaTransformRule{
"integer_bounded_greater_than_8_bit", ""} {};

[[nodiscard]] auto
Expand All @@ -15,7 +15,7 @@ class IntegerBoundedGreaterThan8Bit final
const sourcemeta::core::SchemaFrame::Location &location,
const sourcemeta::core::SchemaWalker &,
const sourcemeta::core::SchemaResolver &) const
-> sourcemeta::core::SchemaTransformRule::Result override {
-> sourcemeta::blaze::SchemaTransformRule::Result override {
return location.dialect == "https://json-schema.org/draft/2020-12/schema" &&
vocabularies.contains(sourcemeta::core::Vocabularies::Known::
JSON_Schema_2020_12_Validation) &&
Expand All @@ -28,7 +28,7 @@ class IntegerBoundedGreaterThan8Bit final
}

auto transform(sourcemeta::core::JSON &schema,
const sourcemeta::core::SchemaTransformRule::Result &) const
const sourcemeta::blaze::SchemaTransformRule::Result &) const
-> void override {
auto minimum = schema.at("minimum");
auto options = sourcemeta::core::JSON::make_object();
Expand Down
8 changes: 4 additions & 4 deletions src/compiler/mapper/integer_bounded_multiplier_8_bit.h
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
class IntegerBoundedMultiplier8Bit final
: public sourcemeta::core::SchemaTransformRule {
: public sourcemeta::blaze::SchemaTransformRule {
public:
using mutates = std::true_type;
using reframe_after_transform = std::true_type;
IntegerBoundedMultiplier8Bit()
: sourcemeta::core::SchemaTransformRule{
: sourcemeta::blaze::SchemaTransformRule{
"integer_bounded_multiplier_8_bit", ""} {};

[[nodiscard]] auto
Expand All @@ -15,7 +15,7 @@ class IntegerBoundedMultiplier8Bit final
const sourcemeta::core::SchemaFrame::Location &location,
const sourcemeta::core::SchemaWalker &,
const sourcemeta::core::SchemaResolver &) const
-> sourcemeta::core::SchemaTransformRule::Result override {
-> sourcemeta::blaze::SchemaTransformRule::Result override {
if (location.dialect != "https://json-schema.org/draft/2020-12/schema" ||
!vocabularies.contains(sourcemeta::core::Vocabularies::Known::
JSON_Schema_2020_12_Validation) ||
Expand All @@ -34,7 +34,7 @@ class IntegerBoundedMultiplier8Bit final
}

auto transform(sourcemeta::core::JSON &schema,
const sourcemeta::core::SchemaTransformRule::Result &) const
const sourcemeta::blaze::SchemaTransformRule::Result &) const
-> void override {
auto minimum = schema.at("minimum");
auto maximum = schema.at("maximum");
Expand Down
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
class IntegerBoundedMultiplierGreaterThan8Bit final
: public sourcemeta::core::SchemaTransformRule {
: public sourcemeta::blaze::SchemaTransformRule {
public:
using mutates = std::true_type;
using reframe_after_transform = std::true_type;
IntegerBoundedMultiplierGreaterThan8Bit()
: sourcemeta::core::SchemaTransformRule{
: sourcemeta::blaze::SchemaTransformRule{
"integer_bounded_multiplier_greater_than_8_bit", ""} {};

[[nodiscard]] auto
Expand All @@ -15,7 +15,7 @@ class IntegerBoundedMultiplierGreaterThan8Bit final
const sourcemeta::core::SchemaFrame::Location &location,
const sourcemeta::core::SchemaWalker &,
const sourcemeta::core::SchemaResolver &) const
-> sourcemeta::core::SchemaTransformRule::Result override {
-> sourcemeta::blaze::SchemaTransformRule::Result override {
if (location.dialect != "https://json-schema.org/draft/2020-12/schema" ||
!vocabularies.contains(sourcemeta::core::Vocabularies::Known::
JSON_Schema_2020_12_Validation) ||
Expand All @@ -34,7 +34,7 @@ class IntegerBoundedMultiplierGreaterThan8Bit final
}

auto transform(sourcemeta::core::JSON &schema,
const sourcemeta::core::SchemaTransformRule::Result &) const
const sourcemeta::blaze::SchemaTransformRule::Result &) const
-> void override {
auto minimum = schema.at("minimum");
auto multiplier = schema.at("multipleOf");
Expand Down
Loading
Loading