antlr

    1熱度

    2回答

    使用ANTLR v3和CSharp2語言說明符,有沒有什麼方法可以表示您希望生成的詞法分析器或解析器是內部還是默認公共? 命名空間時指定: @lexer::namespace {My.Namespace} ,我會假設存在的訪問說明符類似的東西,但我一直無法找到它。

    8熱度

    4回答

    我在找交鑰匙ANTLR語法爲C#生成一個可用抽象語法樹(AST),且爲後端語言無關的或針對C#,C,C++或D. 它不需要支持錯誤報告。 P.S.我不願意做任何修補,因爲替代方案不是很難。

    1熱度

    1回答

    我已經轉換了「容易」部分(片段,@header和@member declerations等),但由於我是新來的Antlr我有一個很艱難 時間轉換樹報表等 我使用以下migration guide。 The grammar file can be found here. ... 下面你可以找到一些例子,我遇到的問題: 舉例來說,我有一個問題: n3Directive0!: d:AT_

    1熱度

    4回答

    ANTLR可以使用StringTemplate或任何文本輸出C#,我希望它可以像Yacc/Bison一樣,還是隻輸出到java?從我看過的例子看來,它似乎是一個非常以Java爲中心的工具。

    0熱度

    2回答

    我目前使用AntLR來解析某些專有語言的文件。 我需要在編輯器上突出顯示它的各個部分(例如,突出顯示Java類中的方法)。 有沒有人有提示如何讓他們? 說我有這樣的代碼: function test(param1, param2) { } 作爲函數是一個關鍵字,所述第一位置I在分析器得到的是標識符「測試」中的一個。我怎樣才能從那裏獲得職位直到結束大括號?正如人們所期望的那樣,參數列表是動態的

    5熱度

    2回答

    什麼是最簡單(最短,最少規則,沒有警告)的方式來解析同一語法中的有效日期和數字?我的問題是,匹配有效月份(1-12)的詞法分析規則將匹配任何1-12的匹配項。所以,如果我只是想匹配一個數字,我需要一個像解析規則: number: (MONTH|INT); 它只有當我添加詞法規則一天和一年變得更加複雜。我想這樣的日期解析規則: date: month '/' day ('/' year)? ->

    2熱度

    2回答

    我必須定義文件的語法,如下所示。 //示例文件 NameCount = 4 名稱=一個 名稱= B 名稱= C 名稱= d //文件結束 現在我能定義令牌NameCount和名稱。但是我必須定義文件結構,包括令牌的有效數量名稱,這是NameCount之後的值。我有解析的值並將其轉換爲整數並存儲在全局語法範圍的變量中(例如,在變量nc中)。 如何在語法中定義那個名稱應該重複一下nc次?

    0熱度

    2回答

    我正在使用ANTLRWorks創建ANTLR語法。我有一個有效的語法,也生成解析器和詞法分析器源文件。我也試着調試生成的代碼,輸出和調試器輸出一樣。 但是,當我嘗試調用調試器沒有產生__Test__類是在控制檯上來。我已經正確設置了類路徑,因爲我可以用相同的類路徑成功編譯__Test__.java。 會出現什麼問題?是否有任何清晰的教程,用antlr和antlrworks編寫和編譯示例解析器?

    3熱度

    3回答

    希望這是一個非常快速的;)我在ANTLR3中編寫了詞法分析器/解析器規範,並且針對CSharp2目標。生成的代碼工作正常,但我無法讓ANTLR將C#輸出放入命名空間。 語法文件的相關部分如下: grammar MyGrammar; options { language = CSharp2; output = AST; ASTLabelType = CommonT

    1熱度

    2回答

    我有一個簡單的語法,並使用antlr 2.7.7生成了一對c#類。當解析器發現令牌有錯誤時,它會拋出異常;我想知道有多少個字符進入解析的流中。我怎麼做?