int startSyntaxAnalysis(int argc , char * argv[]) { if(initAnalysisTable() == -1) { return -1 ; } if(argc == 1) { printf("start run test file \n") ; return syntaxAnalysis("test.out"); } else { if(strcmp(argv[1],"genfile") == 0) { genfile() ; printf("generate file finished") ; } else { printf("start run %s file \n",argv[1]) ; return syntaxAnalysis(argv[1]); } } }
Entity parserCore(std::string input) { input.erase(remove_if(input.begin(), input.end(), isspace), input.end()); checkString(input); return _parserCore(input, syntaxAnalysis(input)); }
void parseSource(const std::string& src, GlobalEvrionment &g) { std::vector<Token> tokens; lexicalAnalysis(src, tokens); syntaxAnalysis(g, tokens); }