問題タブ [gold-parser]

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.

0 投票する
0 に答える
196 参照

parsing - VBScript パーサーの文法: 配列割り当てモデリング

私は GoldParser VBScript 文法を書いています。私の文法配列代入ステートメントでは、 などは代入ステートメントとしてid(1) = 2ではなく、call ステートメントとして解析されますid ((1) = 2)(= 記号は、代​​入演算子と比較演算子の両方になる可能性があります)。次の文法を変更して、配列代入ステートメントを正しく解析するにはどうすればよいですか?

With注: 内のステートメントを正しく解析するために IDDot ターミナルを追加しました.obj.sub .obj.par1

0 投票する
1 に答える
634 参照

parsing - コメントを含む GOLD パーサー

ある言語を別の言語に変換するプロジェクトに取り組んでおり、GOLD パーサーを使用しています。コメントを失いたくないので、変換にコメントを含めることができるようにする必要があります。問題は、CommentLine と CommentBlock がノイズとして扱われ、キャプチャされて破棄されることです。この動作をオフにして、コメントが読み取られたときにツリーの残りの部分に送信され、他のステートメントと同様に処理できるようにする簡単な方法はありますか?

そうでない場合、コメントラインを解析時に他のステートメントと同様に処理されるルールに変換するのを手伝ってくれる人はいますか? GOLD Parser Web サイトの VBScript 文法を使用しています。

この時点での唯一のオプションは、エンジンがコメント トークンを読み取り、生データとソース行番号を取得し、それをディクショナリにスローして、他のトークンが処理されるときに参照できるようにすることです。これは実行可能ですが、面倒になる可能性があります。

0 投票する
1 に答える
142 参照

bnf - BNF を GoldParser に正しく変換するには?

BNFにこれがあるとします:

Gold-Parser に変換する方法はありますか? このように分割せずに:

補足: 誰かがより良いタイトル/タグを持っている場合は、編集してください、ありがとう!

0 投票する
1 に答える
254 参照

delphi - Gold Parser を使用したプロジェクト ファイルとパッケージ ファイルの解析 -- 「IdList」のヘルプが必要

私はObject Pascal エンジン(Rob van den Brink 作) に手を出していますが、Delphi ユニット ファイルで動作するようです (いくつかのマイナーで簡単に修正可能なエラーを除く)。

ただし、プロジェクト ( .dpr) およびパッケージ ( .dpk) ファイルの解析に問題があります。そして、この問題は基本的に、「uses」がユニットとプロジェクトで持つことができるもの(および「contains」句がパッケージで持つことができるもの)の違いに要約されます。

簡単な例を挙げましょう:

ユニット (.pas) ファイルでは、「uses」句は次のようになります。

一方、プロジェクト (.dpr) ファイルでは

それでも、同じ機能 (「含む」という名前で) は次のように発生します。

私が持っている(上記のリンクから)文法ファイルの問題は、最も単純なケース(つまり、ユニットファイルで「使用」が発生する方法)のみを処理し、他の場合はエラーをスローすることです。

私は、「IdList」が文法ファイルでどのように定義されているかを要約すると推測しています。これは次のとおりです。

私の質問は、次のとおりです。この定義を変更して、他の選択肢を処理できるようにするにはどうすればよいですか (プロジェクト ファイルとパッケージ ファイルに見られるように)。

0 投票する
1 に答える
72 参照

parsing - ゴールドパーサー小文字

ゴールド パーサーの問題: 大文字と小文字の区別に問題があります。私の文法の以下は失敗しています:

小文字 = {&61 .. &7A}

小文字 = 小文字 +

大文字 = {&41 .. &5A}

大文字 = 大文字 +


「LowercaseLetter と UppercaseLetter を区別できません」という「DFA 状態」が表示されます。

LowercaseLetter は 'a' から 'z' までの ASCII 文字のセットによって定義され、UppercaseLetter は 'A' から 'Z' までの ASCII 文字のセットによって定義されると信じているため、これは紛らわしいと思います。

どんな援助も大歓迎です。