diff --git a/.gitignore b/.gitignore
index a13ad89a5..85b0d04b0 100644
--- a/.gitignore
+++ b/.gitignore
@@ -22,6 +22,7 @@ benchmarks/files/numbers/*.json
test/test-*
/.vs
+/.vscode
doc/html
doc/mkdocs/venv/
diff --git a/Makefile b/Makefile
index e8c459f8e..e005d9478 100644
--- a/Makefile
+++ b/Makefile
@@ -1,1516 +1,253 @@
-# CMAKE generated file: DO NOT EDIT!
-# Generated by "Unix Makefiles" Generator, CMake Version 3.24
+.PHONY: pretty clean ChangeLog.md release
-# Default target executed when no arguments are given to make.
-default_target: all
-.PHONY : default_target
+##########################################################################
+# configuration
+##########################################################################
-# Allow only one "make -f Makefile2" at a time, but pass parallelism.
-.NOTPARALLEL:
+# find GNU sed to use `-i` parameter
+SED:=$(shell command -v gsed || which sed)
-#=============================================================================
-# Special targets provided by cmake.
-# Disable implicit rules so canonical targets will work.
-.SUFFIXES:
+##########################################################################
+# source files
+##########################################################################
-# Disable VCS-based implicit rules.
-% : %,v
+# the list of sources in the include folder
+SRCS=$(shell find include -type f | sort)
-# Disable VCS-based implicit rules.
-% : RCS/%
+# the single header (amalgamated from the source files)
+AMALGAMATED_FILE=single_include/nlohmann/json.hpp
-# Disable VCS-based implicit rules.
-% : RCS/%,v
-# Disable VCS-based implicit rules.
-% : SCCS/s.%
+##########################################################################
+# documentation of the Makefile's targets
+##########################################################################
-# Disable VCS-based implicit rules.
-% : s.%
+# main target
+all:
+ @echo "amalgamate - amalgamate file single_include/nlohmann/json.hpp from the include/nlohmann sources"
+ @echo "ChangeLog.md - generate ChangeLog file"
+ @echo "check-amalgamation - check whether sources have been amalgamated"
+ @echo "clean - remove built files"
+ @echo "doctest - compile example files and check their output"
+ @echo "fuzz_testing - prepare fuzz testing of the JSON parser"
+ @echo "fuzz_testing_bson - prepare fuzz testing of the BSON parser"
+ @echo "fuzz_testing_cbor - prepare fuzz testing of the CBOR parser"
+ @echo "fuzz_testing_msgpack - prepare fuzz testing of the MessagePack parser"
+ @echo "fuzz_testing_ubjson - prepare fuzz testing of the UBJSON parser"
+ @echo "pretty - beautify code with Artistic Style"
+ @echo "run_benchmarks - build and run benchmarks"
-.SUFFIXES: .hpux_make_needs_suffix_list
-# Command-line flag to silence nested $(MAKE).
-$(VERBOSE)MAKESILENT = -s
+##########################################################################
+# documentation tests
+##########################################################################
-#Suppress display of executed commands.
-$(VERBOSE).SILENT:
+# compile example files and check output
+doctest:
+ $(MAKE) check_output -C doc
-# A target that is always out of date.
-cmake_force:
-.PHONY : cmake_force
-#=============================================================================
-# Set environment variables for the build.
+##########################################################################
+# benchmarks
+##########################################################################
-# The shell in which to execute make rules.
-SHELL = /bin/sh
+run_benchmarks:
+ rm -fr cmake-build-benchmarks
+ mkdir cmake-build-benchmarks
+ cd cmake-build-benchmarks ; cmake ../benchmarks -GNinja -DCMAKE_BUILD_TYPE=Release -DJSON_BuildTests=On
+ cd cmake-build-benchmarks ; ninja
+ cd cmake-build-benchmarks ; ./json_benchmarks
-# The CMake executable.
-CMAKE_COMMAND = /usr/local/Cellar/cmake/3.24.2/bin/cmake
-# The command to remove a file.
-RM = /usr/local/Cellar/cmake/3.24.2/bin/cmake -E rm -f
+##########################################################################
+# fuzzing
+##########################################################################
-# Escaping for special characters.
-EQUALS = =
+# the overall fuzz testing target
+fuzz_testing:
+ rm -fr fuzz-testing
+ mkdir -p fuzz-testing fuzz-testing/testcases fuzz-testing/out
+ $(MAKE) parse_afl_fuzzer -C test CXX=afl-clang++
+ mv test/parse_afl_fuzzer fuzz-testing/fuzzer
+ find test/data/json_tests -size -5k -name *json | xargs -I{} cp "{}" fuzz-testing/testcases
+ @echo "Execute: afl-fuzz -i fuzz-testing/testcases -o fuzz-testing/out fuzz-testing/fuzzer"
-# The top-level source directory on which CMake was run.
-CMAKE_SOURCE_DIR = /Users/lucapassarella/Documents/projects/json
+fuzz_testing_bson:
+ rm -fr fuzz-testing
+ mkdir -p fuzz-testing fuzz-testing/testcases fuzz-testing/out
+ $(MAKE) parse_bson_fuzzer -C test CXX=afl-clang++
+ mv test/parse_bson_fuzzer fuzz-testing/fuzzer
+ find test/data -size -5k -name *.bson | xargs -I{} cp "{}" fuzz-testing/testcases
+ @echo "Execute: afl-fuzz -i fuzz-testing/testcases -o fuzz-testing/out fuzz-testing/fuzzer"
-# The top-level build directory on which CMake was run.
-CMAKE_BINARY_DIR = /Users/lucapassarella/Documents/projects/json
+fuzz_testing_cbor:
+ rm -fr fuzz-testing
+ mkdir -p fuzz-testing fuzz-testing/testcases fuzz-testing/out
+ $(MAKE) parse_cbor_fuzzer -C test CXX=afl-clang++
+ mv test/parse_cbor_fuzzer fuzz-testing/fuzzer
+ find test/data -size -5k -name *.cbor | xargs -I{} cp "{}" fuzz-testing/testcases
+ @echo "Execute: afl-fuzz -i fuzz-testing/testcases -o fuzz-testing/out fuzz-testing/fuzzer"
-#=============================================================================
-# Targets provided globally by CMake.
+fuzz_testing_msgpack:
+ rm -fr fuzz-testing
+ mkdir -p fuzz-testing fuzz-testing/testcases fuzz-testing/out
+ $(MAKE) parse_msgpack_fuzzer -C test CXX=afl-clang++
+ mv test/parse_msgpack_fuzzer fuzz-testing/fuzzer
+ find test/data -size -5k -name *.msgpack | xargs -I{} cp "{}" fuzz-testing/testcases
+ @echo "Execute: afl-fuzz -i fuzz-testing/testcases -o fuzz-testing/out fuzz-testing/fuzzer"
-# Special rule for the target test
-test:
- @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Running tests..."
- /usr/local/Cellar/cmake/3.24.2/bin/ctest --force-new-ctest-process $(ARGS)
-.PHONY : test
+fuzz_testing_ubjson:
+ rm -fr fuzz-testing
+ mkdir -p fuzz-testing fuzz-testing/testcases fuzz-testing/out
+ $(MAKE) parse_ubjson_fuzzer -C test CXX=afl-clang++
+ mv test/parse_ubjson_fuzzer fuzz-testing/fuzzer
+ find test/data -size -5k -name *.ubjson | xargs -I{} cp "{}" fuzz-testing/testcases
+ @echo "Execute: afl-fuzz -i fuzz-testing/testcases -o fuzz-testing/out fuzz-testing/fuzzer"
-# Special rule for the target test
-test/fast: test
-.PHONY : test/fast
+fuzzing-start:
+ afl-fuzz -S fuzzer1 -i fuzz-testing/testcases -o fuzz-testing/out fuzz-testing/fuzzer > /dev/null &
+ afl-fuzz -S fuzzer2 -i fuzz-testing/testcases -o fuzz-testing/out fuzz-testing/fuzzer > /dev/null &
+ afl-fuzz -S fuzzer3 -i fuzz-testing/testcases -o fuzz-testing/out fuzz-testing/fuzzer > /dev/null &
+ afl-fuzz -S fuzzer4 -i fuzz-testing/testcases -o fuzz-testing/out fuzz-testing/fuzzer > /dev/null &
+ afl-fuzz -S fuzzer5 -i fuzz-testing/testcases -o fuzz-testing/out fuzz-testing/fuzzer > /dev/null &
+ afl-fuzz -S fuzzer6 -i fuzz-testing/testcases -o fuzz-testing/out fuzz-testing/fuzzer > /dev/null &
+ afl-fuzz -S fuzzer7 -i fuzz-testing/testcases -o fuzz-testing/out fuzz-testing/fuzzer > /dev/null &
+ afl-fuzz -M fuzzer0 -i fuzz-testing/testcases -o fuzz-testing/out fuzz-testing/fuzzer
-# Special rule for the target edit_cache
-edit_cache:
- @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Running CMake cache editor..."
- /usr/local/Cellar/cmake/3.24.2/bin/ccmake -S$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR)
-.PHONY : edit_cache
+fuzzing-stop:
+ -killall fuzzer
+ -killall afl-fuzz
-# Special rule for the target edit_cache
-edit_cache/fast: edit_cache
-.PHONY : edit_cache/fast
-# Special rule for the target rebuild_cache
-rebuild_cache:
- @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Running CMake to regenerate build system..."
- /usr/local/Cellar/cmake/3.24.2/bin/cmake --regenerate-during-build -S$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR)
-.PHONY : rebuild_cache
+##########################################################################
+# Static analysis
+##########################################################################
-# Special rule for the target rebuild_cache
-rebuild_cache/fast: rebuild_cache
-.PHONY : rebuild_cache/fast
+# call PVS-Studio Analyzer
+pvs_studio:
+ rm -fr cmake-build-pvs-studio
+ mkdir cmake-build-pvs-studio
+ cd cmake-build-pvs-studio ; cmake .. -DCMAKE_EXPORT_COMPILE_COMMANDS=On -DJSON_MultipleHeaders=ON
+ cd cmake-build-pvs-studio ; pvs-studio-analyzer analyze -j 10
+ cd cmake-build-pvs-studio ; plog-converter -a'GA:1,2;64:1;CS' -t fullhtml PVS-Studio.log -o pvs
+ open cmake-build-pvs-studio/pvs/index.html
-# Special rule for the target list_install_components
-list_install_components:
- @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Available install components are: \"Unspecified\""
-.PHONY : list_install_components
-# Special rule for the target list_install_components
-list_install_components/fast: list_install_components
-.PHONY : list_install_components/fast
+##########################################################################
+# Code format and source amalgamation
+##########################################################################
-# Special rule for the target install
-install: preinstall
- @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Install the project..."
- /usr/local/Cellar/cmake/3.24.2/bin/cmake -P cmake_install.cmake
-.PHONY : install
+# call the Artistic Style pretty printer on all source files
+pretty:
+ astyle \
+ --style=allman \
+ --indent=spaces=4 \
+ --indent-modifiers \
+ --indent-switches \
+ --indent-preproc-block \
+ --indent-preproc-define \
+ --indent-col1-comments \
+ --pad-oper \
+ --pad-header \
+ --align-pointer=type \
+ --align-reference=type \
+ --add-brackets \
+ --convert-tabs \
+ --close-templates \
+ --lineend=linux \
+ --preserve-date \
+ --suffix=none \
+ --formatted \
+ $(SRCS) $(AMALGAMATED_FILE) test/src/*.cpp test/src/*.hpp benchmarks/src/benchmarks.cpp doc/examples/*.cpp
-# Special rule for the target install
-install/fast: preinstall/fast
- @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Install the project..."
- /usr/local/Cellar/cmake/3.24.2/bin/cmake -P cmake_install.cmake
-.PHONY : install/fast
+# call the Clang-Format on all source files
+pretty_format:
+ for FILE in $(SRCS) $(AMALGAMATED_FILE) test/src/*.cpp test/src/*.hpp benchmarks/src/benchmarks.cpp doc/examples/*.cpp; do echo $$FILE; clang-format -i $$FILE; done
-# Special rule for the target install/local
-install/local: preinstall
- @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Installing only the local directory..."
- /usr/local/Cellar/cmake/3.24.2/bin/cmake -DCMAKE_INSTALL_LOCAL_ONLY=1 -P cmake_install.cmake
-.PHONY : install/local
+# create single header file
+amalgamate: $(AMALGAMATED_FILE)
-# Special rule for the target install/local
-install/local/fast: preinstall/fast
- @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Installing only the local directory..."
- /usr/local/Cellar/cmake/3.24.2/bin/cmake -DCMAKE_INSTALL_LOCAL_ONLY=1 -P cmake_install.cmake
-.PHONY : install/local/fast
+# call the amalgamation tool and pretty print
+$(AMALGAMATED_FILE): $(SRCS)
+ third_party/amalgamate/amalgamate.py -c third_party/amalgamate/config.json -s . --verbose=yes
+ $(MAKE) pretty
-# Special rule for the target install/strip
-install/strip: preinstall
- @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Installing the project stripped..."
- /usr/local/Cellar/cmake/3.24.2/bin/cmake -DCMAKE_INSTALL_DO_STRIP=1 -P cmake_install.cmake
-.PHONY : install/strip
+# check if file single_include/nlohmann/json.hpp has been amalgamated from the nlohmann sources
+# Note: this target is called by Travis
+check-amalgamation:
+ @mv $(AMALGAMATED_FILE) $(AMALGAMATED_FILE)~
+ @$(MAKE) amalgamate
+ @diff $(AMALGAMATED_FILE) $(AMALGAMATED_FILE)~ || (echo "===================================================================\n Amalgamation required! Please read the contribution guidelines\n in file .github/CONTRIBUTING.md.\n===================================================================" ; mv $(AMALGAMATED_FILE)~ $(AMALGAMATED_FILE) ; false)
+ @mv $(AMALGAMATED_FILE)~ $(AMALGAMATED_FILE)
-# Special rule for the target install/strip
-install/strip/fast: preinstall/fast
- @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Installing the project stripped..."
- /usr/local/Cellar/cmake/3.24.2/bin/cmake -DCMAKE_INSTALL_DO_STRIP=1 -P cmake_install.cmake
-.PHONY : install/strip/fast
-# The main all target
-all: cmake_check_build_system
- $(CMAKE_COMMAND) -E cmake_progress_start /Users/lucapassarella/Documents/projects/json/CMakeFiles /Users/lucapassarella/Documents/projects/json//CMakeFiles/progress.marks
- $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 all
- $(CMAKE_COMMAND) -E cmake_progress_start /Users/lucapassarella/Documents/projects/json/CMakeFiles 0
-.PHONY : all
+##########################################################################
+# ChangeLog
+##########################################################################
-# The main clean target
+# Create a ChangeLog based on the git log using the GitHub Changelog Generator
+# ().
+
+# variable to control the diffs between the last released version and the current repository state
+NEXT_VERSION ?= "unreleased"
+
+ChangeLog.md:
+ github_changelog_generator -o ChangeLog.md --user nlohmann --project json --simple-list --release-url https://github.com/nlohmann/json/releases/tag/%s --future-release $(NEXT_VERSION)
+ $(SED) -i 's|https://github.com/nlohmann/json/releases/tag/HEAD|https://github.com/nlohmann/json/tree/HEAD|' ChangeLog.md
+ $(SED) -i '2i All notable changes to this project will be documented in this file. This project adheres to [Semantic Versioning](http://semver.org/).' ChangeLog.md
+
+
+##########################################################################
+# Release files
+##########################################################################
+
+# Create a tar.gz archive that contains sufficient files to be used as CMake project (e.g., using FetchContent). The
+# archive is created according to the advices of .
+json.tar.xz:
+ mkdir json
+ rsync -R $(shell find LICENSE.MIT nlohmann_json.natvis CMakeLists.txt cmake/*.in include single_include -type f) json
+ gtar --sort=name --mtime="@$(shell git log -1 --pretty=%ct)" --owner=0 --group=0 --numeric-owner --pax-option=exthdr.name=%d/PaxHeaders/%f,delete=atime,delete=ctime --create --file - json | xz --compress -9e --threads=2 - > json.tar.xz
+ rm -fr json
+
+# We use `-X` to make the resulting ZIP file reproducible, see
+# .
+include.zip:
+ zip -9 --recurse-paths -X include.zip $(SRCS) $(AMALGAMATED_FILE) meson.build LICENSE.MIT
+
+# Create the files for a release and add signatures and hashes.
+release: include.zip json.tar.xz
+ rm -fr release_files
+ mkdir release_files
+ gpg --armor --detach-sig include.zip
+ gpg --armor --detach-sig $(AMALGAMATED_FILE)
+ gpg --armor --detach-sig json.tar.xz
+ cp $(AMALGAMATED_FILE) release_files
+ mv $(AMALGAMATED_FILE).asc json.tar.xz json.tar.xz.asc include.zip include.zip.asc release_files
+ cd release_files ; shasum -a 256 json.hpp include.zip json.tar.xz > hashes.txt
+
+
+##########################################################################
+# Maintenance
+##########################################################################
+
+# clean up
clean:
- $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 clean
-.PHONY : clean
-
-# The main clean target
-clean/fast: clean
-.PHONY : clean/fast
-
-# Prepare targets for installation.
-preinstall: all
- $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 preinstall
-.PHONY : preinstall
-
-# Prepare targets for installation.
-preinstall/fast:
- $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 preinstall
-.PHONY : preinstall/fast
-
-# clear depends
-depend:
- $(CMAKE_COMMAND) -S$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) --check-build-system CMakeFiles/Makefile.cmake 1
-.PHONY : depend
-
-#=============================================================================
-# Target rules for targets named Experimental
-
-# Build rule for target.
-Experimental: cmake_check_build_system
- $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 Experimental
-.PHONY : Experimental
-
-# fast build rule for target.
-Experimental/fast:
- $(MAKE) $(MAKESILENT) -f CMakeFiles/Experimental.dir/build.make CMakeFiles/Experimental.dir/build
-.PHONY : Experimental/fast
-
-#=============================================================================
-# Target rules for targets named Nightly
-
-# Build rule for target.
-Nightly: cmake_check_build_system
- $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 Nightly
-.PHONY : Nightly
-
-# fast build rule for target.
-Nightly/fast:
- $(MAKE) $(MAKESILENT) -f CMakeFiles/Nightly.dir/build.make CMakeFiles/Nightly.dir/build
-.PHONY : Nightly/fast
-
-#=============================================================================
-# Target rules for targets named Continuous
-
-# Build rule for target.
-Continuous: cmake_check_build_system
- $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 Continuous
-.PHONY : Continuous
-
-# fast build rule for target.
-Continuous/fast:
- $(MAKE) $(MAKESILENT) -f CMakeFiles/Continuous.dir/build.make CMakeFiles/Continuous.dir/build
-.PHONY : Continuous/fast
-
-#=============================================================================
-# Target rules for targets named NightlyMemoryCheck
-
-# Build rule for target.
-NightlyMemoryCheck: cmake_check_build_system
- $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 NightlyMemoryCheck
-.PHONY : NightlyMemoryCheck
-
-# fast build rule for target.
-NightlyMemoryCheck/fast:
- $(MAKE) $(MAKESILENT) -f CMakeFiles/NightlyMemoryCheck.dir/build.make CMakeFiles/NightlyMemoryCheck.dir/build
-.PHONY : NightlyMemoryCheck/fast
-
-#=============================================================================
-# Target rules for targets named NightlyStart
-
-# Build rule for target.
-NightlyStart: cmake_check_build_system
- $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 NightlyStart
-.PHONY : NightlyStart
-
-# fast build rule for target.
-NightlyStart/fast:
- $(MAKE) $(MAKESILENT) -f CMakeFiles/NightlyStart.dir/build.make CMakeFiles/NightlyStart.dir/build
-.PHONY : NightlyStart/fast
-
-#=============================================================================
-# Target rules for targets named NightlyUpdate
-
-# Build rule for target.
-NightlyUpdate: cmake_check_build_system
- $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 NightlyUpdate
-.PHONY : NightlyUpdate
-
-# fast build rule for target.
-NightlyUpdate/fast:
- $(MAKE) $(MAKESILENT) -f CMakeFiles/NightlyUpdate.dir/build.make CMakeFiles/NightlyUpdate.dir/build
-.PHONY : NightlyUpdate/fast
-
-#=============================================================================
-# Target rules for targets named NightlyConfigure
-
-# Build rule for target.
-NightlyConfigure: cmake_check_build_system
- $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 NightlyConfigure
-.PHONY : NightlyConfigure
-
-# fast build rule for target.
-NightlyConfigure/fast:
- $(MAKE) $(MAKESILENT) -f CMakeFiles/NightlyConfigure.dir/build.make CMakeFiles/NightlyConfigure.dir/build
-.PHONY : NightlyConfigure/fast
-
-#=============================================================================
-# Target rules for targets named NightlyBuild
-
-# Build rule for target.
-NightlyBuild: cmake_check_build_system
- $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 NightlyBuild
-.PHONY : NightlyBuild
-
-# fast build rule for target.
-NightlyBuild/fast:
- $(MAKE) $(MAKESILENT) -f CMakeFiles/NightlyBuild.dir/build.make CMakeFiles/NightlyBuild.dir/build
-.PHONY : NightlyBuild/fast
-
-#=============================================================================
-# Target rules for targets named NightlyTest
-
-# Build rule for target.
-NightlyTest: cmake_check_build_system
- $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 NightlyTest
-.PHONY : NightlyTest
-
-# fast build rule for target.
-NightlyTest/fast:
- $(MAKE) $(MAKESILENT) -f CMakeFiles/NightlyTest.dir/build.make CMakeFiles/NightlyTest.dir/build
-.PHONY : NightlyTest/fast
-
-#=============================================================================
-# Target rules for targets named NightlyCoverage
-
-# Build rule for target.
-NightlyCoverage: cmake_check_build_system
- $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 NightlyCoverage
-.PHONY : NightlyCoverage
-
-# fast build rule for target.
-NightlyCoverage/fast:
- $(MAKE) $(MAKESILENT) -f CMakeFiles/NightlyCoverage.dir/build.make CMakeFiles/NightlyCoverage.dir/build
-.PHONY : NightlyCoverage/fast
-
-#=============================================================================
-# Target rules for targets named NightlyMemCheck
-
-# Build rule for target.
-NightlyMemCheck: cmake_check_build_system
- $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 NightlyMemCheck
-.PHONY : NightlyMemCheck
-
-# fast build rule for target.
-NightlyMemCheck/fast:
- $(MAKE) $(MAKESILENT) -f CMakeFiles/NightlyMemCheck.dir/build.make CMakeFiles/NightlyMemCheck.dir/build
-.PHONY : NightlyMemCheck/fast
-
-#=============================================================================
-# Target rules for targets named NightlySubmit
-
-# Build rule for target.
-NightlySubmit: cmake_check_build_system
- $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 NightlySubmit
-.PHONY : NightlySubmit
-
-# fast build rule for target.
-NightlySubmit/fast:
- $(MAKE) $(MAKESILENT) -f CMakeFiles/NightlySubmit.dir/build.make CMakeFiles/NightlySubmit.dir/build
-.PHONY : NightlySubmit/fast
-
-#=============================================================================
-# Target rules for targets named ExperimentalStart
-
-# Build rule for target.
-ExperimentalStart: cmake_check_build_system
- $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 ExperimentalStart
-.PHONY : ExperimentalStart
-
-# fast build rule for target.
-ExperimentalStart/fast:
- $(MAKE) $(MAKESILENT) -f CMakeFiles/ExperimentalStart.dir/build.make CMakeFiles/ExperimentalStart.dir/build
-.PHONY : ExperimentalStart/fast
-
-#=============================================================================
-# Target rules for targets named ExperimentalUpdate
-
-# Build rule for target.
-ExperimentalUpdate: cmake_check_build_system
- $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 ExperimentalUpdate
-.PHONY : ExperimentalUpdate
-
-# fast build rule for target.
-ExperimentalUpdate/fast:
- $(MAKE) $(MAKESILENT) -f CMakeFiles/ExperimentalUpdate.dir/build.make CMakeFiles/ExperimentalUpdate.dir/build
-.PHONY : ExperimentalUpdate/fast
-
-#=============================================================================
-# Target rules for targets named ExperimentalConfigure
-
-# Build rule for target.
-ExperimentalConfigure: cmake_check_build_system
- $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 ExperimentalConfigure
-.PHONY : ExperimentalConfigure
-
-# fast build rule for target.
-ExperimentalConfigure/fast:
- $(MAKE) $(MAKESILENT) -f CMakeFiles/ExperimentalConfigure.dir/build.make CMakeFiles/ExperimentalConfigure.dir/build
-.PHONY : ExperimentalConfigure/fast
-
-#=============================================================================
-# Target rules for targets named ExperimentalBuild
-
-# Build rule for target.
-ExperimentalBuild: cmake_check_build_system
- $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 ExperimentalBuild
-.PHONY : ExperimentalBuild
-
-# fast build rule for target.
-ExperimentalBuild/fast:
- $(MAKE) $(MAKESILENT) -f CMakeFiles/ExperimentalBuild.dir/build.make CMakeFiles/ExperimentalBuild.dir/build
-.PHONY : ExperimentalBuild/fast
-
-#=============================================================================
-# Target rules for targets named ExperimentalTest
-
-# Build rule for target.
-ExperimentalTest: cmake_check_build_system
- $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 ExperimentalTest
-.PHONY : ExperimentalTest
-
-# fast build rule for target.
-ExperimentalTest/fast:
- $(MAKE) $(MAKESILENT) -f CMakeFiles/ExperimentalTest.dir/build.make CMakeFiles/ExperimentalTest.dir/build
-.PHONY : ExperimentalTest/fast
-
-#=============================================================================
-# Target rules for targets named ExperimentalCoverage
-
-# Build rule for target.
-ExperimentalCoverage: cmake_check_build_system
- $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 ExperimentalCoverage
-.PHONY : ExperimentalCoverage
-
-# fast build rule for target.
-ExperimentalCoverage/fast:
- $(MAKE) $(MAKESILENT) -f CMakeFiles/ExperimentalCoverage.dir/build.make CMakeFiles/ExperimentalCoverage.dir/build
-.PHONY : ExperimentalCoverage/fast
-
-#=============================================================================
-# Target rules for targets named ExperimentalMemCheck
-
-# Build rule for target.
-ExperimentalMemCheck: cmake_check_build_system
- $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 ExperimentalMemCheck
-.PHONY : ExperimentalMemCheck
-
-# fast build rule for target.
-ExperimentalMemCheck/fast:
- $(MAKE) $(MAKESILENT) -f CMakeFiles/ExperimentalMemCheck.dir/build.make CMakeFiles/ExperimentalMemCheck.dir/build
-.PHONY : ExperimentalMemCheck/fast
-
-#=============================================================================
-# Target rules for targets named ExperimentalSubmit
-
-# Build rule for target.
-ExperimentalSubmit: cmake_check_build_system
- $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 ExperimentalSubmit
-.PHONY : ExperimentalSubmit
-
-# fast build rule for target.
-ExperimentalSubmit/fast:
- $(MAKE) $(MAKESILENT) -f CMakeFiles/ExperimentalSubmit.dir/build.make CMakeFiles/ExperimentalSubmit.dir/build
-.PHONY : ExperimentalSubmit/fast
-
-#=============================================================================
-# Target rules for targets named ContinuousStart
-
-# Build rule for target.
-ContinuousStart: cmake_check_build_system
- $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 ContinuousStart
-.PHONY : ContinuousStart
-
-# fast build rule for target.
-ContinuousStart/fast:
- $(MAKE) $(MAKESILENT) -f CMakeFiles/ContinuousStart.dir/build.make CMakeFiles/ContinuousStart.dir/build
-.PHONY : ContinuousStart/fast
-
-#=============================================================================
-# Target rules for targets named ContinuousUpdate
-
-# Build rule for target.
-ContinuousUpdate: cmake_check_build_system
- $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 ContinuousUpdate
-.PHONY : ContinuousUpdate
-
-# fast build rule for target.
-ContinuousUpdate/fast:
- $(MAKE) $(MAKESILENT) -f CMakeFiles/ContinuousUpdate.dir/build.make CMakeFiles/ContinuousUpdate.dir/build
-.PHONY : ContinuousUpdate/fast
-
-#=============================================================================
-# Target rules for targets named ContinuousConfigure
-
-# Build rule for target.
-ContinuousConfigure: cmake_check_build_system
- $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 ContinuousConfigure
-.PHONY : ContinuousConfigure
-
-# fast build rule for target.
-ContinuousConfigure/fast:
- $(MAKE) $(MAKESILENT) -f CMakeFiles/ContinuousConfigure.dir/build.make CMakeFiles/ContinuousConfigure.dir/build
-.PHONY : ContinuousConfigure/fast
-
-#=============================================================================
-# Target rules for targets named ContinuousBuild
-
-# Build rule for target.
-ContinuousBuild: cmake_check_build_system
- $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 ContinuousBuild
-.PHONY : ContinuousBuild
-
-# fast build rule for target.
-ContinuousBuild/fast:
- $(MAKE) $(MAKESILENT) -f CMakeFiles/ContinuousBuild.dir/build.make CMakeFiles/ContinuousBuild.dir/build
-.PHONY : ContinuousBuild/fast
-
-#=============================================================================
-# Target rules for targets named ContinuousTest
-
-# Build rule for target.
-ContinuousTest: cmake_check_build_system
- $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 ContinuousTest
-.PHONY : ContinuousTest
-
-# fast build rule for target.
-ContinuousTest/fast:
- $(MAKE) $(MAKESILENT) -f CMakeFiles/ContinuousTest.dir/build.make CMakeFiles/ContinuousTest.dir/build
-.PHONY : ContinuousTest/fast
-
-#=============================================================================
-# Target rules for targets named ContinuousCoverage
-
-# Build rule for target.
-ContinuousCoverage: cmake_check_build_system
- $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 ContinuousCoverage
-.PHONY : ContinuousCoverage
-
-# fast build rule for target.
-ContinuousCoverage/fast:
- $(MAKE) $(MAKESILENT) -f CMakeFiles/ContinuousCoverage.dir/build.make CMakeFiles/ContinuousCoverage.dir/build
-.PHONY : ContinuousCoverage/fast
-
-#=============================================================================
-# Target rules for targets named ContinuousMemCheck
-
-# Build rule for target.
-ContinuousMemCheck: cmake_check_build_system
- $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 ContinuousMemCheck
-.PHONY : ContinuousMemCheck
-
-# fast build rule for target.
-ContinuousMemCheck/fast:
- $(MAKE) $(MAKESILENT) -f CMakeFiles/ContinuousMemCheck.dir/build.make CMakeFiles/ContinuousMemCheck.dir/build
-.PHONY : ContinuousMemCheck/fast
-
-#=============================================================================
-# Target rules for targets named ContinuousSubmit
-
-# Build rule for target.
-ContinuousSubmit: cmake_check_build_system
- $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 ContinuousSubmit
-.PHONY : ContinuousSubmit
-
-# fast build rule for target.
-ContinuousSubmit/fast:
- $(MAKE) $(MAKESILENT) -f CMakeFiles/ContinuousSubmit.dir/build.make CMakeFiles/ContinuousSubmit.dir/build
-.PHONY : ContinuousSubmit/fast
-
-#=============================================================================
-# Target rules for targets named download_test_data
-
-# Build rule for target.
-download_test_data: cmake_check_build_system
- $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 download_test_data
-.PHONY : download_test_data
-
-# fast build rule for target.
-download_test_data/fast:
- $(MAKE) $(MAKESILENT) -f test/CMakeFiles/download_test_data.dir/build.make test/CMakeFiles/download_test_data.dir/build
-.PHONY : download_test_data/fast
-
-#=============================================================================
-# Target rules for targets named test_main
-
-# Build rule for target.
-test_main: cmake_check_build_system
- $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 test_main
-.PHONY : test_main
-
-# fast build rule for target.
-test_main/fast:
- $(MAKE) $(MAKESILENT) -f test/CMakeFiles/test_main.dir/build.make test/CMakeFiles/test_main.dir/build
-.PHONY : test_main/fast
-
-#=============================================================================
-# Target rules for targets named test-algorithms_cpp11
-
-# Build rule for target.
-test-algorithms_cpp11: cmake_check_build_system
- $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 test-algorithms_cpp11
-.PHONY : test-algorithms_cpp11
-
-# fast build rule for target.
-test-algorithms_cpp11/fast:
- $(MAKE) $(MAKESILENT) -f test/CMakeFiles/test-algorithms_cpp11.dir/build.make test/CMakeFiles/test-algorithms_cpp11.dir/build
-.PHONY : test-algorithms_cpp11/fast
-
-#=============================================================================
-# Target rules for targets named test-allocator_cpp11
-
-# Build rule for target.
-test-allocator_cpp11: cmake_check_build_system
- $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 test-allocator_cpp11
-.PHONY : test-allocator_cpp11
-
-# fast build rule for target.
-test-allocator_cpp11/fast:
- $(MAKE) $(MAKESILENT) -f test/CMakeFiles/test-allocator_cpp11.dir/build.make test/CMakeFiles/test-allocator_cpp11.dir/build
-.PHONY : test-allocator_cpp11/fast
-
-#=============================================================================
-# Target rules for targets named test-alt-string_cpp11
-
-# Build rule for target.
-test-alt-string_cpp11: cmake_check_build_system
- $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 test-alt-string_cpp11
-.PHONY : test-alt-string_cpp11
-
-# fast build rule for target.
-test-alt-string_cpp11/fast:
- $(MAKE) $(MAKESILENT) -f test/CMakeFiles/test-alt-string_cpp11.dir/build.make test/CMakeFiles/test-alt-string_cpp11.dir/build
-.PHONY : test-alt-string_cpp11/fast
-
-#=============================================================================
-# Target rules for targets named test-assert_macro_cpp11
-
-# Build rule for target.
-test-assert_macro_cpp11: cmake_check_build_system
- $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 test-assert_macro_cpp11
-.PHONY : test-assert_macro_cpp11
-
-# fast build rule for target.
-test-assert_macro_cpp11/fast:
- $(MAKE) $(MAKESILENT) -f test/CMakeFiles/test-assert_macro_cpp11.dir/build.make test/CMakeFiles/test-assert_macro_cpp11.dir/build
-.PHONY : test-assert_macro_cpp11/fast
-
-#=============================================================================
-# Target rules for targets named test-bson_cpp11
-
-# Build rule for target.
-test-bson_cpp11: cmake_check_build_system
- $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 test-bson_cpp11
-.PHONY : test-bson_cpp11
-
-# fast build rule for target.
-test-bson_cpp11/fast:
- $(MAKE) $(MAKESILENT) -f test/CMakeFiles/test-bson_cpp11.dir/build.make test/CMakeFiles/test-bson_cpp11.dir/build
-.PHONY : test-bson_cpp11/fast
-
-#=============================================================================
-# Target rules for targets named test-byte_container_with_subtype_cpp11
-
-# Build rule for target.
-test-byte_container_with_subtype_cpp11: cmake_check_build_system
- $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 test-byte_container_with_subtype_cpp11
-.PHONY : test-byte_container_with_subtype_cpp11
-
-# fast build rule for target.
-test-byte_container_with_subtype_cpp11/fast:
- $(MAKE) $(MAKESILENT) -f test/CMakeFiles/test-byte_container_with_subtype_cpp11.dir/build.make test/CMakeFiles/test-byte_container_with_subtype_cpp11.dir/build
-.PHONY : test-byte_container_with_subtype_cpp11/fast
-
-#=============================================================================
-# Target rules for targets named test-capacity_cpp11
-
-# Build rule for target.
-test-capacity_cpp11: cmake_check_build_system
- $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 test-capacity_cpp11
-.PHONY : test-capacity_cpp11
-
-# fast build rule for target.
-test-capacity_cpp11/fast:
- $(MAKE) $(MAKESILENT) -f test/CMakeFiles/test-capacity_cpp11.dir/build.make test/CMakeFiles/test-capacity_cpp11.dir/build
-.PHONY : test-capacity_cpp11/fast
-
-#=============================================================================
-# Target rules for targets named test-cbor_cpp11
-
-# Build rule for target.
-test-cbor_cpp11: cmake_check_build_system
- $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 test-cbor_cpp11
-.PHONY : test-cbor_cpp11
-
-# fast build rule for target.
-test-cbor_cpp11/fast:
- $(MAKE) $(MAKESILENT) -f test/CMakeFiles/test-cbor_cpp11.dir/build.make test/CMakeFiles/test-cbor_cpp11.dir/build
-.PHONY : test-cbor_cpp11/fast
-
-#=============================================================================
-# Target rules for targets named test-class_const_iterator_cpp11
-
-# Build rule for target.
-test-class_const_iterator_cpp11: cmake_check_build_system
- $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 test-class_const_iterator_cpp11
-.PHONY : test-class_const_iterator_cpp11
-
-# fast build rule for target.
-test-class_const_iterator_cpp11/fast:
- $(MAKE) $(MAKESILENT) -f test/CMakeFiles/test-class_const_iterator_cpp11.dir/build.make test/CMakeFiles/test-class_const_iterator_cpp11.dir/build
-.PHONY : test-class_const_iterator_cpp11/fast
-
-#=============================================================================
-# Target rules for targets named test-class_iterator_cpp11
-
-# Build rule for target.
-test-class_iterator_cpp11: cmake_check_build_system
- $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 test-class_iterator_cpp11
-.PHONY : test-class_iterator_cpp11
-
-# fast build rule for target.
-test-class_iterator_cpp11/fast:
- $(MAKE) $(MAKESILENT) -f test/CMakeFiles/test-class_iterator_cpp11.dir/build.make test/CMakeFiles/test-class_iterator_cpp11.dir/build
-.PHONY : test-class_iterator_cpp11/fast
-
-#=============================================================================
-# Target rules for targets named test-class_lexer_cpp11
-
-# Build rule for target.
-test-class_lexer_cpp11: cmake_check_build_system
- $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 test-class_lexer_cpp11
-.PHONY : test-class_lexer_cpp11
-
-# fast build rule for target.
-test-class_lexer_cpp11/fast:
- $(MAKE) $(MAKESILENT) -f test/CMakeFiles/test-class_lexer_cpp11.dir/build.make test/CMakeFiles/test-class_lexer_cpp11.dir/build
-.PHONY : test-class_lexer_cpp11/fast
-
-#=============================================================================
-# Target rules for targets named test-class_parser_cpp11
-
-# Build rule for target.
-test-class_parser_cpp11: cmake_check_build_system
- $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 test-class_parser_cpp11
-.PHONY : test-class_parser_cpp11
-
-# fast build rule for target.
-test-class_parser_cpp11/fast:
- $(MAKE) $(MAKESILENT) -f test/CMakeFiles/test-class_parser_cpp11.dir/build.make test/CMakeFiles/test-class_parser_cpp11.dir/build
-.PHONY : test-class_parser_cpp11/fast
-
-#=============================================================================
-# Target rules for targets named test-comparison_cpp11
-
-# Build rule for target.
-test-comparison_cpp11: cmake_check_build_system
- $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 test-comparison_cpp11
-.PHONY : test-comparison_cpp11
-
-# fast build rule for target.
-test-comparison_cpp11/fast:
- $(MAKE) $(MAKESILENT) -f test/CMakeFiles/test-comparison_cpp11.dir/build.make test/CMakeFiles/test-comparison_cpp11.dir/build
-.PHONY : test-comparison_cpp11/fast
-
-#=============================================================================
-# Target rules for targets named test-comparison_cpp20
-
-# Build rule for target.
-test-comparison_cpp20: cmake_check_build_system
- $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 test-comparison_cpp20
-.PHONY : test-comparison_cpp20
-
-# fast build rule for target.
-test-comparison_cpp20/fast:
- $(MAKE) $(MAKESILENT) -f test/CMakeFiles/test-comparison_cpp20.dir/build.make test/CMakeFiles/test-comparison_cpp20.dir/build
-.PHONY : test-comparison_cpp20/fast
-
-#=============================================================================
-# Target rules for targets named test-concepts_cpp11
-
-# Build rule for target.
-test-concepts_cpp11: cmake_check_build_system
- $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 test-concepts_cpp11
-.PHONY : test-concepts_cpp11
-
-# fast build rule for target.
-test-concepts_cpp11/fast:
- $(MAKE) $(MAKESILENT) -f test/CMakeFiles/test-concepts_cpp11.dir/build.make test/CMakeFiles/test-concepts_cpp11.dir/build
-.PHONY : test-concepts_cpp11/fast
-
-#=============================================================================
-# Target rules for targets named test-constructor1_cpp11
-
-# Build rule for target.
-test-constructor1_cpp11: cmake_check_build_system
- $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 test-constructor1_cpp11
-.PHONY : test-constructor1_cpp11
-
-# fast build rule for target.
-test-constructor1_cpp11/fast:
- $(MAKE) $(MAKESILENT) -f test/CMakeFiles/test-constructor1_cpp11.dir/build.make test/CMakeFiles/test-constructor1_cpp11.dir/build
-.PHONY : test-constructor1_cpp11/fast
-
-#=============================================================================
-# Target rules for targets named test-constructor2_cpp11
-
-# Build rule for target.
-test-constructor2_cpp11: cmake_check_build_system
- $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 test-constructor2_cpp11
-.PHONY : test-constructor2_cpp11
-
-# fast build rule for target.
-test-constructor2_cpp11/fast:
- $(MAKE) $(MAKESILENT) -f test/CMakeFiles/test-constructor2_cpp11.dir/build.make test/CMakeFiles/test-constructor2_cpp11.dir/build
-.PHONY : test-constructor2_cpp11/fast
-
-#=============================================================================
-# Target rules for targets named test-convenience_cpp11
-
-# Build rule for target.
-test-convenience_cpp11: cmake_check_build_system
- $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 test-convenience_cpp11
-.PHONY : test-convenience_cpp11
-
-# fast build rule for target.
-test-convenience_cpp11/fast:
- $(MAKE) $(MAKESILENT) -f test/CMakeFiles/test-convenience_cpp11.dir/build.make test/CMakeFiles/test-convenience_cpp11.dir/build
-.PHONY : test-convenience_cpp11/fast
-
-#=============================================================================
-# Target rules for targets named test-conversions_cpp11
-
-# Build rule for target.
-test-conversions_cpp11: cmake_check_build_system
- $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 test-conversions_cpp11
-.PHONY : test-conversions_cpp11
-
-# fast build rule for target.
-test-conversions_cpp11/fast:
- $(MAKE) $(MAKESILENT) -f test/CMakeFiles/test-conversions_cpp11.dir/build.make test/CMakeFiles/test-conversions_cpp11.dir/build
-.PHONY : test-conversions_cpp11/fast
-
-#=============================================================================
-# Target rules for targets named test-conversions_cpp14
-
-# Build rule for target.
-test-conversions_cpp14: cmake_check_build_system
- $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 test-conversions_cpp14
-.PHONY : test-conversions_cpp14
-
-# fast build rule for target.
-test-conversions_cpp14/fast:
- $(MAKE) $(MAKESILENT) -f test/CMakeFiles/test-conversions_cpp14.dir/build.make test/CMakeFiles/test-conversions_cpp14.dir/build
-.PHONY : test-conversions_cpp14/fast
-
-#=============================================================================
-# Target rules for targets named test-conversions_cpp17
-
-# Build rule for target.
-test-conversions_cpp17: cmake_check_build_system
- $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 test-conversions_cpp17
-.PHONY : test-conversions_cpp17
-
-# fast build rule for target.
-test-conversions_cpp17/fast:
- $(MAKE) $(MAKESILENT) -f test/CMakeFiles/test-conversions_cpp17.dir/build.make test/CMakeFiles/test-conversions_cpp17.dir/build
-.PHONY : test-conversions_cpp17/fast
-
-#=============================================================================
-# Target rules for targets named test-deserialization_cpp11
-
-# Build rule for target.
-test-deserialization_cpp11: cmake_check_build_system
- $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 test-deserialization_cpp11
-.PHONY : test-deserialization_cpp11
-
-# fast build rule for target.
-test-deserialization_cpp11/fast:
- $(MAKE) $(MAKESILENT) -f test/CMakeFiles/test-deserialization_cpp11.dir/build.make test/CMakeFiles/test-deserialization_cpp11.dir/build
-.PHONY : test-deserialization_cpp11/fast
-
-#=============================================================================
-# Target rules for targets named test-diagnostics_cpp11
-
-# Build rule for target.
-test-diagnostics_cpp11: cmake_check_build_system
- $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 test-diagnostics_cpp11
-.PHONY : test-diagnostics_cpp11
-
-# fast build rule for target.
-test-diagnostics_cpp11/fast:
- $(MAKE) $(MAKESILENT) -f test/CMakeFiles/test-diagnostics_cpp11.dir/build.make test/CMakeFiles/test-diagnostics_cpp11.dir/build
-.PHONY : test-diagnostics_cpp11/fast
-
-#=============================================================================
-# Target rules for targets named test-disabled_exceptions_cpp11
-
-# Build rule for target.
-test-disabled_exceptions_cpp11: cmake_check_build_system
- $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 test-disabled_exceptions_cpp11
-.PHONY : test-disabled_exceptions_cpp11
-
-# fast build rule for target.
-test-disabled_exceptions_cpp11/fast:
- $(MAKE) $(MAKESILENT) -f test/CMakeFiles/test-disabled_exceptions_cpp11.dir/build.make test/CMakeFiles/test-disabled_exceptions_cpp11.dir/build
-.PHONY : test-disabled_exceptions_cpp11/fast
-
-#=============================================================================
-# Target rules for targets named test-element_access1_cpp11
-
-# Build rule for target.
-test-element_access1_cpp11: cmake_check_build_system
- $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 test-element_access1_cpp11
-.PHONY : test-element_access1_cpp11
-
-# fast build rule for target.
-test-element_access1_cpp11/fast:
- $(MAKE) $(MAKESILENT) -f test/CMakeFiles/test-element_access1_cpp11.dir/build.make test/CMakeFiles/test-element_access1_cpp11.dir/build
-.PHONY : test-element_access1_cpp11/fast
-
-#=============================================================================
-# Target rules for targets named test-element_access2_cpp11
-
-# Build rule for target.
-test-element_access2_cpp11: cmake_check_build_system
- $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 test-element_access2_cpp11
-.PHONY : test-element_access2_cpp11
-
-# fast build rule for target.
-test-element_access2_cpp11/fast:
- $(MAKE) $(MAKESILENT) -f test/CMakeFiles/test-element_access2_cpp11.dir/build.make test/CMakeFiles/test-element_access2_cpp11.dir/build
-.PHONY : test-element_access2_cpp11/fast
-
-#=============================================================================
-# Target rules for targets named test-hash_cpp11
-
-# Build rule for target.
-test-hash_cpp11: cmake_check_build_system
- $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 test-hash_cpp11
-.PHONY : test-hash_cpp11
-
-# fast build rule for target.
-test-hash_cpp11/fast:
- $(MAKE) $(MAKESILENT) -f test/CMakeFiles/test-hash_cpp11.dir/build.make test/CMakeFiles/test-hash_cpp11.dir/build
-.PHONY : test-hash_cpp11/fast
-
-#=============================================================================
-# Target rules for targets named test-inspection_cpp11
-
-# Build rule for target.
-test-inspection_cpp11: cmake_check_build_system
- $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 test-inspection_cpp11
-.PHONY : test-inspection_cpp11
-
-# fast build rule for target.
-test-inspection_cpp11/fast:
- $(MAKE) $(MAKESILENT) -f test/CMakeFiles/test-inspection_cpp11.dir/build.make test/CMakeFiles/test-inspection_cpp11.dir/build
-.PHONY : test-inspection_cpp11/fast
-
-#=============================================================================
-# Target rules for targets named test-items_cpp11
-
-# Build rule for target.
-test-items_cpp11: cmake_check_build_system
- $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 test-items_cpp11
-.PHONY : test-items_cpp11
-
-# fast build rule for target.
-test-items_cpp11/fast:
- $(MAKE) $(MAKESILENT) -f test/CMakeFiles/test-items_cpp11.dir/build.make test/CMakeFiles/test-items_cpp11.dir/build
-.PHONY : test-items_cpp11/fast
-
-#=============================================================================
-# Target rules for targets named test-items_cpp14
-
-# Build rule for target.
-test-items_cpp14: cmake_check_build_system
- $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 test-items_cpp14
-.PHONY : test-items_cpp14
-
-# fast build rule for target.
-test-items_cpp14/fast:
- $(MAKE) $(MAKESILENT) -f test/CMakeFiles/test-items_cpp14.dir/build.make test/CMakeFiles/test-items_cpp14.dir/build
-.PHONY : test-items_cpp14/fast
-
-#=============================================================================
-# Target rules for targets named test-items_cpp17
-
-# Build rule for target.
-test-items_cpp17: cmake_check_build_system
- $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 test-items_cpp17
-.PHONY : test-items_cpp17
-
-# fast build rule for target.
-test-items_cpp17/fast:
- $(MAKE) $(MAKESILENT) -f test/CMakeFiles/test-items_cpp17.dir/build.make test/CMakeFiles/test-items_cpp17.dir/build
-.PHONY : test-items_cpp17/fast
-
-#=============================================================================
-# Target rules for targets named test-iterators1_cpp11
-
-# Build rule for target.
-test-iterators1_cpp11: cmake_check_build_system
- $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 test-iterators1_cpp11
-.PHONY : test-iterators1_cpp11
-
-# fast build rule for target.
-test-iterators1_cpp11/fast:
- $(MAKE) $(MAKESILENT) -f test/CMakeFiles/test-iterators1_cpp11.dir/build.make test/CMakeFiles/test-iterators1_cpp11.dir/build
-.PHONY : test-iterators1_cpp11/fast
-
-#=============================================================================
-# Target rules for targets named test-iterators2_cpp11
-
-# Build rule for target.
-test-iterators2_cpp11: cmake_check_build_system
- $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 test-iterators2_cpp11
-.PHONY : test-iterators2_cpp11
-
-# fast build rule for target.
-test-iterators2_cpp11/fast:
- $(MAKE) $(MAKESILENT) -f test/CMakeFiles/test-iterators2_cpp11.dir/build.make test/CMakeFiles/test-iterators2_cpp11.dir/build
-.PHONY : test-iterators2_cpp11/fast
-
-#=============================================================================
-# Target rules for targets named test-json_patch_cpp11
-
-# Build rule for target.
-test-json_patch_cpp11: cmake_check_build_system
- $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 test-json_patch_cpp11
-.PHONY : test-json_patch_cpp11
-
-# fast build rule for target.
-test-json_patch_cpp11/fast:
- $(MAKE) $(MAKESILENT) -f test/CMakeFiles/test-json_patch_cpp11.dir/build.make test/CMakeFiles/test-json_patch_cpp11.dir/build
-.PHONY : test-json_patch_cpp11/fast
-
-#=============================================================================
-# Target rules for targets named test-json_pointer_cpp11
-
-# Build rule for target.
-test-json_pointer_cpp11: cmake_check_build_system
- $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 test-json_pointer_cpp11
-.PHONY : test-json_pointer_cpp11
-
-# fast build rule for target.
-test-json_pointer_cpp11/fast:
- $(MAKE) $(MAKESILENT) -f test/CMakeFiles/test-json_pointer_cpp11.dir/build.make test/CMakeFiles/test-json_pointer_cpp11.dir/build
-.PHONY : test-json_pointer_cpp11/fast
-
-#=============================================================================
-# Target rules for targets named test-large_json_cpp11
-
-# Build rule for target.
-test-large_json_cpp11: cmake_check_build_system
- $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 test-large_json_cpp11
-.PHONY : test-large_json_cpp11
-
-# fast build rule for target.
-test-large_json_cpp11/fast:
- $(MAKE) $(MAKESILENT) -f test/CMakeFiles/test-large_json_cpp11.dir/build.make test/CMakeFiles/test-large_json_cpp11.dir/build
-.PHONY : test-large_json_cpp11/fast
-
-#=============================================================================
-# Target rules for targets named test-merge_patch_cpp11
-
-# Build rule for target.
-test-merge_patch_cpp11: cmake_check_build_system
- $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 test-merge_patch_cpp11
-.PHONY : test-merge_patch_cpp11
-
-# fast build rule for target.
-test-merge_patch_cpp11/fast:
- $(MAKE) $(MAKESILENT) -f test/CMakeFiles/test-merge_patch_cpp11.dir/build.make test/CMakeFiles/test-merge_patch_cpp11.dir/build
-.PHONY : test-merge_patch_cpp11/fast
-
-#=============================================================================
-# Target rules for targets named test-meta_cpp11
-
-# Build rule for target.
-test-meta_cpp11: cmake_check_build_system
- $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 test-meta_cpp11
-.PHONY : test-meta_cpp11
-
-# fast build rule for target.
-test-meta_cpp11/fast:
- $(MAKE) $(MAKESILENT) -f test/CMakeFiles/test-meta_cpp11.dir/build.make test/CMakeFiles/test-meta_cpp11.dir/build
-.PHONY : test-meta_cpp11/fast
-
-#=============================================================================
-# Target rules for targets named test-modifiers_cpp11
-
-# Build rule for target.
-test-modifiers_cpp11: cmake_check_build_system
- $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 test-modifiers_cpp11
-.PHONY : test-modifiers_cpp11
-
-# fast build rule for target.
-test-modifiers_cpp11/fast:
- $(MAKE) $(MAKESILENT) -f test/CMakeFiles/test-modifiers_cpp11.dir/build.make test/CMakeFiles/test-modifiers_cpp11.dir/build
-.PHONY : test-modifiers_cpp11/fast
-
-#=============================================================================
-# Target rules for targets named test-msgpack_cpp11
-
-# Build rule for target.
-test-msgpack_cpp11: cmake_check_build_system
- $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 test-msgpack_cpp11
-.PHONY : test-msgpack_cpp11
-
-# fast build rule for target.
-test-msgpack_cpp11/fast:
- $(MAKE) $(MAKESILENT) -f test/CMakeFiles/test-msgpack_cpp11.dir/build.make test/CMakeFiles/test-msgpack_cpp11.dir/build
-.PHONY : test-msgpack_cpp11/fast
-
-#=============================================================================
-# Target rules for targets named test-noexcept_cpp11
-
-# Build rule for target.
-test-noexcept_cpp11: cmake_check_build_system
- $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 test-noexcept_cpp11
-.PHONY : test-noexcept_cpp11
-
-# fast build rule for target.
-test-noexcept_cpp11/fast:
- $(MAKE) $(MAKESILENT) -f test/CMakeFiles/test-noexcept_cpp11.dir/build.make test/CMakeFiles/test-noexcept_cpp11.dir/build
-.PHONY : test-noexcept_cpp11/fast
-
-#=============================================================================
-# Target rules for targets named test-ordered_json_cpp11
-
-# Build rule for target.
-test-ordered_json_cpp11: cmake_check_build_system
- $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 test-ordered_json_cpp11
-.PHONY : test-ordered_json_cpp11
-
-# fast build rule for target.
-test-ordered_json_cpp11/fast:
- $(MAKE) $(MAKESILENT) -f test/CMakeFiles/test-ordered_json_cpp11.dir/build.make test/CMakeFiles/test-ordered_json_cpp11.dir/build
-.PHONY : test-ordered_json_cpp11/fast
-
-#=============================================================================
-# Target rules for targets named test-ordered_map_cpp11
-
-# Build rule for target.
-test-ordered_map_cpp11: cmake_check_build_system
- $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 test-ordered_map_cpp11
-.PHONY : test-ordered_map_cpp11
-
-# fast build rule for target.
-test-ordered_map_cpp11/fast:
- $(MAKE) $(MAKESILENT) -f test/CMakeFiles/test-ordered_map_cpp11.dir/build.make test/CMakeFiles/test-ordered_map_cpp11.dir/build
-.PHONY : test-ordered_map_cpp11/fast
-
-#=============================================================================
-# Target rules for targets named test-pointer_access_cpp11
-
-# Build rule for target.
-test-pointer_access_cpp11: cmake_check_build_system
- $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 test-pointer_access_cpp11
-.PHONY : test-pointer_access_cpp11
-
-# fast build rule for target.
-test-pointer_access_cpp11/fast:
- $(MAKE) $(MAKESILENT) -f test/CMakeFiles/test-pointer_access_cpp11.dir/build.make test/CMakeFiles/test-pointer_access_cpp11.dir/build
-.PHONY : test-pointer_access_cpp11/fast
-
-#=============================================================================
-# Target rules for targets named test-readme_cpp11
-
-# Build rule for target.
-test-readme_cpp11: cmake_check_build_system
- $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 test-readme_cpp11
-.PHONY : test-readme_cpp11
-
-# fast build rule for target.
-test-readme_cpp11/fast:
- $(MAKE) $(MAKESILENT) -f test/CMakeFiles/test-readme_cpp11.dir/build.make test/CMakeFiles/test-readme_cpp11.dir/build
-.PHONY : test-readme_cpp11/fast
-
-#=============================================================================
-# Target rules for targets named test-reference_access_cpp11
-
-# Build rule for target.
-test-reference_access_cpp11: cmake_check_build_system
- $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 test-reference_access_cpp11
-.PHONY : test-reference_access_cpp11
-
-# fast build rule for target.
-test-reference_access_cpp11/fast:
- $(MAKE) $(MAKESILENT) -f test/CMakeFiles/test-reference_access_cpp11.dir/build.make test/CMakeFiles/test-reference_access_cpp11.dir/build
-.PHONY : test-reference_access_cpp11/fast
-
-#=============================================================================
-# Target rules for targets named test-regression1_cpp11
-
-# Build rule for target.
-test-regression1_cpp11: cmake_check_build_system
- $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 test-regression1_cpp11
-.PHONY : test-regression1_cpp11
-
-# fast build rule for target.
-test-regression1_cpp11/fast:
- $(MAKE) $(MAKESILENT) -f test/CMakeFiles/test-regression1_cpp11.dir/build.make test/CMakeFiles/test-regression1_cpp11.dir/build
-.PHONY : test-regression1_cpp11/fast
-
-#=============================================================================
-# Target rules for targets named test-regression1_cpp17
-
-# Build rule for target.
-test-regression1_cpp17: cmake_check_build_system
- $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 test-regression1_cpp17
-.PHONY : test-regression1_cpp17
-
-# fast build rule for target.
-test-regression1_cpp17/fast:
- $(MAKE) $(MAKESILENT) -f test/CMakeFiles/test-regression1_cpp17.dir/build.make test/CMakeFiles/test-regression1_cpp17.dir/build
-.PHONY : test-regression1_cpp17/fast
-
-#=============================================================================
-# Target rules for targets named test-regression2_cpp11
-
-# Build rule for target.
-test-regression2_cpp11: cmake_check_build_system
- $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 test-regression2_cpp11
-.PHONY : test-regression2_cpp11
-
-# fast build rule for target.
-test-regression2_cpp11/fast:
- $(MAKE) $(MAKESILENT) -f test/CMakeFiles/test-regression2_cpp11.dir/build.make test/CMakeFiles/test-regression2_cpp11.dir/build
-.PHONY : test-regression2_cpp11/fast
-
-#=============================================================================
-# Target rules for targets named test-regression2_cpp17
-
-# Build rule for target.
-test-regression2_cpp17: cmake_check_build_system
- $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 test-regression2_cpp17
-.PHONY : test-regression2_cpp17
-
-# fast build rule for target.
-test-regression2_cpp17/fast:
- $(MAKE) $(MAKESILENT) -f test/CMakeFiles/test-regression2_cpp17.dir/build.make test/CMakeFiles/test-regression2_cpp17.dir/build
-.PHONY : test-regression2_cpp17/fast
-
-#=============================================================================
-# Target rules for targets named test-regression2_cpp20
-
-# Build rule for target.
-test-regression2_cpp20: cmake_check_build_system
- $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 test-regression2_cpp20
-.PHONY : test-regression2_cpp20
-
-# fast build rule for target.
-test-regression2_cpp20/fast:
- $(MAKE) $(MAKESILENT) -f test/CMakeFiles/test-regression2_cpp20.dir/build.make test/CMakeFiles/test-regression2_cpp20.dir/build
-.PHONY : test-regression2_cpp20/fast
-
-#=============================================================================
-# Target rules for targets named test-serialization_cpp11
-
-# Build rule for target.
-test-serialization_cpp11: cmake_check_build_system
- $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 test-serialization_cpp11
-.PHONY : test-serialization_cpp11
-
-# fast build rule for target.
-test-serialization_cpp11/fast:
- $(MAKE) $(MAKESILENT) -f test/CMakeFiles/test-serialization_cpp11.dir/build.make test/CMakeFiles/test-serialization_cpp11.dir/build
-.PHONY : test-serialization_cpp11/fast
-
-#=============================================================================
-# Target rules for targets named test-testsuites_cpp11
-
-# Build rule for target.
-test-testsuites_cpp11: cmake_check_build_system
- $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 test-testsuites_cpp11
-.PHONY : test-testsuites_cpp11
-
-# fast build rule for target.
-test-testsuites_cpp11/fast:
- $(MAKE) $(MAKESILENT) -f test/CMakeFiles/test-testsuites_cpp11.dir/build.make test/CMakeFiles/test-testsuites_cpp11.dir/build
-.PHONY : test-testsuites_cpp11/fast
-
-#=============================================================================
-# Target rules for targets named test-to_chars_cpp11
-
-# Build rule for target.
-test-to_chars_cpp11: cmake_check_build_system
- $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 test-to_chars_cpp11
-.PHONY : test-to_chars_cpp11
-
-# fast build rule for target.
-test-to_chars_cpp11/fast:
- $(MAKE) $(MAKESILENT) -f test/CMakeFiles/test-to_chars_cpp11.dir/build.make test/CMakeFiles/test-to_chars_cpp11.dir/build
-.PHONY : test-to_chars_cpp11/fast
-
-#=============================================================================
-# Target rules for targets named test-ubjson_cpp11
-
-# Build rule for target.
-test-ubjson_cpp11: cmake_check_build_system
- $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 test-ubjson_cpp11
-.PHONY : test-ubjson_cpp11
-
-# fast build rule for target.
-test-ubjson_cpp11/fast:
- $(MAKE) $(MAKESILENT) -f test/CMakeFiles/test-ubjson_cpp11.dir/build.make test/CMakeFiles/test-ubjson_cpp11.dir/build
-.PHONY : test-ubjson_cpp11/fast
-
-#=============================================================================
-# Target rules for targets named test-udt_cpp11
-
-# Build rule for target.
-test-udt_cpp11: cmake_check_build_system
- $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 test-udt_cpp11
-.PHONY : test-udt_cpp11
-
-# fast build rule for target.
-test-udt_cpp11/fast:
- $(MAKE) $(MAKESILENT) -f test/CMakeFiles/test-udt_cpp11.dir/build.make test/CMakeFiles/test-udt_cpp11.dir/build
-.PHONY : test-udt_cpp11/fast
-
-#=============================================================================
-# Target rules for targets named test-udt_macro_cpp11
-
-# Build rule for target.
-test-udt_macro_cpp11: cmake_check_build_system
- $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 test-udt_macro_cpp11
-.PHONY : test-udt_macro_cpp11
-
-# fast build rule for target.
-test-udt_macro_cpp11/fast:
- $(MAKE) $(MAKESILENT) -f test/CMakeFiles/test-udt_macro_cpp11.dir/build.make test/CMakeFiles/test-udt_macro_cpp11.dir/build
-.PHONY : test-udt_macro_cpp11/fast
-
-#=============================================================================
-# Target rules for targets named test-unicode1_cpp11
-
-# Build rule for target.
-test-unicode1_cpp11: cmake_check_build_system
- $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 test-unicode1_cpp11
-.PHONY : test-unicode1_cpp11
-
-# fast build rule for target.
-test-unicode1_cpp11/fast:
- $(MAKE) $(MAKESILENT) -f test/CMakeFiles/test-unicode1_cpp11.dir/build.make test/CMakeFiles/test-unicode1_cpp11.dir/build
-.PHONY : test-unicode1_cpp11/fast
-
-#=============================================================================
-# Target rules for targets named test-unicode2_cpp11
-
-# Build rule for target.
-test-unicode2_cpp11: cmake_check_build_system
- $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 test-unicode2_cpp11
-.PHONY : test-unicode2_cpp11
-
-# fast build rule for target.
-test-unicode2_cpp11/fast:
- $(MAKE) $(MAKESILENT) -f test/CMakeFiles/test-unicode2_cpp11.dir/build.make test/CMakeFiles/test-unicode2_cpp11.dir/build
-.PHONY : test-unicode2_cpp11/fast
-
-#=============================================================================
-# Target rules for targets named test-unicode3_cpp11
-
-# Build rule for target.
-test-unicode3_cpp11: cmake_check_build_system
- $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 test-unicode3_cpp11
-.PHONY : test-unicode3_cpp11
-
-# fast build rule for target.
-test-unicode3_cpp11/fast:
- $(MAKE) $(MAKESILENT) -f test/CMakeFiles/test-unicode3_cpp11.dir/build.make test/CMakeFiles/test-unicode3_cpp11.dir/build
-.PHONY : test-unicode3_cpp11/fast
-
-#=============================================================================
-# Target rules for targets named test-unicode4_cpp11
-
-# Build rule for target.
-test-unicode4_cpp11: cmake_check_build_system
- $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 test-unicode4_cpp11
-.PHONY : test-unicode4_cpp11
-
-# fast build rule for target.
-test-unicode4_cpp11/fast:
- $(MAKE) $(MAKESILENT) -f test/CMakeFiles/test-unicode4_cpp11.dir/build.make test/CMakeFiles/test-unicode4_cpp11.dir/build
-.PHONY : test-unicode4_cpp11/fast
-
-#=============================================================================
-# Target rules for targets named test-unicode5_cpp11
-
-# Build rule for target.
-test-unicode5_cpp11: cmake_check_build_system
- $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 test-unicode5_cpp11
-.PHONY : test-unicode5_cpp11
-
-# fast build rule for target.
-test-unicode5_cpp11/fast:
- $(MAKE) $(MAKESILENT) -f test/CMakeFiles/test-unicode5_cpp11.dir/build.make test/CMakeFiles/test-unicode5_cpp11.dir/build
-.PHONY : test-unicode5_cpp11/fast
-
-#=============================================================================
-# Target rules for targets named test-user_defined_input_cpp11
-
-# Build rule for target.
-test-user_defined_input_cpp11: cmake_check_build_system
- $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 test-user_defined_input_cpp11
-.PHONY : test-user_defined_input_cpp11
-
-# fast build rule for target.
-test-user_defined_input_cpp11/fast:
- $(MAKE) $(MAKESILENT) -f test/CMakeFiles/test-user_defined_input_cpp11.dir/build.make test/CMakeFiles/test-user_defined_input_cpp11.dir/build
-.PHONY : test-user_defined_input_cpp11/fast
-
-#=============================================================================
-# Target rules for targets named test-wstring_cpp11
-
-# Build rule for target.
-test-wstring_cpp11: cmake_check_build_system
- $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 test-wstring_cpp11
-.PHONY : test-wstring_cpp11
-
-# fast build rule for target.
-test-wstring_cpp11/fast:
- $(MAKE) $(MAKESILENT) -f test/CMakeFiles/test-wstring_cpp11.dir/build.make test/CMakeFiles/test-wstring_cpp11.dir/build
-.PHONY : test-wstring_cpp11/fast
-
-# Help Target
-help:
- @echo "The following are some of the valid targets for this Makefile:"
- @echo "... all (the default if no target is provided)"
- @echo "... clean"
- @echo "... depend"
- @echo "... edit_cache"
- @echo "... install"
- @echo "... install/local"
- @echo "... install/strip"
- @echo "... list_install_components"
- @echo "... rebuild_cache"
- @echo "... test"
- @echo "... Continuous"
- @echo "... ContinuousBuild"
- @echo "... ContinuousConfigure"
- @echo "... ContinuousCoverage"
- @echo "... ContinuousMemCheck"
- @echo "... ContinuousStart"
- @echo "... ContinuousSubmit"
- @echo "... ContinuousTest"
- @echo "... ContinuousUpdate"
- @echo "... Experimental"
- @echo "... ExperimentalBuild"
- @echo "... ExperimentalConfigure"
- @echo "... ExperimentalCoverage"
- @echo "... ExperimentalMemCheck"
- @echo "... ExperimentalStart"
- @echo "... ExperimentalSubmit"
- @echo "... ExperimentalTest"
- @echo "... ExperimentalUpdate"
- @echo "... Nightly"
- @echo "... NightlyBuild"
- @echo "... NightlyConfigure"
- @echo "... NightlyCoverage"
- @echo "... NightlyMemCheck"
- @echo "... NightlyMemoryCheck"
- @echo "... NightlyStart"
- @echo "... NightlySubmit"
- @echo "... NightlyTest"
- @echo "... NightlyUpdate"
- @echo "... download_test_data"
- @echo "... test-algorithms_cpp11"
- @echo "... test-allocator_cpp11"
- @echo "... test-alt-string_cpp11"
- @echo "... test-assert_macro_cpp11"
- @echo "... test-bson_cpp11"
- @echo "... test-byte_container_with_subtype_cpp11"
- @echo "... test-capacity_cpp11"
- @echo "... test-cbor_cpp11"
- @echo "... test-class_const_iterator_cpp11"
- @echo "... test-class_iterator_cpp11"
- @echo "... test-class_lexer_cpp11"
- @echo "... test-class_parser_cpp11"
- @echo "... test-comparison_cpp11"
- @echo "... test-comparison_cpp20"
- @echo "... test-concepts_cpp11"
- @echo "... test-constructor1_cpp11"
- @echo "... test-constructor2_cpp11"
- @echo "... test-convenience_cpp11"
- @echo "... test-conversions_cpp11"
- @echo "... test-conversions_cpp14"
- @echo "... test-conversions_cpp17"
- @echo "... test-deserialization_cpp11"
- @echo "... test-diagnostics_cpp11"
- @echo "... test-disabled_exceptions_cpp11"
- @echo "... test-element_access1_cpp11"
- @echo "... test-element_access2_cpp11"
- @echo "... test-hash_cpp11"
- @echo "... test-inspection_cpp11"
- @echo "... test-items_cpp11"
- @echo "... test-items_cpp14"
- @echo "... test-items_cpp17"
- @echo "... test-iterators1_cpp11"
- @echo "... test-iterators2_cpp11"
- @echo "... test-json_patch_cpp11"
- @echo "... test-json_pointer_cpp11"
- @echo "... test-large_json_cpp11"
- @echo "... test-merge_patch_cpp11"
- @echo "... test-meta_cpp11"
- @echo "... test-modifiers_cpp11"
- @echo "... test-msgpack_cpp11"
- @echo "... test-noexcept_cpp11"
- @echo "... test-ordered_json_cpp11"
- @echo "... test-ordered_map_cpp11"
- @echo "... test-pointer_access_cpp11"
- @echo "... test-readme_cpp11"
- @echo "... test-reference_access_cpp11"
- @echo "... test-regression1_cpp11"
- @echo "... test-regression1_cpp17"
- @echo "... test-regression2_cpp11"
- @echo "... test-regression2_cpp17"
- @echo "... test-regression2_cpp20"
- @echo "... test-serialization_cpp11"
- @echo "... test-testsuites_cpp11"
- @echo "... test-to_chars_cpp11"
- @echo "... test-ubjson_cpp11"
- @echo "... test-udt_cpp11"
- @echo "... test-udt_macro_cpp11"
- @echo "... test-unicode1_cpp11"
- @echo "... test-unicode2_cpp11"
- @echo "... test-unicode3_cpp11"
- @echo "... test-unicode4_cpp11"
- @echo "... test-unicode5_cpp11"
- @echo "... test-user_defined_input_cpp11"
- @echo "... test-wstring_cpp11"
- @echo "... test_main"
-.PHONY : help
-
-
-
-#=============================================================================
-# Special targets to cleanup operation of make.
-
-# Special rule to run CMake to check the build system integrity.
-# No rule that depends on this can have commands that come from listfiles
-# because they might be regenerated.
-cmake_check_build_system:
- $(CMAKE_COMMAND) -S$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) --check-build-system CMakeFiles/Makefile.cmake 0
-.PHONY : cmake_check_build_system
-
+ rm -fr fuzz fuzz-testing *.dSYM test/*.dSYM
+ rm -fr benchmarks/files/numbers/*.json
+ rm -fr cmake-build-benchmarks fuzz-testing cmake-build-pvs-studio release_files
+ $(MAKE) clean -Cdoc
+
+
+##########################################################################
+# Thirdparty code
+##########################################################################
+
+update_hedley:
+ rm -f include/nlohmann/thirdparty/hedley/hedley.hpp include/nlohmann/thirdparty/hedley/hedley_undef.hpp
+ curl https://raw.githubusercontent.com/nemequ/hedley/master/hedley.h -o include/nlohmann/thirdparty/hedley/hedley.hpp
+ $(SED) -i 's/HEDLEY_/JSON_HEDLEY_/g' include/nlohmann/thirdparty/hedley/hedley.hpp
+ grep "[[:blank:]]*#[[:blank:]]*undef" include/nlohmann/thirdparty/hedley/hedley.hpp | grep -v "__" | sort | uniq | $(SED) 's/ //g' | $(SED) 's/undef/undef /g' > include/nlohmann/thirdparty/hedley/hedley_undef.hpp
+ $(SED) -i '1s/^/#pragma once\n\n/' include/nlohmann/thirdparty/hedley/hedley.hpp
+ $(SED) -i '1s/^/#pragma once\n\n/' include/nlohmann/thirdparty/hedley/hedley_undef.hpp
+ $(MAKE) amalgamate
\ No newline at end of file
diff --git a/include/nlohmann/detail/input/binary_reader.hpp b/include/nlohmann/detail/input/binary_reader.hpp
index c48c70538..b25646747 100644
--- a/include/nlohmann/detail/input/binary_reader.hpp
+++ b/include/nlohmann/detail/input/binary_reader.hpp
@@ -1363,7 +1363,16 @@ class binary_reader
case 0x9D:
case 0x9E:
case 0x9F:
- return get_msgpack_array(static_cast(static_cast(current) & 0x0Fu));
+ {
+ const auto len = static_cast(static_cast(current) & 0x0Fu);
+ return JSON_HEDLEY_LIKELY(
+ sax->start_array(len)
+ &&
+ get_msgpack_array(len)
+ &&
+ sax->end_array()
+ );
+ }
// fixstr
case 0xA0:
@@ -1494,25 +1503,58 @@ class binary_reader
case 0xDC: // array 16
{
std::uint16_t len{};
- return get_number(input_format_t::msgpack, len) && get_msgpack_array(static_cast(len));
+ return JSON_HEDLEY_LIKELY(
+ get_number(input_format_t::msgpack, len)
+ &&
+ sax->start_array(static_cast(len))
+ &&
+ get_msgpack_array(static_cast(len))
+ &&
+ sax->end_array()
+ );
}
case 0xDD: // array 32
{
std::uint32_t len{};
- return get_number(input_format_t::msgpack, len) && get_msgpack_array(static_cast(len));
+ return JSON_HEDLEY_LIKELY(
+ get_number(input_format_t::msgpack, len)
+ &&
+ sax->start_array(static_cast(len))
+ &&
+ get_msgpack_array(static_cast(len))
+ &&
+ sax->end_array()
+ );
}
case 0xDE: // map 16
{
std::uint16_t len{};
- return get_number(input_format_t::msgpack, len) && sax->start_object(len) && get_msgpack_object(static_cast(len)) && sax->end_object();
+
+ return JSON_HEDLEY_LIKELY(
+ get_number(input_format_t::msgpack, len)
+ &&
+ sax->start_object(len)
+ &&
+ get_msgpack_object(static_cast(len))
+ &&
+ sax->end_object()
+ );
}
case 0xDF: // map 32
{
std::uint32_t len{};
- return get_number(input_format_t::msgpack, len) && sax->start_object(len) && get_msgpack_object(static_cast(len)) && sax->end_object();
+ return JSON_HEDLEY_LIKELY(
+ get_number(input_format_t::msgpack, len)
+ &&
+ sax->start_object(len)
+ &&
+ get_msgpack_object(static_cast(len))
+ &&
+ sax->end_object()
+ );
}
// negative fixint
@@ -1765,11 +1807,6 @@ class binary_reader
*/
bool get_msgpack_array(const std::size_t len)
{
- if (JSON_HEDLEY_UNLIKELY(!sax->start_array(len)))
- {
- return false;
- }
-
for (std::size_t i = 0; i < len; ++i)
{
if (JSON_HEDLEY_UNLIKELY(!parse_msgpack_internal()))
@@ -1778,530 +1815,449 @@ class binary_reader
}
}
- return sax->end_array();
- }
-
- /*!
- @param[in] len the length of the object
- @return whether object creation completed
- */
- bool get_msgpack_object(const std::size_t len){
- return get_msgpack_object_impl(len, detail::is_sax_msgpack());
- }
-
- /*!
- @param[in] len the length of the object
- @param[in] full_msgpack_support is full msgpack protocoll suppored by sax
- @return whether object creation completed
- */
- bool get_msgpack_object_impl(const std::size_t len, std::false_type)
- {
-
- string_t key;
- for (std::size_t i = 0; i < len; ++i)
- {
- get();
- if (JSON_HEDLEY_UNLIKELY(!get_msgpack_string(key) || !sax->key(key)))
- {
- return false;
- }
-
- if (JSON_HEDLEY_UNLIKELY(!parse_msgpack_internal()))
- {
- return false;
- }
- key.clear();
- }
-
return true;
}
/*!
@param[in] len the length of the object
- @param[in] full_msgpack_support is full msgpack protocoll suppored by sax
@return whether object creation completed
*/
- bool get_msgpack_object_impl(const std::size_t len, std::true_type)
+ bool get_msgpack_object(const std::size_t len)
{
+
+ string_t recycle_string;
+
for (std::size_t i = 0; i < len; ++i)
{
- switch (get())
- {
- // EOF
- case std::char_traits::eof():
- {
- return unexpect_eof(input_format_t::msgpack, "key");
- }
-
- // positive fixint
- case 0x00:
- case 0x01:
- case 0x02:
- case 0x03:
- case 0x04:
- case 0x05:
- case 0x06:
- case 0x07:
- case 0x08:
- case 0x09:
- case 0x0A:
- case 0x0B:
- case 0x0C:
- case 0x0D:
- case 0x0E:
- case 0x0F:
- case 0x10:
- case 0x11:
- case 0x12:
- case 0x13:
- case 0x14:
- case 0x15:
- case 0x16:
- case 0x17:
- case 0x18:
- case 0x19:
- case 0x1A:
- case 0x1B:
- case 0x1C:
- case 0x1D:
- case 0x1E:
- case 0x1F:
- case 0x20:
- case 0x21:
- case 0x22:
- case 0x23:
- case 0x24:
- case 0x25:
- case 0x26:
- case 0x27:
- case 0x28:
- case 0x29:
- case 0x2A:
- case 0x2B:
- case 0x2C:
- case 0x2D:
- case 0x2E:
- case 0x2F:
- case 0x30:
- case 0x31:
- case 0x32:
- case 0x33:
- case 0x34:
- case 0x35:
- case 0x36:
- case 0x37:
- case 0x38:
- case 0x39:
- case 0x3A:
- case 0x3B:
- case 0x3C:
- case 0x3D:
- case 0x3E:
- case 0x3F:
- case 0x40:
- case 0x41:
- case 0x42:
- case 0x43:
- case 0x44:
- case 0x45:
- case 0x46:
- case 0x47:
- case 0x48:
- case 0x49:
- case 0x4A:
- case 0x4B:
- case 0x4C:
- case 0x4D:
- case 0x4E:
- case 0x4F:
- case 0x50:
- case 0x51:
- case 0x52:
- case 0x53:
- case 0x54:
- case 0x55:
- case 0x56:
- case 0x57:
- case 0x58:
- case 0x59:
- case 0x5A:
- case 0x5B:
- case 0x5C:
- case 0x5D:
- case 0x5E:
- case 0x5F:
- case 0x60:
- case 0x61:
- case 0x62:
- case 0x63:
- case 0x64:
- case 0x65:
- case 0x66:
- case 0x67:
- case 0x68:
- case 0x69:
- case 0x6A:
- case 0x6B:
- case 0x6C:
- case 0x6D:
- case 0x6E:
- case 0x6F:
- case 0x70:
- case 0x71:
- case 0x72:
- case 0x73:
- case 0x74:
- case 0x75:
- case 0x76:
- case 0x77:
- case 0x78:
- case 0x79:
- case 0x7A:
- case 0x7B:
- case 0x7C:
- case 0x7D:
- case 0x7E:
- case 0x7F:
- {
- if ( JSON_HEDLEY_UNLIKELY( ! sax->key_unsigned(static_cast(current) ) ) )
- {
- return false;
- }
- break;
- }
-
- // fixmap
- case 0x80:
- case 0x81:
- case 0x82:
- case 0x83:
- case 0x84:
- case 0x85:
- case 0x86:
- case 0x87:
- case 0x88:
- case 0x89:
- case 0x8A:
- case 0x8B:
- case 0x8C:
- case 0x8D:
- case 0x8E:
- case 0x8F:
- {
- const auto len = static_cast(static_cast(current) & 0x0Fu);
-
- if ( JSON_HEDLEY_UNLIKELY(
- ! (
- sax->start_key_object(len)
- &&
- get_msgpack_object()
- &&
- sax->end_key_object()
- )
+ if (JSON_HEDLEY_UNLIKELY(
+ !(
+ get_msgpack_object_key(recycle_string, detail::is_sax_msgpack())
+ &&
+ parse_msgpack_internal()
)
)
- {
- return false;
- }
- break;
- }
-
-
- // // fixarray
- // case 0x90:
- // case 0x91:
- // case 0x92:
- // case 0x93:
- // case 0x94:
- // case 0x95:
- // case 0x96:
- // case 0x97:
- // case 0x98:
- // case 0x99:
- // case 0x9A:
- // case 0x9B:
- // case 0x9C:
- // case 0x9D:
- // case 0x9E:
- // case 0x9F:
- // return get_msgpack_array(static_cast(static_cast(current) & 0x0Fu));
-
-
- // fixstr
- case 0xA0:
- case 0xA1:
- case 0xA2:
- case 0xA3:
- case 0xA4:
- case 0xA5:
- case 0xA6:
- case 0xA7:
- case 0xA8:
- case 0xA9:
- case 0xAA:
- case 0xAB:
- case 0xAC:
- case 0xAD:
- case 0xAE:
- case 0xAF:
- case 0xB0:
- case 0xB1:
- case 0xB2:
- case 0xB3:
- case 0xB4:
- case 0xB5:
- case 0xB6:
- case 0xB7:
- case 0xB8:
- case 0xB9:
- case 0xBA:
- case 0xBB:
- case 0xBC:
- case 0xBD:
- case 0xBE:
- case 0xBF:
- case 0xD9: // str 8
- case 0xDA: // str 16
- case 0xDB: // str 32
- {
- string_t s;
- if ( JSON_HEDLEY_UNLIKELY( ! ( get_msgpack_string(s) && sax->key(s) ) ) )
- {
- return false;
- }
- break;
- }
-
- case 0xC0: // nil
- {
- if ( JSON_HEDLEY_UNLIKELY( ! sax->key_null() ) )
- {
- return false;
- }
- break;
- }
-
- case 0xC2: // false
- {
- if ( JSON_HEDLEY_UNLIKELY( ! sax->key_boolean(false) ) )
- {
- return false;
- }
- break;
- }
-
- case 0xC3: // true
- {
- if ( JSON_HEDLEY_UNLIKELY( ! sax->key_boolean(true) ) )
- {
- return false;
- }
- break;
- }
-
- case 0xCA: // float 32
- {
- float number{};
- if ( JSON_HEDLEY_UNLIKELY( ! ( get_number(input_format_t::msgpack, number) && sax->key_float(static_cast(number), "") ) ) )
- {
- return false;
- }
- break;
- }
-
- case 0xCB: // float 64
- {
- double number{};
- if ( JSON_HEDLEY_UNLIKELY( ! ( get_number(input_format_t::msgpack, number) && sax->key_float(static_cast(number), "") ) ) )
- {
- return false;
- }
- break;
- }
-
- case 0xCC: // uint 8
- {
- std::uint8_t number{};
- if ( JSON_HEDLEY_UNLIKELY( ! ( get_number(input_format_t::msgpack, number) && sax->key_unsigned(number) ) ) )
- {
- return false;
- }
- break;
- }
-
- case 0xCD: // uint 16
- {
- std::uint16_t number{};
- if ( JSON_HEDLEY_UNLIKELY( ! ( get_number(input_format_t::msgpack, number) && sax->key_unsigned(number) ) ) )
- {
- return false;
- }
- break;
- }
-
- case 0xCE: // uint 32
- {
- std::uint32_t number{};
- if ( JSON_HEDLEY_UNLIKELY( ! ( get_number(input_format_t::msgpack, number) && sax->key_unsigned(number) ) ) )
- {
- return false;
- }
- break;
- }
-
- case 0xCF: // uint 64
- {
- std::uint64_t number{};
- if ( JSON_HEDLEY_UNLIKELY( ! ( get_number(input_format_t::msgpack, number) && sax->key_unsigned(number) ) ) )
- {
- return false;
- }
- break;
- }
-
- case 0xD0: // int 8
- {
- std::int8_t number{};
- if ( JSON_HEDLEY_UNLIKELY( ! ( get_number(input_format_t::msgpack, number) && sax->key_integer(number) ) ) )
- {
- return false;
- }
- break;
- }
-
- case 0xD1: // int 16
- {
- std::int16_t number{};
- if ( JSON_HEDLEY_UNLIKELY( ! ( get_number(input_format_t::msgpack, number) && sax->key_integer(number) ) ) )
- {
- return false;
- }
- break;
- }
-
- case 0xD2: // int 32
- {
- std::int32_t number{};
- if ( JSON_HEDLEY_UNLIKELY( ! ( get_number(input_format_t::msgpack, number) && sax->key_integer(number) ) ) )
- {
- return false;
- }
- break;
- }
-
- case 0xD3: // int 64
- {
- std::int64_t number{};
- if ( JSON_HEDLEY_UNLIKELY( ! ( get_number(input_format_t::msgpack, number) && sax->key_integer(number) ) ) )
- {
- return false;
- }
- break;
- }
-
- case 0xDE: // map 16
- {
- std::uint16_t len{};
-
- if ( JSON_HEDLEY_UNLIKELY(
- ! (
- get_number(input_format_t::msgpack, len)
- &&
- sax->start_key_object(len)
- &&
- get_msgpack_object()
- &&
- sax->end_key_object()
- )
- )
- )
- {
- return false;
- }
- break;
- }
-
- case 0xDF: // map 32
- {
- std::uint32_t len{};
-
- if ( JSON_HEDLEY_UNLIKELY(
- ! (
- get_number(input_format_t::msgpack, len)
- &&
- sax->start_key_object(len)
- &&
- get_msgpack_object()
- &&
- sax->end_key_object()
- )
- )
- )
- {
- return false;
- }
- break;
- }
-
- // negative fixint
- case 0xE0:
- case 0xE1:
- case 0xE2:
- case 0xE3:
- case 0xE4:
- case 0xE5:
- case 0xE6:
- case 0xE7:
- case 0xE8:
- case 0xE9:
- case 0xEA:
- case 0xEB:
- case 0xEC:
- case 0xED:
- case 0xEE:
- case 0xEF:
- case 0xF0:
- case 0xF1:
- case 0xF2:
- case 0xF3:
- case 0xF4:
- case 0xF5:
- case 0xF6:
- case 0xF7:
- case 0xF8:
- case 0xF9:
- case 0xFA:
- case 0xFB:
- case 0xFC:
- case 0xFD:
- case 0xFE:
- case 0xFF:
- {
- if ( JSON_HEDLEY_UNLIKELY( ! sax->key_integer(static_cast(current)) ) )
- {
- return false;
- }
- break;
- }
-
- default: // anything else
- {
- auto last_token = get_token_string();
- return sax->parse_error(chars_read, last_token, parse_error::create(112, chars_read,
- exception_message(input_format_t::msgpack, concat("unsupported byte: 0x", last_token), "key"), nullptr));
- }
- }
-
- if (JSON_HEDLEY_UNLIKELY(!parse_msgpack_internal()))
+ )
{
return false;
}
+ recycle_string.clear();
}
-
return true;
}
+ // /*!
+ // @param[in] len the length of the object
+ // @param[in] full_msgpack_support is full msgpack protocoll suppored by sax
+ // @return whether object creation completed
+ // */
+ bool get_msgpack_object_key(string_t& recycle_string, std::false_type)
+ {
+ get();
+ return JSON_HEDLEY_LIKELY(get_msgpack_string(recycle_string) && sax->key(recycle_string));
+ }
+
+ // /*!
+ // @param[in] len the length of the object
+ // @param[in] full_msgpack_support is full msgpack protocoll suppored by sax
+ // @return whether object creation completed
+ // */
+ bool get_msgpack_object_key(string_t& recycle_string, std::true_type)
+ {
+ switch (get())
+ {
+ // EOF
+ case std::char_traits::eof():
+ {
+ return unexpect_eof(input_format_t::msgpack, "key");
+ }
+
+ // positive fixint
+ case 0x00:
+ case 0x01:
+ case 0x02:
+ case 0x03:
+ case 0x04:
+ case 0x05:
+ case 0x06:
+ case 0x07:
+ case 0x08:
+ case 0x09:
+ case 0x0A:
+ case 0x0B:
+ case 0x0C:
+ case 0x0D:
+ case 0x0E:
+ case 0x0F:
+ case 0x10:
+ case 0x11:
+ case 0x12:
+ case 0x13:
+ case 0x14:
+ case 0x15:
+ case 0x16:
+ case 0x17:
+ case 0x18:
+ case 0x19:
+ case 0x1A:
+ case 0x1B:
+ case 0x1C:
+ case 0x1D:
+ case 0x1E:
+ case 0x1F:
+ case 0x20:
+ case 0x21:
+ case 0x22:
+ case 0x23:
+ case 0x24:
+ case 0x25:
+ case 0x26:
+ case 0x27:
+ case 0x28:
+ case 0x29:
+ case 0x2A:
+ case 0x2B:
+ case 0x2C:
+ case 0x2D:
+ case 0x2E:
+ case 0x2F:
+ case 0x30:
+ case 0x31:
+ case 0x32:
+ case 0x33:
+ case 0x34:
+ case 0x35:
+ case 0x36:
+ case 0x37:
+ case 0x38:
+ case 0x39:
+ case 0x3A:
+ case 0x3B:
+ case 0x3C:
+ case 0x3D:
+ case 0x3E:
+ case 0x3F:
+ case 0x40:
+ case 0x41:
+ case 0x42:
+ case 0x43:
+ case 0x44:
+ case 0x45:
+ case 0x46:
+ case 0x47:
+ case 0x48:
+ case 0x49:
+ case 0x4A:
+ case 0x4B:
+ case 0x4C:
+ case 0x4D:
+ case 0x4E:
+ case 0x4F:
+ case 0x50:
+ case 0x51:
+ case 0x52:
+ case 0x53:
+ case 0x54:
+ case 0x55:
+ case 0x56:
+ case 0x57:
+ case 0x58:
+ case 0x59:
+ case 0x5A:
+ case 0x5B:
+ case 0x5C:
+ case 0x5D:
+ case 0x5E:
+ case 0x5F:
+ case 0x60:
+ case 0x61:
+ case 0x62:
+ case 0x63:
+ case 0x64:
+ case 0x65:
+ case 0x66:
+ case 0x67:
+ case 0x68:
+ case 0x69:
+ case 0x6A:
+ case 0x6B:
+ case 0x6C:
+ case 0x6D:
+ case 0x6E:
+ case 0x6F:
+ case 0x70:
+ case 0x71:
+ case 0x72:
+ case 0x73:
+ case 0x74:
+ case 0x75:
+ case 0x76:
+ case 0x77:
+ case 0x78:
+ case 0x79:
+ case 0x7A:
+ case 0x7B:
+ case 0x7C:
+ case 0x7D:
+ case 0x7E:
+ case 0x7F:
+ return JSON_HEDLEY_LIKELY(sax->key_unsigned(static_cast(current) ) );
+
+ // fixmap
+ case 0x80:
+ case 0x81:
+ case 0x82:
+ case 0x83:
+ case 0x84:
+ case 0x85:
+ case 0x86:
+ case 0x87:
+ case 0x88:
+ case 0x89:
+ case 0x8A:
+ case 0x8B:
+ case 0x8C:
+ case 0x8D:
+ case 0x8E:
+ case 0x8F:
+ {
+ const auto len = static_cast(static_cast(current) & 0x0Fu);
+ return JSON_HEDLEY_LIKELY( sax->start_key_object(len) && get_msgpack_object() && sax->end_key_object() );
+ }
+
+ // fixarray
+ case 0x90:
+ case 0x91:
+ case 0x92:
+ case 0x93:
+ case 0x94:
+ case 0x95:
+ case 0x96:
+ case 0x97:
+ case 0x98:
+ case 0x99:
+ case 0x9A:
+ case 0x9B:
+ case 0x9C:
+ case 0x9D:
+ case 0x9E:
+ case 0x9F:
+ {
+ const auto len = static_cast(static_cast(current) & 0x0Fu);
+ return sax->start_key_array(len) && get_msgpack_array(len) && sax->end_key_array();
+ }
+
+ // fixstr
+ case 0xA0:
+ case 0xA1:
+ case 0xA2:
+ case 0xA3:
+ case 0xA4:
+ case 0xA5:
+ case 0xA6:
+ case 0xA7:
+ case 0xA8:
+ case 0xA9:
+ case 0xAA:
+ case 0xAB:
+ case 0xAC:
+ case 0xAD:
+ case 0xAE:
+ case 0xAF:
+ case 0xB0:
+ case 0xB1:
+ case 0xB2:
+ case 0xB3:
+ case 0xB4:
+ case 0xB5:
+ case 0xB6:
+ case 0xB7:
+ case 0xB8:
+ case 0xB9:
+ case 0xBA:
+ case 0xBB:
+ case 0xBC:
+ case 0xBD:
+ case 0xBE:
+ case 0xBF:
+ case 0xD9: // str 8
+ case 0xDA: // str 16
+ case 0xDB: // str 32
+ {
+ return JSON_HEDLEY_LIKELY( get_msgpack_string(recycle_string) && sax->key(recycle_string) );
+ }
+
+ case 0xC0: // nil
+ return JSON_HEDLEY_LIKELY( sax->key_null() );
+
+ case 0xC2: // false
+ return JSON_HEDLEY_LIKELY( sax->key_boolean(false) );
+
+ case 0xC3: // true
+ return JSON_HEDLEY_LIKELY( sax->key_boolean(true) );
+
+ case 0xC4: // bin 8
+ case 0xC5: // bin 16
+ case 0xC6: // bin 32
+ case 0xC7: // ext 8
+ case 0xC8: // ext 16
+ case 0xC9: // ext 32
+ case 0xD4: // fixext 1
+ case 0xD5: // fixext 2
+ case 0xD6: // fixext 4
+ case 0xD7: // fixext 8
+ case 0xD8: // fixext 16
+ {
+ binary_t b;
+ return get_msgpack_binary(b) && sax->key_binary(b);
+ }
+
+ case 0xCA: // float 32
+ {
+ float number{};
+ return JSON_HEDLEY_LIKELY( get_number(input_format_t::msgpack, number) && sax->key_float(static_cast(number), "") );
+ }
+
+ case 0xCB: // float 64
+ {
+ double number{};
+ return JSON_HEDLEY_LIKELY( get_number(input_format_t::msgpack, number) && sax->key_float(static_cast(number), "") );
+ }
+
+ case 0xCC: // uint 8
+ {
+ std::uint8_t number{};
+ return JSON_HEDLEY_LIKELY( get_number(input_format_t::msgpack, number) && sax->key_unsigned(number) );
+ }
+
+ case 0xCD: // uint 16
+ {
+ std::uint16_t number{};
+ return JSON_HEDLEY_LIKELY( get_number(input_format_t::msgpack, number) && sax->key_unsigned(number) );
+ }
+
+ case 0xCE: // uint 32
+ {
+ std::uint32_t number{};
+ return JSON_HEDLEY_LIKELY( get_number(input_format_t::msgpack, number) && sax->key_unsigned(number) );
+ }
+
+ case 0xCF: // uint 64
+ {
+ std::uint64_t number{};
+ return JSON_HEDLEY_LIKELY( get_number(input_format_t::msgpack, number) && sax->key_unsigned(number) );
+ }
+
+ case 0xD0: // int 8
+ {
+ std::int8_t number{};
+ return JSON_HEDLEY_LIKELY( get_number(input_format_t::msgpack, number) && sax->key_integer(number) );
+ }
+
+ case 0xD1: // int 16
+ {
+ std::int16_t number{};
+ return JSON_HEDLEY_LIKELY( get_number(input_format_t::msgpack, number) && sax->key_integer(number) );
+ }
+
+ case 0xD2: // int 32
+ {
+ std::int32_t number{};
+ return JSON_HEDLEY_LIKELY( get_number(input_format_t::msgpack, number) && sax->key_integer(number) );
+ }
+
+ case 0xD3: // int 64
+ {
+ std::int64_t number{};
+ return JSON_HEDLEY_LIKELY( get_number(input_format_t::msgpack, number) && sax->key_integer(number) );
+ }
+
+ case 0xDC: // array 16
+ {
+ std::uint16_t len{};
+ return get_number(input_format_t::msgpack, len) && sax->start_key_array(static_cast(len)) && get_msgpack_array(static_cast(len)) && sax->end_key_array();
+ }
+
+ case 0xDD: // array 32
+ {
+ std::uint32_t len{};
+ return get_number(input_format_t::msgpack, len) && sax->start_key_array(static_cast(len)) && get_msgpack_array(static_cast(len)) && sax->end_key_array();
+ }
+
+ case 0xDE: // map 16
+ {
+ std::uint16_t len{};
+
+ return JSON_HEDLEY_LIKELY(
+ get_number(input_format_t::msgpack, len)
+ &&
+ sax->start_key_object(len)
+ &&
+ get_msgpack_object()
+ &&
+ sax->end_key_object()
+ );
+ }
+
+ case 0xDF: // map 32
+ {
+ std::uint32_t len{};
+
+ return JSON_HEDLEY_LIKELY(
+ get_number(input_format_t::msgpack, len)
+ &&
+ sax->start_key_object(len)
+ &&
+ get_msgpack_object()
+ &&
+ sax->end_key_object()
+ );
+ }
+
+ // negative fixint
+ case 0xE0:
+ case 0xE1:
+ case 0xE2:
+ case 0xE3:
+ case 0xE4:
+ case 0xE5:
+ case 0xE6:
+ case 0xE7:
+ case 0xE8:
+ case 0xE9:
+ case 0xEA:
+ case 0xEB:
+ case 0xEC:
+ case 0xED:
+ case 0xEE:
+ case 0xEF:
+ case 0xF0:
+ case 0xF1:
+ case 0xF2:
+ case 0xF3:
+ case 0xF4:
+ case 0xF5:
+ case 0xF6:
+ case 0xF7:
+ case 0xF8:
+ case 0xF9:
+ case 0xFA:
+ case 0xFB:
+ case 0xFC:
+ case 0xFD:
+ case 0xFE:
+ case 0xFF:
+ return JSON_HEDLEY_LIKELY( sax->key_integer( static_cast(current) ) );
+
+ default: // anything else
+ {
+ auto last_token = get_token_string();
+ return sax->parse_error(chars_read, last_token, parse_error::create(112, chars_read,
+ exception_message(input_format_t::msgpack, concat("unsupported byte: 0x", last_token), "key"), nullptr));
+ }
+ }
+ }
+
////////////
// UBJSON //
////////////
diff --git a/include/nlohmann/detail/meta/is_sax.hpp b/include/nlohmann/detail/meta/is_sax.hpp
index 690c64e44..c9d65e4d3 100644
--- a/include/nlohmann/detail/meta/is_sax.hpp
+++ b/include/nlohmann/detail/meta/is_sax.hpp
@@ -52,56 +52,83 @@ using number_float_function_t = decltype(std::declval().number_float(
template
using key_number_float_function_t = decltype(std::declval().key_number_float(
- std::declval(), std::declval()));
+ std::declval(), std::declval()));
template
using string_function_t =
decltype(std::declval().string(std::declval()));
-template
-using binary_function_t =
- decltype(std::declval().binary(std::declval()));
-
-template
-using start_object_function_t =
- decltype(std::declval().start_object(std::declval()));
-
template
using key_function_t =
decltype(std::declval().key(std::declval()));
-template
-using end_object_function_t = decltype(std::declval().end_object());
+
+template
+using binary_function_t =
+ decltype(std::declval().binary(std::declval()));
+
+template
+using key_binary_function_t =
+ decltype(std::declval().key_binary(std::declval()));
+
template
using start_array_function_t =
decltype(std::declval().start_array(std::declval()));
+template
+using start_key_array_function_t =
+ decltype(std::declval().start_key_array(std::declval()));
+
+
template
using end_array_function_t = decltype(std::declval().end_array());
+template
+using end_key_array_function_t = decltype(std::declval().end_key_array());
+
+
+template
+using start_object_function_t =
+ decltype(std::declval().start_object(std::declval()));
+
+template
+using start_key_object_function_t =
+ decltype(std::declval().start_key_object(std::declval()));
+
+
+template
+using end_object_function_t = decltype(std::declval().end_object());
+
+template
+using end_key_object_function_t = decltype(std::declval().end_key_object());
+
+
+
+
+
template
using parse_error_function_t = decltype(std::declval().parse_error(
std::declval(), std::declval(),
std::declval()));
template,
- is_detected_exact,
- is_detected_exact,
- is_detected_exact,
- is_detected_exact,
- is_detected_exact,
- is_detected_exact,
- is_detected_exact,
- is_detected_exact,
- is_detected_exact,
- is_detected_exact,
- is_detected_exact,
- is_detected_exact
- >
->
+ is_detected_exact,
+ is_detected_exact,
+ is_detected_exact,
+ is_detected_exact,
+ is_detected_exact,
+ is_detected_exact,
+ is_detected_exact,
+ is_detected_exact,
+ is_detected_exact,
+ is_detected_exact,
+ is_detected_exact,
+ is_detected_exact,
+ is_detected_exact
+ >
+ >
struct is_sax : IsTrue
{
private:
@@ -111,14 +138,19 @@ struct is_sax : IsTrue
template,
- is_detected_exact,
- is_detected_exact,
- is_detected_exact,
- is_detected_exact,
- is_detected_exact
- >
->
+ is_sax,
+ is_detected_exact,
+ is_detected_exact,
+ is_detected_exact,
+ is_detected_exact,
+ is_detected_exact,
+ is_detected_exact,
+ is_detected_exact,
+ is_detected_exact,
+ is_detected_exact,
+ is_detected_exact
+ >
+ >
struct is_sax_msgpack : IsTrue
{
private:
diff --git a/single_include/nlohmann/json.hpp b/single_include/nlohmann/json.hpp
new file mode 100644
index 000000000..e09fdf3b9
--- /dev/null
+++ b/single_include/nlohmann/json.hpp
@@ -0,0 +1,23135 @@
+/*
+ __ _____ _____ _____
+ __| | __| | | | JSON for Modern C++
+| | |__ | | | | | | version 3.10.5
+|_____|_____|_____|_|___| https://github.com/nlohmann/json
+
+Licensed under the MIT License .
+SPDX-License-Identifier: MIT
+Copyright (c) 2013-2022 Niels Lohmann .
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all
+copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+SOFTWARE.
+*/
+
+/****************************************************************************\
+ * Note on documentation: The source files contain links to the online *
+ * documentation of the public API at https://json.nlohmann.me. This URL *
+ * contains the most recent documentation and should also be applicable to *
+ * previous versions; documentation for deprecated functions is not *
+ * removed, but marked deprecated. See "Generate documentation" section in *
+ * file doc/README.md. *
+\****************************************************************************/
+
+#ifndef INCLUDE_NLOHMANN_JSON_HPP_
+#define INCLUDE_NLOHMANN_JSON_HPP_
+
+#ifndef JSON_SKIP_LIBRARY_VERSION_CHECK
+ #if defined(NLOHMANN_JSON_VERSION_MAJOR) && defined(NLOHMANN_JSON_VERSION_MINOR) && defined(NLOHMANN_JSON_VERSION_PATCH)
+ #if NLOHMANN_JSON_VERSION_MAJOR != 3 || NLOHMANN_JSON_VERSION_MINOR != 10 || NLOHMANN_JSON_VERSION_PATCH != 5
+ #warning "Already included a different version of the library!"
+ #endif
+ #endif
+#endif
+
+#define NLOHMANN_JSON_VERSION_MAJOR 3 // NOLINT(modernize-macro-to-enum)
+#define NLOHMANN_JSON_VERSION_MINOR 10 // NOLINT(modernize-macro-to-enum)
+#define NLOHMANN_JSON_VERSION_PATCH 5 // NOLINT(modernize-macro-to-enum)
+
+#include // all_of, find, for_each
+#include // nullptr_t, ptrdiff_t, size_t
+#include // hash, less
+#include // initializer_list
+#ifndef JSON_NO_IO
+ #include // istream, ostream
+#endif // JSON_NO_IO
+#include // random_access_iterator_tag
+#include // unique_ptr
+#include // accumulate
+#include // string, stoi, to_string
+#include // declval, forward, move, pair, swap
+#include // vector
+
+// #include
+
+
+#include
+#include
+
+// #include
+
+
+#include // transform
+#include // array
+#include // forward_list
+#include // inserter, front_inserter, end
+#include