mirror of
https://github.com/marzer/tomlplusplus.git
synced 2024-11-02 02:26:28 +00:00
f3bd22bff4
also: - added `date_time` converting constructors from `date` and `time` - added `is_key<>` and is_key_or_convertible<>` metafunctions - exposed `TOML_NAMESPACE_START` and `TOML_NAMESPACE_END` macros to help with ADL specialization scenarios - added encoder and decoder for `toml-test` (closes #125)
1.8 KiB
1.8 KiB
Encoder and Decoder for toml-test
ℹ️ The contents of this directory relate to testing with the toml-test suite, not anything to do with running the library's unit-tests. For information about running the unit-tests see CONTRIBUTING.
Prequisites
For this document to make sense, you will need to:
- Install some recent version of Go
- Follow the installation instructions from the toml-test README to compile the
toml-test
runner - Add
toml-test
as an alias or have it on the system PATH - Clone the toml++ repository's nlohmann/json submodule:
git submodule update --init --depth 1 external/json
- Linux only: Install
ninja
andmeson
:
sudo apt update && sudo apt install -y locales python3 python3-pip ninja-build
sudo pip3 install meson
Building and Testing the Encoder and Decoder
ℹ️ Commands in this section assume the starting directory is the toml++ repository root directory.
Windows with Visual Studio
Open toml++.sln
and build the two projects in the toml-test
solution folder. They'll be compiled in some target-specific subfolder under /bin
in the repo root. Then run toml-test
against them:
toml-test ./bin/win64_vc143_Release_Application/tt_decoder.exe
toml-test ./bin/win64_vc143_Release_Application/tt_encoder.exe --encoder
Linux (and WSL)
# create the meson build target folder (first time only)
meson build_tt --buildtype=release -Dbuild_tt_encoder=true -Dbuild_tt_decoder=true -Dgenerate_cmake_config=false
# build and run
cd build_tt
ninja && toml-test ./toml-test/tt_decoder && toml-test ./toml-test/tt_encoder --encoder