Skip to content

fix: TypeScript の型引数内の typeof import を解析する - #39

Merged
owayo merged 1 commit into
mainfrom
fix/issue-33-typescript-import-type-query
Oct 8, 2026
Merged

owayo merged 1 commit into
mainfrom
fix/issue-33-typescript-import-type-query

Conversation

@owayo

@owayo owayo commented Oct 8, 2026

Copy link
Copy Markdown
Owner

有効な TypeScript / TSX の importOriginal<typeof import("node:fs")>() が型引数内で parse error となり、後続のオブジェクトメソッドの構造まで崩れる問題を修正します。共有文法の call_expression と _type_query_call_expression の1組を静的な優先順位から実行時の衝突へ移し、型引数内の import type query を解析できるようにします。別の型注釈用の優先順位は維持します。

配布 crate 0.23.2 を基準に TS / TSX 文法を vendor 化し、ABI 14 で両方の C パーサーを再生成しました。ライセンス・配布物のチェックサム・生成ツールと npm 依存の固定・再生成手順を vendor/tree-sitter-typescript/PATCHES.md に記録しています。通常の Cargo ビルドに npm や文法生成器は不要です。

ローカルで新規単体11件・CLI5件と既存の関連65件、合計81件が通過しました(ignored 0)。パッケージ単体の文法ロード2件、fmt、default all-targets Clippy、差分の空白検査、影響分析、独立レビューも通過しています。修正前は TS / TSX の両方で報告どおり ERROR at 1:63 を再現しました。元 crate、無修正再生成、修正後を比べ、上流コーパス各112件の全 AST が一致しています。比較式・動的 import・ジェネリック呼び出し・optional call・JSX などの対照も確認しています。

既存の文法では、裸の await call<Item>() による callee 抽出とジェネリックなタグ付きテンプレートに制約があります。今回の変更前から存在する挙動で、元パーサーとの AST 対照と文書に記録しています。直接呼び出しと await (call<Item>()) では callee の抽出を検証します。

Closes #33

@owayo owayo self-assigned this Oct 8, 2026
@coderabbitai

coderabbitai Bot commented Oct 8, 2026

Copy link
Copy Markdown

Important

  • 🔍 Trigger review

This repository does not receive automatic reviews because it has fewer than 10 stars.

⚙️ Run configuration
  • Configuration used: defaults
  • Review profile: CHILL
  • Plan: Advanced
  • Run ID: c89ca900-3dd7-432e-99cb-b85923527e24
  • Autopilot · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@owayo
owayo merged commit c4a5a43 into main Oct 8, 2026
9 checks passed
@owayo
owayo deleted the fix/issue-33-typescript-import-type-query branch October 8, 2026 10:50
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

TypeScript の型引数内の typeof import が parse error になる

1 participant