2
0
mirror of https://github.com/boostorg/parser.git synced 2026-01-24 06:02:12 +00:00
Commit Graph

170 Commits

Author SHA1 Message Date
Zach Laine
b56461684b Add yaml::value test. 2019-10-30 19:39:24 -05:00
Zach Laine
9f8c121731 Add json::value test. 2019-10-29 23:28:40 -05:00
Zach Laine
af7f88b677 Make parse API 4x smaller by:
- making trace (formerly debug) mode a runtime parameter; and

- adding a with_error_handler() (a la with_globals()) fundiotn, and using that
  instead of passing an optional error_handler parameter to the parse
  functions.
2019-10-28 21:13:07 -05:00
Zach Laine
0d583b96b0 Add if_ and switch_, and tests for same. 2018-10-24 22:54:07 -05:00
Zach Laine
4d8239fa06 Add test of new lazy param handling; fix numerous errors. 2018-10-24 22:53:56 -05:00
Zach Laine
489f8f69d9 Zach Laine -> T. Zachary Laine 2018-10-23 23:52:05 -05:00
Zach Laine
515896d424 Add a test of the new paramerized rule system; fix an error. 2018-10-23 17:33:16 -05:00
Zach Laine
a6a0826f22 Add bool_parser case to parser.cpp test. 2018-10-22 23:42:19 -05:00
Zach Laine
5631c57eac Change rule_parser's handling of given attributes so that the parser always
produces results in its attribute type; also regularize the modification of
contexts for use in rules.
2018-10-21 20:21:39 -05:00
Zach Laine
12e9941b9f Add initializer list ctor to symbol_parser. 2018-10-19 20:31:59 -05:00
Zach Laine
c7d9dc38c6 Make symbol_parser concurrency-safe to use from different calls to *parse() on
different threads.
2018-10-19 19:49:17 -05:00
Zach Laine
da64c7b52b Change callback rules to behave as normal rules when not used within
callback_*parse().
2018-10-18 20:56:52 -05:00
Zach Laine
d07dfa203c Get serious about covering all cases of assignment from nopes in parsers; add
no-attribute case support to callback rule_parser.
2018-10-18 20:56:49 -05:00
Zach Laine
ea0440f6fa Add plumbing to enable unification of the use of regular and callback rules. 2018-10-18 20:56:45 -05:00
Zach Laine
3c2c99ae73 Add callback_parse() and callback_rule. 2018-10-17 20:18:58 -05:00
Zach Laine
c64aa1d441 Disable the generated tests, now that they all pass. 2018-10-17 00:21:32 -05:00
Zach Laine
4b9ac8073a Add parser_action test. 2018-10-17 00:19:24 -05:00
Zach Laine
1bbda8ea17 Fix more errors in generated parser tests. 2018-10-17 00:14:22 -05:00
Zach Laine
782632b967 Reinstate checks that failed parses do not write into attribute out-params. 2018-10-16 00:17:26 -05:00
Zach Laine
ce53bf1d41 Fix errors in seq_parser::combine and the associated logic in the parser test
generation.
2018-10-15 17:33:11 -05:00
Zach Laine
48fb282ff9 To each generated parser test, add a check that a failed parse does not mutate
an attribute out-param.
2018-10-15 00:14:27 -05:00
Zach Laine
ff5e1e4075 Cruft removal. 2018-10-15 00:13:12 -05:00
Zach Laine
09ed907c75 Add test for rules; fix errors. 2018-10-15 00:12:07 -05:00
Zach Laine
7570418d5a Add passing and failing parses to generated test files; fix errors. 2018-10-14 17:22:45 -05:00
Zach Laine
d4266b464e Add generation of expected type to the generated parser tests; fix errors. 2018-10-14 14:40:11 -05:00
Zach Laine
378386fe67 Break compile_or_seq_attribute.cpp up into numerous files, and turn it into
runnable -- not compile-only -- tests.
2018-10-14 01:08:54 -05:00
Zach Laine
d6934eb3af Generate attribute test cases; fix errors. 2018-10-13 21:12:12 -05:00
Zach Laine
e178cd9057 Fix copy pasta in test/CMakeLists.txt. 2018-10-11 23:29:59 -05:00
Zach Laine
477f95d494 Add tests of paren-grouped ors and seq. 2018-10-11 22:29:11 -05:00
Zach Laine
f5430affba Add or_parser compile tests; fix errors. 2018-10-11 21:59:45 -05:00
Zach Laine
1cc3e53a44 Add seq_parser compile tests; fix errors. 2018-10-11 01:01:11 -05:00
Zach Laine
04dbec39dc Add parser tests. 2018-10-10 19:34:29 -05:00
Zach Laine
d18ee90b9a Fix Clang-on-Linux build. 2018-09-29 19:07:01 -05:00
Zach Laine
0d5af80dbe Switch the JSON parsing tests to use the new JSON parser; tighten up number
parsing in same.
2018-09-28 00:08:11 -05:00
Zach Laine
5be1c00730 Emit parse errors via callback instead of just dumping them to the console. 2018-09-27 20:29:16 -05:00
Zach Laine
7c39af865f Break JSON parsing code and JSON data model into separate files. 2018-09-26 23:58:36 -05:00
Zach Laine
ee8df7636f Add JSON parser to build. 2018-09-26 23:29:55 -05:00
Zach Laine
3fb764874f Correct gross error in the use of Boost.Text UTF-8 iterators. 2018-09-26 22:54:28 -05:00
Zach Laine
5db8b41f7d Use the UTF-8 iterators from Boost.Text instead of the one from Boost.Regex. 2018-09-24 10:20:12 -05:00
Zach Laine
2575467a40 Move all headers under include/boost/. 2018-09-24 06:48:48 -05:00
Zach Laine
d71f00f99c yaml:: -> boost::yaml:: 2018-09-24 06:30:08 -05:00
Zach Laine
87d2c2adf2 Tag numerous JSONTestSuite files as expected failures. 2017-05-18 22:05:41 -05:00
Zach Laine
f5c036dc42 Tag failing json tests with invalid UTF-8 sequences as expected failures. 2017-05-16 18:30:58 -05:00
Zach Laine
c2def6b170 Tag failing i_* json tests as expected failures. 2017-05-16 18:16:45 -05:00
Zach Laine
a1b3f9b137 Add a test for each JSONTestSuite/test_parsing file. 2017-05-16 12:44:45 -05:00
Zach Laine
944d24b664 Add an explicit error when leading block scalar indentation is wrong. 2017-05-15 10:19:39 -05:00
Zach Laine
4978d913b4 Add a test covering the new warnings. 2017-05-15 00:33:23 -05:00
Zach Laine
8d444b9754 Remove the mistaken anchor_property hack, fixing an expected failure. 2017-05-14 16:43:14 -05:00
Zach Laine
4c59bde497 Major refactor that enables diagnosis of repeated YAML and TAG directives. 2017-05-14 01:26:39 -05:00
Zach Laine
a478c44b69 Move the test library sources to src/, and compile a real lib for the test and
perf programs to use.
2017-05-12 20:26:55 -05:00