ProposalBrokerBase.RequestProposals 方法

定义

请求来自给定 caretcompletionState的所有适用 ProposalSourceBases 的建议。 在放弃其他源之前,允许 groupingDelay 从第一个 ProposalSourceBase 传递完成。

public abstract Microsoft.VisualStudio.Threading.AsyncQueue<Microsoft.VisualStudio.Language.Proposals.ProposalCollectionBase> RequestProposals (Microsoft.VisualStudio.Text.VirtualSnapshotPoint caret, Microsoft.VisualStudio.Language.Proposals.CompletionState? completionState, Microsoft.VisualStudio.Language.Proposals.ProposalScenario scenario, char triggeringCharacter, TimeSpan groupingDelay, System.Threading.CancellationToken cancel);
abstract member RequestProposals : Microsoft.VisualStudio.Text.VirtualSnapshotPoint * Microsoft.VisualStudio.Language.Proposals.CompletionState * Microsoft.VisualStudio.Language.Proposals.ProposalScenario * char * TimeSpan * System.Threading.CancellationToken -> Microsoft.VisualStudio.Threading.AsyncQueue<Microsoft.VisualStudio.Language.Proposals.ProposalCollectionBase>
Public MustOverride Function RequestProposals (caret As VirtualSnapshotPoint, completionState As CompletionState, scenario As ProposalScenario, triggeringCharacter As Char, groupingDelay As TimeSpan, cancel As CancellationToken) As AsyncQueue(Of ProposalCollectionBase)

参数

completionState
CompletionState
scenario
ProposalScenario
triggeringCharacter
Char
groupingDelay
TimeSpan

返回

AsyncQueue<T>ProposalCollectionBaseComplete() 完成所有 ProposalSourceBase操作后,将在队列中调用 。

注解

排队建议的算法如下所示:

1. Call <xref data-throw-if-not-resolved="true" uid="Microsoft.VisualStudio.Language.Proposals.ProposalSourceBase.RequestProposalsAsync(Microsoft.VisualStudio.Text.VirtualSnapshotPoint,Microsoft.VisualStudio.Language.Proposals.CompletionState,Microsoft.VisualStudio.Language.Proposals.ProposalScenario,System.Char,System.Threading.CancellationToken)"></xref> for each source.
2. Wait until one source returns with a non-null/empty result.
3. Wait an additional <code data-dev-comment-type="paramref">groupingDelay</code> to allow other sources to generate results.
4. Enqueue all sources that generated results using the ordering specified by their <xref data-throw-if-not-resolved="true" uid="Microsoft.VisualStudio.Language.Proposals.ProposalSourceProviderBase"></xref>.
5. Enqueue remaining results in their order of completion.

适用于