You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
vscode-api-cn.js/interfaces/vscode.WorkspaceSymbolProvi...

328 lines
17 KiB

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

<!doctype html>
<html class="default no-js" lang="zh-CN">
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<title>WorkspaceSymbolProvider | VS Code API 中文文档</title>
<meta name="description" content="VS Code API 是一系列你可以在 Visual Studio Code 扩展中调用的 JavaScript API这个站点列出了扩展开发者可以使用的所有 vscode api 中文文档,是 vscode 插件开发必备。">
<meta name="author" content="洛竹">
<meta name="copyright" content="洛竹">
<meta property="og:title" content="Vscode Api 中文文档" />
<meta property="og:type" content="docs">
<meta property="og:image" content="https://code.visualstudio.com/favicon.ico" />
<meta property="og:url" content="https://vscode-api-cn.js.org/index.html">
<meta property="og:site_name" content="Vscode Api 中文文档">
<meta property="og:description" content="VS Code API 是一系列你可以在 Visual Studio Code 扩展中调用的 JavaScript API这个站点列出了扩展开发者可以使用的所有 vscode api 中文文档,是 vscode 插件开发必备。">
<meta property="article:tag" content="vscode api">
<meta property="article:tag" content="vscode api 中文文档">
<meta property="article:tag" content="vscode 插件">
<meta property="article:tag" content="vscode 插件开发">
<meta property="article:tag" content="vscode VS Code API 中文文档">
<meta property="article:tag" content="vscode WorkspaceSymbolProvider">
<meta name="viewport" content="width=device-width, initial-scale=1, viewport-fit=cover">
<link rel="shortcut icon" href="https://code.visualstudio.com/favicon.ico" sizes="128x128">
<link rel='canonical' href='https://vscode-api-cn.js.org/interfaces/vscode.WorkspaceSymbolProvider.html' />
<link rel="stylesheet" href="../assets/css/main.css">
<script async src="../assets/js/search.js" id="search-script"></script>
<meta name="baidu-site-verification" content="codeva-3X25ouCcqY" />
<script async src="https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js?client=ca-pub-7962287588031867" crossorigin="anonymous"></script>
<!-- Google tag (gtag.js) -->
<script async src="https://www.googletagmanager.com/gtag/js?id=G-T4TRRS1LB1"></script>
<script>
window.dataLayer = window.dataLayer || [];
function gtag(){dataLayer.push(arguments);}
gtag('js', new Date());
gtag('config', 'G-T4TRRS1LB1');
</script>
<style>
.container-main {
padding-bottom: 50px;
}
</style>
</head>
<body>
<header>
<div class="tsd-page-toolbar">
<div class="container">
<div class="table-wrap">
<div class="table-cell" id="tsd-search" data-index="../assets/js/search.json" data-base="..">
<div class="field">
<label for="tsd-search-field" class="tsd-widget search no-caption">Search</label>
<input id="tsd-search-field" type="text" />
</div>
<ul class="results">
<li class="state loading">Preparing search index...</li>
<li class="state failure">The search index is not available</li>
</ul>
<a href="../index.html" class="title">VS Code API 中文文档</a>
</div>
<div class="table-cell" id="tsd-widgets">
<div id="tsd-filter">
<a href="#" class="tsd-widget options no-caption" data-toggle="options">Options</a>
<div class="tsd-filter-group">
<div class="tsd-select" id="tsd-filter-visibility">
<span class="tsd-select-label">All</span>
<ul class="tsd-select-list">
<li data-value="public">Public</li>
<li data-value="protected">Public/Protected</li>
<li data-value="private" class="selected">All</li>
</ul>
</div>
<input type="checkbox" id="tsd-filter-inherited" checked />
<label class="tsd-widget" for="tsd-filter-inherited">Inherited</label>
<input type="checkbox" id="tsd-filter-externals" checked />
<label class="tsd-widget" for="tsd-filter-externals">Externals</label>
</div>
</div>
<a href="#" class="tsd-widget menu no-caption" data-toggle="menu">Menu</a>
</div>
</div>
</div>
</div>
<div class="tsd-page-title">
<div class="container">
<ul class="tsd-breadcrumb">
<li>
<a href="../modules.html">VS Code API 中文文档</a>
</li>
<li>
<a href="../modules/vscode.html">vscode</a>
</li>
<li>
<a href="vscode.WorkspaceSymbolProvider.html">WorkspaceSymbolProvider</a>
</li>
</ul>
<h1>Interface WorkspaceSymbolProvider&lt;T&gt;</h1>
</div>
</div>
</header>
<div class="container container-main">
<div class="row">
<div class="col-8 col-content">
<section class="tsd-panel tsd-comment">
<div class="tsd-comment tsd-typography">
<div class="lead">
<p>The workspace symbol provider interface defines the contract between extensions and
the <a href="https://code.visualstudio.com/docs/editor/editingevolved#_open-symbol-by-name">symbol search</a>-feature.</p>
</div>
</div>
</section>
<section class="tsd-panel tsd-type-parameters">
<h3>Type parameters</h3>
<ul class="tsd-type-parameters">
<li>
<h4>T<span class="tsd-signature-symbol">: </span><a href="../classes/vscode.SymbolInformation.html" class="tsd-signature-type" data-tsd-kind="Class">SymbolInformation</a> = <a href="../classes/vscode.SymbolInformation.html" class="tsd-signature-type" data-tsd-kind="Class">SymbolInformation</a></h4>
</li>
</ul>
</section>
<section class="tsd-panel tsd-hierarchy">
<h3>层级</h3>
<ul class="tsd-hierarchy">
<li>
<span class="target">WorkspaceSymbolProvider</span>
</li>
</ul>
</section>
<section class="tsd-panel-group tsd-index-group">
<h2>索引</h2>
<section class="tsd-panel tsd-index-panel">
<div class="tsd-index-content">
<section class="tsd-index-section ">
<h3>Methods2</h3>
<ul class="tsd-index-list">
<li class="tsd-kind-method tsd-parent-kind-interface"><a href="vscode.WorkspaceSymbolProvider.html#provideWorkspaceSymbols" class="tsd-kind-icon">provide<wbr>Workspace<wbr>Symbols</a></li>
<li class="tsd-kind-method tsd-parent-kind-interface"><a href="vscode.WorkspaceSymbolProvider.html#resolveWorkspaceSymbol" class="tsd-kind-icon">resolve<wbr>Workspace<wbr>Symbol</a></li>
</ul>
</section>
</div>
</section>
</section>
<section class="tsd-panel-group tsd-member-group ">
<h2>Methods2</h2>
<section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-interface">
<a name="provideWorkspaceSymbols" class="tsd-anchor"></a>
<h3>provide<wbr>Workspace<wbr>Symbols</h3>
<ul class="tsd-signatures tsd-kind-method tsd-parent-kind-interface">
<li class="tsd-signature tsd-kind-icon">provide<wbr>Workspace<wbr>Symbols<span class="tsd-signature-symbol">(</span>query<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span>, token<span class="tsd-signature-symbol">: </span><a href="vscode.CancellationToken.html" class="tsd-signature-type" data-tsd-kind="Interface">CancellationToken</a><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><a href="../modules/vscode.html#ProviderResult" class="tsd-signature-type" data-tsd-kind="Type alias">ProviderResult</a><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">T</span><span class="tsd-signature-symbol">[]</span><span class="tsd-signature-symbol">&gt;</span></li>
</ul>
<ul class="tsd-descriptions">
<li class="tsd-description">
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/youngjuning/vscode-api-cn/blob/4c83209/vscode.d.ts#L3092">vscode.d.ts:3092</a></li>
</ul>
</aside>
<div class="tsd-comment tsd-typography">
<div class="lead">
<p>Project-wide search for a symbol matching the given query string.</p>
</div>
<p>The <code>query</code>-parameter should be interpreted in a <em>relaxed way</em> as the editor will apply its own highlighting
and scoring on the results. A good rule of thumb is to match case-insensitive and to simply check that the
characters of <em>query</em> appear in their order in a candidate symbol. Don&#39;t use prefix, substring, or similar
strict matching.</p>
<p>To improve performance implementors can implement <code>resolveWorkspaceSymbol</code> and then provide symbols with partial
<a href="../classes/vscode.SymbolInformation.html#location">location</a>-objects, without a <code>range</code> defined. The editor will then call
<code>resolveWorkspaceSymbol</code> for selected symbols only, e.g. when opening a workspace symbol.</p>
</div>
<h4 class="tsd-parameters-title">Parameters</h4>
<ul class="tsd-parameters">
<li>
<h5>query: <span class="tsd-signature-type">string</span></h5>
<div class="tsd-comment tsd-typography">
<p>A query string, can be the empty string in which case all symbols should be returned.</p>
</div>
</li>
<li>
<h5>token: <a href="vscode.CancellationToken.html" class="tsd-signature-type" data-tsd-kind="Interface">CancellationToken</a></h5>
<div class="tsd-comment tsd-typography">
<p>A cancellation token.</p>
</div>
</li>
</ul>
<h4 class="tsd-returns-title">Returns <a href="../modules/vscode.html#ProviderResult" class="tsd-signature-type" data-tsd-kind="Type alias">ProviderResult</a><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">T</span><span class="tsd-signature-symbol">[]</span><span class="tsd-signature-symbol">&gt;</span></h4>
<p>An array of document highlights or a thenable that resolves to such. The lack of a result can be
signaled by returning <code>undefined</code>, <code>null</code>, or an empty array.</p>
</li>
</ul>
</section>
<section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-interface">
<a name="resolveWorkspaceSymbol" class="tsd-anchor"></a>
<h3><span class="tsd-flag ts-flagOptional">Optional</span> resolve<wbr>Workspace<wbr>Symbol</h3>
<ul class="tsd-signatures tsd-kind-method tsd-parent-kind-interface">
<li class="tsd-signature tsd-kind-icon">resolve<wbr>Workspace<wbr>Symbol<span class="tsd-signature-symbol">(</span>symbol<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">T</span>, token<span class="tsd-signature-symbol">: </span><a href="vscode.CancellationToken.html" class="tsd-signature-type" data-tsd-kind="Interface">CancellationToken</a><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><a href="../modules/vscode.html#ProviderResult" class="tsd-signature-type" data-tsd-kind="Type alias">ProviderResult</a><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">T</span><span class="tsd-signature-symbol">&gt;</span></li>
</ul>
<ul class="tsd-descriptions">
<li class="tsd-description">
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/youngjuning/vscode-api-cn/blob/4c83209/vscode.d.ts#L3106">vscode.d.ts:3106</a></li>
</ul>
</aside>
<div class="tsd-comment tsd-typography">
<div class="lead">
<p>Given a symbol fill in its <a href="../classes/vscode.SymbolInformation.html#location">location</a>. This method is called whenever a symbol
is selected in the UI. Providers can implement this method and return incomplete symbols from
<a href="vscode.WorkspaceSymbolProvider.html#provideWorkspaceSymbols"><code>provideWorkspaceSymbols</code></a> which often helps to improve
performance.</p>
</div>
</div>
<h4 class="tsd-parameters-title">Parameters</h4>
<ul class="tsd-parameters">
<li>
<h5>symbol: <span class="tsd-signature-type">T</span></h5>
<div class="tsd-comment tsd-typography">
<p>The symbol that is to be resolved. Guaranteed to be an instance of an object returned from an
earlier call to <code>provideWorkspaceSymbols</code>.</p>
</div>
</li>
<li>
<h5>token: <a href="vscode.CancellationToken.html" class="tsd-signature-type" data-tsd-kind="Interface">CancellationToken</a></h5>
<div class="tsd-comment tsd-typography">
<p>A cancellation token.</p>
</div>
</li>
</ul>
<h4 class="tsd-returns-title">Returns <a href="../modules/vscode.html#ProviderResult" class="tsd-signature-type" data-tsd-kind="Type alias">ProviderResult</a><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">T</span><span class="tsd-signature-symbol">&gt;</span></h4>
<p>The resolved symbol or a thenable that resolves to that. When no result is returned,
the given <code>symbol</code> is used.</p>
</li>
</ul>
</section>
</section>
<div class="tsd-panel tsd-typography">
<ins class="adsbygoogle" style="display:block" data-ad-client="ca-pub-7962287588031867" data-ad-slot="2140558196" data-ad-format="auto" data-full-width-responsive="true"></ins><script>(adsbygoogle = window.adsbygoogle || []).push({});</script>
</div>
</div>
<div class="col-4 col-menu menu-sticky-wrap menu-highlight">
<nav class="tsd-navigation primary">
<ul>
<li class=" ">
<a href="../modules.html">Exports</a>
</li>
<li class="current tsd-kind-namespace">
<a href="../modules/vscode.html">vscode</a>
<ul>
<li class=" tsd-kind-namespace tsd-parent-kind-namespace">
<a href="../modules/vscode.authentication.html">authentication</a>
</li>
<li class=" tsd-kind-namespace tsd-parent-kind-namespace">
<a href="../modules/vscode.commands.html">commands</a>
</li>
<li class=" tsd-kind-namespace tsd-parent-kind-namespace">
<a href="../modules/vscode.comments.html">comments</a>
</li>
<li class=" tsd-kind-namespace tsd-parent-kind-namespace">
<a href="../modules/vscode.debug.html">debug</a>
</li>
<li class=" tsd-kind-namespace tsd-parent-kind-namespace">
<a href="../modules/vscode.env.html">env</a>
</li>
<li class=" tsd-kind-namespace tsd-parent-kind-namespace">
<a href="../modules/vscode.extensions.html">extensions</a>
</li>
<li class=" tsd-kind-namespace tsd-parent-kind-namespace">
<a href="../modules/vscode.languages.html">languages</a>
</li>
<li class=" tsd-kind-namespace tsd-parent-kind-namespace">
<a href="../modules/vscode.notebooks.html">notebooks</a>
</li>
<li class=" tsd-kind-namespace tsd-parent-kind-namespace">
<a href="../modules/vscode.scm.html">scm</a>
</li>
<li class=" tsd-kind-namespace tsd-parent-kind-namespace">
<a href="../modules/vscode.tasks.html">tasks</a>
</li>
<li class=" tsd-kind-namespace tsd-parent-kind-namespace">
<a href="../modules/vscode.tests.html">tests</a>
</li>
<li class=" tsd-kind-namespace tsd-parent-kind-namespace">
<a href="../modules/vscode.window.html">window</a>
</li>
<li class=" tsd-kind-namespace tsd-parent-kind-namespace">
<a href="../modules/vscode.workspace.html">workspace</a>
</li>
</ul>
</li>
</ul>
</nav>
<nav class="tsd-navigation secondary menu-sticky">
<ul class="before-current">
</ul>
<ul class="current">
<li class="current tsd-kind-interface tsd-parent-kind-namespace tsd-has-type-parameter">
<a href="vscode.WorkspaceSymbolProvider.html" class="tsd-kind-icon">Workspace<wbr>Symbol<wbr>Provider</a>
<ul>
<li class=" tsd-kind-method tsd-parent-kind-interface">
<a href="vscode.WorkspaceSymbolProvider.html#provideWorkspaceSymbols" class="tsd-kind-icon">provide<wbr>Workspace<wbr>Symbols</a>
</li>
<li class=" tsd-kind-method tsd-parent-kind-interface">
<a href="vscode.WorkspaceSymbolProvider.html#resolveWorkspaceSymbol" class="tsd-kind-icon">resolve<wbr>Workspace<wbr>Symbol</a>
</li>
</ul>
</li>
</ul>
<ul class="after-current">
</ul>
</nav>
</div>
</div>
</div>
<footer class="with-border-bottom">
<div class="container">
<h2>图例</h2>
<div class="tsd-legend-group">
<ul class="tsd-legend">
<li class="tsd-kind-method tsd-parent-kind-interface"><span class="tsd-kind-icon">Method</span></li>
</ul>
</div>
</div>
</footer>
<div class="container tsd-generator">
<p>友链:<a href="https://jeasonstudio.gitbooks.io/vscode-cn-doc/content/" target="_blank">VS Code 中文文档</a> | <a href="https://code.visualstudio.com/docs" target="_blank">VS Code 官网文档</a> | <a href="https://marketplace.visualstudio.com/" target="_blank">VS Code 扩展市场</a></p>
<p>Generated by <a href="https://typedoc.org/" target="_blank">TypeDoc</a>. Maintained by <a href="https://youngjuning.js.org" target="_blank">洛竹</a></p>
</div>
<div class="overlay"></div>
<script src="../assets/js/main.js"></script>
</body>
</html>