2
0
mirror of https://github.com/boostorg/parser.git synced 2026-01-26 18:52:23 +00:00

1077 Commits

Author SHA1 Message Date
Zach Laine
312c71c776 Cruft removal. 2020-09-06 14:48:01 -05:00
Zach Laine
322bb32b2b Warning mitigation. 2020-09-06 14:44:49 -05:00
Zach Laine
af39bd8beb ADL audit.
Fixes #12.
2020-09-06 02:58:23 -05:00
Zach Laine
84ab0327f9 Doc spell checking corrections. 2020-09-06 01:54:17 -05:00
Zach Laine
0b6d631e85 Grooming. 2020-09-06 01:54:17 -05:00
Zach Laine
f843b6aeb2 foo<>::value -> foo_v 2020-09-06 01:54:17 -05:00
Zach Laine
3d23c9d1d7 Use newly-added detail::is_nope_v throughout the implementation. 2020-09-06 01:54:17 -05:00
Zach Laine
673fa56bc6 Remove hana::map as the implementation strategy for the parse context. Use a
plain ol' struct instead.

Fixes #13.
2020-09-06 01:54:17 -05:00
Zach Laine
43f5ac1726 Doc tweak. 2020-09-06 01:12:51 -05:00
Zach Laine
68e2c6daf8 Change detail::callback_skip_parse_impl() not to turn off the use of
callbacks.

Fixes #6.
2020-09-05 17:18:17 -05:00
Zach Laine
f616d38642 Drop support for hna::map as a calblacks parameter to parse(), and change the
passing of tags to callbacks from hana::type<tag> to just tag.

Fixes #5.
2020-09-05 17:09:13 -05:00
Zach Laine
c6ae723be3 Move the UDLs to the end of parser.hpp. 2020-09-05 17:08:32 -05:00
Zach Laine
2386c18441 Copy editing in rationale. 2020-09-05 16:30:57 -05:00
Zach Laine
6f4dec5f76 Implement missing portions of rationale marked TODO. 2020-09-05 13:46:59 -05:00
Zach Laine
b23d2e5f6c Add a definition of none ("struct none{};"), even when
BOOST_PARSER_NO_RUNTIME_ASSERTIONS is defined.  Otherwise, even code that uses
none properly becomes ill-formed.
2020-09-05 13:45:03 -05:00
Zach Laine
faab941450 Add exended JSON parsing example. 2020-09-05 01:49:16 -05:00
Zach Laine
2df1e72f20 Add additional overloads of parse() to fix overload resolution when using
{callback_,}rule as a skipper.
2020-09-05 01:49:16 -05:00
Zach Laine
71f316e243 Forward declare {callback_,}rule. 2020-09-05 01:49:16 -05:00
Zach Laine
0348ed2b69 First draft of section on rules. 2020-09-05 01:49:16 -05:00
Zach Laine
447a2fb1c2 Document how with_{globals,error_handler}() work in The parse() API. 2020-09-04 03:00:02 -05:00
Zach Laine
aad66c39f2 Explain how to define parsers from {u,}int_parser directly. 2020-09-04 02:40:21 -05:00
Zach Laine
080b89f920 Add a short example using a rule before we get into the weeds. 2020-09-04 02:23:29 -05:00
Zach Laine
1a17be97c6 Doc copy editing. 2020-09-03 23:27:58 -05:00
Zach Laine
454a84d3d3 Make the Jamfile look a lot more like the ones in yap and stl_interfaces. 2020-09-03 23:01:26 -05:00
Zach Laine
1396b4023b Add section to Rationale about why attribute types are intended to be flexible. 2020-09-03 23:00:43 -05:00
Zach Laine
35113f30ad Add TODOs. 2020-09-03 23:00:16 -05:00
Zach Laine
24d3003352 Rework the tracing code quite a bit, to fill in gaps and correct misleading
output.

Fixes #11.
2020-09-03 22:46:02 -05:00
Zach Laine
c8a0bab822 First draft of "The parse() API" section. 2020-09-03 00:56:59 -05:00
Zach Laine
85ba0efada Sketch in much of the Combining Operations section. 2020-09-02 02:34:56 -05:00
Zach Laine
6e9009a40c Add {sequence,alternative} parser to Terminology. 2020-09-02 01:33:29 -05:00
Zach Laine
bfc94c8019 Doc copy editing. 2020-09-02 01:20:23 -05:00
Zach Laine
b4e06b5882 First draft of "Directives" section. 2020-09-02 01:13:47 -05:00
Zach Laine
43a787922b Sketch in part of Rules section about _p, so it doesn't get forgotten. 2020-09-01 23:43:54 -05:00
Zach Laine
793728fad1 Add missing callable parser overloads to the big ol' table. 2020-09-01 23:43:20 -05:00
Zach Laine
93ad65ad1f Add BOOST_PARSER_ASSERT(), and use it in place of several static_asserts.
Fixes #9.
2020-09-01 23:03:17 -05:00
Zach Laine
0a259038cf Fix broken reordering of concepts. 2020-09-01 22:53:56 -05:00
Zach Laine
3101a42a75 Add repeat() to the parsers in "The Parsers And Their Uses", and fix several
errors elsewhere in the docs.
2020-09-01 22:41:44 -05:00
Zach Laine
6b449dff0e Add concepts section to docs. 2020-09-01 22:17:33 -05:00
Zach Laine
442a17b5d6 Remove a rethought TODO. 2020-09-01 22:04:31 -05:00
Zach Laine
1f6e62c6fb First draft of "The Parsers And Their Uses" section. 2020-09-01 22:03:01 -05:00
Zach Laine
711bc9e2b3 - eol_parser -> ws_parser
- ws_parser does all whitespace (according to the Unicode White_Space
  property) or just eol, depending on parameterization.
- Add ws, a parser object that uses the all-whitespace mode of ws_parser.
- Fix an error in the constraints on *parse(); iterators over char8_t (and not
  just pointers) now properly fall under the Unicode parsing path.

Fixes #4.
2020-09-01 21:52:28 -05:00
Zach Laine
858f723d14 Correct an error in the docs about the attribute type of ascii::*. 2020-09-01 01:28:22 -05:00
Zach Laine
852559ce67 static_assert inside the prase() overloads that take an attr out-param that
the parser generates an attribute.

Fixes #2.
2020-09-01 01:24:12 -05:00
Zach Laine
4b77624f22 Bring detection.hpp into sync with Boost.Text. 2020-09-01 01:11:12 -05:00
Zach Laine
12c4f61a6b Add ill_formed.hpp. 2020-09-01 01:10:28 -05:00
Zach Laine
f5244bb547 Put the contents of detection.hpp in detail. 2020-08-31 23:07:19 -05:00
Zach Laine
53542cb69a assert -> BOOST_ASSERT 2020-08-31 22:08:17 -05:00
Zach Laine
fba753eecf Finish the first draft of the attribute generation docs. 2020-08-31 22:02:39 -05:00
Zach Laine
869a9fc003 detail::container -> container 2020-08-31 22:02:39 -05:00
Zach Laine
ac29f85e15 Address TODOs in compile_attribute.cpp. 2020-08-31 22:02:39 -05:00