0
我在PLY中爲包含兩種子語言的語言編寫解析器:「正常」表達式語言和類型註釋語言。問題是它們共享一些令牌,並且這兩種語言的優先順序不同。子語言的優先級
例如,在表達式語言a | b, c
應相當於(a | b), c
(和裝置一樣在Python),而在類型語言相同的應相當於a | (b, c)
(鍵入或者a
或鍵入b, c
,這是一個元組類型爲b
,類型爲c
)。
真正的問題比這個更復雜一些,但它仍然基本相同。
在PLY中可以暫時改變優先級嗎?如果不是,我會申請另一個解決方案嗎?