antlr3

    2熱度

    1回答

    鑑於以下詞法語法: lexer grammar CodeTableLexer; CodeTabHeader : '[code table 1.0]'; Code : 'code'; Table : 'table'; End : 'end'; Row : 'row'; Naming : 'naming'; Dfltlang : 'dfltlang'; La

    0熱度

    1回答

    我總是收到MissingTokenException,NullPointerException,如果我沒記錯的話NoViableAlterativeException。 ANTLRWorks的日誌文件/控制檯輸出對我來說不夠有幫助。 我後是一個改寫如下所示: (expression | FLOAT) '(' -> (expression | FLOAT) '*(' 這裏下面是我的語法的樣本,我

    4熱度

    1回答

    我開發Java中的實踐問題ANTLR 3.4。 ANTLR 2.7給出了我們的指示,並且相對於版本3發生了變化。我發現頁面顯示出一些差異,但不是那些尋求的。 在ANTLR 2.7 MiToken可以加載這樣的類: analex.setTokenObjectClass ("MiToken")** 什麼是在ANTLR 3.4等價?該選項在該版本中不存在。

    0熱度

    1回答

    我使用ANTLR V3.4Ç目標,這裏是我如何添加數據到一個載體:在該行「$Common_Param_Vec::common_params = antlr3VectorNew(10);」 options { language = 'C'; } scope Common_Param_Vec { pANTLR3_VECTOR common_params; } bus

    4熱度

    1回答

    我有這樣的語法的例外, locationPath returns [CustomParser xpathParser] :^(LOCATION_PATH relativeLocationPath {**Want to throw a exception if this condition matches**}) |^(LOCATION_PATH absoluteLocation

    1熱度

    1回答

    鑑於詞法 fragment FRAGID : ('a'..'z'|'A'..'Z') ('a'..'z'|'A'..'Z'|'0'..'9'|'_')* ; ID : FRAGID; NAME: FRAGID ('.' FRAGID)*; 鑑於語法 var_def: type=ID vname=ID ASSIGN expr -> ^(VARDEF $type $vname e

    4熱度

    1回答

    我有以下的語法前瞻: rule: 'aaa' | 'a' 'a'; 它可以成功地解析字符串「AAA」,但它無法解析「AA」,出現以下錯誤: line 1:2 mismatched character '<EOF>' expecting 'a' 僅供參考,這是詞法分析器的問題而不是解析器的問題,因爲我甚至不會調用解析器。主要功能是這樣的: @members { public sta

    0熱度

    2回答

    我想創建一個使用ANTLR的表達式分析器 表達式將進入if語句,所以它的根是一個條件。 我有以下語法,其中「編譯」來,沒有任何問題語法/詞法分析器文件,但生成的代碼本身有一定的誤差,基本上是兩個「空」的if語句 即 如果(()) 不知道我在做什麼錯,任何幫助將不勝感激。 謝謝。 語法.g文件如下: 語法Expression; options { language=CSharp3;

    1熱度

    1回答

    我知道這已經被討論了幾千次,但我仍然無法弄清楚爲什麼遵循語法失敗。在解釋器中一切正常,沒有任何錯誤或警告。但是,當運行生成的代碼時,我會得到不匹配的輸入,如下所示。 對於這個語法: grammar xxx; options { language = Java; output = AST; } @members { @Override public

    5熱度

    3回答

    我有一個ANTLR3 AST,我需要用我曾作爲大致實施以下Clojure的一個訂單後,深度優先遍歷遍歷: (defn walk-tree [^CommonTree node] (if (zero? (.getChildCount node)) (read-string (.getText node)) (execute-node (map-action n