Commit Graph

42 Commits

Author SHA1 Message Date
Mark Gillard
d46cac705a fixed #197
also:
- fixed `noexcept(...)` sometimes being incorrectly derived on `for_each()
- refactors
2023-09-05 13:53:23 +03:00
Mark Gillard
882d9d1c34 fixed gnu symbol visibility for static lib builds (fixes #201)
also:
- renamed header files to .hpp
- updated conformance tests
- minor documentation fixes
2023-08-26 17:41:29 +03:00
Mark Gillard
2414d904a8 fixed value_flags not preserved during insertion (#108)
also:
- fixed `toml::value::flags()` not being cleared when `std::move`-ing a value
- fixed #195
2023-04-03 19:34:39 +03:00
Mark Gillard
8f31ec8aed fixed #187
also:
- fixed #188
- fixed #189
- updated conformance tests
- version bump
2023-01-29 17:49:41 +02:00
Claude Heiland-Allen
698285d9b2
fix build with mingw g++ 10 (#183)
Fixes https://github.com/marzer/tomlplusplus/issues/182
2022-12-20 13:11:30 +02:00
Mark Gillard
cc741c9f5f fixed toml::parse_file() on windows for non-ASCII paths
see: https://github.com/PrismLauncher/PrismLauncher/issues/226
2022-11-05 16:21:48 +02:00
Mark Gillard
7876c96aae fixed parser null deref when exceptions are disabled
closes #169
2022-08-31 14:49:23 +03:00
Mark Gillard
501a80e231 preprocessor + CI cleanup
also:
- minor refactors in path
- updated conformance tests
2022-07-31 18:34:53 +03:00
Mark Gillard
0058d68bbc added node::operator[] for toml::path
also:
- added missing relational operators for `source_position`
- TOML_CHARCONV cleanup (was too keen)
- minor refactors
2022-06-06 23:46:04 +03:00
Mark Gillard
0f5d986df1 added TOML_CALLCONV config option 2022-06-06 12:21:46 +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
af637f7e89 Updated support for unicode in bare keys
Now matches toml/pull/891.
2022-04-23 12:58:15 +03:00
Mark Gillard
6e7942788d minor refactor 2022-04-18 12:27:54 +03:00
Ivan Shynkarenka
31cf6efbb9
clang 10.0: error: unknown warning group '-Wsuggest-destructor-override' #145 (#146)
Co-authored-by: Ivan Shynkarenka <Ivan_Shynkarenka@epam.com>
2022-03-14 12:21:36 +02:00
Mark Gillard
5b79305c6e Add support for \e (toml-lang/toml/pull/790) 2022-03-06 16:09:14 +02:00
Mark Gillard
1c26ce1dcf fixed UB in internal unicode machinery (closes #144)
also:
- updated conformance tests
- added ubsan options to meson.build
2022-02-26 18:07:11 +02:00
Mark Gillard
d33da0c7a1 release v3.0.0 2022-01-11 18:22:31 +02:00
Mark Gillard
e37e6d2bce fixed treating non-ASCII horizontal whitespace as valid (closes #135)
also:
- added `parse_result::at_path()`
2022-01-09 13:01:56 +02:00
Mark Gillard
f6ce95907e fixed integer overflow issues introduced in 3f4a540
closes #134
2022-01-08 15:17:12 +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
47241d003e fixed permissive acceptance of incomplete CRLF at EOF (closes #132)) 2022-01-05 18:10:50 +02:00
Mark Gillard
7d3770df92 fixed inline tables being mutable through table headers (closes #131) 2022-01-05 16:56:08 +02:00
Mark Gillard
de2413e0ef fixed date parsing when the year has a leading zero (closes #130)
also:
- fixed omitting value part from hex/bin/oct being accepted without error (closes #129)
- added spec bug github template
2022-01-05 12:45:59 +02:00
Mark Gillard
b41e12f736 fixed incorrect unicode scalar sequence transformations (#125)
also:
- fixed extended-precision fractional times causing parse error instead of truncating per the spec (closes #127)
- fixed some non-spec vertical whitespace being accepted as line breaks (closes #128)
- added `format_flags::allow_unicode_strings`
2022-01-04 23:58:22 +02:00
Mark Gillard
d9473b85da updated conformance tests 2022-01-02 21:35:26 +02:00
Mark Gillard
2d1f6257ca fix for internal over-aligned types on apple clang
they made their compiler a walled-garden too?? fucking assholes
2021-11-25 22:41:56 +02:00
Mark Gillard
9066ac7d01 fixed strong exception guarantee edge-cases
also:
- added `value` copy+move constructor overloads with flags override
`table::ref()` now supports explicit ref categories and cv-qualifiers
2021-11-14 19:24:19 +02:00
Mark Gillard
64dd1dbac5 refactoring 2021-11-11 17:54:40 +02:00
Mark Gillard
209e9b6faa added toml::key (closes #82)
also:
- added `table::lower_bound()`
- added `table::emplace_hint()`
- changed `table` key type to `toml::key`
- clarified value initializer static assert messages
- lots of misc refactoring
2021-11-10 22:07:05 +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
ff6f184d30 added parse_benchmark example
also:
- internal parser refactoring
2021-11-04 11:56:03 +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
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