indexer-cli 0.12.12 → 0.12.14
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +29 -2
- package/dist/cli/commands/ast.d.ts +2 -0
- package/dist/cli/commands/ast.js +208 -0
- package/dist/cli/commands/ast.js.map +1 -0
- package/dist/cli/commands/skills.js +11 -3
- package/dist/cli/commands/skills.js.map +1 -1
- package/dist/cli/entry.js +3 -2
- package/dist/cli/entry.js.map +1 -1
- package/dist/core/skills-version.d.ts +1 -1
- package/dist/core/skills-version.js +1 -1
- package/dist/engine/dependency-resolver.js +63 -0
- package/dist/engine/dependency-resolver.js.map +1 -1
- package/dist/engine/indexer.d.ts +1 -1
- package/dist/engine/indexer.js +57 -2
- package/dist/engine/indexer.js.map +1 -1
- package/dist/languages/rust.d.ts +32 -0
- package/dist/languages/rust.js +409 -0
- package/dist/languages/rust.js.map +1 -0
- package/package.json +3 -1
package/README.md
CHANGED
|
@@ -20,7 +20,7 @@ post-commit hook keeps the index up to date automatically.
|
|
|
20
20
|
- **`idx` command alias**: `setup` installs or repairs a clean `idx` wrapper — no npm warnings in agent output
|
|
21
21
|
- **Token savings for agents**: Pushes agents toward indexed discovery instead of expensive blind search and repeated
|
|
22
22
|
context loading
|
|
23
|
-
- **Multi-language support**: TypeScript/JavaScript, Python, C#, GDScript, Ruby
|
|
23
|
+
- **Multi-language support**: TypeScript/JavaScript, Python, C#, GDScript, Ruby, Rust
|
|
24
24
|
- **Semantic code search**: Natural language queries over your entire codebase
|
|
25
25
|
- **Incremental indexing**: Uses `git diff` to re-index only changed files, bulk-copies unchanged vectors
|
|
26
26
|
- **Local-first**: All data stored in `.indexer-cli/` inside the project (SQLite + sqlite-vec)
|
|
@@ -74,7 +74,7 @@ project root automatically. If a project has not been initialized yet, commands
|
|
|
74
74
|
stop with a clear message telling you to run `idx init` first instead of creating data in the wrong directory.
|
|
75
75
|
|
|
76
76
|
After `init`, the repo contains `.claude/skills/repo-discovery/SKILL.md`, so coding agents get one indexed discovery
|
|
77
|
-
entry point that routes them toward `idx search`, `idx structure`, `idx architecture`, `idx explain`, and `idx deps`
|
|
77
|
+
entry point that routes them toward `idx search`, `idx structure`, `idx ast`, `idx architecture`, `idx explain`, and `idx deps`
|
|
78
78
|
before they start burning tokens on broad filesystem scans.
|
|
79
79
|
|
|
80
80
|
## Why agents save tokens with this
|
|
@@ -100,6 +100,7 @@ That skill routes repository discovery flows such as:
|
|
|
100
100
|
```bash
|
|
101
101
|
idx search "<query>"
|
|
102
102
|
idx structure --path-prefix src/<area>
|
|
103
|
+
idx ast src/<large-file.ts>
|
|
103
104
|
idx architecture
|
|
104
105
|
```
|
|
105
106
|
|
|
@@ -208,6 +209,32 @@ TRUNC hidden=49 cursor=5
|
|
|
208
209
|
NEXT idx structure --path-prefix src --max-depth 2 --max-files 5 --cursor 5
|
|
209
210
|
```
|
|
210
211
|
|
|
212
|
+
### `idx ast <file>`
|
|
213
|
+
|
|
214
|
+
Print a compact AST outline for one supported source file. Use this after `search` or `structure` has identified a large
|
|
215
|
+
file, but before reading it in chunks: the output gives syntax node names, line ranges, and short first-line snippets so
|
|
216
|
+
an agent can choose the smallest useful `Read` ranges.
|
|
217
|
+
|
|
218
|
+
| Option | Default | Description |
|
|
219
|
+
|--------------------------|---------|----------------------------------------------|
|
|
220
|
+
| `--max-depth <number>` | 5 | Limit AST traversal depth |
|
|
221
|
+
| `--max-nodes <number>` | 120 | Limit number of AST nodes shown |
|
|
222
|
+
| `--cursor <number>` | 0 | Continue from a previous `TRUNC` cursor |
|
|
223
|
+
| `--no-include-text` | — | Hide compact first-line snippets |
|
|
224
|
+
|
|
225
|
+
Example:
|
|
226
|
+
|
|
227
|
+
```text
|
|
228
|
+
AST src/cli/commands/search.ts language=typescript nodes=75 maxDepth=2
|
|
229
|
+
SourceFile:1-295 — import path from "node:path";
|
|
230
|
+
ImportDeclaration:1 — import path from "node:path";
|
|
231
|
+
ImportClause:1 — path
|
|
232
|
+
StringLiteral:1 — "node:path"
|
|
233
|
+
|
|
234
|
+
TRUNC hidden=67 cursor=8
|
|
235
|
+
NEXT idx ast src/cli/commands/search.ts --max-depth 2 --max-nodes 8 --cursor 8
|
|
236
|
+
```
|
|
237
|
+
|
|
211
238
|
### `idx architecture`
|
|
212
239
|
|
|
213
240
|
Print an architecture snapshot for the current working directory: file statistics, detected entry points, a dependency
|
|
@@ -0,0 +1,208 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.registerAstCommand = registerAstCommand;
|
|
7
|
+
const node_fs_1 = __importDefault(require("node:fs"));
|
|
8
|
+
const node_path_1 = __importDefault(require("node:path"));
|
|
9
|
+
const typescript_js_1 = require("../../languages/typescript.js");
|
|
10
|
+
const python_js_1 = require("../../languages/python.js");
|
|
11
|
+
const csharp_js_1 = require("../../languages/csharp.js");
|
|
12
|
+
const gdscript_js_1 = require("../../languages/gdscript.js");
|
|
13
|
+
const ruby_js_1 = require("../../languages/ruby.js");
|
|
14
|
+
const rust_js_1 = require("../../languages/rust.js");
|
|
15
|
+
const project_root_js_1 = require("../project-root.js");
|
|
16
|
+
const DEFAULT_MAX_DEPTH = 5;
|
|
17
|
+
const DEFAULT_MAX_NODES = 120;
|
|
18
|
+
const MAX_TEXT_LENGTH = 90;
|
|
19
|
+
function parseNonNegativeInteger(value, optionName, fallback) {
|
|
20
|
+
if (!value) {
|
|
21
|
+
return fallback;
|
|
22
|
+
}
|
|
23
|
+
const parsed = Number.parseInt(value, 10);
|
|
24
|
+
if (!Number.isFinite(parsed) || parsed < 0) {
|
|
25
|
+
throw new Error(`${optionName} must be a non-negative integer`);
|
|
26
|
+
}
|
|
27
|
+
return parsed;
|
|
28
|
+
}
|
|
29
|
+
function parsePositiveInteger(value, optionName, fallback) {
|
|
30
|
+
if (!value) {
|
|
31
|
+
return fallback;
|
|
32
|
+
}
|
|
33
|
+
const parsed = Number.parseInt(value, 10);
|
|
34
|
+
if (!Number.isFinite(parsed) || parsed <= 0) {
|
|
35
|
+
throw new Error(`${optionName} must be a positive integer`);
|
|
36
|
+
}
|
|
37
|
+
return parsed;
|
|
38
|
+
}
|
|
39
|
+
function createLanguagePlugins() {
|
|
40
|
+
return [
|
|
41
|
+
new typescript_js_1.TypeScriptPlugin(),
|
|
42
|
+
new python_js_1.PythonPlugin(),
|
|
43
|
+
new csharp_js_1.CSharpPlugin(),
|
|
44
|
+
new gdscript_js_1.GDScriptPlugin(),
|
|
45
|
+
new ruby_js_1.RubyPlugin(),
|
|
46
|
+
new rust_js_1.RustPlugin(),
|
|
47
|
+
];
|
|
48
|
+
}
|
|
49
|
+
function findPlugin(filePath) {
|
|
50
|
+
const extension = node_path_1.default.extname(filePath).toLowerCase();
|
|
51
|
+
return createLanguagePlugins().find((plugin) => plugin.fileExtensions.includes(extension));
|
|
52
|
+
}
|
|
53
|
+
function isRecord(value) {
|
|
54
|
+
return typeof value === "object" && value !== null;
|
|
55
|
+
}
|
|
56
|
+
function isTsMorphNode(value) {
|
|
57
|
+
return (isRecord(value) &&
|
|
58
|
+
typeof value.getKindName === "function" &&
|
|
59
|
+
typeof value.getStartLineNumber === "function" &&
|
|
60
|
+
typeof value.getEndLineNumber === "function" &&
|
|
61
|
+
typeof value.getText === "function" &&
|
|
62
|
+
typeof value.forEachChild === "function");
|
|
63
|
+
}
|
|
64
|
+
function isTreeSitterAst(value) {
|
|
65
|
+
if (!isRecord(value) || typeof value.source !== "string") {
|
|
66
|
+
return false;
|
|
67
|
+
}
|
|
68
|
+
const tree = value.tree;
|
|
69
|
+
return isRecord(tree) && isRecord(tree.rootNode);
|
|
70
|
+
}
|
|
71
|
+
function compactText(text) {
|
|
72
|
+
const firstLine = text.trim().split(/\r?\n/, 1)[0]?.trim();
|
|
73
|
+
if (!firstLine) {
|
|
74
|
+
return undefined;
|
|
75
|
+
}
|
|
76
|
+
return firstLine.length > MAX_TEXT_LENGTH
|
|
77
|
+
? `${firstLine.slice(0, MAX_TEXT_LENGTH - 1)}…`
|
|
78
|
+
: firstLine;
|
|
79
|
+
}
|
|
80
|
+
function tsMorphToView(node, depth) {
|
|
81
|
+
const children = [];
|
|
82
|
+
if (depth > 0) {
|
|
83
|
+
node.forEachChild((child) => {
|
|
84
|
+
children.push(tsMorphToView(child, depth - 1));
|
|
85
|
+
});
|
|
86
|
+
}
|
|
87
|
+
return {
|
|
88
|
+
kind: node.getKindName(),
|
|
89
|
+
startLine: node.getStartLineNumber(),
|
|
90
|
+
endLine: node.getEndLineNumber(),
|
|
91
|
+
text: compactText(node.getText()),
|
|
92
|
+
children,
|
|
93
|
+
};
|
|
94
|
+
}
|
|
95
|
+
function treeSitterNodeText(source, node) {
|
|
96
|
+
return compactText(source.slice(node.startIndex, node.endIndex));
|
|
97
|
+
}
|
|
98
|
+
function treeSitterToView(source, node, depth) {
|
|
99
|
+
const rawChildren = node.namedChildren ?? node.children ?? [];
|
|
100
|
+
const children = depth > 0
|
|
101
|
+
? rawChildren.map((child) => treeSitterToView(source, child, depth - 1))
|
|
102
|
+
: [];
|
|
103
|
+
return {
|
|
104
|
+
kind: node.type,
|
|
105
|
+
startLine: node.startPosition.row + 1,
|
|
106
|
+
endLine: node.endPosition.row + 1,
|
|
107
|
+
text: treeSitterNodeText(source, node),
|
|
108
|
+
children,
|
|
109
|
+
};
|
|
110
|
+
}
|
|
111
|
+
function flattenTree(node) {
|
|
112
|
+
const result = [];
|
|
113
|
+
const visit = (current, depth) => {
|
|
114
|
+
result.push({ node: current, depth });
|
|
115
|
+
for (const child of current.children) {
|
|
116
|
+
visit(child, depth + 1);
|
|
117
|
+
}
|
|
118
|
+
};
|
|
119
|
+
visit(node, 0);
|
|
120
|
+
return result;
|
|
121
|
+
}
|
|
122
|
+
function formatNodeLine(entry, includeText) {
|
|
123
|
+
const indent = " ".repeat(entry.depth);
|
|
124
|
+
const range = entry.node.startLine === entry.node.endLine
|
|
125
|
+
? `${entry.node.startLine}`
|
|
126
|
+
: `${entry.node.startLine}-${entry.node.endLine}`;
|
|
127
|
+
const suffix = includeText && entry.node.text ? ` — ${entry.node.text}` : "";
|
|
128
|
+
return `${indent}${entry.node.kind}:${range}${suffix}`;
|
|
129
|
+
}
|
|
130
|
+
function quotePathForNext(value) {
|
|
131
|
+
return /\s/.test(value) ? JSON.stringify(value) : value;
|
|
132
|
+
}
|
|
133
|
+
function registerAstCommand(program) {
|
|
134
|
+
program
|
|
135
|
+
.command("ast <file>")
|
|
136
|
+
.description("Print a compact AST outline for one source file")
|
|
137
|
+
.option("--max-depth <number>", "limit AST traversal depth", String(DEFAULT_MAX_DEPTH))
|
|
138
|
+
.option("--max-nodes <number>", "limit number of AST nodes shown", String(DEFAULT_MAX_NODES))
|
|
139
|
+
.option("--cursor <number>", "continue output from a previous TRUNC cursor")
|
|
140
|
+
.option("--no-include-text", "hide compact first-line snippets")
|
|
141
|
+
.action(async (file, options) => {
|
|
142
|
+
try {
|
|
143
|
+
const resolved = (0, project_root_js_1.resolveInitializedProjectRoot)();
|
|
144
|
+
if (resolved.notice) {
|
|
145
|
+
console.log(resolved.notice);
|
|
146
|
+
}
|
|
147
|
+
const projectRoot = resolved.projectRoot;
|
|
148
|
+
const requestedPath = file.replace(/\\/g, "/").replace(/^\.\//, "");
|
|
149
|
+
const absolutePath = node_path_1.default.isAbsolute(file)
|
|
150
|
+
? file
|
|
151
|
+
: node_path_1.default.join(projectRoot, requestedPath);
|
|
152
|
+
const relativePath = node_path_1.default
|
|
153
|
+
.relative(projectRoot, absolutePath)
|
|
154
|
+
.replace(/\\/g, "/");
|
|
155
|
+
const plugin = findPlugin(relativePath);
|
|
156
|
+
if (!plugin) {
|
|
157
|
+
throw new Error(`No supported parser for '${relativePath}'.`);
|
|
158
|
+
}
|
|
159
|
+
const maxDepth = parseNonNegativeInteger(options?.maxDepth, "--max-depth", DEFAULT_MAX_DEPTH);
|
|
160
|
+
const maxNodes = parsePositiveInteger(options?.maxNodes, "--max-nodes", DEFAULT_MAX_NODES);
|
|
161
|
+
const cursor = parseNonNegativeInteger(options?.cursor, "--cursor", 0);
|
|
162
|
+
const content = node_fs_1.default.readFileSync(absolutePath, "utf8");
|
|
163
|
+
const parsed = plugin.parse({
|
|
164
|
+
path: relativePath,
|
|
165
|
+
content,
|
|
166
|
+
projectRoot,
|
|
167
|
+
});
|
|
168
|
+
let root;
|
|
169
|
+
if (isTsMorphNode(parsed.ast)) {
|
|
170
|
+
root = tsMorphToView(parsed.ast, maxDepth);
|
|
171
|
+
}
|
|
172
|
+
else if (isTreeSitterAst(parsed.ast)) {
|
|
173
|
+
root = treeSitterToView(parsed.ast.source, parsed.ast.tree.rootNode, maxDepth);
|
|
174
|
+
}
|
|
175
|
+
else {
|
|
176
|
+
throw new Error(`Parser for '${plugin.id}' does not expose a traversable AST.`);
|
|
177
|
+
}
|
|
178
|
+
const flattened = flattenTree(root);
|
|
179
|
+
const page = flattened.slice(cursor, cursor + maxNodes);
|
|
180
|
+
console.log(`AST ${relativePath} language=${plugin.id} nodes=${flattened.length} maxDepth=${maxDepth}`);
|
|
181
|
+
for (const entry of page) {
|
|
182
|
+
console.log(formatNodeLine(entry, options?.includeText !== false));
|
|
183
|
+
}
|
|
184
|
+
const nextCursor = cursor + page.length;
|
|
185
|
+
const hidden = Math.max(0, flattened.length - nextCursor);
|
|
186
|
+
if (hidden > 0) {
|
|
187
|
+
console.log(`\nTRUNC hidden=${hidden} cursor=${nextCursor}`);
|
|
188
|
+
const nextParts = [
|
|
189
|
+
"idx ast",
|
|
190
|
+
quotePathForNext(relativePath),
|
|
191
|
+
`--max-depth ${maxDepth}`,
|
|
192
|
+
`--max-nodes ${maxNodes}`,
|
|
193
|
+
`--cursor ${nextCursor}`,
|
|
194
|
+
];
|
|
195
|
+
if (options?.includeText === false) {
|
|
196
|
+
nextParts.push("--no-include-text");
|
|
197
|
+
}
|
|
198
|
+
console.log(`NEXT ${nextParts.join(" ")}`);
|
|
199
|
+
}
|
|
200
|
+
}
|
|
201
|
+
catch (error) {
|
|
202
|
+
const message = error instanceof Error ? error.message : String(error);
|
|
203
|
+
console.error(`AST command failed: ${message}`);
|
|
204
|
+
process.exitCode = 1;
|
|
205
|
+
}
|
|
206
|
+
});
|
|
207
|
+
}
|
|
208
|
+
//# sourceMappingURL=ast.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ast.js","sourceRoot":"","sources":["../../../src/cli/commands/ast.ts"],"names":[],"mappings":";;;;;AA4NA,gDAoGC;AAhUD,sDAAyB;AACzB,0DAA6B;AAE7B,iEAAiE;AACjE,yDAAyD;AACzD,yDAAyD;AACzD,6DAA6D;AAC7D,qDAAqD;AACrD,qDAAqD;AAErD,wDAAmE;AA8CnE,MAAM,iBAAiB,GAAG,CAAC,CAAC;AAC5B,MAAM,iBAAiB,GAAG,GAAG,CAAC;AAC9B,MAAM,eAAe,GAAG,EAAE,CAAC;AAE3B,SAAS,uBAAuB,CAC/B,KAAyB,EACzB,UAAkB,EAClB,QAAgB;IAEhB,IAAI,CAAC,KAAK,EAAE,CAAC;QACZ,OAAO,QAAQ,CAAC;IACjB,CAAC;IAED,MAAM,MAAM,GAAG,MAAM,CAAC,QAAQ,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;IAC1C,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,MAAM,GAAG,CAAC,EAAE,CAAC;QAC5C,MAAM,IAAI,KAAK,CAAC,GAAG,UAAU,iCAAiC,CAAC,CAAC;IACjE,CAAC;IAED,OAAO,MAAM,CAAC;AACf,CAAC;AAED,SAAS,oBAAoB,CAC5B,KAAyB,EACzB,UAAkB,EAClB,QAAgB;IAEhB,IAAI,CAAC,KAAK,EAAE,CAAC;QACZ,OAAO,QAAQ,CAAC;IACjB,CAAC;IAED,MAAM,MAAM,GAAG,MAAM,CAAC,QAAQ,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;IAC1C,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,MAAM,IAAI,CAAC,EAAE,CAAC;QAC7C,MAAM,IAAI,KAAK,CAAC,GAAG,UAAU,6BAA6B,CAAC,CAAC;IAC7D,CAAC;IAED,OAAO,MAAM,CAAC;AACf,CAAC;AAED,SAAS,qBAAqB;IAC7B,OAAO;QACN,IAAI,gCAAgB,EAAE;QACtB,IAAI,wBAAY,EAAE;QAClB,IAAI,wBAAY,EAAE;QAClB,IAAI,4BAAc,EAAE;QACpB,IAAI,oBAAU,EAAE;QAChB,IAAI,oBAAU,EAAE;KAChB,CAAC;AACH,CAAC;AAED,SAAS,UAAU,CAAC,QAAgB;IACnC,MAAM,SAAS,GAAG,mBAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,WAAW,EAAE,CAAC;IACvD,OAAO,qBAAqB,EAAE,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAC9C,MAAM,CAAC,cAAc,CAAC,QAAQ,CAAC,SAAS,CAAC,CACzC,CAAC;AACH,CAAC;AAED,SAAS,QAAQ,CAAC,KAAc;IAC/B,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,CAAC;AACpD,CAAC;AAED,SAAS,aAAa,CAAC,KAAc;IACpC,OAAO,CACN,QAAQ,CAAC,KAAK,CAAC;QACf,OAAO,KAAK,CAAC,WAAW,KAAK,UAAU;QACvC,OAAO,KAAK,CAAC,kBAAkB,KAAK,UAAU;QAC9C,OAAO,KAAK,CAAC,gBAAgB,KAAK,UAAU;QAC5C,OAAO,KAAK,CAAC,OAAO,KAAK,UAAU;QACnC,OAAO,KAAK,CAAC,YAAY,KAAK,UAAU,CACxC,CAAC;AACH,CAAC;AAED,SAAS,eAAe,CAAC,KAAc;IACtC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,OAAO,KAAK,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;QAC1D,OAAO,KAAK,CAAC;IACd,CAAC;IACD,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC;IACxB,OAAO,QAAQ,CAAC,IAAI,CAAC,IAAI,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;AAClD,CAAC;AAED,SAAS,WAAW,CAAC,IAAY;IAChC,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC;IAC3D,IAAI,CAAC,SAAS,EAAE,CAAC;QAChB,OAAO,SAAS,CAAC;IAClB,CAAC;IACD,OAAO,SAAS,CAAC,MAAM,GAAG,eAAe;QACxC,CAAC,CAAC,GAAG,SAAS,CAAC,KAAK,CAAC,CAAC,EAAE,eAAe,GAAG,CAAC,CAAC,GAAG;QAC/C,CAAC,CAAC,SAAS,CAAC;AACd,CAAC;AAED,SAAS,aAAa,CAAC,IAAqB,EAAE,KAAa;IAC1D,MAAM,QAAQ,GAAkB,EAAE,CAAC;IACnC,IAAI,KAAK,GAAG,CAAC,EAAE,CAAC;QACf,IAAI,CAAC,YAAY,CAAC,CAAC,KAAK,EAAE,EAAE;YAC3B,QAAQ,CAAC,IAAI,CAAC,aAAa,CAAC,KAAK,EAAE,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC;QAChD,CAAC,CAAC,CAAC;IACJ,CAAC;IAED,OAAO;QACN,IAAI,EAAE,IAAI,CAAC,WAAW,EAAE;QACxB,SAAS,EAAE,IAAI,CAAC,kBAAkB,EAAE;QACpC,OAAO,EAAE,IAAI,CAAC,gBAAgB,EAAE;QAChC,IAAI,EAAE,WAAW,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;QACjC,QAAQ;KACR,CAAC;AACH,CAAC;AAED,SAAS,kBAAkB,CAC1B,MAAc,EACd,IAAwB;IAExB,OAAO,WAAW,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC;AAClE,CAAC;AAED,SAAS,gBAAgB,CACxB,MAAc,EACd,IAAwB,EACxB,KAAa;IAEb,MAAM,WAAW,GAAG,IAAI,CAAC,aAAa,IAAI,IAAI,CAAC,QAAQ,IAAI,EAAE,CAAC;IAC9D,MAAM,QAAQ,GACb,KAAK,GAAG,CAAC;QACR,CAAC,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,gBAAgB,CAAC,MAAM,EAAE,KAAK,EAAE,KAAK,GAAG,CAAC,CAAC,CAAC;QACxE,CAAC,CAAC,EAAE,CAAC;IAEP,OAAO;QACN,IAAI,EAAE,IAAI,CAAC,IAAI;QACf,SAAS,EAAE,IAAI,CAAC,aAAa,CAAC,GAAG,GAAG,CAAC;QACrC,OAAO,EAAE,IAAI,CAAC,WAAW,CAAC,GAAG,GAAG,CAAC;QACjC,IAAI,EAAE,kBAAkB,CAAC,MAAM,EAAE,IAAI,CAAC;QACtC,QAAQ;KACR,CAAC;AACH,CAAC;AAED,SAAS,WAAW,CACnB,IAAiB;IAEjB,MAAM,MAAM,GAAgD,EAAE,CAAC;IAC/D,MAAM,KAAK,GAAG,CAAC,OAAoB,EAAE,KAAa,EAAE,EAAE;QACrD,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC,CAAC;QACtC,KAAK,MAAM,KAAK,IAAI,OAAO,CAAC,QAAQ,EAAE,CAAC;YACtC,KAAK,CAAC,KAAK,EAAE,KAAK,GAAG,CAAC,CAAC,CAAC;QACzB,CAAC;IACF,CAAC,CAAC;IACF,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;IACf,OAAO,MAAM,CAAC;AACf,CAAC;AAED,SAAS,cAAc,CACtB,KAA2C,EAC3C,WAAoB;IAEpB,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IACxC,MAAM,KAAK,GACV,KAAK,CAAC,IAAI,CAAC,SAAS,KAAK,KAAK,CAAC,IAAI,CAAC,OAAO;QAC1C,CAAC,CAAC,GAAG,KAAK,CAAC,IAAI,CAAC,SAAS,EAAE;QAC3B,CAAC,CAAC,GAAG,KAAK,CAAC,IAAI,CAAC,SAAS,IAAI,KAAK,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;IACpD,MAAM,MAAM,GAAG,WAAW,IAAI,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,KAAK,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IAC7E,OAAO,GAAG,MAAM,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,IAAI,KAAK,GAAG,MAAM,EAAE,CAAC;AACxD,CAAC;AAED,SAAS,gBAAgB,CAAC,KAAa;IACtC,OAAO,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;AACzD,CAAC;AAED,SAAgB,kBAAkB,CAAC,OAAgB;IAClD,OAAO;SACL,OAAO,CAAC,YAAY,CAAC;SACrB,WAAW,CAAC,iDAAiD,CAAC;SAC9D,MAAM,CACN,sBAAsB,EACtB,2BAA2B,EAC3B,MAAM,CAAC,iBAAiB,CAAC,CACzB;SACA,MAAM,CACN,sBAAsB,EACtB,iCAAiC,EACjC,MAAM,CAAC,iBAAiB,CAAC,CACzB;SACA,MAAM,CAAC,mBAAmB,EAAE,8CAA8C,CAAC;SAC3E,MAAM,CAAC,mBAAmB,EAAE,kCAAkC,CAAC;SAC/D,MAAM,CAAC,KAAK,EAAE,IAAY,EAAE,OAA2B,EAAE,EAAE;QAC3D,IAAI,CAAC;YACJ,MAAM,QAAQ,GAAG,IAAA,+CAA6B,GAAE,CAAC;YACjD,IAAI,QAAQ,CAAC,MAAM,EAAE,CAAC;gBACrB,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;YAC9B,CAAC;YACD,MAAM,WAAW,GAAG,QAAQ,CAAC,WAAW,CAAC;YACzC,MAAM,aAAa,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;YACpE,MAAM,YAAY,GAAG,mBAAI,CAAC,UAAU,CAAC,IAAI,CAAC;gBACzC,CAAC,CAAC,IAAI;gBACN,CAAC,CAAC,mBAAI,CAAC,IAAI,CAAC,WAAW,EAAE,aAAa,CAAC,CAAC;YACzC,MAAM,YAAY,GAAG,mBAAI;iBACvB,QAAQ,CAAC,WAAW,EAAE,YAAY,CAAC;iBACnC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;YACtB,MAAM,MAAM,GAAG,UAAU,CAAC,YAAY,CAAC,CAAC;YAExC,IAAI,CAAC,MAAM,EAAE,CAAC;gBACb,MAAM,IAAI,KAAK,CAAC,4BAA4B,YAAY,IAAI,CAAC,CAAC;YAC/D,CAAC;YAED,MAAM,QAAQ,GAAG,uBAAuB,CACvC,OAAO,EAAE,QAAQ,EACjB,aAAa,EACb,iBAAiB,CACjB,CAAC;YACF,MAAM,QAAQ,GAAG,oBAAoB,CACpC,OAAO,EAAE,QAAQ,EACjB,aAAa,EACb,iBAAiB,CACjB,CAAC;YACF,MAAM,MAAM,GAAG,uBAAuB,CAAC,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,CAAC,CAAC,CAAC;YACvE,MAAM,OAAO,GAAG,iBAAE,CAAC,YAAY,CAAC,YAAY,EAAE,MAAM,CAAC,CAAC;YACtD,MAAM,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC;gBAC3B,IAAI,EAAE,YAAY;gBAClB,OAAO;gBACP,WAAW;aACX,CAAC,CAAC;YAEH,IAAI,IAAiB,CAAC;YACtB,IAAI,aAAa,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC;gBAC/B,IAAI,GAAG,aAAa,CAAC,MAAM,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;YAC5C,CAAC;iBAAM,IAAI,eAAe,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC;gBACxC,IAAI,GAAG,gBAAgB,CACtB,MAAM,CAAC,GAAG,CAAC,MAAM,EACjB,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,EACxB,QAAQ,CACR,CAAC;YACH,CAAC;iBAAM,CAAC;gBACP,MAAM,IAAI,KAAK,CACd,eAAe,MAAM,CAAC,EAAE,sCAAsC,CAC9D,CAAC;YACH,CAAC;YAED,MAAM,SAAS,GAAG,WAAW,CAAC,IAAI,CAAC,CAAC;YACpC,MAAM,IAAI,GAAG,SAAS,CAAC,KAAK,CAAC,MAAM,EAAE,MAAM,GAAG,QAAQ,CAAC,CAAC;YACxD,OAAO,CAAC,GAAG,CACV,OAAO,YAAY,aAAa,MAAM,CAAC,EAAE,UAAU,SAAS,CAAC,MAAM,aAAa,QAAQ,EAAE,CAC1F,CAAC;YACF,KAAK,MAAM,KAAK,IAAI,IAAI,EAAE,CAAC;gBAC1B,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,KAAK,EAAE,OAAO,EAAE,WAAW,KAAK,KAAK,CAAC,CAAC,CAAC;YACpE,CAAC;YAED,MAAM,UAAU,GAAG,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;YACxC,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,SAAS,CAAC,MAAM,GAAG,UAAU,CAAC,CAAC;YAC1D,IAAI,MAAM,GAAG,CAAC,EAAE,CAAC;gBAChB,OAAO,CAAC,GAAG,CAAC,kBAAkB,MAAM,WAAW,UAAU,EAAE,CAAC,CAAC;gBAC7D,MAAM,SAAS,GAAG;oBACjB,SAAS;oBACT,gBAAgB,CAAC,YAAY,CAAC;oBAC9B,eAAe,QAAQ,EAAE;oBACzB,eAAe,QAAQ,EAAE;oBACzB,YAAY,UAAU,EAAE;iBACxB,CAAC;gBACF,IAAI,OAAO,EAAE,WAAW,KAAK,KAAK,EAAE,CAAC;oBACpC,SAAS,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;gBACrC,CAAC;gBACD,OAAO,CAAC,GAAG,CAAC,QAAQ,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YAC5C,CAAC;QACF,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YAChB,MAAM,OAAO,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YACvE,OAAO,CAAC,KAAK,CAAC,uBAAuB,OAAO,EAAE,CAAC,CAAC;YAChD,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;QACtB,CAAC;IACF,CAAC,CAAC,CAAC;AACL,CAAC"}
|
|
@@ -7,8 +7,8 @@ exports.GENERATED_SKILLS = [
|
|
|
7
7
|
directory: "repo-discovery",
|
|
8
8
|
content: `---
|
|
9
9
|
name: repo-discovery
|
|
10
|
-
description: FIRST choice for repository discovery and code understanding. Use this to choose the cheapest indexed path for architecture, structure, behavior, symbol, or dependency questions before broad file reads or grep.
|
|
11
|
-
allowed-tools: Bash(idx architecture:*), Bash(idx structure:*), Bash(idx search:*), Bash(idx explain:*), Bash(idx deps:*)
|
|
10
|
+
description: FIRST choice for repository discovery and code understanding. Use this to choose the cheapest indexed path for architecture, structure, behavior, symbol, AST, or dependency questions before broad file reads or grep.
|
|
11
|
+
allowed-tools: Bash(idx architecture:*), Bash(idx structure:*), Bash(idx ast:*), Bash(idx search:*), Bash(idx explain:*), Bash(idx deps:*)
|
|
12
12
|
---
|
|
13
13
|
|
|
14
14
|
# Use repo-discovery as the indexed entry point
|
|
@@ -21,6 +21,7 @@ Pick the single cheapest command that answers the question, run it, and stop whe
|
|
|
21
21
|
|
|
22
22
|
- \`idx architecture\` — repo shape, entry points, module boundaries, cycle causes, unresolved dependency classes
|
|
23
23
|
- \`idx structure\` — file trees, exported symbols with line ranges, contents of a directory/module
|
|
24
|
+
- \`idx ast <file>\` — compact syntax tree for one large file when symbol ranges are too coarse
|
|
24
25
|
- \`idx search\` — conceptual behavior questions like "how does X work?"; returns ranked file ranges plus \`why=\` reason codes
|
|
25
26
|
- \`idx explain\` — a known symbol when you want indexed explanation
|
|
26
27
|
- \`idx deps\` — imported-by/imports or impact for a known path/module
|
|
@@ -32,6 +33,8 @@ Pick the single cheapest command that answers the question, run it, and stop whe
|
|
|
32
33
|
- Use \`--path-prefix\` whenever the subsystem is known, e.g. \`src/api/\`, \`src/auth/\`.
|
|
33
34
|
- For \`idx structure\`, also narrow with \`--kind\` when possible.
|
|
34
35
|
- If \`idx structure\` prints \`TRUNC\`/\`NEXT\`, run the \`NEXT\` command only when the hidden page is still relevant.
|
|
36
|
+
- Use \`idx ast <file>\` only after you know the file is relevant and need a map of a large file before reading ranges.
|
|
37
|
+
- If \`idx ast\` prints \`TRUNC\`/\`NEXT\`, run \`NEXT\` only when the hidden nodes are still relevant.
|
|
35
38
|
- For \`idx deps\`, start with \`--depth 1\`; increase only if first-hop impact is insufficient.
|
|
36
39
|
- For \`idx explain\`, prefer \`file::symbol\` when the name may be ambiguous.
|
|
37
40
|
- \`--include-content\` is expensive. Use it only when you need implementation detail *without* planning to \`Read\`; if you'll read files anyway, skip it.
|
|
@@ -46,7 +49,8 @@ idx is **semantic** search: use it when you do **not** know the exact name and n
|
|
|
46
49
|
|
|
47
50
|
Use \`grep\`/LSP when the target is already concrete:
|
|
48
51
|
- exact identifier name → \`grep\`, \`lsp_symbols\`, or references/definition tools
|
|
49
|
-
- exact file path → \`Read\`
|
|
52
|
+
- exact small file path → \`Read\`
|
|
53
|
+
- exact large file path + unknown internal layout → \`idx ast <file>\`, then read the smallest ranges
|
|
50
54
|
- known file + known symbol → \`idx explain file::symbol\` or LSP if exact lookup is enough
|
|
51
55
|
|
|
52
56
|
Rule of thumb: if you can write an exact search pattern, use \`grep\`/LSP. Use idx for exploration, not lookup.
|
|
@@ -79,6 +83,9 @@ idx search "payment processor interface" --chunk-types api --mode hybrid
|
|
|
79
83
|
# Good: continue a capped structure page only if more files are needed
|
|
80
84
|
idx structure --path-prefix src --max-depth 2 --max-files 20 --cursor 20
|
|
81
85
|
|
|
86
|
+
# Good: map one large file before choosing exact Read ranges
|
|
87
|
+
idx ast src/api/client.ts --max-depth 4 --max-nodes 80
|
|
88
|
+
|
|
82
89
|
# Good: explain a known symbol, scoped to a file
|
|
83
90
|
idx explain src/api/client.ts::createClient
|
|
84
91
|
|
|
@@ -106,6 +113,7 @@ grep "MyType" src/models/
|
|
|
106
113
|
|
|
107
114
|
- Architecture: \`idx architecture [--path-prefix <area>] [--include-fixtures]\`
|
|
108
115
|
- Structure: \`idx structure [--path-prefix <area>] [--kind <kind>] [--max-depth <n>] [--max-files <n>] [--cursor <n>] [--include-internal] [--include-fixtures] [--no-tests] [--include-tests-summary]\`
|
|
116
|
+
- AST: \`idx ast <file> [--max-depth <n>] [--max-nodes <n>] [--cursor <n>] [--no-include-text]\`
|
|
109
117
|
- Search: \`idx search <query> [--max-files <n>] [--path-prefix <area>] [--chunk-types <types|api|impl|tests|imports>] [--mode hybrid|semantic|lexical|symbol] [--min-score <score>] [--include-content] [--include-imports] [--dedupe-file] [--dedupe-symbol] [--cluster] [--exclude-tests] [--include-tests]\`
|
|
110
118
|
- Explain: \`idx explain <symbol|file::symbol> [--path-prefix <area>] [--include-fixtures] [--include-body] [--body-lines <n>] [--signature-only]\`
|
|
111
119
|
- Deps: \`idx deps <path> [--direction callers|callees|both] [--depth <n>] [--show-edges] [--tests]\`
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"skills.js","sourceRoot":"","sources":["../../../src/cli/commands/skills.ts"],"names":[],"mappings":";;;AAMa,QAAA,gBAAgB,GAAqB;IACjD;QACC,IAAI,EAAE,gBAAgB;QACtB,SAAS,EAAE,gBAAgB;QAC3B,OAAO,EAAE
|
|
1
|
+
{"version":3,"file":"skills.js","sourceRoot":"","sources":["../../../src/cli/commands/skills.ts"],"names":[],"mappings":";;;AAMa,QAAA,gBAAgB,GAAqB;IACjD;QACC,IAAI,EAAE,gBAAgB;QACtB,SAAS,EAAE,gBAAgB;QAC3B,OAAO,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAgHV;KACC;CACD,CAAC;AAEW,QAAA,4BAA4B,GAAG;IAC3C,cAAc;IACd,iBAAiB;IACjB,gBAAgB;IAChB,mBAAmB;IACnB,gBAAgB;IAChB,kBAAkB;CAClB,CAAC;AAEW,QAAA,2BAA2B,GAAG,wBAAgB,CAAC,GAAG,CAC9D,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,SAAS,CAC1B,CAAC"}
|
package/dist/cli/entry.js
CHANGED
|
@@ -12,6 +12,7 @@ const setup_js_1 = require("./commands/setup.js");
|
|
|
12
12
|
const explain_js_1 = require("./commands/explain.js");
|
|
13
13
|
const deps_js_1 = require("./commands/deps.js");
|
|
14
14
|
const update_js_1 = require("./commands/update.js");
|
|
15
|
+
const ast_js_1 = require("./commands/ast.js");
|
|
15
16
|
const version_js_1 = require("../core/version.js");
|
|
16
17
|
const skills_version_js_1 = require("../core/skills-version.js");
|
|
17
18
|
const version_check_js_1 = require("../core/version-check.js");
|
|
@@ -113,6 +114,7 @@ commander_1.program
|
|
|
113
114
|
(0, architecture_js_1.registerArchitectureCommand)(commander_1.program);
|
|
114
115
|
(0, explain_js_1.registerExplainCommand)(commander_1.program);
|
|
115
116
|
(0, deps_js_1.registerDepsCommand)(commander_1.program);
|
|
117
|
+
(0, ast_js_1.registerAstCommand)(commander_1.program);
|
|
116
118
|
(0, update_js_1.registerUpdateCommand)(commander_1.program);
|
|
117
119
|
(0, uninstall_js_1.registerUninstallCommand)(commander_1.program);
|
|
118
120
|
(0, doctor_js_1.registerDoctorCommand)(commander_1.program);
|
|
@@ -123,8 +125,7 @@ commander_1.program.hook("preAction", async (thisCommand, actionCommand) => {
|
|
|
123
125
|
await runPreActionChecks(actionCommand.name());
|
|
124
126
|
});
|
|
125
127
|
async function main() {
|
|
126
|
-
const hasNoArgs = process.argv.length === 2
|
|
127
|
-
(process.argv.length === 3 && process.argv[1].endsWith("indexer-cli.js"));
|
|
128
|
+
const hasNoArgs = process.argv.length === 2;
|
|
128
129
|
let commandExecutedSuccessfully = false;
|
|
129
130
|
try {
|
|
130
131
|
if (hasNoArgs) {
|
package/dist/cli/entry.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"entry.js","sourceRoot":"","sources":["../../src/cli/entry.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"entry.js","sourceRoot":"","sources":["../../src/cli/entry.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export declare const SKILLS_VERSION =
|
|
1
|
+
export declare const SKILLS_VERSION = 3355244366;
|
|
@@ -187,6 +187,13 @@ const CSHARP_SYSTEM_NAMESPACES = new Set([
|
|
|
187
187
|
"Mono",
|
|
188
188
|
"NET",
|
|
189
189
|
]);
|
|
190
|
+
const RUST_BUILTIN_CRATES = new Set([
|
|
191
|
+
"alloc",
|
|
192
|
+
"core",
|
|
193
|
+
"proc_macro",
|
|
194
|
+
"std",
|
|
195
|
+
"test",
|
|
196
|
+
]);
|
|
190
197
|
const IMPORT_SPECIFIER_EXTENSION = /\.(?:jsx?|mjs|cjs)$/i;
|
|
191
198
|
const TS_EXTENSIONS = [".ts", ".tsx", ".mts", ".cts"];
|
|
192
199
|
const TS_INDEX_CANDIDATES = ["/index.ts", "/index.tsx"];
|
|
@@ -200,6 +207,8 @@ function resolveDependency(importSpecifier, fromFilePath, knownFiles, languageId
|
|
|
200
207
|
return resolveGDScriptDependency(importSpecifier, fromFilePath, knownFiles);
|
|
201
208
|
case "ruby":
|
|
202
209
|
return resolveRubyDependency(importSpecifier, fromFilePath, knownFiles);
|
|
210
|
+
case "rust":
|
|
211
|
+
return resolveRustDependency(importSpecifier, fromFilePath, knownFiles);
|
|
203
212
|
default:
|
|
204
213
|
return resolveTSDependency(importSpecifier, fromFilePath, knownFiles);
|
|
205
214
|
}
|
|
@@ -360,6 +369,60 @@ function resolveGDScriptDependency(importSpecifier, fromFilePath, knownFiles) {
|
|
|
360
369
|
}
|
|
361
370
|
return { dependencyType: "external" };
|
|
362
371
|
}
|
|
372
|
+
function resolveRustDependency(importSpecifier, fromFilePath, knownFiles) {
|
|
373
|
+
const parts = importSpecifier.split("::").filter(Boolean);
|
|
374
|
+
const topLevel = parts[0];
|
|
375
|
+
if (!topLevel) {
|
|
376
|
+
return { dependencyType: "external" };
|
|
377
|
+
}
|
|
378
|
+
if (RUST_BUILTIN_CRATES.has(topLevel)) {
|
|
379
|
+
return { dependencyType: "builtin" };
|
|
380
|
+
}
|
|
381
|
+
if (topLevel !== "crate" && topLevel !== "self" && topLevel !== "super") {
|
|
382
|
+
const moduleDeclaration = resolveRustModuleDeclaration(parts, fromFilePath, knownFiles);
|
|
383
|
+
return moduleDeclaration ?? { dependencyType: "external" };
|
|
384
|
+
}
|
|
385
|
+
const baseDir = resolveRustBaseDir(topLevel, fromFilePath);
|
|
386
|
+
const moduleParts = parts.slice(1);
|
|
387
|
+
const resolved = resolveRustModulePath(baseDir, moduleParts, knownFiles);
|
|
388
|
+
if (resolved) {
|
|
389
|
+
return { dependencyType: "internal", toPath: resolved };
|
|
390
|
+
}
|
|
391
|
+
return { dependencyType: "internal" };
|
|
392
|
+
}
|
|
393
|
+
function resolveRustModuleDeclaration(parts, fromFilePath, knownFiles) {
|
|
394
|
+
const fromDir = (0, node_path_1.dirname)(normalizePath(fromFilePath));
|
|
395
|
+
const resolved = resolveRustModulePath(fromDir, parts, knownFiles);
|
|
396
|
+
return resolved ? { dependencyType: "internal", toPath: resolved } : null;
|
|
397
|
+
}
|
|
398
|
+
function resolveRustBaseDir(topLevel, fromFilePath) {
|
|
399
|
+
const normalizedFrom = normalizePath(fromFilePath);
|
|
400
|
+
if (topLevel === "crate") {
|
|
401
|
+
const segments = normalizedFrom.split("/");
|
|
402
|
+
const srcIndex = segments.lastIndexOf("src");
|
|
403
|
+
return srcIndex >= 0 ? segments.slice(0, srcIndex + 1).join("/") : "src";
|
|
404
|
+
}
|
|
405
|
+
let baseDir = (0, node_path_1.dirname)(normalizedFrom);
|
|
406
|
+
if (topLevel === "super") {
|
|
407
|
+
baseDir = (0, node_path_1.dirname)(baseDir);
|
|
408
|
+
}
|
|
409
|
+
return baseDir;
|
|
410
|
+
}
|
|
411
|
+
function resolveRustModulePath(baseDir, parts, knownFiles) {
|
|
412
|
+
for (let length = parts.length; length >= 1; length -= 1) {
|
|
413
|
+
const modulePath = parts.slice(0, length).join("/");
|
|
414
|
+
const candidates = [
|
|
415
|
+
normalizePath((0, node_path_1.join)(baseDir, `${modulePath}.rs`)),
|
|
416
|
+
normalizePath((0, node_path_1.join)(baseDir, modulePath, "mod.rs")),
|
|
417
|
+
];
|
|
418
|
+
for (const candidate of candidates) {
|
|
419
|
+
if (knownFiles.has(candidate)) {
|
|
420
|
+
return candidate;
|
|
421
|
+
}
|
|
422
|
+
}
|
|
423
|
+
}
|
|
424
|
+
return null;
|
|
425
|
+
}
|
|
363
426
|
function resolveRubyDependency(importSpecifier, fromFilePath, knownFiles) {
|
|
364
427
|
const topLevel = importSpecifier.split("/")[0].split(":")[0];
|
|
365
428
|
if (RUBY_BUILTINS.has(topLevel)) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dependency-resolver.js","sourceRoot":"","sources":["../../src/engine/dependency-resolver.ts"],"names":[],"mappings":";;AAwMA,8CAsBC;AA9ND,yCAAqD;AAErD,MAAM,aAAa,GAAG,IAAI,GAAG,CAAC;IAC7B,QAAQ;IACR,aAAa;IACb,QAAQ;IACR,eAAe;IACf,QAAQ;IACR,KAAK;IACL,QAAQ;IACR,IAAI;IACJ,MAAM;IACN,OAAO;IACP,KAAK;IACL,IAAI;IACJ,MAAM;IACN,UAAU;IACV,aAAa;IACb,UAAU;IACV,QAAQ;IACR,gBAAgB;IAChB,KAAK;IACL,KAAK;IACL,MAAM;IACN,MAAM;CACN,CAAC,CAAC;AAEH,MAAM,eAAe,GAAG,IAAI,GAAG,CAAC;IAC/B,KAAK;IACL,UAAU;IACV,KAAK;IACL,SAAS;IACT,QAAQ;IACR,QAAQ;IACR,UAAU;IACV,OAAO;IACP,aAAa;IACb,YAAY;IACZ,cAAc;IACd,YAAY;IACZ,aAAa;IACb,MAAM;IACN,KAAK;IACL,QAAQ;IACR,aAAa;IACb,UAAU;IACV,SAAS;IACT,SAAS;IACT,MAAM;IACN,WAAW;IACX,WAAW;IACX,MAAM;IACN,MAAM;IACN,SAAS;IACT,MAAM;IACN,MAAM;IACN,IAAI;IACJ,WAAW;IACX,MAAM;IACN,SAAS;IACT,WAAW;IACX,QAAQ;IACR,SAAS;IACT,SAAS;IACT,SAAS;IACT,MAAM;IACN,WAAW;IACX,iBAAiB;IACjB,SAAS;IACT,UAAU;IACV,IAAI;IACJ,SAAS;IACT,QAAQ;IACR,UAAU;IACV,QAAQ;IACR,OAAO;IACP,IAAI;IACJ,SAAS;IACT,QAAQ;IACR,QAAQ;IACR,QAAQ;IACR,SAAS;IACT,QAAQ;IACR,SAAS;IACT,KAAK;IACL,YAAY;IACZ,QAAQ;IACR,QAAQ;IACR,YAAY;IACZ,KAAK;IACL,SAAS;IACT,UAAU;IACV,UAAU;IACV,WAAW;IACX,MAAM;IACN,WAAW;IACX,QAAQ;IACR,aAAa;IACb,UAAU;IACV,QAAQ;IACR,MAAM;IACN,UAAU;IACV,SAAS;IACT,KAAK;IACL,SAAS;IACT,MAAM;CACN,CAAC,CAAC;AAEH,MAAM,aAAa,GAAG,IAAI,GAAG,CAAC;IAC7B,QAAQ;IACR,WAAW;IACX,YAAY;IACZ,KAAK;IACL,MAAM;IACN,UAAU;IACV,QAAQ;IACR,KAAK;IACL,KAAK;IACL,KAAK;IACL,OAAO;IACP,QAAQ;IACR,WAAW;IACX,MAAM;IACN,aAAa;IACb,YAAY;IACZ,IAAI;IACJ,QAAQ;IACR,MAAM;IACN,QAAQ;IACR,QAAQ;IACR,UAAU;IACV,SAAS;IACT,KAAK;IACL,KAAK;IACL,UAAU;IACV,UAAU;IACV,OAAO;IACP,UAAU;IACV,SAAS;IACT,UAAU;IACV,IAAI;IACJ,aAAa;IACb,OAAO;IACP,QAAQ;IACR,OAAO;IACP,KAAK;IACL,MAAM;IACN,QAAQ;IACR,MAAM;IACN,UAAU;IACV,QAAQ;IACR,OAAO;IACP,QAAQ;IACR,KAAK;IACL,UAAU;IACV,OAAO;IACP,MAAM;IACN,cAAc;IACd,KAAK;IACL,OAAO;IACP,YAAY;IACZ,WAAW;IACX,QAAQ;IACR,UAAU;IACV,UAAU;IACV,SAAS;IACT,QAAQ;IACR,UAAU;IACV,MAAM;IACN,QAAQ;IACR,QAAQ;IACR,MAAM;IACN,SAAS;IACT,QAAQ;IACR,QAAQ;IACR,OAAO;IACP,IAAI;IACJ,KAAK;IACL,SAAS;IACT,SAAS;IACT,MAAM;IACN,MAAM;CACN,CAAC,CAAC;AAEH,MAAM,wBAAwB,GAAG,IAAI,GAAG,CAAC;IACxC,QAAQ;IACR,WAAW;IACX,MAAM;IACN,KAAK;CACL,CAAC,CAAC;AAEH,MAAM,0BAA0B,GAAG,sBAAsB,CAAC;AAC1D,MAAM,aAAa,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;AACtD,MAAM,mBAAmB,GAAG,CAAC,WAAW,EAAE,YAAY,CAAC,CAAC;AAOxD,SAAgB,iBAAiB,CAChC,eAAuB,EACvB,YAAoB,EACpB,UAAuB,EACvB,UAAmB;IAEnB,QAAQ,UAAU,EAAE,CAAC;QACpB,KAAK,QAAQ;YACZ,OAAO,uBAAuB,CAAC,eAAe,EAAE,YAAY,EAAE,UAAU,CAAC,CAAC;QAC3E,KAAK,QAAQ;YACZ,OAAO,uBAAuB,CAAC,eAAe,EAAE,YAAY,EAAE,UAAU,CAAC,CAAC;QAC3E,KAAK,UAAU;YACd,OAAO,yBAAyB,CAC/B,eAAe,EACf,YAAY,EACZ,UAAU,CACV,CAAC;QACH,KAAK,MAAM;YACV,OAAO,qBAAqB,CAAC,eAAe,EAAE,YAAY,EAAE,UAAU,CAAC,CAAC;QACzE;YACC,OAAO,mBAAmB,CAAC,eAAe,EAAE,YAAY,EAAE,UAAU,CAAC,CAAC;IACxE,CAAC;AACF,CAAC;AAED,SAAS,mBAAmB,CAC3B,eAAuB,EACvB,YAAoB,EACpB,UAAuB;IAEvB,IAAI,eAAe,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;QACzC,OAAO,EAAE,cAAc,EAAE,SAAS,EAAE,CAAC;IACtC,CAAC;IAED,MAAM,gBAAgB,GAAG,eAAe,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IACvD,IAAI,aAAa,CAAC,GAAG,CAAC,gBAAgB,CAAC,EAAE,CAAC;QACzC,OAAO,EAAE,cAAc,EAAE,SAAS,EAAE,CAAC;IACtC,CAAC;IAED,IAAI,CAAC,eAAe,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;QACtC,OAAO,EAAE,cAAc,EAAE,UAAU,EAAE,CAAC;IACvC,CAAC;IAED,MAAM,cAAc,GAAG,aAAa,CAAC,YAAY,CAAC,CAAC;IACnD,MAAM,QAAQ,GAAG,aAAa,CAC7B,IAAA,gBAAI,EAAC,IAAA,mBAAO,EAAC,cAAc,CAAC,EAAE,eAAe,CAAC,CAC9C,CAAC;IACF,MAAM,iBAAiB,GAAG,QAAQ,CAAC,OAAO,CAAC,0BAA0B,EAAE,EAAE,CAAC,CAAC;IAC3E,MAAM,UAAU,GAAG,IAAI,GAAG,EAAU,CAAC;IAErC,UAAU,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IACzB,UAAU,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC;IAElC,KAAK,MAAM,SAAS,IAAI,aAAa,EAAE,CAAC;QACvC,UAAU,CAAC,GAAG,CAAC,GAAG,iBAAiB,GAAG,SAAS,EAAE,CAAC,CAAC;IACpD,CAAC;IAED,KAAK,MAAM,SAAS,IAAI,mBAAmB,EAAE,CAAC;QAC7C,UAAU,CAAC,GAAG,CAAC,GAAG,iBAAiB,GAAG,SAAS,EAAE,CAAC,CAAC;IACpD,CAAC;IAED,KAAK,MAAM,SAAS,IAAI,UAAU,EAAE,CAAC;QACpC,MAAM,mBAAmB,GAAG,aAAa,CAAC,SAAS,CAAC,CAAC;QACrD,IAAI,UAAU,CAAC,GAAG,CAAC,mBAAmB,CAAC,EAAE,CAAC;YACzC,OAAO;gBACN,cAAc,EAAE,UAAU;gBAC1B,MAAM,EAAE,mBAAmB;aAC3B,CAAC;QACH,CAAC;IACF,CAAC;IAED,OAAO,EAAE,cAAc,EAAE,UAAU,EAAE,CAAC;AACvC,CAAC;AAED,SAAS,uBAAuB,CAC/B,eAAuB,EACvB,YAAoB,EACpB,UAAuB;IAEvB,MAAM,QAAQ,GAAG,eAAe,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IAC/C,IAAI,eAAe,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC;QACnC,OAAO,EAAE,cAAc,EAAE,SAAS,EAAE,CAAC;IACtC,CAAC;IAED,IAAI,eAAe,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;QACrC,OAAO,2BAA2B,CACjC,eAAe,EACf,YAAY,EACZ,UAAU,CACV,CAAC;IACH,CAAC;IAED,MAAM,KAAK,GAAG,eAAe,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IACzC,KAAK,IAAI,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;QACxC,MAAM,MAAM,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAE3C,KAAK,MAAM,MAAM,IAAI,CAAC,EAAE,EAAE,KAAK,EAAE,cAAc,CAAC,EAAE,CAAC;YAClD,MAAM,SAAS,GAAG,aAAa,CAAC,MAAM,GAAG,MAAM,CAAC,CAAC;YACjD,IAAI,UAAU,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC;gBAC/B,OAAO,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC;YAC1D,CAAC;QACF,CAAC;IACF,CAAC;IAED,OAAO,EAAE,cAAc,EAAE,UAAU,EAAE,CAAC;AACvC,CAAC;AAED,SAAS,2BAA2B,CACnC,eAAuB,EACvB,YAAoB,EACpB,UAAuB;IAEvB,MAAM,cAAc,GAAG,aAAa,CAAC,YAAY,CAAC,CAAC;IACnD,MAAM,OAAO,GAAG,IAAA,mBAAO,EAAC,cAAc,CAAC,CAAC;IAExC,MAAM,QAAQ,GAAG,eAAe,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;IACtD,IAAI,CAAC,QAAQ,EAAE,CAAC;QACf,OAAO,EAAE,cAAc,EAAE,UAAU,EAAE,CAAC;IACvC,CAAC;IAED,MAAM,QAAQ,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;IACpC,MAAM,IAAI,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;IAEzB,IAAI,OAAO,GAAG,OAAO,CAAC;IACtB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,QAAQ,EAAE,CAAC,EAAE,EAAE,CAAC;QACnC,OAAO,GAAG,IAAA,mBAAO,EAAC,OAAO,CAAC,CAAC;IAC5B,CAAC;IAED,MAAM,UAAU,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IAEvD,IAAI,CAAC,UAAU,EAAE,CAAC;QACjB,OAAO,EAAE,cAAc,EAAE,UAAU,EAAE,CAAC;IACvC,CAAC;IAED,MAAM,KAAK,GAAG,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IACpD,MAAM,OAAO,GAAG,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAEhC,MAAM,UAAU,GAAG;QAClB,aAAa,CAAC,IAAA,gBAAI,EAAC,OAAO,EAAE,OAAO,GAAG,KAAK,CAAC,CAAC;QAC7C,aAAa,CAAC,IAAA,gBAAI,EAAC,OAAO,EAAE,OAAO,EAAE,aAAa,CAAC,CAAC;KACpD,CAAC;IAEF,KAAK,MAAM,SAAS,IAAI,UAAU,EAAE,CAAC;QACpC,IAAI,UAAU,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC;YAC/B,OAAO,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC;QAC1D,CAAC;IACF,CAAC;IAED,OAAO,EAAE,cAAc,EAAE,UAAU,EAAE,CAAC;AACvC,CAAC;AAED,SAAS,uBAAuB,CAC/B,eAAuB,EACvB,aAAqB,EACrB,UAAuB;IAEvB,MAAM,KAAK,GAAG,eAAe,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IACzC,MAAM,QAAQ,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;IAE1B,IAAI,wBAAwB,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC5C,OAAO,EAAE,cAAc,EAAE,UAAU,EAAE,CAAC;IACvC,CAAC;IAED,IAAI,eAAe,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;QACzC,OAAO,EAAE,cAAc,EAAE,UAAU,EAAE,CAAC;IACvC,CAAC;IAED,MAAM,iBAAiB,GAAG,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;IAElD,KAAK,MAAM,SAAS,IAAI,UAAU,EAAE,CAAC;QACpC,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,KAAK,CAAC;YAAE,SAAS;QAEzC,MAAM,WAAW,GAAG,IAAA,mBAAO,EAAC,SAAS,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAClD,MAAM,QAAQ,GAAG,SAAS,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,OAAO,CAAC,QAAQ,EAAE,EAAE,CAAC,IAAI,EAAE,CAAC;QAEzE,MAAM,cAAc,GAAG,WAAW,CAAC,QAAQ,CAAC,iBAAiB,CAAC,CAAC;QAC/D,MAAM,eAAe,GAAG,QAAQ,KAAK,iBAAiB,CAAC;QAEvD,IAAI,cAAc,IAAI,eAAe,EAAE,CAAC;YACvC,OAAO,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC;QAC1D,CAAC;IACF,CAAC;IAED,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QAC1B,KAAK,MAAM,SAAS,IAAI,UAAU,EAAE,CAAC;YACpC,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,KAAK,CAAC;gBAAE,SAAS;YACzC,MAAM,WAAW,GAAG,IAAA,mBAAO,EAAC,SAAS,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;YAElD,IAAI,WAAW,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;gBAChC,OAAO,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC;YAC1D,CAAC;QACF,CAAC;IACF,CAAC;IAED,OAAO,EAAE,cAAc,EAAE,UAAU,EAAE,CAAC;AACvC,CAAC;AAED,SAAS,yBAAyB,CACjC,eAAuB,EACvB,YAAoB,EACpB,UAAuB;IAEvB,IAAI,eAAe,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC1C,MAAM,WAAW,GAAG,eAAe,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;QAC3D,MAAM,UAAU,GAAG;YAClB,aAAa,CAAC,WAAW,CAAC;YAC1B,aAAa,CAAC,WAAW,GAAG,KAAK,CAAC;SAClC,CAAC;QAEF,KAAK,MAAM,SAAS,IAAI,UAAU,EAAE,CAAC;YACpC,IAAI,UAAU,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC;gBAC/B,OAAO,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC;YAC1D,CAAC;QACF,CAAC;IACF,CAAC;IAED,IAAI,eAAe,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,eAAe,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;QACtE,MAAM,cAAc,GAAG,aAAa,CAAC,YAAY,CAAC,CAAC;QACnD,MAAM,OAAO,GAAG,IAAA,mBAAO,EAAC,cAAc,CAAC,CAAC;QACxC,MAAM,QAAQ,GAAG,aAAa,CAAC,IAAA,gBAAI,EAAC,OAAO,EAAE,eAAe,CAAC,CAAC,CAAC;QAE/D,MAAM,UAAU,GAAG;YAClB,QAAQ;YACR,QAAQ,GAAG,KAAK;YAChB,QAAQ,GAAG,OAAO;YAClB,aAAa,CAAC,IAAA,gBAAI,EAAC,QAAQ,EAAE,UAAU,CAAC,CAAC;SACzC,CAAC;QAEF,KAAK,MAAM,SAAS,IAAI,UAAU,EAAE,CAAC;YACpC,IAAI,UAAU,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC;gBAC/B,OAAO,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC;YAC1D,CAAC;QACF,CAAC;IACF,CAAC;IAED,KAAK,MAAM,SAAS,IAAI,UAAU,EAAE,CAAC;QACpC,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,KAAK,CAAC;YAAE,SAAS;QACzC,MAAM,SAAS,GAAG,SAAS,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;QACjE,IAAI,SAAS,IAAI,SAAS,KAAK,eAAe,EAAE,CAAC;YAChD,OAAO,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC;QAC1D,CAAC;IACF,CAAC;IAED,OAAO,EAAE,cAAc,EAAE,UAAU,EAAE,CAAC;AACvC,CAAC;AAED,SAAS,qBAAqB,CAC7B,eAAuB,EACvB,YAAoB,EACpB,UAAuB;IAEvB,MAAM,QAAQ,GAAG,eAAe,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IAC7D,IAAI,aAAa,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC;QACjC,OAAO,EAAE,cAAc,EAAE,SAAS,EAAE,CAAC;IACtC,CAAC;IAED,IAAI,CAAC,eAAe,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;QACtC,OAAO,EAAE,cAAc,EAAE,UAAU,EAAE,CAAC;IACvC,CAAC;IAED,MAAM,cAAc,GAAG,aAAa,CAAC,YAAY,CAAC,CAAC;IACnD,MAAM,OAAO,GAAG,IAAA,mBAAO,EAAC,cAAc,CAAC,CAAC;IACxC,MAAM,QAAQ,GAAG,aAAa,CAAC,IAAA,gBAAI,EAAC,OAAO,EAAE,eAAe,CAAC,CAAC,CAAC;IAE/D,MAAM,UAAU,GAAG;QAClB,QAAQ;QACR,QAAQ,GAAG,KAAK;QAChB,aAAa,CAAC,IAAA,gBAAI,EAAC,QAAQ,EAAE,UAAU,CAAC,CAAC;KACzC,CAAC;IAEF,KAAK,MAAM,SAAS,IAAI,UAAU,EAAE,CAAC;QACpC,IAAI,UAAU,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC;YAC/B,OAAO,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC;QAC1D,CAAC;IACF,CAAC;IAED,OAAO,EAAE,cAAc,EAAE,UAAU,EAAE,CAAC;AACvC,CAAC;AAED,SAAS,aAAa,CAAC,QAAgB;IACtC,OAAO,IAAA,qBAAS,EAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;AACrE,CAAC"}
|
|
1
|
+
{"version":3,"file":"dependency-resolver.js","sourceRoot":"","sources":["../../src/engine/dependency-resolver.ts"],"names":[],"mappings":"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"}
|
package/dist/engine/indexer.d.ts
CHANGED
|
@@ -36,7 +36,7 @@ export interface IndexerEngineOptions {
|
|
|
36
36
|
indexingOptions?: IndexingOptions;
|
|
37
37
|
languagePlugins?: LanguagePlugin[];
|
|
38
38
|
}
|
|
39
|
-
export type BuiltinLanguagePluginId = "typescript" | "python" | "csharp" | "gdscript" | "ruby";
|
|
39
|
+
export type BuiltinLanguagePluginId = "typescript" | "python" | "csharp" | "gdscript" | "ruby" | "rust";
|
|
40
40
|
export declare const DEFAULT_LANGUAGE_PLUGIN_IDS: readonly BuiltinLanguagePluginId[];
|
|
41
41
|
export declare const createDefaultLanguagePlugins: (pluginIds?: readonly string[]) => LanguagePlugin[];
|
|
42
42
|
export declare class IndexerEngine {
|