2
0
mirror of https://github.com/boostorg/parser.git synced 2026-01-19 16:32:13 +00:00
Commit Graph

13 Commits

Author SHA1 Message Date
Andreas Buhr
6db68bc7f7 add test for constexpr switch_parser
The test led to the following error before:
github_issues.cpp(522): error C3615: constexpr function
'boost::parser::switch_' cannot result in a constant expression
2025-11-25 12:02:18 -06:00
Zach Laine
885595f7bd Parse the attribute of quoted_string into a temporary, and assign at the end,
if successful.  This makes the code well-formed when the attribute type is an
optional.

Addresses PR #290.
2025-11-15 16:39:34 -06:00
Zach Laine
0eacce6080 Add special-casing of nope attributes in seq_parser, so that seq_parser does
not assign over valid values in a sequence's attribute after successfully
parsing a subsquent nope-attributes parser.

Test cases by Andreas Buhr.

Fixes #279
Fixes #285
2025-10-31 15:36:22 -05:00
Zach Laine
5e61ba4e9e Fix C++17 builds. 2025-10-31 14:25:38 -05:00
Zach Laine
dc6144eeb4 Correct tuple/struct confusion in the logic of the if constexpr chain in
perm_parser.

Test case by Andreas Buhr.

Fixes #268.
2025-10-31 12:37:40 -05:00
Zach Laine
41e891dc95 In opt_parser, don't forget to clear the attribute if the subparser fails.
Fixes #279
2025-10-13 17:46:27 -05:00
Zach Laine
c674e94c3d Don't reuse the attribute-generating path in rule_parser's out-param overload
of call.  Doing so was wiping out previous partial results, in cases like foo
>> bar, where foo produces a T, and bar is a rule that produces vector<T>.

Fixes #248.
2025-07-27 17:50:38 -05:00
Zach Laine
84ee288b02 Attempt to fix odd error in happy path of code submitted with issue 223. 2025-07-26 21:13:33 -05:00
Zach Laine
5d6d2f7b84 Add missing special case for parsing a sequence of optional<T>s, writing the
results into a sequence container of Ts.

Fixes #223.
2025-07-26 20:15:15 -05:00
necessarily-equal
b253d9ca53 Add unicode symbols parser (#213)
* Add symb parser to handle unicode symbols

* Add documentation for symb

* Add tests for symb

* Fix typo in the documentation

---------

Contributed by: Antoine Fontaine <antoinefontaine@posteo.net>
2025-02-20 23:51:17 -06:00
Zach Laine
57cdd78210 Properly sort the code point values in detail::char_set<punct_chars>.
Fixes #209.
2024-12-23 17:28:07 -06:00
Jannik Glückert
5864eee3be fix CI clang warnings in tests 2024-04-01 15:58:58 -05:00
Zach Laine
8e39ad067b Change tests from GTest to Boost.Test. Remove Goolge.{Test,Benchmark}.
Fixes #165.
2024-03-24 22:29:10 -05:00