Commit Graph

  • 6fd5186159 Replace p_context_init() with p_context_new()/p_context_delete() josh 2026-02-17 18:40:33 -05:00
  • 9f2fe6f84b Add token_node and token_user_fields grammar statements josh 2026-02-14 21:00:53 -05:00
  • 78adf86103 Allow user-defined context fields josh 2026-02-13 23:53:18 -05:00
  • f4bc719aed Allow drop patterns to execute lexer user code blocks josh 2026-02-13 20:45:08 -05:00
  • 43c0f50874 Fix UPGRADING.md link in CHANGELOG.md josh 2026-02-11 00:34:32 -05:00
  • 243ee0f19f v3.0.0 v3.0.0 josh 2026-02-11 00:21:55 -05:00
  • 8d2efcc19b Update gems josh 2026-02-11 00:21:37 -05:00
  • 9c787f0e89 Update CHANGELOG.md and UPGRADING.md for v3.0.0 josh 2026-02-09 22:08:20 -05:00
  • ef6a0f9552 Update README and CHANGELOG overview features list josh 2026-02-09 22:00:39 -05:00
  • 77ec7c9de4 Rename AST generation mode to tree generation mode josh 2026-02-09 21:59:00 -05:00
  • 6a87bb2d56 Add support for multiple starting rules - close #38 josh 2026-02-09 21:21:49 -05:00
  • 193666d499 Test multiple starting rules multiple-start-rules-wip josh 2026-02-09 21:18:32 -05:00
  • 5187cff24d Add p_parse_*() API for each start rule josh 2026-02-09 17:58:47 -05:00
  • 87890a3d77 Add p_result_*() and p_free_ast_*() functions for each start node josh 2026-02-09 16:52:15 -05:00
  • 7122bdc2db wip josh 2026-02-08 22:22:27 -05:00
  • cb426b4be1 Add free_token_node grammar statement josh 2026-02-08 20:33:00 -05:00
  • addf27d837 Turn on valgrind for C, C++ target specs josh 2026-02-08 19:24:11 -05:00
  • 9c03d20083 Add p_free_ast() to free AST node memory for C targets josh 2026-02-08 00:02:24 -05:00
  • e223d03d7c Use more concise RSpec output josh 2026-02-07 19:18:36 -05:00
  • be6a9ca2c1 Rename Rakefile -> Rakefile.rb josh 2026-02-07 19:18:25 -05:00
  • 072af73b1e Support C++ output language josh 2026-02-07 18:59:01 -05:00
  • ac8ed4bf5a Update gems josh 2026-01-15 20:34:31 -05:00
  • 8a393f554a Document p_lex and p_token_info_t in user guide - fix #37 josh 2026-01-15 20:22:54 -05:00
  • 66f95cb6d8 v2.3.0 v2.3.0 josh 2025-07-28 20:40:24 -04:00
  • dbe0bf8ad0 Add github workflow to run unit tests josh 2025-07-28 20:30:29 -04:00
  • 75fb627602 Update CHANGELOG josh 2025-07-28 18:44:00 -04:00
  • 7ccb4c8730 Parallelize parser table generation on Linux hosts josh 2025-07-28 18:43:12 -04:00
  • 962b7125ec Build lookahead reduce actions for item sets before building reduce table josh 2025-07-27 17:24:35 -04:00
  • 2df27b04fe Update CHANGELOG josh 2025-07-27 14:56:09 -04:00
  • 17f1454a4f Speedup: avoid checking the same rule set more than once for lookahead tokens josh 2025-07-27 14:50:18 -04:00
  • b371f4b404 Speedup: calculate Item#hash once josh 2025-07-27 13:48:52 -04:00
  • 91f476187b Update CHANGELOG josh 2025-07-27 10:32:57 -04:00
  • 54a0629e60 Add spec for \s matching newline josh 2025-07-26 21:36:05 -04:00
  • 69aa3097c3 Update user guide for shorthand character classes josh 2025-07-26 21:34:22 -04:00
  • 5486e5f138 Add \D, \S, \w, \W special character classes josh 2025-07-26 21:21:29 -04:00
  • 5b243507cf Show grammar line numbers for regex errors josh 2025-07-25 21:27:01 -04:00
  • 25d6e3bc34 Fix user guide regular expression example josh 2025-07-25 16:24:05 -04:00
  • 035bb2fc60 Fix matching lexer patterns containing a negated character class which includes a backslash-escaped sequence that matches more than one character josh 2025-07-25 16:14:35 -04:00
  • 125c149750 Drop argument to CharacterRangeUnit constructor when possible josh 2025-07-22 21:53:18 -04:00
  • 9ef80e61d4 Update gems josh 2025-07-22 21:22:27 -04:00
  • 5b94b03b04 Fix user guide double backslashes in examples josh 2025-07-22 21:17:18 -04:00
  • 9d686989ec Fix C issue not fully initializing pvalues josh 2025-07-22 21:05:32 -04:00
  • 87d892d0a3 Fix a couple clang warnings josh 2025-07-21 23:26:37 -04:00
  • 4ec57fa48d Fix vim syntax highlighting for a regex ending with an escaped backslash josh 2025-07-20 11:52:21 -04:00
  • 8b38ea4261 v2.2.1 v2.2.1 josh 2025-04-05 09:53:27 -04:00
  • 92da10e483 Fix GC issue for D backend with AST enabled - close #36 josh 2025-04-05 09:51:01 -04:00
  • 839174a635 Generate comments to annotate reduce table entries josh 2025-04-04 15:24:07 -04:00
  • 659de44c31 Update gems josh 2025-03-29 18:31:46 -04:00
  • 207201d589 v2.2.0 v2.2.0 josh 2025-03-13 19:25:30 -04:00
  • 89bc52fd80 Update CHANGELOG for v2.2.0 josh 2025-03-13 19:25:09 -04:00
  • eb9d9026fc Allow multiple lexer modes to be specified for a lexer pattern - close #35 josh 2025-03-11 20:40:10 -04:00
  • 54bb3307cd Document p_decode_code_point() API function - close #34 josh 2025-03-10 12:19:42 -04:00
  • 5ebcbb2d6d v2.1.1 v2.1.1 josh 2024-12-28 23:15:45 -05:00
  • 61ebbb4f19 Update CHANGELOG for v2.1.1 josh 2024-12-28 23:13:46 -05:00
  • 1b4ca59158 Field aliases for AST node fields could alias incorrect field when multiple rule alternatives present for one rule set - close #33 josh 2024-12-28 23:08:53 -05:00
  • b02c9205c0 Update CHANGELOG josh 2024-12-28 10:01:33 -05:00
  • 7344554b5f Version 2.1.0 v2.1.0 josh 2024-12-28 09:56:29 -05:00
  • 77571a3449 Update gems josh 2024-12-28 09:54:54 -05:00
  • e098b7e445 Report rule name and line number for conflicting AST node field positions errors - close #32 josh 2024-12-28 09:51:12 -05:00
  • 3ea344a520 v2.0.0 v2.0.0 josh 2024-09-25 16:09:27 -04:00
  • 530878a796 Update CHANGELOG for v2.0.0 josh 2024-09-25 16:09:20 -04:00
  • 1d468b6d3c Use 1-based row and column values for position values - close #30 josh 2024-09-25 15:58:03 -04:00
  • 98e10d3d14 Fix named optional rules - close #29 josh 2024-09-24 20:28:19 -04:00
  • 36c74e439e Log conflicting rules on reduce/reduce conflict - close #31 josh 2024-09-24 20:05:39 -04:00
  • c24f323ff0 v1.5.1 v1.5.1 josh 2024-07-26 22:30:48 -04:00
  • fec2c28693 Only calculate lookahead tokens when needed - #28 josh 2024-07-26 22:08:25 -04:00
  • 61339aeae9 Avoid recalculating reduce_rules - #28 josh 2024-07-26 21:36:41 -04:00
  • 95b3dc6550 Cache ItemSet#next_symbols - #28 josh 2024-07-25 20:33:15 -04:00
  • 74d94fef72 Do not build ItemSet follow sets - #28 josh 2024-07-25 20:02:00 -04:00
  • 588c5e21c7 Cache ItemSet#leading_item_sets return values - #28 josh 2024-07-25 10:42:43 -04:00
  • 5f1c306273 Update CLI usage in README josh 2024-07-22 21:35:32 -04:00
  • 343e8a7f9e v1.5.0 v1.5.0 josh 2024-07-22 21:23:38 -04:00
  • b3a134bf8d Update vim syntax to highlight "?" and field alias names josh 2024-07-22 20:39:59 -04:00
  • 4a71dc74fb Update CHANGELOG for v1.5.0 josh 2024-07-22 20:26:04 -04:00
  • a7348be95d Add rule field aliases - #24 josh 2024-07-22 17:29:54 -04:00
  • 9746b3f2bf Document position tracking fields in user guide - #27 josh 2024-07-21 14:04:51 -04:00
  • c5b8fc28bd Move INVALID_POSITION from header to C source - #27 josh 2024-07-21 13:39:05 -04:00
  • 092fce61eb Test position validity for empty matching rules - #27 josh 2024-07-21 13:36:52 -04:00
  • e647248e34 Track start and end position of rules in AST nodes - #27 josh 2024-07-19 15:37:37 -04:00
  • f4ae1b8601 Add position fields to AST nodes (not populated yet) - #27 josh 2024-07-19 14:34:50 -04:00
  • eae2e17f41 Test tracking token end positions when the token spans a newline - #27 josh 2024-07-18 12:09:26 -04:00
  • 87d6d29d60 Store token end position - #27 josh 2024-07-15 21:03:18 -04:00
  • 3aced70356 Show line numbers of rules upon conflict - close #23 josh 2024-07-14 20:52:52 -04:00
  • 2dd89445fc Add command line switch to output warnings to stderr - close #26 josh 2024-07-14 15:31:43 -04:00
  • 4ae5ab79b3 Warn on shift/reduce conflicts josh 2024-07-13 21:35:53 -04:00
  • 69cc8fa67d Always compute lookahead tokens for reduce rules josh 2024-07-13 21:01:44 -04:00
  • 7f3eb8f315 Calculate follow token set for an ItemSet josh 2024-07-13 20:48:28 -04:00
  • d76e12fea1 Rename "following" to "next" - #25 josh 2024-07-08 10:14:09 -04:00
  • 911e9505b7 Track token position in AST Token node josh 2024-05-27 22:10:05 -04:00
  • aaeb0c4db1 Remove leftover TODO from earlier restructuring josh 2024-05-27 20:44:42 -04:00
  • fd89c5c6b3 Add Vim syntax highlighting files for Propane josh 2024-05-26 14:41:33 -04:00
  • 1468946735 v1.4.0 v1.4.0 josh 2024-05-11 11:46:28 -04:00
  • 2bccf3303e Update CHANGELOG josh 2024-05-09 17:38:18 -04:00
  • 0d1ee74ca6 Give a better error message when a referenced ptype has not been declared josh 2024-05-09 17:35:27 -04:00
  • 985b180f62 Update CHANGELOG josh 2024-05-09 11:56:44 -04:00
  • f3e4941ad8 Allow rule terms to be marked as optional josh 2024-05-09 11:56:13 -04:00
  • 494afb7307 Allow specifying the start rule name josh 2024-05-05 12:39:00 -04:00
  • 508dabe760 Update CHANGELOG for v1.4.0 josh 2024-05-04 11:58:52 -04:00
  • 153f9d28f8 Allow user to specify AST node prefix or suffix josh 2024-05-04 11:57:28 -04:00
  • d0f542cbd7 v1.3.0 v1.3.0 josh 2024-04-23 00:31:56 -04:00