When building tests, Meson will now look for system dependencies and use
them if found. Otherwise, it will check if the submodules are cloned and
create a dependency object wrapping the include path of each external
dependency (this breaks Meson's sandbox, but the previous approach did
too). This also allows passing actual dependencies to the various build
targets instead of include paths (a bit more idiomatic).
I've also made it possible to skip the tl-optional tests when the lib is
not found, so that it is still possible to run tests even from a
tarball (i.e. no git checkout)
There's no new functionality here. It's purely tooling + CI stuff:
- moved `python` => `tools`
- moved documentation images to subfolder
- moved `vs/tests` to tests/vs projects
- moved `vs` solution etc to root
- added semicolons to macros
- added cpp.hint to help VS intellisense
- migrated documentation generation to external lib
- moved the main page to a separate dox file
- added integration section to homepage
- improved some of the examples
- formatting fixes
- added note about python wrapper (closes#36)
also:
- merged all the separate integer parsing functions
- renamed the member functions of parse_error for clarity
- added the beginnings of a doxygen pipeline
new file: .editorconfig
new file: .gitattributes
new file: .gitignore
new file: .gitmodules
new file: LICENSE
new file: README.md
new file: examples/example.cpp
new file: examples/example.toml
new file: examples/meson.build
new file: include/toml++/toml.h
new file: include/toml++/toml_array.h
new file: include/toml++/toml_common.h
new file: include/toml++/toml_formatter.h
new file: include/toml++/toml_node.h
new file: include/toml++/toml_node_view.h
new file: include/toml++/toml_parser.h
new file: include/toml++/toml_table.h
new file: include/toml++/toml_utf8.h
new file: include/toml++/toml_utf8_generated.h
new file: include/toml++/toml_value.h
new file: meson.build
new file: python/ci_single_header_check.py
new file: python/generate_single_header.py
new file: python/generate_unicode_functions.py
new file: tests/catch2
new file: tests/catch2.h
new file: tests/lifetimes.cpp
new file: tests/main.cpp
new file: tests/meson.build
new file: tests/parsing_arrays.cpp
new file: tests/parsing_booleans.cpp
new file: tests/parsing_comments.cpp
new file: tests/parsing_dates_and_times.cpp
new file: tests/parsing_floats.cpp
new file: tests/parsing_integers.cpp
new file: tests/parsing_key_value_pairs.cpp
new file: tests/parsing_spec_example.cpp
new file: tests/parsing_strings.cpp
new file: tests/parsing_tables.cpp
new file: tests/tests.cpp
new file: tests/tests.h
new file: toml.hpp
new file: vs/.runsettings
new file: vs/example.vcxproj
new file: vs/test_char.vcxproj
new file: vs/test_char8.vcxproj
new file: vs/test_char8_noexcept.vcxproj
new file: vs/test_char_noexcept.vcxproj
new file: vs/test_strict_char.vcxproj
new file: vs/test_strict_char8.vcxproj
new file: vs/test_strict_char8_noexcept.vcxproj
new file: vs/test_strict_char_noexcept.vcxproj
new file: vs/toml++.natvis
new file: vs/toml++.props
new file: vs/toml++.sln
new file: vs/toml++.vcxproj
new file: vs/toml++.vcxproj.filters