566 Commits

Author SHA1 Message Date
f2924a267d Align Rust template with D template 2026-08-18 22:36:15 -04:00
7d42ef44c2 Align Rust template with D template 2026-08-18 21:33:13 -04:00
e06cf11e9e Align Rust template with D template 2026-08-18 20:58:39 -04:00
4c5a30b13c Align types in Rust template with D template 2026-08-18 20:42:38 -04:00
8437cc3b4e Use pretty language names in spec output 2026-08-14 23:46:01 -04:00
35c40f09fe Remove header user code block group for Rust section 2026-08-14 23:39:02 -04:00
f902c835c9 Fix Rust prefixed status code values 2026-08-11 23:48:07 -04:00
bceaad5b7e Move rust_tree_types contents into template 2026-08-11 23:46:48 -04:00
89f1f84857 Add Rust target 2026-08-11 22:46:04 -04:00
5fc712c6ee Rework tree generation mode and API
Store tree nodes in congruent, compact arena array.
Define handle types to refer to tree nodes rather than pointers to
structure instances.
Free tree with context.
2026-07-27 20:57:44 -04:00
dddb1b5089 v4.8.1 v4.8.1 2026-07-14 22:20:56 -04:00
c3bccd2151 Fix tree struct type forward-declarations for C/C++ 2026-07-14 22:11:39 -04:00
52fb46abfa v4.8.0 v4.8.0 2026-07-14 20:51:06 -04:00
2e02ed7391 Fix test_macros.c on MacOS 2026-07-14 20:51:00 -04:00
1c74e747e1 Add p_set_input_index() 2026-07-14 20:43:59 -04:00
b4d43d39f6 Add lex_fn documentation about custom lex function contract 2026-07-14 17:01:22 -04:00
7ce1f8fc7f Test reentering parser for nested inner parses 2026-07-14 11:41:52 -04:00
0aaa44faf4 Add a test for a macro implementation using custom lex function 2026-07-13 22:21:02 -04:00
2ebdeaa995 Add p_input_index() 2026-07-11 22:58:26 -04:00
c0016f6d58 Add p_set_position() 2026-07-11 22:46:21 -04:00
fb4288d5b9 Test p_parse_inner with tree generation mode active 2026-07-11 22:46:21 -04:00
2f9a29f7c5 p_parse_inner: do not consume the follow token 2026-07-11 22:46:21 -04:00
946eb4eef7 Add p_parse_inner_XXX() APIs 2026-07-11 20:08:56 -04:00
75c2a4cbdf Install valgrind for Linux github runners 2026-07-08 22:09:53 -04:00
2c8ce0a359 Skip valgrind tests on MacOS github runners 2026-07-08 20:01:29 -04:00
64383cb0f4 v4.7.0 v4.7.0 2026-07-08 19:41:39 -04:00
256b7f9277 Update CHANGELOG for v4.7.0 2026-07-08 19:08:53 -04:00
98390429a8 Allow parser user code blocks in tree mode 2026-07-07 17:54:01 -04:00
b04c0ad205 Do not highlight rule components as propane keywords 2026-07-05 20:52:59 -04:00
453be990b6 v4.6.0 v4.6.0 2026-07-02 22:13:54 -04:00
3c619acd29 Update CHANGELOG for v4.6.0 2026-07-02 21:34:30 -04:00
ca9c23f96b Add lexer user code expansions to access lexer match text positions 2026-07-02 21:27:55 -04:00
1729546d69 Track rule component positions - close #41 2026-07-02 16:42:50 -04:00
7942a3be97 Remove pvalue from state_info_t if AST mode is active - close #42 2026-07-02 08:14:49 -04:00
c28aebddb4 Fix user guide and generated parser comments for position row and col to be 1-based 2026-07-01 23:02:47 -04:00
cb914e8bb0 v4.5.0 v4.5.0 2026-06-29 23:49:01 -04:00
ece95dd7e0 Fix propane.vim keyword detection 2026-06-29 23:48:43 -04:00
232af68081 Attempt to autodetect target language (D/C++) in extra/vim/syntax/propane.vim 2026-06-29 23:02:57 -04:00
23834bef82 Update keyword list in extra/vim/syntax/propane.vim 2026-06-29 23:02:05 -04:00
7b698d7b31 Add noline grammar statement to skip emitting #line directives 2026-06-29 22:41:07 -04:00
45843da0df Fix #line reset directives 2026-06-29 22:21:45 -04:00
f27a8688f7 Add CHANGELOG for v4.4.0 2026-06-29 22:15:01 -04:00
c459507612 v4.4.0 v4.4.0 2026-06-22 23:46:32 -04:00
feacbc907d Update gems 2026-06-22 23:46:06 -04:00
5ac3ad1655 Add p_value_get() / p_value_get_XXX() accessors
Allow user code to access specific pvalue values, especially when
multiple ptypes are in use.
2026-06-22 22:12:29 -04:00
b641c64425 v4.3.0 v4.3.0 2026-05-22 18:16:29 -07:00
5245302f49 Update CHANGELOG for v4.3.0 2026-05-22 18:11:58 -07:00
7a140623ff Use #line for user code blocks to report input grammar position for errors 2026-05-21 16:24:25 -07:00
42035c3a55 Update gems 2026-05-06 08:40:37 -04:00
d97f0f8f49 v4.2.0 v4.2.0 2026-04-10 18:57:49 -04:00