aboutsummaryrefslogtreecommitdiff
path: root/demos/parse
diff options
context:
space:
mode:
authorYuqian Yang <crupest@crupest.life>2025-10-17 08:44:07 +0800
committerYuqian Yang <crupest@crupest.life>2025-10-17 08:44:07 +0800
commitaa05a34dd5e4a56563cbfeab273785ce0e363089 (patch)
treebc23e1807fcd647d06a971c64cd5d4460a338412 /demos/parse
parent3c8d5c8f732239a8b50418be27464e30b9dddeae (diff)
downloadcru-aa05a34dd5e4a56563cbfeab273785ce0e363089.tar.gz
cru-aa05a34dd5e4a56563cbfeab273785ce0e363089.tar.bz2
cru-aa05a34dd5e4a56563cbfeab273785ce0e363089.zip
Parse remove String.
Diffstat (limited to 'demos/parse')
-rw-r--r--demos/parse/EliminateLeftRecursion.cpp10
1 files changed, 5 insertions, 5 deletions
diff --git a/demos/parse/EliminateLeftRecursion.cpp b/demos/parse/EliminateLeftRecursion.cpp
index 88fd5510..9e054859 100644
--- a/demos/parse/EliminateLeftRecursion.cpp
+++ b/demos/parse/EliminateLeftRecursion.cpp
@@ -6,16 +6,16 @@ int main() {
using namespace cru::parse;
Grammar grammar;
- auto S = grammar.CreateNonterminal(u"S");
- auto a = grammar.CreateTerminal(u"a");
+ auto S = grammar.CreateNonterminal("S");
+ auto a = grammar.CreateTerminal("a");
- grammar.CreateProduction(u"S := S a", S, {S, a});
- grammar.CreateProduction(u"S := a", S, {a});
+ grammar.CreateProduction("S := S a", S, {S, a});
+ grammar.CreateProduction("S := a", S, {a});
grammar.SetStartSymbol(S);
grammar.EliminateLeftRecursions();
- std::cout << grammar.ProductionsToString().ToUtf8();
+ std::cout << grammar.ProductionsToString();
return 0;
}