lspeasy / core/src / CancellationTokenSource
Class: CancellationTokenSource
Defined in: packages/core/src/utils/cancellation.ts:102
Controller that creates and manages a CancellationToken.
Remarks
Holds the mutable end of the cancellation pair: call .cancel() to signal cancellation; pass .token (read-only) to handlers and async operations. Always call .dispose() when the operation completes to free internal event-emitter resources, regardless of whether cancellation was requested.
Example
ts
import { CancellationTokenSource } from '@lspeasy/core';
import { LSPClient } from '@lspeasy/client';
const source = new CancellationTokenSource();
const promise = client.sendRequest('textDocument/hover', params, source.token);
// Cancel from user interaction
cancelButton.addEventListener('click', () => source.cancel());
try {
const result = await promise;
} catch {
// Cancelled
} finally {
source.dispose();
}Constructors
Constructor
ts
new CancellationTokenSource(): CancellationTokenSource;Defined in: packages/core/src/utils/cancellation.ts:107
Returns
CancellationTokenSource
Accessors
token
Get Signature
ts
get token(): CancellationToken;Defined in: packages/core/src/utils/cancellation.ts:137
Get the token
Returns
Methods
cancel()
ts
cancel(): void;Defined in: packages/core/src/utils/cancellation.ts:144
Signal cancellation
Returns
void
dispose()
ts
dispose(): void;Defined in: packages/core/src/utils/cancellation.ts:156
Dispose the source
Returns
void