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

1008 Commits

Author SHA1 Message Date
Zach Laine
88abb615aa Add pre_- and post_parser members to parser_modifiers; these are used as
look-ahead/-behind positive or negative assertions.

When combining parsers using op>> and op>, if either side is an expect_parser
and the other side has an open pre_-/post_parser slot, take the subparser out
of the expect_parser, and use it directly in the pre_-/post_parser slot.

See #160.
2024-12-16 19:24:39 -06:00
Zach Laine
54f8eecfe6 Change the no_case[] directive to use the parser_modifiers struct, like omit[]
does; remove no_case_parser.

See #160.
2024-12-16 19:24:39 -06:00
Zach Laine
fcd257abca Generalize with_parser_mods(), so that some functions can be recursive, and
others can be non-recursive.

See #160.
2024-12-16 19:24:39 -06:00
Zach Laine
2f7e5964a6 Apply the same sort of change as the previous two commits, but to all the
parsers not already modified.  Generalize with_parser_mods().  Remove
omit_parser, since it is now moot.

See #160.
2024-12-16 19:24:39 -06:00
Zach Laine
2fff00b3e1 Change string_parser to support the use of parser_modifiers, and change lit()
to return a parameterized string_parser instead of string_parser wrapped in an
omit_parser.

See #160.
2024-12-16 19:24:39 -06:00
Zach Laine
28e9b61735 Add a new template, parser_modifiers, that will hold common modifications to
parsers, like turning off attribute generation (replacing omit_parser).
Change char_parser to support the use of parser_modifiers, and change lit() to
return a parameterized char_parser instead of char_parser wrapped in an
omit_parser.

See #160.
2024-12-16 19:24:39 -06:00
Zach Laine
354586dd76 Github runner macos-12 -> macos-13. 2024-12-16 19:24:39 -06:00
Zach Laine
305bba875b Grooming. 2024-12-09 01:57:04 -06:00
Zach Laine
f468d529fe Fix stale comment in doc example. boost-1.87.0 2024-11-29 16:29:20 -06:00
Zach Laine
b5d4339f2c Fix semicolon-delimited bullet list in parsers table. 2024-11-29 16:29:13 -06:00
Zach Laine
6d7fa6f105 Add missing Docbook tag to fix broken reference in docs. 2024-11-29 16:20:14 -06:00
Mohammad Nejati
c975f57908 Add index.html
This redirects links pointing to the root directory to the documentation
page, such as:
https://www.boost.org/doc/libs/develop/libs/parser/
2024-11-27 20:10:11 -06:00
Zach Laine
063291b78c Correct the parser used in the second half of the "Parse Into a Class"
example.

Fixes #206.
2024-11-24 22:55:21 -06:00
Zach Laine
3eb827dcd6 Fix error in seq_parser::append() that causes AllowBacktracking=false to be treated as =true. 2024-11-14 22:49:51 -06:00
Zach Laine
6d796287b6 Disable the tests for in-Boost builds. 2024-11-13 20:54:34 -06:00
Zach Laine
bb0fb885b8 Doc update for previous symbol table changes.
Related to #183.
boost-1.87.0.beta1
2024-10-31 23:26:07 -05:00
Zach Laine
94a9daec40 Change the way that the pending operations are applied to symbol table
parsers.  Instead of trying to find all of them at the start of the top-level
parse, they are recorded in the context, and then applied at the end of the
top-level parse.  The previous technique did not work, simplt because the
top-level parse cannot see all the parser involded -- some are behind rule
firewalls, by design.

Related to #183.
Fixes #204.
2024-10-31 23:07:17 -05:00
Zach Laine
4344dd3f47 Remove mooted TODOs. 2024-10-31 23:07:17 -05:00
Vernon Mauery
a7c7470bc1 Remove unused lambda capture
str is unused in the lambda; remove it from the capture

Signed-off-by: Vernon Mauery <vernon.mauery@intel.com>
2024-10-27 14:54:56 -05:00
Zach Laine
b273133fd2 Remove Hana dependency note from README. 2024-10-23 19:35:19 -05:00
Zach Laine
3a7ddcf936 Remove doc link from README. 2024-10-23 19:33:07 -05:00
Marshall Clow
d79efb0daa Update README.md 2024-10-23 19:25:31 -05:00
Zach Laine
9b03f3c1f9 Remove " (Proposed)" from docs.
Fixes #199.
2024-10-03 20:06:47 -05:00
Zach Laine
446d09dc5d Update README.md badges. 2024-10-03 19:31:46 -05:00
Zach Laine
f2aa039282 Document newly-added operations in the Mutable Symbol Tables page of the docs.
Documentation for #183.
2024-10-03 19:23:46 -05:00
Zach Laine
1e64b6e416 Add insert/erase/clear operations on symbol tables for the current parse and
subsequent parses both. Add better tests for the added API and the previous
subset of the operations already present. Fix errors revealed by the tests.

