2016-09-19 2 views
3

私はantlrの新機能です。構文述語には多くの問題があります。 私はantlr4で構文解析するために、この文法を変換しようとしていましたが、意味のある方法でそれをどのように変更するのか本当に混乱しました。anlr3からantlrに変換するNatty 4

date_time 
: (
     (date)=>date (date_time_separator explicit_time)? 
     | explicit_time (time_date_separator date)? 
    ) -> ^(DATE_TIME date? explicit_time?) 
    | relative_time -> ^(DATE_TIME relative_time?) 
    ;` 

答えて

4

ANTLR4では、構文述語および書き換え規則はサポートされなくなりました。 ANTLR4の解析アルゴリズムは、構文的な述語を必要としないために十分強力であること、そしてあなたがパースツリーをトラバースしたい場合は、これらのリンクを見ている必要がありますので、

をANTLR4で投稿したルールは次のようになります。

関連する問題