static bool RunPhase_1(FileManager fileManager, SymbolTable symbolTable, out SyntaxTree syntaxTree) { if (false) { IScanner scanner = new GeneratedScannerWrapper(fileManager, symbolTable); //IScanner scanner = new Scanner(fileManager, symbolTable); Parser parser = new Parser(symbolTable, scanner); bool result = parser.ParseProgramm(out syntaxTree); Logger.Debug(symbolTable.DumpSymbolTable()); Logger.Debug(syntaxTree.DumpTreeTable()); return result; } else { NaseScanner scanner = new NaseScanner(fileManager.Input); scanner.SymbolTable = symbolTable; NaseParser parser = new NaseParser(scanner, symbolTable); bool result = parser.Parse(); syntaxTree = parser.SyntaxTree; if (result) { Logger.Debug(symbolTable.DumpSymbolTable()); Logger.Debug(syntaxTree.DumpTreeTable()); } return result; } }