CompilerDesignIFLR1/CompilerDesignIflr1/Program.cs

15 lines
649 B
C#

// See https://aka.ms/new-console-template for more information
using CompilerDesignIFlr1;
Console.WriteLine("Hello, World!");
LR1Unit.Init("./files/translateFile");
LR1Unit.LanguageMode = "Chinese";
var grammarReader = new GrammarReader("./files/if-grammar.grammar");
var lr1Creator = new LR1Creator(grammarReader);
var lr1Table = new LR1Table(lr1Creator);
var lexicalAnalysis = new LexicalAnalysis(lr1Creator, "./files/code");
var semanticAnalysis = new SemanticAnalysis();
var stateMachine = new StateMachine(lr1Table, lexicalAnalysis, lr1Creator, semanticAnalysis);
semanticAnalysis.PrintQuadruples();
semanticAnalysis.OptimizeQuadruples();