Skip to content

Commit 94ba973

Browse files
authored
Merge pull request #9 from jpoly1219/jacob/enhancement/fasterextraction/vscodeapi
Jacob/enhancement/fasterextraction/vscodeapi
2 parents 493efa3 + 85be7ce commit 94ba973

File tree

4 files changed

+54
-43
lines changed

4 files changed

+54
-43
lines changed

package-lock.json

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "@jpoly1219/context-extractor",
3-
"version": "0.2.9",
3+
"version": "0.2.10",
44
"description": "Extract relevant context from an incomplete program sketch.",
55
"repository": {
66
"type": "git",

src/tree-sitter.ts

Lines changed: 25 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -99,12 +99,13 @@ export async function getQueryForFile(
9999
async function loadLanguageForFileExt(
100100
fileExtension: string
101101
): Promise<Parser.Language> {
102-
const wasmPath = path.join(
103-
__dirname,
104-
"tree-sitter-files",
105-
"wasms",
106-
`tree-sitter-${supportedLanguages[fileExtension]}.wasm`
107-
);
102+
const wasmPath = require.resolve(`./tree-sitter-files/wasms/tree-sitter-${supportedLanguages[fileExtension]}.wasm`)
103+
// const wasmPath = path.join(
104+
// __dirname,
105+
// "tree-sitter-files",
106+
// "wasms",
107+
// `tree-sitter-${supportedLanguages[fileExtension]}.wasm`
108+
// );
108109
return await Parser.Language.load(wasmPath);
109110
}
110111

@@ -266,15 +267,17 @@ export async function extractTopLevelDecls(currentFile: string) {
266267
throw new Error(`failed to get ast for file ${currentFile}`);
267268
}
268269
const language = getFullLanguageName(currentFile);
270+
const queryPath = require.resolve(`./tree-sitter-files/queries/relevant-headers-queries/${language}-get-toplevel-headers.scm`)
269271
const query = await getQueryForFile(
270272
currentFile,
271-
path.join(
272-
__dirname,
273-
"tree-sitter-files",
274-
"queries",
275-
"relevant-headers-queries",
276-
`${language}-get-toplevel-headers.scm`
277-
)
273+
queryPath
274+
// path.join(
275+
// __dirname,
276+
// "tree-sitter-files",
277+
// "queries",
278+
// "relevant-headers-queries",
279+
// `${language}-get-toplevel-headers.scm`
280+
// )
278281
);
279282
if (!query) {
280283
throw new Error(
@@ -290,15 +293,17 @@ export async function extractTopLevelDeclsWithFormatting(currentFile: string) {
290293
throw new Error(`failed to get ast for file ${currentFile}`);
291294
}
292295
const language = getFullLanguageName(currentFile);
296+
const queryPath = require.resolve(`./tree-sitter-files/queries/relevant-headers-queries/${language}-get-toplevel-headers.scm`)
293297
const query = await getQueryForFile(
294298
currentFile,
295-
path.join(
296-
__dirname,
297-
"tree-sitter-files",
298-
"queries",
299-
"relevant-headers-queries",
300-
`${language}-get-toplevel-headers.scm`
301-
)
299+
queryPath
300+
// path.join(
301+
// __dirname,
302+
// "tree-sitter-files",
303+
// "queries",
304+
// "relevant-headers-queries",
305+
// `${language}-get-toplevel-headers.scm`
306+
// )
302307
);
303308
if (!query) {
304309
throw new Error(

src/typescript-driver.ts

Lines changed: 27 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -440,15 +440,17 @@ export class TypeScriptDriver implements LanguageDriver {
440440
throw new Error("failed to get ast");
441441
}
442442
const language = getFullLanguageName(sketchFilePath);
443+
const queryPath = require.resolve(`./tree-sitter-files/queries/hole-queries/${language}.scm`)
443444
const query = await getQueryForFile(
444445
sketchFilePath,
445-
path.join(
446-
__dirname,
447-
"tree-sitter-files",
448-
"queries",
449-
"hole-queries",
450-
`${language}.scm`
451-
),
446+
queryPath
447+
// path.join(
448+
// __dirname,
449+
// "tree-sitter-files",
450+
// "queries",
451+
// "hole-queries",
452+
// `${language}.scm`
453+
// ),
452454
);
453455
if (!query) {
454456
throw new Error(`failed to get query for file ${sketchFilePath} and language ${language}`);
@@ -1010,15 +1012,17 @@ export class TypeScriptDriver implements LanguageDriver {
10101012
foundSoFar.set(typeName, { typeSpan: fullHoverResult, sourceFile: currentFile.slice(7), ast: ast });
10111013

10121014
const language = getFullLanguageName(currentFile);
1015+
const queryPath = require.resolve(`./tree-sitter-files/queries/relevant-types-queries/${language}-extract-identifiers.scm`)
10131016
const query = await getQueryForFile(
10141017
currentFile,
1015-
path.join(
1016-
__dirname,
1017-
"tree-sitter-files",
1018-
"queries",
1019-
"relevant-types-queries",
1020-
`${language}-extract-identifiers.scm`,
1021-
)
1018+
queryPath
1019+
// path.join(
1020+
// __dirname,
1021+
// "tree-sitter-files",
1022+
// "queries",
1023+
// "relevant-types-queries",
1024+
// `${language}-extract-identifiers.scm`,
1025+
// )
10221026
);
10231027
if (!query) {
10241028
throw new Error(`failed to get query for file ${currentFile} and language ${language}`);
@@ -1098,15 +1102,17 @@ export class TypeScriptDriver implements LanguageDriver {
10981102
foundSoFar.set(typeName, { typeSpan: fullHoverResult, sourceFile: currentFile.slice(7), ast: ast });
10991103

11001104
const language = getFullLanguageName(currentFile);
1105+
const queryPath = require.resolve(`./tree-sitter-files/queries/relevant-headers-queries/${language}-extract-identifiers.scm`)
11011106
const query = await getQueryForFile(
11021107
currentFile,
1103-
path.join(
1104-
__dirname,
1105-
"tree-sitter-files",
1106-
"queries",
1107-
"relevant-headers-queries",
1108-
`${language}-extract-identifiers.scm`,
1109-
)
1108+
queryPath
1109+
// path.join(
1110+
// __dirname,
1111+
// "tree-sitter-files",
1112+
// "queries",
1113+
// "relevant-headers-queries",
1114+
// `${language}-extract-identifiers.scm`,
1115+
// )
11101116
);
11111117
if (!query) {
11121118
throw new Error(`failed to get query for file ${currentFile} and language ${language}`);

0 commit comments

Comments
 (0)