Nikita Kniazev
602a406c12
Tests: char1: Fixed typo leading to wchar_t to char truncation warning
2017-12-16 22:11:37 +03:00
Mike Gresens
60031eb779
Fix container traits for msvc ( #318 )
...
- Fixes #298 and is based on 45902cbb4e
provided by @Kojoley
- Added container_support.cpp to x3 test suite again
2017-12-16 22:10:00 +03:00
octopus-prime
6a4547ca43
Added fix and test from trac # 5983
2017-12-15 11:29:46 +01:00
Nikita Kniazev
d526cd1931
Use <c++-template-depth>
feature
2017-12-15 01:12:06 +03:00
Joel de Guzman
b10e4a477b
Merge pull request #320 from think-cell/thinkcell_iterator_check
...
ForwardIterator -> ReadableIteratorConcept & ForwardTraversalConcept
2017-12-11 08:02:09 +08:00
Nikita Kniazev
109253ac8c
Merge pull request #319 from Kojoley/fix-qi-permutations-always-initializes-optionals
...
Qi: Permutations parser always initializes optionals
2017-12-08 19:46:40 +03:00
Han Wang
766cc4c9b7
ForwardIterator -> ReadableIteratorConcept & ForwardTraversalConcept
...
The concept of ForwardIterator is flawed because it mixed 2 sets of concepts (value access and traversal) into 1 package.
http://www.boost.org/doc/libs/1_65_1/libs/iterator/doc/new-iter-concepts.html
It requires value_type (const)& as return type when dereference is applied, which is not mandatory in spirit parsing. A return type which is convertible to value_type is good enough. ReadableIteratorConcept and ForwardTraversalConcept should be what we need for the iterator check.
For example, the iterator of the range returned by boost::adaptors::transform(std::string, func) is normally not a ForwardIterator. But it fulfills ReadableIteratorConcept and ForwardTraversalConcept and should be able to be parsed by spirit.
2017-12-07 17:25:37 +01:00
Nikita Kniazev
3f18a6e99f
Qi: Permutations parser always initializes optionals
...
Closes https://svn.boost.org/trac10/ticket/12473
Optional parser never fails so `attr = val;` always triggers and initializes
the `attr` value. The special case for optional attributes could be safely
removed as any underlying parser must already correctly handle optionals.
2017-12-07 17:59:04 +03:00
octopus-prime
cb2750792e
Test for trac ticket 12928 "x3 cannot synthesize attribute of type
...
boost::iterator_range in a sequence parser"
2017-12-06 19:28:04 +01:00
Nikita Kniazev
3a2f074c2b
Qi.Tests: grammar_fail, rule_fail: Fixed past-the-end pointer problem
2017-12-06 16:05:06 +03:00
Nikita Kniazev
5f93ee81d9
Qi.Tests: rule_fail: Fixed ambiguous symbol 'char_'
...
..\libs\spirit\test\qi\rule_fail.cpp(28): error C2872: 'char_': ambiguous symbol
boost/spirit/home/support/common_terminals.hpp(235): note: could be 'const boost::spirit::ascii::char_type boost::spirit::ascii::char_'
boost/spirit/home/support/common_terminals.hpp(237): note: or 'const boost::spirit::standard::char_type boost::spirit::standard::char_'
2017-12-06 16:05:06 +03:00
Mike Gresens
5a720737af
Merge pull request #312 from octopus-prime/develop
...
error_handler test msvc-14.0
2017-12-05 09:38:27 +01:00
octopus-prime
868689ff40
error_handler test msvc-14.0
2017-12-05 00:23:33 +01:00
octopus-prime
b6fa1404fa
Added missing dependency to filesystem for error_handler test.
2017-12-04 17:46:52 +01:00
Mike Gresens
b476a28af7
Merge pull request #304 from octopus-prime/line_pos_iterator_fix3
...
Line pos iterator fix3
2017-12-04 14:01:50 +01:00
octopus-prime
fa2bfb1c52
Added tests for error_handler
2017-12-04 12:56:43 +01:00
Mike Gresens
5ec71cfd33
Merge pull request #307 from octopus-prime/optional_attribute
...
optional_attribute
2017-12-04 11:37:51 +01:00
Nikita Kniazev
8e343697ad
X3: Workaround VS2015 aliased namespace in lambda bug
2017-12-02 18:20:06 +03:00
octopus-prime
c3a83ce083
optional_attribute
2017-12-01 19:10:20 +01:00
octopus-prime
0dd6e531c8
Cleaned up
2017-12-01 15:05:44 +01:00
octopus-prime
646bce6ce7
Merged and added more tests.
2017-12-01 13:04:36 +01:00
Nikita Kniazev
9fc87a8d21
Merge pull request #297 from think-cell/thinkcell_uint_parser_overflow
...
fix uint_parser<T(signed)> overflow problem
2017-12-01 13:43:43 +03:00
Nikita Kniazev
80414bc688
fix qi::uint_parser<T(signed)> overflow problem
2017-12-01 03:36:33 +03:00
Nikita Kniazev
0c27beaa38
X3.Tests: Add c++14 feature checks
2017-11-28 19:33:28 +03:00
Nikita Kniazev
596079647b
Tests.Lex: Fixed dependencies race
...
It looks like `<implicit-dependency>` does not actually work.
2017-11-28 03:54:44 +03:00
Nikita Kniazev
0917fca9fd
Tests: Improve tests
...
- Split Spirit v2 tests
- Readd missing v2 tests
- Run X3 tests
- Remove `-p3` suffix
- Use `<c++-template-depth>`
- Automatic adding of subproject name prefix
- Flatten tests declaration
2017-11-28 03:10:20 +03:00
Han Wang
b8b82630ac
fix x3::uint_parser<T(signed)> overflow problem
...
According to spirit document,
"All numeric parsers check for overflow conditions based on the type T the corresponding uint_parser<> has been instantiated with. If the parsed number overflows this type the parsing fails. Please be aware that the overflow check is not based on the type of the supplied attribute but solely depends on the template parameter T."
the valid input range of x3::uint_parser<T> should be 0 - std::numeric_limits<T>::max(). However, the current implementation takes values from std::numeric_limits<T>::max()+1 - std::numeric_limits<std::make_unsigned_t<T>>::max() also as valid input.
2017-11-27 17:47:10 +01:00
Nikita Kniazev
9c2d6dec93
Revert "Split Spirit v2 tests"
2017-11-26 14:45:39 +03:00
Nikita Kniazev
5e2c3f4f9a
Qi.Tests: grammar_fail, rule_fail: Fixed unused variable warnings
2017-11-25 19:01:04 +03:00
Nikita Kniazev
cc9e4a83cb
Merge pull request #290 from Kojoley/split-tests
...
Split Spirit v2 tests
2017-11-25 17:17:32 +03:00
Nikita Kniazev
a21b0b33f5
Split Spirit v2 tests
2017-11-25 14:40:54 +03:00
octopus-prime
bc2cf3112b
Enabled tests for container support
2017-11-24 09:01:56 +01:00
octopus-prime
74f67517c3
Bugfix and tests for issue #287 "x3 cannot parse into associative
...
containers anymore".
2017-11-23 15:26:28 +01:00
Nikita Kniazev
5ba6bd8f90
Merge pull request #285 from Kojoley/fix-warnings
...
Fixed bunch of warnings
2017-11-21 19:56:16 +03:00
Nikita Kniazev
a4c9940658
X3.Tests: symbol3: Extra semicolon warning
2017-11-21 19:49:37 +03:00
Nikita Kniazev
dd95a89c8b
X3.Tests: expect: Suppress operator precedence warnings
2017-11-21 19:49:37 +03:00
Nikita Kniazev
39618ddced
X3.Tests: binary: Fixed unused variable warnings
2017-11-21 19:49:37 +03:00
Nikita Kniazev
519f9db94b
Qi.Tests: real: Fixed accumulator type
2017-11-21 19:49:37 +03:00
Nikita Kniazev
625fbc6cd9
Karma.Tests: regression_real_policy_sign: Fixed unused parameter warning
2017-11-21 19:49:35 +03:00
Nikita Kniazev
d06cc5945b
Karma.Tests: regression_real_scientific: Fixed semicolon after main function
2017-11-21 19:49:35 +03:00
Nikita Kniazev
4810f02271
Fixed semicolon after BOOST_FUSION_ADAPT_*
2017-11-21 19:49:35 +03:00
Nikita Kniazev
ee900333b4
Lex.Tests: set_token_value: Fixed type conversion warning
2017-11-21 19:49:35 +03:00
Nikita Kniazev
7310d850fc
Support.Tests: regression_multi_pass_position_iterator: Fixed MSVC 9 compilation
...
Maybe will fix and MSVC 8 too. The fix found accidentally.
2017-11-16 02:50:02 +03:00
Nikita Kniazev
2f68bc829f
Qi.Tests: uint1: Fixed uint8_t
usage
...
Fixes compilation problem on MSVC 8/9
2017-11-15 22:16:23 +03:00
Nikita Kniazev
af6102948e
Merge pull request #205 from Kojoley/add-regression_real_policy_sign-to-tests-list
...
Karma.Tests: Added `regression_real_policy_sign.cpp` to test suite
2017-11-07 21:19:00 +03:00
Han Wang
30dfb6230a
simplify with directive (3): make rvalue injection mutable
2017-08-22 15:43:34 +02:00
Han Wang
6412f88813
simplify with directive (2): add test cases
2017-08-22 12:15:42 +02:00
Nikita Kniazev
d99cdf5bd2
Tests: Removed unused argc
and argv
parameters
2016-08-29 19:25:23 +03:00
Nikita Kniazev
a0f34f8a34
Qi.Tests: utree1: Fixed operator precedence warnings [clang]
2016-08-27 23:32:52 +03:00
Joel de Guzman
4789aec3d9
Merge pull request #215 from Kojoley/fix-multiple-unsued-variable-warnings
...
Tests: Fixed multiple unused variable warnings
2016-08-26 06:23:44 +08:00
Joel de Guzman
571a928ac6
Merge pull request #216 from Kojoley/fix-bool-increment-warning
...
Karma.Tests: Fixed bool increment warning
2016-08-26 06:03:58 +08:00
Joel de Guzman
e5a1a06c73
Merge pull request #214 from Kojoley/fix-lex-regression_wide-warnings
...
Lex.Tests: Fixed multiple warning from `regression_wide` test
2016-08-26 05:51:51 +08:00
Nikita Kniazev
18324547c6
Karma.Tests: Fixed bool increment warning
2016-08-25 23:29:17 +03:00
Nikita Kniazev
bab7a9f38c
Karma.Tests: Fixed unused variables warning from pattern4
test
2016-08-25 22:31:10 +03:00
Nikita Kniazev
20e588242e
Lex.Tests: Fixed unused variables warning from tokendedent_handling_phoenix
test
2016-08-25 22:31:10 +03:00
Nikita Kniazev
15a0012863
Lex.Tests: Fixed unused variables warnings from token_iterpair
test
2016-08-25 22:31:10 +03:00
Nikita Kniazev
532c0e6fbe
Lex.Tests: regression_wide: comparison between signed and unsigned
...
> lex/regression_wide.cpp:70:51: warning: comparison between signed and
> unsigned integer expressions [-Wsign-compare]
> BOOST_TEST(data[sequence_counter].tokenid == tokenid);
^
2016-08-25 21:04:24 +03:00
Nikita Kniazev
894ea490f7
Lex.Tests: regression_wide: Fixed initialization order
...
> lex/regression_wide.cpp:93:11: warning: field 'constant' will be
> initialized after field 'operation' [-Wreorder]
> , constant (L"[0-9]+(\\.[0-9]+)?", ID_CONSTANT)
> ^
2016-08-25 21:04:24 +03:00
Nikita Kniazev
a7927b15ef
Lex.Tests: regression_wide: unused typedef 'iterator_type'
...
> lex/regression_wide.cpp:122:52: warning:
> unused typedef 'iterator_type' [-Wunused-local-typedef]
> typedef mega_tokens<lexer_type>::iterator_type iterator_type;
2016-08-25 21:04:24 +03:00
Nikita Kniazev
10a0fc449e
Lex.Tests: regression_wide: sequence_counter
signed and unsigned comparison
...
> lex/regression_wide.cpp:69:37: warning: comparison between signed
> and unsigned integer expressions [-Wsign-compare]
> BOOST_TEST(sequence_counter < sizeof(data)/sizeof(data[0]));
2016-08-25 21:04:24 +03:00
Nikita Kniazev
1c243703b4
Tests: Fix warnings from support/utree.cpp
test
...
> warning: logical not is only applied to the left
> hand side of comparison [-Wlogical-not-parentheses]
2016-08-25 17:43:07 +03:00
Nikita Kniazev
5e56037366
Karma.Tests: Added regression_real_policy_sign.cpp
to test suite
...
The test was added in 90d65d4be7
,
but still is not used in the test suite.
2016-08-17 23:04:06 +03:00
Nikita Kniazev
1ee3b7c18c
Qi.Tests: Wrap r1 = r1 | eps
with SPIRIT_NO_COMPILE_CHECK
macro
...
Logic of the test is to prevent direct left recursion, but
currently because of it `b2` fails to compile `alternative.cpp`.
I have wrapped the case with `SPIRIT_NO_COMPILE_CHECK` like it
has been done in `char1.cpp` and `sequence.cpp` tests.
Actually the test fails at compilation only with std >= c++11,
but passes with std <= c++03.
2016-08-17 20:50:32 +03:00
Joel de Guzman
b328180b49
Merge pull request #191 from jefftrull/bugfix/12138
...
Repair plain_token_range and add tests
2016-08-06 06:19:09 +08:00
mxc-commons
88f494cb0d
Fixes for PR #196 expect directive
...
This PR contains fixes for both issues reported by Lastique and
MarcelRaad. It makes PR #197 obsolete.
Removed obsolete dependency of test/qi/expectd.cpp on
mxc/qitoo/qitoo.hpp. Was reintroduced by mistake.
Created qi/detail/expectation_failure.hpp. It defines the
expectation_failure template as a common dependency of expect directive
and expect operator. Removed expectation_failure from
operator/expect.hpp.
Changed version.hpp to 2.54. I did not notice that addl file in the
first place.
2016-07-19 16:42:03 +02:00
mxc-commons
aed96ba915
spirit 2 expect directive
...
Initial commit.
2016-07-07 00:49:18 +02:00
Jeff Trull
4c073d8891
remove excess includes and turn off debugging
2016-05-16 18:13:02 -07:00
Jeff Trull
8ac0d9b98b
Fix plain_token_range and add a test for plain tokens
2016-05-16 18:11:02 -07:00
Jeff Trull
713ccb37c5
remove excess includes
2016-05-16 13:38:36 -07:00
Jeff Trull
b01b402577
Make multi_pass_iterator != operator const and add tests for istream_iterator
2016-05-16 13:36:00 -07:00
mgresens
de81dc44dd
Using boost TTI library to replace hand-written TTI code.
2016-04-01 13:51:59 +02:00
Joel de Guzman
b818ca5c8d
- added x3 variant test
...
- added x3 variant, extended variant swap member function
2016-03-30 14:06:06 +08:00
Joel de Guzman
378142659c
Some cleanup
2016-03-30 06:22:47 +08:00
Joel de Guzman
76c57b6005
call c.insert(iter, f, l) or c.inser(f, l) as appropriate depending on container type.
2016-03-28 11:56:21 +08:00
Mikhail Strelnikov
a579e31229
add test case
2016-03-27 07:19:55 +03:00
octopus-prime
81c37ba431
Cleaned up tests.
2016-01-30 11:11:07 +01:00
octopus-prime
e94e7dcc12
Added static asserts for testing has_reserve_method of common
...
containers.
2016-01-28 09:36:35 +01:00
octopus-prime
dd80f32e5c
Renamed test_container_support() to test_sequence_support().
2016-01-26 20:10:54 +01:00
octopus-prime
2cd5e66cbf
Renamed test.
...
Added tests for:
<map>
<unordered_map>
<boost/unordered_map.hpp>
<vector>
<list>
<deque>
<set>
<unordered_set>
<boost/unordered_set.hpp>
<string>
2016-01-26 19:55:11 +01:00
octopus-prime
793ec4292c
Added test for map support.
2016-01-25 19:51:11 +01:00
Joel de Guzman
25c00abf36
disabling test for ascii>127 for now
2015-11-10 08:27:16 +08:00
Joel de Guzman
df92cb5c98
ascii char_type is now unsigned to allow 8 bits (reverted from commit 638e4ab54a
)
2015-11-10 08:02:58 +08:00
Hartmut Kaiser
509b0891d7
Merge pull request #144 from vtnerd/BugFix_DuplicateAttribute
...
Fixed bug in karma::duplicate attribute reporting
2015-11-04 20:47:28 -06:00
Joel de Guzman
638e4ab54a
ascii char_type is now unsigned to allow 8 bits
2015-11-03 09:56:14 +08:00
Joel de Guzman
72c8428090
ascii char parsers now fails instead of asserts.
2015-11-02 14:48:54 +08:00
Adrian Vogelsgesang
99c679026a
X3: test case for expect directive with nested kleene star
...
This testcase tries to use a kleene star within an expect directive.
The test compiles but the parsed attribute is not as expected.
2015-08-20 00:31:24 +02:00
Adrian Vogelsgesang
856f88f5d1
X3: test case for char_range boundaries
...
ticket: https://svn.boost.org/trac/boost/ticket/11531
2015-08-09 15:37:18 +02:00
Lee Clagett
e16bec0aef
Fixed bug in karma::duplicate attribute reporting
2015-07-30 23:30:33 -04:00
Lee Clagett
e09cc45812
Fixed modifier bug with karma::left_align
2015-07-20 22:57:03 -04:00
Mario Lang
b42df6fe50
X3: Fix parse_sequence with variant_attribute.
2015-07-06 23:12:48 +02:00
Mario Lang
6846946823
X3: Make use of Fusion member type deduction to simplify examples.
2015-06-15 22:30:00 +02:00
Mario Lang
f8adee2ced
X3: Add test for the fix in 2a94b18e97
.
2015-06-03 16:35:10 +02:00
Joel de Guzman
0a7fadd838
Merge pull request #104 from teajay-fr/feature/x3_binary
...
Add support for the binary parsers
2015-05-27 14:08:49 +08:00
Thomas Bernard
d5f1197790
Add support for the binary parsers
2015-05-23 15:26:45 +02:00
Mario Lang
ad507e4da1
Fix include paths.
...
Now the x3 testsuite builds again.
2015-05-22 09:05:47 +02:00
Mario Lang
10c13779b3
Rename {directive => extensions}/matches.hpp.
2015-05-21 22:25:37 +02:00
Mario Lang
dc4c7f824e
x3::matches.
2015-05-21 21:21:31 +02:00
Mario Lang
705524b1e1
X3: no_case *is* implemented.
2015-05-20 00:07:34 +02:00
Joel de Guzman
3627a46902
more test updates and cleanup
2015-05-14 07:40:18 +08:00
Joel de Guzman
0adee06b27
cleaning up the tests
2015-05-14 02:13:24 +08:00
Joel de Guzman
c5fe8848ce
added explicit force_attribute bool template parameter to rule
2015-04-08 14:34:29 +08:00
Joel de Guzman
67854cb26e
Merge pull request #55 from mlang/x3/test/optional-omit
...
Re-enable the use of omit in test/x3/optional.cpp.
2014-11-22 01:22:24 +08:00
Joel de Guzman
eb135d77c4
Big negative exponents now fail parsing instead of a runtime assertion.
2014-11-07 20:09:37 +08:00
Joel de Guzman
b7c04a2374
Big exponents now fail parsing instead of a runtime assertion.
2014-11-07 18:23:19 +08:00
Joel de Guzman
6832dc2298
fixing various corner case bugs. the new implementation uses integers
...
for intermediate computations to improve precision.
2014-11-07 18:23:19 +08:00
Joel de Guzman
27d8c7e2f4
Merge pull request #67 from teajay-fr/bug/gcc_4.9.1_support
...
Change the language feature set option for gcc
2014-11-06 08:45:53 +08:00
Joel de Guzman
c0d6ed357b
Fixes Trac #10755 "Wrong overflow checking with uint_parser<uint8_t,
...
10, 1, 3>"
2014-11-06 08:38:06 +08:00
Thomas Bernard
8237380a16
Change the language feature set option for gcc
2014-11-06 00:34:39 +01:00
Thomas Bernard
fec70d409c
Merge branch 'x3-devel' into feature/x3_devlop_merge
...
Conflicts:
include/boost/spirit/home/x3/extensions/repeat.hpp
test/x3/Jamfile
Add support for no_case to the bool parsers
2014-11-01 23:43:02 +01:00
Joel de Guzman
d9678d5d50
Merge pull request #62 from vtnerd/BugFix-NullTermination
...
Fixed bug with null-termination and string containers.
2014-10-19 12:48:58 +08:00
Lee Clagett
726a930dc6
Fixed bug with null-termination and string containers.
2014-10-18 23:56:15 -04:00
Thomas Bernard
e4d195ef29
Merge branch 'x3-devel' of https://github.com/boostorg/spirit into feature/x3_no_case
...
Conflicts:
include/boost/spirit/home/x3/string/literal_string.hpp
Finalized the no_case handling based on the corrected encoding handling
2014-10-18 10:15:49 +02:00
Thomas Bernard
92bd34bd79
Corrected the seperation of the literal string from their sizes in the
...
any_char operator()
Reactivated all the char set tests
2014-10-15 23:00:58 +00:00
Thomas Bernard
7bde4c42ff
Add as_parser templates to handle on char strings as char_ instead of
...
literal_string
2014-10-13 09:30:41 +00:00
Thomas Bernard
a4e043101c
Add the char_set and char_range parser
2014-10-12 17:16:07 +00:00
Thomas Bernard
eec3ff5316
Fix the char encoding specific generators for all the string literal
...
parsers
2014-10-12 15:57:55 +00:00
Thomas Bernard
89cb0c3b69
Remove the development target
2014-10-12 14:11:18 +00:00
Thomas Bernard
60cca11616
Implement the no case directive for the symbols parser
2014-10-12 14:10:03 +00:00
Thomas Bernard
eb9f42adc7
Reactivate some test which pass
2014-10-07 23:25:45 +00:00
Thomas Bernard
ad9d0429a0
Use a less invasive case_compare type extraction from the context
2014-10-07 23:19:36 +00:00
Thomas Bernard
aa7ca423e4
Add the no_case context to the any_parser tests
2014-10-06 23:10:46 +00:00
Thomas Bernard
ea72c747af
Make the char class parser no_case compatible.
...
Make all no_case tests pass.
2014-10-05 23:26:19 +00:00
Thomas Bernard
4b1fab071d
Make no case directive compilable
...
Added helpers to parse no case strings
Fixed some include locks
Do not pass the encoding as runtime parameter to the parsing helpers
2014-09-21 22:41:22 +00:00
Mario Lang
707ae80ce7
Re-enable the use of omit in test/x3/optional.cpp.
2014-09-13 09:52:22 +02:00
Thomas Bernard
5a74952057
Add no case directive
2014-09-09 22:26:41 +00:00
Thomas Bernard
89d14edb05
Add no_case test cases
2014-09-08 22:05:52 +00:00
Joel de Guzman
31f4416286
added tests for DBL_MAX, DBL_EPSILON, DBL_MIN and DBL_DENORM_MIN
2014-09-05 11:45:45 +08:00
Joel de Guzman
5b5ccf2e49
fixes Ticket #10193
2014-08-11 17:52:24 +08:00
Joel de Guzman
d2afc02c2d
- temporarily disabling some karma tests
...
- wrapped the affected tests in #if defined(BOOST_SPIRIT_ZERO_PROBLEM)
2014-07-15 11:08:13 +08:00
Joel de Guzman
bcd6f561ad
Merge branch 'develop'
2014-07-10 08:07:16 +08:00
Tomoki Imai
f84d869ec8
Change from BOOST_TEST to BOOST_TEST_EQ for better information.
2014-06-16 13:44:16 +09:00
Tomoki Imai
e203a7c95d
add line to run support/regression_line_pos_iterator.cpp
2014-06-14 18:55:44 +09:00
Tomoki Imai
67b3097895
Fix line_pos_iterator's column counting bug,get_current_line bug.
...
Add regresssion test for it.
2014-06-14 17:28:09 +09:00
K-ballo
d912186426
Revert "Merge pull request #37 from cppljevans/context_debug_fix_swap"
...
This reverts commit 527e54b549
, reversing
changes made to 3928caeb3d
.
2014-06-08 22:44:29 -03:00
Joel de Guzman
e95d80d682
added bool.cpp test
2014-06-07 08:23:32 +08:00
Lee Clagett
6825a6716f
Ported confix to x3 extensions
2014-06-01 20:44:16 -04:00
Joel de Guzman
0f5844c525
Merge pull request #32 from vtnerd/bugfix/raw-handles-container
...
Bugfix/raw handles container
2014-05-31 13:32:18 +08:00
Lee Clagett
375ab999ed
Changed the handles_container attribute of raw to always return true
...
The raw directive currently defers the decision of whether it can handle
a container to its subject (handles_container). If the subject cannot
handle a container, the raw directive returns false too. Since
is_container returns true for iterator_range, this creates problems with
the sequence operator that tries to call
attr.insert(attr.end(), raw_range) when handles_container of the raw
subject is false. Since the raw directive can handle container
attributes (it has for some time), it seemed best to always return true
for handles_container.
2014-05-30 08:38:59 -04:00
Joel de Guzman
29ead94468
Merge branch 'x3-devel'
2014-05-30 13:37:31 +08:00
Joel de Guzman
41cf0f5fdb
minor adjustments. we're good to go. test pass.
2014-05-30 13:34:25 +08:00
Joel de Guzman
3afadd48dc
Merge pull request #28 from teajay-fr/feature/x3_repeat
...
Feature/x3 repeat
2014-05-30 13:26:32 +08:00
Joel de Guzman
a70a53e856
Merge branch 'x3-devel'
2014-05-27 13:22:18 +08:00
Joel de Guzman
99430b8077
simplification of semantic action interface
...
- there are only 2 variations now f() and f(ctx)
- added _attr(ctx) accessor for accessing the attribute
- added _where(ctx) accessor for accessing the iterator range
this, and in preparation for a unified call interface for actions as well as lazy args to e.g. eps(f)
2014-05-26 17:03:26 +08:00
Joel de Guzman
528c1de366
made on_success mechanism as a member of the rule ID
2014-05-26 13:06:58 +08:00
Joel de Guzman
168e202365
making the rule ID more useful by making it a class where you define on_error (and later on_success) hooks.
2014-05-26 12:38:30 +08:00
Joel de Guzman
571fcb07ba
fixed for new on_error interface
2014-05-25 08:34:38 +08:00
Joel de Guzman
913a092ee6
reverting previous mistakes
2014-05-25 08:29:56 +08:00
Joel de Guzman
1a960e4bba
All tests are now passing.
2014-05-17 09:25:06 +08:00
Joel de Guzman
0e47e08037
added rcontext argument to parse functions
2014-05-15 21:46:25 +08:00
Lee Clagett
b77ab8b3d1
Adding test_failure to x3 test framework
...
The new test_failure function ensures that the first iterator argument
remains at the start position when parsing fails.
2014-05-11 10:14:41 -04:00