這個(gè)語法分析器用到的是自頂向下的遞歸調(diào)用的方法,根據(jù)CMinus語言的文法規(guī)則 的BNF范式編寫遞歸調(diào)用的代碼,parse方法是程序的入口,它調(diào)用的stmt_sequence完成整個(gè)語法分析工作,stmt_sequence背后是12個(gè)互相調(diào)用的方法,它本身也在語法分析的過程中被調(diào)用到。
每個(gè)方法在最后會(huì)返回一個(gè)構(gòu)造好的節(jié)點(diǎn)DefaultMutableTreeNode節(jié)點(diǎn)t給調(diào)用它的方法,然后調(diào)用它的方法用這個(gè)返回的節(jié)點(diǎn)繼續(xù)構(gòu)造,最后語法分析完成后會(huì)返回一棵完全構(gòu)造好了的樹節(jié)點(diǎn),然后將這個(gè)樹節(jié)點(diǎn)作為根節(jié)點(diǎn)生成一個(gè)樹控件JTree顯示到窗體程序上
標(biāo)簽:
語法分析器
遞歸
上傳時(shí)間:
2013-12-27
上傳用戶:6546544