Problem when using listener mode
まだ誰も着手していません。
評価
- 難易度
- 3/5
- 見積もり時間
- 1〜2日
- 初心者へのやさしさ
- 45/100
- issue の種類
- バグ
- 明瞭さ
- おおむね明確
- 活発さ
- 停滞
- 技術スタック
- python, typescript
- 領域
- compilers
調査の方向性
Python3Parser.parse と parser.listen を使って 2 つの例を再現し、末尾の改行がある場合とない場合で入力を比較します。最後の import 文の周辺における parser と listener の動作から調査を始め、末尾の改行がないコードでも listener のコールバックが動作することを確認しつつ、既存の複数行での動作を維持します。
索引モデルが issue の本文から書いたものです。
説明
When using listener mode the parser is always expecting a line break after each line of python code.
For instance,
const parser = new Python3Parser();
const python ='import sys\nfor i in sys.argv:\n print(i)';
// parseTree
const tree = parser.parse(python);
class MyListener extends Python3Listener {
enterImport_name(ctx): void {
let importName = ctx
.getText()
.toLowerCase()
.match(/(?<=import).+/)?.[0];
console.log('ImportName', importName);
}
}
const listenTableName = new MyListener();
parser.listen(listenTableName, tree);
The above code will work but when I remove '\n' from the python code it won't (Given below).
const parser = new Python3Parser();
const python ='import sys';
// parseTree
const tree = parser.parse(python);
class MyListener extends Python3Listener {
enterImport_name(ctx): void {
let importName = ctx
.getText()
.toLowerCase()
.match(/(?<=import).+/)?.[0];
console.log('ImportName', importName);
}
}
const listenTableName = new MyListener();
parser.listen(listenTableName, tree);
Is there a work around for this? I want to dynamically pass the python code to the parser so it might not always have a line break.
- 主要言語
- JavaScript
- スター
- 25
- フォーク
- 7
- PR マージ指標
- 30日以内にマージされた PR はありません
コントリビューションガイド
このリポジトリのコントリビューションガイドは索引されていません
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
DTStack/dt-python-parser のほかの issue
-
難易度 3/5 1〜2日 初心者へのやさしさ 48/100
DTStack/dt-python-parser#28 ·
-
難易度 5/5 1週間以上 初心者へのやさしさ 20/100
DTStack/dt-python-parser#27 · コメント 1 件 ·
-
難易度 3/5 1〜2日 初心者へのやさしさ 45/100
DTStack/dt-python-parser#24 · コメント 1 件 ·
-
難易度 5/5 1週間以上 初心者へのやさしさ 15/100
DTStack/dt-python-parser#15 · コメント 3 件 ·
-
支持最新版Python3语法 オープン
難易度 5/5 1週間以上 初心者へのやさしさ 20/100
DTStack/dt-python-parser#11 ·
DTStack/dt-python-parser の issue をすべて見る
似ている issue
-
bug customer-eng Durable Agents Inngest status: needs triage
難易度 2/5 1〜3時間 初心者へのやさしさ 82/100
-
optimization optimization:agents-md-curator
難易度 2/5 1〜3時間 初心者へのやさしさ 75/100
githubnext/gh-aw-cao#13475 ·
-
[BUG]: "Clear All" in Settings doesn't clear the saved analysis, old data comes back after reload オープンbug
難易度 2/5 1〜3時間 初心者へのやさしさ 88/100
AOSSIE-Org/OrgExplorer#253 · コメント 1 件 ·
-
難易度 2/5 1〜3時間 初心者へのやさしさ 88/100
oxc-project/oxc#26944 ·
-
ai-observability bug team/ai-observability
難易度 2/5 1〜3時間 初心者へのやさしさ 78/100