Path: blob/main/src/vs/editor/common/services/treeSitter/treeSitterLibraryService.ts
3296 views
/*---------------------------------------------------------------------------------------------1* Copyright (c) Microsoft Corporation. All rights reserved.2* Licensed under the MIT License. See License.txt in the project root for license information.3*--------------------------------------------------------------------------------------------*/45import type { Language, Parser, Query } from '@vscode/tree-sitter-wasm';6import { createDecorator } from '../../../../platform/instantiation/common/instantiation.js';7import { IReader } from '../../../../base/common/observable.js';89export const ITreeSitterLibraryService = createDecorator<ITreeSitterLibraryService>('treeSitterLibraryService');1011export interface ITreeSitterLibraryService {12readonly _serviceBrand: undefined;1314getParserClass(): Promise<typeof Parser>;1516supportsLanguage(languageId: string, reader: IReader | undefined): boolean;17getLanguage(languageId: string, reader: IReader | undefined): Language | undefined;18/**19* Return value of null indicates that there are no injection queries for this language.20* @param languageId21* @param reader22*/23getInjectionQueries(languageId: string, reader: IReader | undefined): Query | null | undefined;24/**25* Return value of null indicates that there are no highlights queries for this language.26* @param languageId27* @param reader28*/29getHighlightingQueries(languageId: string, reader: IReader | undefined): Query | null | undefined;30}313233