[問題] PLY - discard token in grammar file
各位好,因為研究的需要我利用PLY寫了一個call graph產生器
我寫了兩個檔案
一個是test_lex.py:
這個是用來定義token的
另外一個是test_yacc.py:
這是用來定義grammar rule的
在某些況下,我必須把token丟棄,
也就是把它從symbol stack中移除
例如我在test_lex.py中定義了'IF'這個token
在test_yacc.py中我想進行以下處理
def p_if(p):
'if : IF'
1. do something (處理 call graph用)
2. 將'if'這個non-terminal從symbol stack中移除,
這樣才不會影響到之後parse的進行
重點在於第二點,要怎麼在grammar function中把non-terminal移除呢?
因為有點難表達,如果寫的不是很清楚,我可以再補充說明,謝謝!
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.113.73.43
→
02/28 13:28, , 1F
02/28 13:28, 1F
→
02/28 19:59, , 2F
02/28 19:59, 2F
Python 近期熱門文章
PTT數位生活區 即時熱門文章