public AutomatonResult Automaton() { AutomatonResult result = new AutomatonResult(); BottomUpParser parser = new BottomUpParser(); result.Automaton += "digraph C {\r\n"; result.Automaton += parser.GetAutomaton(); result.Automaton += "}"; return(result); }
public CompilationResult Compile([FromBody] CompilationRequest request) { CompilationResult result = new CompilationResult(); LexicalAnalyzer analyzer = new LexicalAnalyzer(LexicalLanguage.GetLanguage(), request.Input); BottomUpParser parser = new BottomUpParser(analyzer); parser.Parse(); result.IL = parser.GetILAsString(); result.Assembly = new CodeGenerator().GenerateAsString(parser.GetIL()); return(result); }
public ASTResult AST([FromBody] CompilationRequest request) { ASTResult result = new ASTResult(); LexicalAnalyzer analyzer = new LexicalAnalyzer(LexicalLanguage.GetLanguage(), request.Input); BottomUpParser parser = new BottomUpParser(analyzer); parser.Parse(); result.AST += "digraph C {\r\n"; result.AST += parser.TopLevelAST.ToDot(); result.AST += "}"; return(result); }
static void Main(string[] args) { string input = File.ReadAllText(args[0]); Stopwatch sw = Stopwatch.StartNew(); LexicalAnalyzer analyzer = new LexicalAnalyzer(LexicalLanguage.GetLanguage(), input); BottomUpParser parser = new BottomUpParser(analyzer); parser.Parse(); Console.WriteLine(new CodeGenerator().GenerateAsString(parser.GetIL())); sw.Stop(); Console.WriteLine($"Done (took {sw.ElapsedMilliseconds} milliseconds)"); Console.ReadLine(); Console.ReadLine(); Console.ReadLine(); Console.ReadLine(); }
public LogicalQueryPlan(RelationManager relationManager) { _relationManager = relationManager; Parser = new BottomUpParser(); }