C++ Competitive Programming DI Helper
English
This extension helps Competitive Programming users manage _lib-based C++ headers.
It provides three main workflows:
- Completion for
//@inject _lib/... so you can quickly select headers to inject.
- Safe expansion of dependency headers, including nested
_lib hpp files.
- Visualization of the dependency graph so you can inspect how headers connect.
The extension is designed for competitive programming codebases where shared utilities live under _lib, and where header inclusion needs to stay fast, repeatable, and easy to debug.
日本語
この拡張は、競技プログラミング向けの C++ で _lib 配下のヘッダ管理を支援します。
主な機能は次のとおりです。
//@inject _lib/... の補完を出し、注入したいヘッダをすばやく選べます。
_lib 配下の hpp を再帰的に展開し、安全に依存を注入できます。
- 依存グラフを可視化して、どのヘッダがどこへつながっているかを確認できます。
共通ライブラリを _lib にまとめている競技プログラミングのコードベースで、依存関係を速く、再現性高く、デバッグしやすく扱うための拡張です。
Usage
English
- Open a C++ file in a workspace that contains
_lib.
- Type
//@inject _lib/... and pick a completion item to expand the dependency.
- Use the editor title button
Library Graph to open the full dependency graph for all _lib headers.
- If a cycle is detected, the extension reports it in the Problems panel and prevents unsafe injection.
日本語
_lib を含むワークスペースで C++ ファイルを開きます。
//@inject _lib/... を入力し、候補からヘッダを選ぶと依存が展開されます。
- エディタ上部の
Library Graph ボタンで、_lib 全体の依存グラフを表示できます。
- 循環参照がある場合は Problems パネルに通知し、安全でない注入を止めます。
Commands
English
Visualize Dependency Graph: show the dependency graph for the current file.
Visualize Library Dependency Graph: show the full _lib dependency graph.
Debug Library Dependency Graph: show the graph with layout diagnostics for troubleshooting.
日本語
Visualize Dependency Graph: 現在のファイルに対する依存グラフを表示します。
Visualize Library Dependency Graph: _lib 全体の依存グラフを表示します。
Debug Library Dependency Graph: レイアウト診断つきでグラフを表示し、描画崩れの原因を追いやすくします。
Quick test
English
Run the bundled fixture test to verify nested _lib resolution, idempotent expansion, and graph generation:
npm run test:di
日本語
組み込みの fixture テストを実行すると、ネストした _lib 解決、冪等な展開、グラフ生成を確認できます。
Build
English
npm run compile
vsce package
日本語
ビルドと VSIX 作成は次のコマンドです。
npm run compile
vsce package