13 Commits

Author SHA1 Message Date
Nana Sakisaka
a2fcfdfea7 Rename _val to _rule_var 2025-10-21 10:31:17 +09:00
Nana Sakisaka
bc5a0623ed Remove _where context 2025-10-10 06:20:09 +09:00
Nana Sakisaka
aff263bb1d Clarify behavior of iterator/attribute on failed parse (#64)
The old implementation created temporary container variable and
move-appended its elements to the exposed attribute. This commit adds
new core class `container_appender` that transparently handles insertion
in underlying parsers, without the need to creating a temporary variable.
This change simplifies the core behavior of how the attribute and
iterator is preserved (or not preserved) in failed parse attempts.

Since X4 does not allow error handlers to return anything except `void`,
X4's iterator rollback behavior is not dependent on the error handler
anymore. This commit further clarifies the iterator/attribute behavior
for all supported core parsers.

Due to the reasons described above, this commit not only acts as X4's
"companion" fix mentioned in boostorg/spirit#833, but essentially acts as
the strict superset of the corresponding work boostorg/spirit#836 in X4's
domain.
2025-10-06 00:17:48 +09:00
Nana Sakisaka
05bf2eb30b Migrate to Catch2 (#48)
* Migrate to Catch2

* Enable colors in Catch2

* CI: Cache Catch2

* Remove unused variable

* Supply compiler flags to `Catch2WithMain`

* CI: Fix Catch2 cache

* Fix styling
2025-09-25 17:26:35 +09:00
Nana Sakisaka
80d33aef3b Rename Attribute to Attr 2025-09-21 19:29:29 +09:00
Nana Sakisaka
66cbcd71aa Remove space between template < 2025-09-21 18:39:53 +09:00
Nana Sakisaka
c8e95e55c2 Replace typename with class 2025-09-21 18:37:37 +09:00
Nana Sakisaka
62f0242c6a Change coding style of control statements, etc. 2025-09-21 18:10:18 +09:00
Nana Sakisaka
915cd7aa05 Outdent namespace 2025-09-21 16:44:47 +09:00
Nana Sakisaka
409eac6755 Add minimal parser concept tests 2025-09-20 18:47:09 +09:00
Nana Sakisaka
cd52f6f8a4 Make action context accessors CPOs 2025-09-19 17:01:46 +09:00
Nana Sakisaka
11bec17390 Include only minimal headers (#33) 2025-09-19 14:50:21 +09:00
Nana Sakisaka
d457307a60 Move tests from x3 to x4 2025-09-18 20:38:29 +09:00