diff options
Diffstat (limited to 'extension/src/languages/index.ts')
-rw-r--r-- | extension/src/languages/index.ts | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/extension/src/languages/index.ts b/extension/src/languages/index.ts new file mode 100644 index 00000000..31d73a0b --- /dev/null +++ b/extension/src/languages/index.ts @@ -0,0 +1,19 @@ +import pythonLanguageLibrary from "./python"; +import javascriptLanguageLibrary from "./javascript"; +import { LanguageLibrary } from "./index.d"; + +export const languageLibraries: LanguageLibrary[] = [ + pythonLanguageLibrary, + javascriptLanguageLibrary, +]; + +export function getLanguageLibrary(filepath: string): LanguageLibrary { + for (let languageLibrary of languageLibraries) { + for (let fileExtension of languageLibrary.fileExtensions) { + if (filepath.endsWith(fileExtension)) { + return languageLibrary; + } + } + } + throw new Error(`No language library found for file ${filepath}`); +} |