1
我正在使用Java,將數據傳遞給Java Cup的JFlex。與前綴和後綴相同的運算符優先級問題(語法,Java杯)
如何定義運算符的優先級,可以是後綴和前綴,但具有不同的優先級。
我的意思:
terminal END;
terminal OP1, OP2, OP3;
precedence OP3;
precedence OP2;
precedence OP1_POSTFIX; //OP1 in postfix position
precedence OP1_PREFIX; //OP1 in prefix position
EXPR ::= END |OP1_PREFIX EXPR | EXPR OP1_POSTFIX
我不知道如何使這樣的工作。無論我做什麼,我最終都會遇到轉變/減少衝突。
謝謝你的時間和幫助。
UPDATE:
這是一個學校的項目,我得到了運算符優先級列表中,因此,我必須堅持下去。
這是運營商重點從最小到最大的優先級列表給出的一部分:
binary +, - (left precedence)
not
unary postfix^
unary prefix +, -,^
我不知道如何保證這種優先。