MCPcopy
hub / github.com/colbymchenry/codegraph / resolveWasm

Function resolveWasm

scripts/add-lang/dump-ast.mjs:38–55  ·  view source on GitHub ↗
(token)

Source from the content-addressed store, hash-verified

36const WASM_SPECIAL = { csharp: 'c_sharp', 'c#': 'c_sharp' };
37
38function resolveWasm(token) {
39 if (token.endsWith('.wasm')) {
40 if (!existsSync(token)) fail(`wasm not found: ${token}`);
41 return token;
42 }
43 const base = WASM_SPECIAL[token.toLowerCase()] ?? token.toLowerCase();
44 try {
45 return require.resolve(`tree-sitter-wasms/out/tree-sitter-${base}.wasm`);
46 } catch {
47 /* not in tree-sitter-wasms — try a vendored copy */
48 }
49 const vendored = `src/extraction/wasm/tree-sitter-${base}.wasm`;
50 if (existsSync(vendored)) return vendored;
51 fail(
52 `no grammar for "${token}" — not in tree-sitter-wasms and not vendored at ` +
53 `${vendored}. Pass an explicit .wasm path, or vendor one (see SKILL.md "Find a grammar").`
54 );
55}
56
57const wasmPath = resolveWasm(langOrWasm);
58const source = readFileSync(sampleFile, 'utf8');

Callers 1

dump-ast.mjsFile · 0.70

Calls 2

resolveMethod · 0.80
failFunction · 0.70

Tested by

no test coverage detected