問題タブ [antlr3]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
antlr - 埋め込みコメントに関する antlr の問題
Dでネストされたコメントを実装しようとしています.
私にとって、これが機能することは論理的です...
これらのエラー メッセージと修正方法を説明してもらえますか?
ありがとう。
antlr - ANTLR-ツリー内の暗黙的およびトークン
ユーザーが入力したテキストを検索エンジンスタイルで解釈する文法を作成しようとしています。AND、OR、NOT、およびANDNOTブール演算子をサポートします。私はほとんどすべてが機能していますが、引用符で囲まれた文字列の外側にある2つの隣接するキーワードが暗黙的にAND句のように扱われるというルールを追加したいと思います。例えば:
チーズとクラッカー=チーズとクラッカー
(上下)または(左右)=(上下)OR(左右)
猫の犬「ポットベリーピッグ」=猫と犬と「ポットベリーピッグ」</p>
私は最後のものに問題があり、誰かが私を正しい方向に向けることができることを望んでいます。これが私のこれまでの*.gファイルです。私のANTLRの経験は、1日未満です。
antlr - ^と!ANTLR文法の略
^と!が何をするのか理解するのに苦労していました。ANTLR文法用語の略です。
java - ANTLR シリアライゼーション
抽象構文ツリーを XML ファイルにシリアライズ可能にする最善の戦略は何ですか?
antlr - ANTLR 相互左再帰ルールの解決
以下のANTLR文法の「expr」ルールは、明らかに相互に左再帰的です。ANTLR初心者として、これを解決するのに頭を悩ませるのは難しい. ANTLR リファレンス ブックの「Resolving Non-LL(*) Conflicts」を読みましたが、まだ解決策がわかりません。ポインタはありますか?
antlr - ANTLR文法をBison / EBNFに変換
ANTLR文法をBison grmmarに変換するツールはありますか?
vba - antlrを使用して死んだ変数を削除する
現在、古い VBA (アプリケーション用ビジュアル ベーシック) アプリケーションのサービスを提供しています。そのアプリケーションを分析し、無効な変数を出力する従来のツールを持っています。それらの数は 2000 以上あるので、これを手作業で行いたくありません。
したがって、前述のツールに従ってデッド変数を含む個別のコードファイルを AST に変換し、その方法で削除するというアイデアがありました。
私の質問:これを行うための推奨される方法はありますか? StringTemplate を使用したくありません。すべてのルールのテンプレートを作成する必要があり、非表示のチャネルにコメントがあった場合、それは失われますよね? 必要なのは、そのコードの一部を削除し、残りを読み取ったとおりに出力することだけです。
おすすめはありますか?
antlr3 - antlr 文法の問題 (語彙)
「abc」を解析しようとすると、不一致のセット例外が発生します (引用符は入力の一部です)
これが (簡略化された) 文法です。Java.g の例からのほぼそのままであり、基本的には他の文法例と同じです。最新バージョンにバグはありますか?日食のコンテキストで 3.2 を使用します。
前もって感謝します。
文法文字列;
オプション { 言語 = C; }
ルール: リテラル EOF;
リテラル : CHARLITERAL | STRINGLITERAL ;
CHARLITERAL : '\'' (EscapeSequence | ~( '\'' | '\\' | '\r' | '\n' ) ) '\'' ;
STRINGLITERAL : '"' ( EscapeSequence | ~( '\\' | '"' | '\r' | '\n' )
)* '"' ;
fragment EscapeSequence : '\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\"' | '\'' | '\\' |
('0'..' 3') ('0'..'7') ('0'..'7') |
('0'..'7') ('0'..'7') |
('0'. .'7') )
;
antlr - Antlr ASTが(可能性のある)狂気を生み出す
次のことも可能ですか?antlrに与えられた入力を「逆」にして、各トークンを前のトークンの子にします。
したがって、入力の場合(各トークンは「。」文字で区切られていると想定します):
文法で次のASTを生成したいと思います。
これまでのところ、ノードを逆にすることができましたが、ノードを互いに子にすることはできません。
java - ANTLR を使用して JavaScript ファイル内のグローバル変数宣言を識別する
JavaScript グローバル変数を識別する目的で、ANTLR が提供する ECMAScript 文法を使用してきました。AST が作成され、グローバル変数宣言を除外する基本的な方法が何であるかを考えています。
AST で最も外側の「variableDeclaration」トークンをすべて探すことに興味があります。ただし、これを行う実際の方法は私にはわかりません。これまでのセットアップコードは次のとおりです。
ANTLR を初めて使用する場合、だれでも指針を提供できますか?