Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
microsoft
GitHub Repository: microsoft/vscode
Path: blob/main/extensions/copilot/src/platform/languageContextProvider/common/nullLanguageContextProviderService.ts
13400 views
1
/*---------------------------------------------------------------------------------------------
2
* Copyright (c) Microsoft Corporation. All rights reserved.
3
* Licensed under the MIT License. See License.txt in the project root for license information.
4
*--------------------------------------------------------------------------------------------*/
5
6
import type { CancellationToken, TextDocument, Disposable as VscodeDisposable } from 'vscode';
7
import { Copilot } from '../../../platform/inlineCompletions/common/api';
8
import { Disposable } from '../../../util/vs/base/common/lifecycle';
9
import { ContextItem } from '../../languageServer/common/languageContextService';
10
import { ILanguageContextProviderService, ProviderTarget } from './languageContextProviderService';
11
12
export class NullLanguageContextProviderService implements ILanguageContextProviderService {
13
_serviceBrand: undefined;
14
15
registerContextProvider<T extends Copilot.SupportedContextItem>(provider: Copilot.ContextProvider<T>, targets: ProviderTarget[]): VscodeDisposable {
16
return Disposable.None;
17
}
18
19
getAllProviders(): readonly Copilot.ContextProvider<Copilot.SupportedContextItem>[] {
20
return [];
21
}
22
23
getContextProviders(doc: TextDocument): Copilot.ContextProvider<Copilot.SupportedContextItem>[] {
24
return [];
25
}
26
27
getContextItems(doc: TextDocument, request: Copilot.ResolveRequest, cancellationToken: CancellationToken): AsyncIterable<ContextItem> {
28
return {
29
[Symbol.asyncIterator]: async function* () {
30
// No context items to provide
31
}
32
};
33
}
34
35
getContextItemsOnTimeout(doc: TextDocument, request: Copilot.ResolveRequest): ContextItem[] {
36
return [];
37
}
38
}
39
40