Tristan Jones
65d4b84710
Path ( #156 )
2022-06-04 16:49:26 +03:00
Mark Gillard
39b80f6c56
fixed table source columns being off by one
...
closes #152
also other minor refactors
2022-05-14 15:22:21 +03:00
Mark Gillard
5eec04b951
added value type deduction to emplace()
methods
...
also:
- minor CI work
2022-05-09 00:33:43 +03:00
Mark Gillard
e47ef8cfb2
removed git submodules to fix various tooling issues ( closes #151 )
...
- removed submodules in `external/`
- vendored `Catch2` and `nlohmann/json directly`
- updated conformance test generator to look outside the repo for test sources
2022-05-01 12:20:03 +03:00
Mark Gillard
bf13bbd42e
added for_each()
for tables and arrays
...
also:
- refactoring
- documentation fixes
- updated conformance tests
- made submodules shallow
2022-04-24 21:02:55 +03:00
Mark Gillard
db04ac8918
added tests for visit()
...
Also some minor refactors.
2022-04-23 17:28:25 +03:00
Mark Gillard
6e7942788d
minor refactor
2022-04-18 12:27:54 +03:00
Andrea Pappacoda
a35c7bc631
ci: switch to GitHub Actions
2022-02-12 22:04:16 +02:00
Andrea Pappacoda
029160c280
build(meson): add compile_library option
2022-02-12 22:04:16 +02:00
Andrea Pappacoda
5e6008329f
refactor: deprecate TOML_API, add more specific defines
2022-02-12 22:04:16 +02:00
Mark Gillard
3f4a540ca6
fixed inconsistent error messages for overlong ints/floats ( closes #133 )
...
also:
- added `at_path()` (closes #118 )
- added `node_view::operator==`
- updated conformance tests
2022-01-08 00:08:31 +02:00
Mark Gillard
f3bd22bff4
fixed some incorrect handling of vertical whitespace when printing TOML to streams
...
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 )
2022-01-03 21:01:32 +02:00
Mark Gillard
d9473b85da
updated conformance tests
2022-01-02 21:35:26 +02:00
Mark Gillard
6808825d3f
parser performance improvements
...
also:
- updated msvc toolsets
- minor documentation updates
2021-11-09 13:08:36 +02:00
Mark Gillard
5e2ddc16c8
added clang's enum annotation attributes to all enums
...
also:
- added `CHANGELOG.md`
2021-11-07 16:36:31 +02:00
Mark Gillard
aa645dd88c
added array::replace()
( closes #109 )
...
also:
- minor parser cleanup
- updated conformance tests
- documentation fixes
2021-11-06 18:59:47 +02:00
Mark Gillard
16d7ba8480
big parser + utf8 handling refactor
2021-11-05 00:43:42 +02:00
Mark Gillard
f94de96928
fixed missing #include <utility>
...
also:
- added test for `yaml_formatter`
- formatter refactoring + cleanup
- documentation fixes
2021-11-03 19:11:55 +02:00
Mark Gillard
7b50df796f
added toml::yaml_formatter
...
also:
- fixed parser not correctly round-tripping int format in some cases
- added `TOML_ENABLE_FORMATTERS` option
- added `operator->` to `toml::value`
- refactoring
2021-11-03 12:18:53 +02:00
Mark Gillard
0ffd23d73f
removed final
from value
, array
and table
...
also:
- renamed `TOML_WINDOWS_COMPAT` to `TOML_ENABLE_WINDOWS_COMPAT`
- renamed `TOML_UNRELEASED_FEATURES` to `TOML_ENABLE_UNRELEASED_FEATURES`
- added additional tests
- fixed minor documentation issues
2021-10-31 17:58:42 +02:00
Mark Gillard
87d6c7eef1
renamed default_formatter
to toml_formatter
...
also:
- renamed `TOML_PARSER` option to `TOML_ENABLE_PARSER`
- added `TOML_ENABLE_TOML_FORMATTER` option
- added `TOML_ENABLE_JSON_FORMATTER` option
- added `default_init_flags` param to `array::resize()`
2021-10-30 15:56:14 +03:00
Mark Gillard
f2fe57d21f
fixed inf
and nan
being formatted incorrectly by the json_formatter
...
also:
- added `formatter_flags::quote_infinities_and_nans`
- made constructors for dates/times accept any integral types
- lots of internal work on formatter base (laying groundwork for more customization)
2021-10-29 23:59:53 +03:00
Mark Gillard
97132cb27c
added preserve_source_value_flags
...
also:
- fixed natvis file for v3 namespace
- small refactors
2021-10-29 16:28:04 +03:00
Mark Gillard
1bf09fe500
added value flags to array + table insert methods ( closes #44 )
...
also:
- made single header generation script `#pragma once`-aware
2021-10-29 12:59:59 +03:00
Mark Gillard
467ade4efc
fixed issues with dllexport + extern templates
2021-10-27 19:48:45 +03:00
Mark Gillard
bd9944a31a
removed double-bracket requirement for toml::table
constructor
...
also:
- fixed incorrect `noexcept` specifications on many functions
- fixed missing `#include <initializer_list>`
- removed unnecessary uses of `final`
2021-10-26 23:53:27 +03:00
Mark Gillard
dbc078202d
removed internal operator""_sz (ADL is a cruel mistress)
...
also:
- applied clang-format to tests
- added some missing `TOML_API`
2021-10-26 16:49:23 +03:00
Mark Gillard
7da912c45e
fixed incorrect clang+GCC flag in meson build script
...
also:
- renamed `_impl.h` files to `*.inl`
- simplified warning + namespace management boilerplate
- applied clang-format to examples
- bumped minimum required meson version to `0.54.0`
2021-10-26 00:53:57 +03:00
Mark Gillard
516b8e2096
greatly simplified project header structure
...
also:
- removed `TOML_LARGE_FILES`
- removed unnecessary template machinery (esp. where ostreams were involved)
- made all overloaded operators 'hidden friends'
- documentation fixes
- version bump - this will form the foundation of v3
2021-10-25 01:04:23 +03:00
Mark Gillard
0f589ceba8
added header bookend includes
2021-10-24 13:21:32 +03:00
Mark Gillard
ca76e5d571
project-wide refactoring
...
- moved implementation-only headers to `/impl`
- replaced `[[nodiscard]]` with `TOML_NODISCARD`
- added `.clang-format` + applied to all files
also:
- added support for Unicode 14.0
- fixed minor documentation issues
- version bump (pre-emptive for next release)
2021-10-23 18:20:49 +03:00
Mark Gillard
9aa7cd8218
updated conformance tests (see #113 )
...
also removed the 'modern C++' meme text from various places
2021-09-07 20:02:00 +03:00
Mark Gillard
f3896b7474
fixed an illegal table redefinition edge case ( closes #112 )
...
also:
- fixed incorrect source position in redefinition error messages
- updated conformance tests
2021-09-04 14:52:28 +03:00
Mark Gillard
4f21332bdd
allow lowercase 't' and 'z' in datetimes (per spec)
...
also:
- updated conformance tests
2021-07-04 13:58:33 +03:00
Mark Gillard
ba754462b8
fixed linkage error with windows compat mode
...
also:
- updated conformance tests
2021-06-24 21:08:45 +03:00
Mark Gillard
1c3957ca20
add cpp.hint to cmake install
...
also:
- documentation updates
2021-05-30 18:43:18 +03:00
Mark Gillard
ced65d0a4b
documentation updates
2021-05-23 19:02:27 +03:00
Mark Gillard
1baad21734
removed <fstream>
requirement for parse_file
...
also:
- fixed false-positive char_8 support detection on older compilers
- removed extraneous `TOML_API` declarations
2021-05-19 14:36:25 +03:00
Mark Gillard
a29ecda102
fix crash with pathologically-nested inputs ( closes #100 )
...
also:
- fixed parse_result natvis
- added parse_result default constructor
- added nested value limit example to error printer
2021-05-18 01:39:01 +03:00
Mark Gillard
c4e00f9a56
fix conflict with Windows.h ( closes #99 )
2021-05-14 15:47:35 +03:00
Mark Gillard
dca69453f6
building warning-clean on VS 16.10.0 pre3
...
also:
- made tests build with /Wall on MSVC
- fixed minor documentation error
2021-05-12 00:48:53 +03:00
Mark Gillard
369b36d288
documentation fixes, redux
2021-05-09 19:27:08 +03:00
Mark Gillard
479a550ba7
documentation fixes
2021-05-06 15:56:36 +03:00
Mark Gillard
0fcbfbe655
fixed segfault JSON-formatting a failed parse_result ( closes #96 )
...
also:
- fixed config error in example `.vcxproj` files
- fixed spurious newline after JSON formatting a table
- fixed VS intellisense not detecting TOML_COMPILER_EXCEPTIONS correctly
- moved `parse_result` to a separate header
- made more internal macros require semicolons
- removed some old deprecations
- minor documentation fixes
2021-05-06 14:28:29 +03:00
Mark Gillard
2cee913b6d
fix spurious warnings with MSVC /Wall ( fixes #94 )
2021-04-23 00:51:25 +03:00
Mark Gillard
7a4993029e
CI updates
2021-04-20 23:44:35 +03:00
Mark Gillard
53f29d9365
restructuring and minor refactoring
...
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
2021-04-18 22:58:41 +03:00