From ef7488747c39e30eef07b2450eb253ada6952477 Mon Sep 17 00:00:00 2001 From: Josh Holtrop Date: Mon, 10 Jul 2023 22:25:28 -0400 Subject: [PATCH] Add StateID --- assets/parser.d.erb | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/assets/parser.d.erb b/assets/parser.d.erb index b15285e..eba47ae 100644 --- a/assets/parser.d.erb +++ b/assets/parser.d.erb @@ -453,11 +453,12 @@ class <%= @classname %> <% # Rule set IDs start after token IDs, so to store either a token ID %> <% # or a rule set ID, we just need to know the maximum rule set ID. %> alias SymbolID = <%= get_type_for(@parser.rule_sets.map(&:last).map(&:id).max) %>; + alias StateID = <%= get_type_for(@parser.state_table.size) %>; private struct Shift { SymbolID symbol; - uint state; + StateID state; } private struct Reduce @@ -465,7 +466,7 @@ class <%= @classname %> Token token; uint rule; SymbolID rule_set; - uint n_states; + StateID n_states; } private struct ParserState