提交 4c73fa61 编写于 作者: J Johannes Rieken 提交者: GitHub

define CompletionList#duration and adopt in snippets provider, Perf telemetry...

define CompletionList#duration and adopt in snippets provider, Perf telemetry for completions #109167
上级 c33d495d
......@@ -553,6 +553,11 @@ export interface CompletionList {
suggestions: CompletionItem[];
incomplete?: boolean;
dispose?(): void;
/**
* @internal
*/
duration?: number;
}
/**
......
......@@ -15,6 +15,7 @@ import { localize } from 'vs/nls';
import { ISnippetsService } from 'vs/workbench/contrib/snippets/browser/snippets.contribution';
import { Snippet, SnippetSource } from 'vs/workbench/contrib/snippets/browser/snippetsFile';
import { isPatternInWord } from 'vs/base/common/filters';
import { StopWatch } from 'vs/base/common/stopwatch';
export class SnippetCompletion implements CompletionItem {
......@@ -71,6 +72,7 @@ export class SnippetCompletionProvider implements CompletionItemProvider {
return { suggestions: [] };
}
const sw = new StopWatch(true);
const languageId = this._getLanguageIdAtPosition(model, position);
const snippets = await this._snippets.getSnippets(languageId);
......@@ -141,7 +143,10 @@ export class SnippetCompletionProvider implements CompletionItemProvider {
}
}
return { suggestions };
return {
suggestions,
duration: sw.elapsed()
};
}
resolveCompletionItem(item: CompletionItem): CompletionItem {
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册