Path: blob/main/src/vs/editor/common/services/languageFeatures.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 { LanguageFeatureRegistry, NotebookInfoResolver } from '../languageFeatureRegistry.js';6import { CodeActionProvider, CodeLensProvider, CompletionItemProvider, DeclarationProvider, DefinitionProvider, DocumentColorProvider, DocumentFormattingEditProvider, DocumentHighlightProvider, DocumentDropEditProvider, DocumentPasteEditProvider, DocumentRangeFormattingEditProvider, DocumentRangeSemanticTokensProvider, DocumentSemanticTokensProvider, DocumentSymbolProvider, EvaluatableExpressionProvider, FoldingRangeProvider, HoverProvider, ImplementationProvider, InlayHintsProvider, InlineCompletionsProvider, InlineValuesProvider, LinkedEditingRangeProvider, LinkProvider, MultiDocumentHighlightProvider, NewSymbolNamesProvider, OnTypeFormattingEditProvider, ReferenceProvider, RenameProvider, SelectionRangeProvider, SignatureHelpProvider, TypeDefinitionProvider } from '../languages.js';7import { createDecorator } from '../../../platform/instantiation/common/instantiation.js';89export const ILanguageFeaturesService = createDecorator<ILanguageFeaturesService>('ILanguageFeaturesService');1011export interface ILanguageFeaturesService {1213readonly _serviceBrand: undefined;1415readonly referenceProvider: LanguageFeatureRegistry<ReferenceProvider>;1617readonly definitionProvider: LanguageFeatureRegistry<DefinitionProvider>;1819readonly typeDefinitionProvider: LanguageFeatureRegistry<TypeDefinitionProvider>;2021readonly declarationProvider: LanguageFeatureRegistry<DeclarationProvider>;2223readonly implementationProvider: LanguageFeatureRegistry<ImplementationProvider>;2425readonly codeActionProvider: LanguageFeatureRegistry<CodeActionProvider>;2627readonly documentPasteEditProvider: LanguageFeatureRegistry<DocumentPasteEditProvider>;2829readonly renameProvider: LanguageFeatureRegistry<RenameProvider>;3031readonly newSymbolNamesProvider: LanguageFeatureRegistry<NewSymbolNamesProvider>;3233readonly documentFormattingEditProvider: LanguageFeatureRegistry<DocumentFormattingEditProvider>;3435readonly documentRangeFormattingEditProvider: LanguageFeatureRegistry<DocumentRangeFormattingEditProvider>;3637readonly onTypeFormattingEditProvider: LanguageFeatureRegistry<OnTypeFormattingEditProvider>;3839readonly documentSymbolProvider: LanguageFeatureRegistry<DocumentSymbolProvider>;4041readonly inlayHintsProvider: LanguageFeatureRegistry<InlayHintsProvider>;4243readonly colorProvider: LanguageFeatureRegistry<DocumentColorProvider>;4445readonly codeLensProvider: LanguageFeatureRegistry<CodeLensProvider>;4647readonly signatureHelpProvider: LanguageFeatureRegistry<SignatureHelpProvider>;4849readonly hoverProvider: LanguageFeatureRegistry<HoverProvider>;5051readonly documentHighlightProvider: LanguageFeatureRegistry<DocumentHighlightProvider>;5253readonly multiDocumentHighlightProvider: LanguageFeatureRegistry<MultiDocumentHighlightProvider>;5455readonly documentRangeSemanticTokensProvider: LanguageFeatureRegistry<DocumentRangeSemanticTokensProvider>;5657readonly documentSemanticTokensProvider: LanguageFeatureRegistry<DocumentSemanticTokensProvider>;5859readonly selectionRangeProvider: LanguageFeatureRegistry<SelectionRangeProvider>;6061readonly foldingRangeProvider: LanguageFeatureRegistry<FoldingRangeProvider>;6263readonly linkProvider: LanguageFeatureRegistry<LinkProvider>;6465readonly inlineCompletionsProvider: LanguageFeatureRegistry<InlineCompletionsProvider>;6667readonly completionProvider: LanguageFeatureRegistry<CompletionItemProvider>;6869readonly linkedEditingRangeProvider: LanguageFeatureRegistry<LinkedEditingRangeProvider>;7071readonly inlineValuesProvider: LanguageFeatureRegistry<InlineValuesProvider>;7273readonly evaluatableExpressionProvider: LanguageFeatureRegistry<EvaluatableExpressionProvider>;7475readonly documentDropEditProvider: LanguageFeatureRegistry<DocumentDropEditProvider>;7677// --7879setNotebookTypeResolver(resolver: NotebookInfoResolver | undefined): void;80}818283