MCPcopy Index your code
hub / github.com/PatrickSys/codebase-context / getParserForLanguage

Function getParserForLanguage

src/utils/tree-sitter.ts:161–181  ·  view source on GitHub ↗
(language: string)

Source from the content-addressed store, hash-verified

159}
160
161async function getParserForLanguage(language: string): Promise<Parser> {
162 let cachedParser = parserCache.get(language);
163 if (!cachedParser) {
164 cachedParser = (async () => {
165 await ensureParserInitialized();
166 const parser = new Parser();
167 try {
168 parser.setLanguage(await loadLanguage(language));
169 } catch (err) {
170 // setLanguage failed — evict both caches so retry is possible
171 parserCache.delete(language);
172 languageCache.delete(language);
173 throw err;
174 }
175 return parser;
176 })();
177 parserCache.set(language, cachedParser);
178 }
179
180 return cachedParser;
181}
182
183function getNodeKind(nodeType: string): string {
184 if (nodeType.includes('class')) return 'class';

Callers 2

extractTreeSitterSymbolsFunction · 0.85

Calls 4

ensureParserInitializedFunction · 0.85
loadLanguageFunction · 0.85
setMethod · 0.80
getMethod · 0.45

Tested by

no test coverage detected