Fixes #183.
2024-10-03 17:56:00 -05:00
Zach Laine
41fb3997ba Remove official support for VS 2019. 2024-10-03 17:56:00 -05:00
Zach Laine
23017af526 Remove support for direct use of null-terminated strings with the parser APIs.
Fixes #175.
Fixes #190.
2024-10-02 20:28:50 -05:00
Martin Posch
274e4e36ea Revert "avoid usage of CMAKE_CXX_COMPILER_FRONTEND_VARIANT and go with pre 3.14 version"
This reverts commit eab545e5b4.
2024-10-01 00:47:53 -05:00
Martin Posch
9d3647db3d avoid usage of CMAKE_CXX_COMPILER_FRONTEND_VARIANT and go with pre 3.14 version 2024-10-01 00:47:53 -05:00
Martin Posch
568494346a remove commented-out cmake 2024-10-01 00:47:53 -05:00
Martin Posch
f12e6a4882 quotes were missing for string comparison; use alternative compiler frontend check 2024-10-01 00:47:53 -05:00
MPo
912bfbded6 Fix MSVC Compiler issue.
MSVC in cmake has always been a boolean variable ( see https://cmake.org/cmake/help/latest/variable/MSVC.html)
detecting the MSVC Compiler requires therefore "if (MSVC)"

further, the MSVC Compiler will always emit '199711L' for __cplusplus, if it is called without the option '/Zc:__cplusplus'

this odd behavior will break any version check in the headers.
e.g. './include/boost/parser/detail/text/detail/begin_end.hpp' or 'boost/hana/traits.hpp

therefore "add_compile_options(/Zc:__cplusplus)" is always nrequired for the MSVC compiler
2024-10-01 00:47:53 -05:00
Zach Laine
8f5b84ded5 Fix __clang__/__clang_major__ confusion when trying to define language feature
macros in terms of Clang major version number.

Fixes #168.
2024-09-30 18:10:05 -05:00
Zach Laine
8accdd922f Fix ignored USE_{A,UB}SAN in CMake files. 2024-09-30 18:08:09 -05:00
Zach Laine
71eeb36272 Remove the broken use of alias CTAD from the transcoding views.
Fixes #193.
2024-09-30 18:06:46 -05:00
Zach Laine
7ae86c1a0c Fix macro guard on s1_boost_variant2 tuple_aggregate test.
Fixes #179.
2024-09-30 17:44:28 -05:00
Martin Posch
e35d066f44 Avoid Compiler Warning. move declaration of 'buf' into region of #if BOOST_PARSER_DETAIL_TEXT_USE_CONCEPTS as it is only used there. 2024-09-30 12:48:12 -05:00
Martin Posch
b1b7b221c7 Avoid Compiler Warning. move declaration of 'buf' into region of #if BOOST_PARSER_DETAIL_TEXT_USE_CONCEPTS as it is only used there. 2024-09-30 12:48:12 -05:00
Martin Posch
d45b964cb1 fix boost build b2.exe for non-msvc compilers in win32.
propagate the selected compiler from cmake down to the boost bootstrap process
2024-09-30 12:47:14 -05:00
Zach Laine
2a9687f22f Fix __clang__/__clang_major__ confusion when trying to define language feature
macros in terms of Clang major version number.

Fixes #168.
2024-09-29 14:28:22 -05:00
Zach Laine
edd802ea8f char8_type -> unsigned char in UTF8 -> UTF32 implementation in
utf_iterator::decode_code_point() to mitigate warnings.

Fixes #167.
2024-09-29 14:28:22 -05:00
Zach Laine
75c29c0378 Add missing implementations for hidden friends in project_view::iterator (op==
and op-).

Fixes #169.
2024-09-29 14:28:22 -05:00
Zach Laine
6b0194d7d6 Just use 'make check' to run tests on Github actions for every configuration
but Win+MSVC; the tests previously were not being run at all!
2024-09-29 14:27:00 -05:00
Zach Laine
4cea9c03d6 Remove -Werror from Fedora Github action builds. 2024-04-01 16:00:31 -05:00
Jannik Glückert
058fb68314 unix: disable boost windres usage
windres outputs object files that get rejected by stricter ld
configurations used in some distros
res.o:(.rsrc$01+0x48): dangerous relocation: R_AMD64_IMAGEBASE with __ImageBase undefined
2024-04-01 15:58:58 -05:00
Jannik Glückert
5864eee3be fix CI clang warnings in tests 2024-04-01 15:58:58 -05:00
Jannik Glückert
6eeed0dce9 modernize MacOS CI & update checkout actions 2024-04-01 15:58:58 -05:00
Jannik Glückert
d25207c0ee simplify Windows CI 2024-04-01 15:58:58 -05:00
Jannik Glückert
d7593f7960 simplify Ubuntu CI 2024-04-01 15:58:58 -05:00