mirror of
https://github.com/microsoft/TypeScript.git
synced 2026-02-05 16:38:05 -06:00
Throw when cancellation is requested
This commit is contained in:
parent
cfee41e31c
commit
2fa24a7e7a
@ -1174,6 +1174,7 @@ module ts {
|
||||
|
||||
export interface CancellationToken {
|
||||
isCancellationRequested(): boolean;
|
||||
throwIfCancellationRequested?(): void;
|
||||
}
|
||||
|
||||
export interface CompilerHost {
|
||||
|
||||
@ -3487,7 +3487,7 @@ module ts {
|
||||
var sourceFile = getSourceFile(fileName);
|
||||
var node = getNodeAtPosition(sourceFile, position);
|
||||
|
||||
return SignatureHelp.getSignatureHelpItems(sourceFile, position, node, typeInfoResolver);
|
||||
return SignatureHelp.getSignatureHelpItems(sourceFile, position, node, typeInfoResolver, cancellationToken);
|
||||
}
|
||||
|
||||
function getSignatureHelpCurrentArgumentState(fileName: string, position: number, applicableSpanStart: number): SignatureHelpState {
|
||||
|
||||
@ -333,15 +333,18 @@ module ts.SignatureHelp {
|
||||
//}
|
||||
var emptyArray: any[] = [];
|
||||
|
||||
export function getSignatureHelpItems(sourceFile: SourceFile, position: number, startingNode: Node, typeInfoResolver: TypeChecker): SignatureHelpItems {
|
||||
export function getSignatureHelpItems(sourceFile: SourceFile, position: number, startingNode: Node, typeInfoResolver: TypeChecker, cancellationToken: CancellationToken): SignatureHelpItems {
|
||||
// Decide whether to show signature help
|
||||
var argumentList = getContainingArgumentList(startingNode);
|
||||
cancellationToken.throwIfCancellationRequested();
|
||||
|
||||
// Semantic filtering of signature help
|
||||
if (argumentList) {
|
||||
var call = <CallExpression>argumentList.parent;
|
||||
var candidates = <Signature[]>[];
|
||||
var resolvedSignature = typeInfoResolver.getResolvedSignature(call, candidates);
|
||||
cancellationToken.throwIfCancellationRequested();
|
||||
|
||||
return candidates.length
|
||||
? createSignatureHelpItems(candidates, resolvedSignature, argumentList)
|
||||
: undefined;
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user