Zach Laine
3487211426
Use a more compelling example in the example code for replace().
...
Fixes #96 .
2024-02-19 21:50:36 -06:00
Zach Laine
c12c512a94
Call out the constraint on the ReplacementV template parameter to replace().
...
Partially addresses #97 .
2024-02-19 21:33:52 -06:00
Zach Laine
4287c9b7b3
Fix transform_replace* in C++20 mode on GCC < 12.
2024-02-11 18:56:59 -06:00
Zach Laine
b6b77bac3c
Explain more fully in More about Rules that you need to write a semantic
...
action sometimes for a rule, and under what cirumstances you do.
Fixes #93 .
2024-02-11 16:46:47 -06:00
Zach Laine
f326cd9d23
Add a note about using "| join" to the transform_replace docs.
2024-02-11 16:10:00 -06:00
Zach Laine
ab20bdd87f
Add note about how to write a lambda directly in a semantic action. Modify
...
the claim that directives can be spotted by looking for "[]", by mentioning
the exception of semantic actions.
Partially addresses #93 .
2024-02-11 16:08:32 -06:00
Zach Laine
2f8270809c
Disable transform_replace* for GCC < 12 in C++20 mode.
2024-02-11 00:24:39 -06:00
Zach Laine
d0208fb12c
Add transform_replace range adaptor and transform_replace_view.
2024-02-10 18:42:18 -06:00
Zach Laine
bb3f66db5f
Document The incompatibility of tuple->aggregate conversions with assignment
...
to variants.
Fixes #91 .
2024-02-04 16:16:47 -06:00
Zach Laine
09322b8eb6
Add more information about problematic alternative parsers.
...
Fixes #92 .
2024-02-04 16:16:47 -06:00
Zach Laine
47061a8716
Remove some stray references to the now-removed ascii:: namespace parsers.
2024-01-31 20:31:35 -06:00
Zach Laine
4b59719e44
Add Unicode versions of most of the ascii namespace parsers; remove the ascii
...
namespace.
2024-01-29 23:36:03 -06:00
Zach Laine
68c33a0181
Address TODO about non-obviously ill-formed code using merge[].
2024-01-28 20:54:28 -06:00
Zach Laine
b58b3a0779
Address TODO about documenting the unavailability of replace{,_view} on MSVC
...
in C++17 mode.
2024-01-28 20:54:24 -06:00
Zach Laine
5b7889df61
Address a TODO about documenting part of the loose attribute match behavior.
2024-01-28 20:54:22 -06:00
Zach Laine
935165b798
Explain more fully why error messages are only generated at failed expectation
...
points.
Fixes #80 .
2024-01-28 20:54:16 -06:00
Zach Laine
e7efe90a03
In detail::assign, static_assert that the assignment is not arithmetic-type ->
...
std::string.
Fixes #76 .
2024-01-28 01:17:06 -06:00
Zach Laine
4380d278aa
Make it clearer, in both sections about rules, that not providing an attribute
...
template paramter implies that the rule has no attribute.
Fixes #75 .
2024-01-28 01:16:59 -06:00
Andrzej Krzemieński
9fead755ca
docs: typo in __no_case
2024-01-27 12:34:06 -06:00
Zach Laine
a68d4f61b2
Add replace_view and range adaptor replace.
2024-01-22 01:11:17 -06:00
Zach Laine
a68c1d3187
Add documentation section on algorithms views and view adaptors, to document
...
search(), search_all, and split.
Partially addresses #64 .
2024-01-20 03:11:43 -06:00
Zach Laine
591ac9921b
Remove BOOST_PARSER_DEFINE_RULE now that BOOST_PARSER_DEFINE_RULES is always
...
available.
Partially addresses #71 .
2024-01-19 21:06:33 -06:00
Zach Laine
ce7804a003
Refer to the text asociated with a rule as diagnostic text rather than a name,
...
in the code and the docs.
Fixes #72 .
2024-01-19 20:54:58 -06:00
Zach Laine
4c3e0a7448
Add another reason for using rules -- callback parsing.
2024-01-19 20:54:51 -06:00
Zach Laine
ffdc3f967b
Add docs for the new automatic subitutability of non-aggregate class types for
...
tuples.
Partially addresses #49 .
2024-01-19 20:15:07 -06:00
Zach Laine
c2ba50de51
Add a note to the beginning of Attribute Generation about the assumption that
...
attribute types are semiregular.
Fixes #65 .
2024-01-15 16:46:58 -06:00
Zach Laine
d28ac53d9f
Fix "next section" that moved in the docs, by naming the exact section.
...
Thanks, Andrzej!
2024-01-15 16:37:43 -06:00
Zach Laine
92c16cbfae
Add section about writing your own parsers.
...
Fixes #58 .
2024-01-15 16:19:39 -06:00
Zach Laine
d59e0528b2
Consolidate documentation on eror handlers into the Error Handling and
...
Debugging section, and add an example of how to write your own error handler.
Fixes #43 .
2024-01-15 02:28:50 -06:00
Zach Laine
9187bf851e
Add section on raw[] and string_view[] to docs.
...
Fixes #59 .
2024-01-14 20:57:43 -06:00
Zach Laine
36ef6d1ae7
Add missing mention of merge[] and separate[] to the Directives section of the tutorial.
2024-01-14 20:57:43 -06:00
Zach Laine
8a9a851acb
Restore an example of how loose attribute rules are looser at the top-level parse than within the middle of the parse.
...
Partially addresses #61 .
2024-01-14 16:18:19 -06:00
Zach Laine
92be502e79
Copy editing.
2024-01-14 16:18:19 -06:00
Zach Laine
fe06d6b477
Doc thinko.
2024-01-14 16:18:19 -06:00
Zach Laine
1715433a4e
Explain that or_parser deduplicated the template parameters of its std::variant attributes.
...
Fixes #62 .
2024-01-14 16:18:19 -06:00
Zach Laine
d17268dec7
Add section about merge[] and separate[] to the docs.
...
Partially addresses #55 .
2024-01-14 02:45:05 -06:00
Zach Laine
c8ce2cace5
Add a special seq_parser combining rule that makes a std::string ot of two
...
adjacent char/char32_t values.
Partially addresses #55 .
2024-01-11 19:24:43 -06:00
Zach Laine
b6ffe5fbe3
Change detail::sequence_of and detail::container_and_value_type so that they
...
generate std::strings from repeated char32_ts and combine char32_ts with
adjacent strings. Update docs accordingly.
Partially addresses #55 .
2024-01-10 22:17:53 -06:00
Zach Laine
a8dc1f4cb8
Flesh out the More About Rules page.
...
Fixes #39 .
2024-01-09 23:06:18 -06:00
Zach Laine
cb5a5da717
In Rule Parsers, explain that the generated overloads of parse_rule() are not
...
something the user ever needs to use, and but a link to the more detailed
section on Rules at the end of the section.
Partially addresses #39 .
2024-01-09 23:06:16 -06:00
Zach Laine
98daf46a5e
Add more explanatory text to Parsing In Detail.
...
Partially addresses #41 .
2024-01-08 18:14:32 -06:00
Zach Laine
1bb76b13bd
Add a description of operator> to the Backtracking section.
...
Fixes #42 .
2024-01-07 22:54:00 -06:00
Zach Laine
43d65d3e4a
Add new doc sections Parsing in Detail and Backtracking that describe those
...
semantics, and how parsers are represented in code.
Fixes #41 .
Fixes #35 .
2024-01-07 22:32:27 -06:00
Zach Laine
a6c4cb14b1
Introduce op% early, and use it instead of its long-form equivalent in the
...
rest of the docs.
Fixes #46 .
2024-01-07 01:15:24 -06:00
Zach Laine
86cfa03dde
Replace eplxicit max aggregate size of 50 with reference to
...
BOOST_PARSER_MAX_AGGREGATE_SIZE.
Partially addresses #51 .
2024-01-07 01:15:22 -06:00
Zach Laine
6f06bc4189
Add no_case[] docs.
2024-01-06 02:36:26 -06:00
Zach Laine
0b7891d9cd
Add a note to the "Parsing structs" section of the docs, indicating the
...
50-member limit on automatic use of structs as tuple.
Fixes #48 .
2024-01-04 19:38:47 -06:00
Zach Laine
60cea9aa29
Fix broken docs.
...
Partially addresses #28 .
2024-01-03 23:44:40 -06:00
Zach Laine
d60d33e40b
Finish implementing support for parsing into structs as if they were tuples.
...
This makes it possible to map from sequence parsers onto structs with no
semantic actions. Also, add a doc section describing how parsing structs
works (including a couple of short example programs).
Fixes #45 .
Partially addresses #28 .
2024-01-03 23:24:37 -06:00
Zach Laine
0e78ea2d26
Remove the T >> T -> std::vector<T> attribute combining rule from seq_parser.
2024-01-03 02:04:04 -06:00