Zach Laine
71c697d23d
Convert from Boost.Hana to Hana lite, part 2: introduce a template aliases for
...
constants like llong; provide a tuple accessor get(); use these throughout the
code.
Also, adapt the code in detail/hl.hpp to work with hana::tuple and std::tuple.
2020-09-20 16:05:52 -05:00
Zach Laine
c1205a419d
Convert from Boost.Hana to Hana lite, part 1: introduce a template alias for
...
tuple, and use it throughout the code.
2020-09-20 14:07:49 -05:00
Zach Laine
969de5c23d
Move all the text and stl_interface internal header code into
...
boost::parser::detail namespace.
2020-09-20 03:23:23 -05:00
Zach Laine
5bed6f9776
Make dependency on Boost.Preprocessor optional.
2020-09-19 21:37:45 -05:00
Zach Laine
113270d6f6
Remove dependency on Boost.Any.
2020-09-19 20:43:12 -05:00
Zach Laine
1ed37641e9
Remove dependency on the Spirit headers, via extensive copy/pasta.
2020-09-19 19:55:52 -05:00
Zach Laine
b88e33cc88
Fix narrowing conversion error.
2020-09-10 00:15:42 -05:00
Zach Laine
d8a323a5fb
Fix VC2019 test failures.
2020-09-09 23:42:04 -05:00
Zach Laine
3ac30663b4
Add support for C++17.
2020-09-09 02:45:19 -05:00
Zach Laine
32ebd38270
Exercise the sentinel code path for every parser; fix errors.
...
Fixes #3 .
2020-09-09 02:45:17 -05:00
Zach Laine
19d441743a
Fix the constraints on {callback_,}parse() when called with a pointer to a
...
null-terminated string.
2020-09-09 02:45:15 -05:00
Zach Laine
322bb32b2b
Warning mitigation.
2020-09-06 14:44:49 -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
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
c8a0bab822
First draft of "The parse() API" section.
2020-09-03 00:56:59 -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
12c4f61a6b
Add ill_formed.hpp.
2020-09-01 01:10:28 -05:00
Zach Laine
bf6c5c605f
Add a test of code-point matching when using UTF-8.
2020-08-30 00:31:30 -05:00
Zach Laine
950065b5d2
Range-parse overloads now indicated failure when the entire input is not
...
consumed.
2020-08-29 21:09:50 -05:00
Zach Laine
678f666785
Remove "skip_" from all parse function names, and reorder the parse API
...
functions for clarity. Also, drive-by cleanups in parser_{,api}.cpp.
2020-08-29 19:17:04 -05:00
Zach Laine
c2374adf12
Warning mitigation in test/.
2020-08-29 19:17:04 -05:00
Zach Laine
4b516b9047
Make parser::range a proper view (called "parser::view"), via
...
view_interface. Some drive-by grooming.
2020-08-28 19:09:58 -05:00
Zach Laine
46a2acd18d
Largish changes to get things going again after a long break:
...
- Update text and stl_interface files.
- Flesh out concepts constraints, using C++20 proper instead of cmcstl2.
Remove SFINAE constraints (though SFINAE may make a comback for C++17
support).
- Remove parser concept entirely. Matching parser_interface<...> should
suffice.
- Add CXX_STD to CMake files, a la text and stl_interfaces.
2020-08-28 19:09:45 -05:00
Zach Laine
03e01b9810
Add an API test for the parser API, using the new standalone CMake parser
...
library; fix errors.
2019-11-27 22:28:56 -06:00