提交 6a586e39 编写于 作者: J Johannes Rieken

debt - don't refer to WinJS.Promise as Promise

上级 211a5d8b
...@@ -6,7 +6,7 @@ ...@@ -6,7 +6,7 @@
'use strict'; 'use strict';
import * as errors from 'vs/base/common/errors'; import * as errors from 'vs/base/common/errors';
import { Promise, TPromise, ValueCallback, ErrorCallback, ProgressCallback } from 'vs/base/common/winjs.base'; import { TPromise, ValueCallback, ErrorCallback, ProgressCallback } from 'vs/base/common/winjs.base';
import { CancellationToken, CancellationTokenSource } from 'vs/base/common/cancellation'; import { CancellationToken, CancellationTokenSource } from 'vs/base/common/cancellation';
import { Disposable, IDisposable } from 'vs/base/common/lifecycle'; import { Disposable, IDisposable } from 'vs/base/common/lifecycle';
import { Event, Emitter } from 'vs/base/common/event'; import { Event, Emitter } from 'vs/base/common/event';
...@@ -131,9 +131,9 @@ export interface ITask<T> { ...@@ -131,9 +131,9 @@ export interface ITask<T> {
*/ */
export class Throttler { export class Throttler {
private activePromise: Promise; private activePromise: TPromise;
private queuedPromise: Promise; private queuedPromise: TPromise;
private queuedPromiseFactory: ITask<Promise>; private queuedPromiseFactory: ITask<TPromise>;
constructor() { constructor() {
this.activePromise = null; this.activePromise = null;
...@@ -221,7 +221,7 @@ export class SimpleThrottler { ...@@ -221,7 +221,7 @@ export class SimpleThrottler {
export class Delayer<T> { export class Delayer<T> {
private timeout: number; private timeout: number;
private completionPromise: Promise; private completionPromise: TPromise;
private onSuccess: ValueCallback; private onSuccess: ValueCallback;
private task: ITask<T | TPromise<T>>; private task: ITask<T | TPromise<T>>;
...@@ -357,10 +357,10 @@ export class ShallowCancelThenPromise<T> extends TPromise<T> { ...@@ -357,10 +357,10 @@ export class ShallowCancelThenPromise<T> extends TPromise<T> {
} }
/** /**
* Replacement for `WinJS.Promise.timeout`. * Replacement for `WinJS.TPromise.timeout`.
*/ */
export function timeout(n: number): Promise<void> { export function timeout(n: number): Thenable<void> {
return new Promise(resolve => setTimeout(resolve, n)); return new TPromise(resolve => setTimeout(resolve, n));
} }
function isWinJSPromise(candidate: any): candidate is TPromise { function isWinJSPromise(candidate: any): candidate is TPromise {
...@@ -466,7 +466,7 @@ export function first<T>(promiseFactories: ITask<TPromise<T>>[], shouldStop: (t: ...@@ -466,7 +466,7 @@ export function first<T>(promiseFactories: ITask<TPromise<T>>[], shouldStop: (t:
} }
interface ILimitedTaskFactory { interface ILimitedTaskFactory {
factory: ITask<Promise>; factory: ITask<TPromise>;
c: ValueCallback; c: ValueCallback;
e: ErrorCallback; e: ErrorCallback;
p: ProgressCallback; p: ProgressCallback;
...@@ -497,7 +497,7 @@ export class Limiter<T> { ...@@ -497,7 +497,7 @@ export class Limiter<T> {
return this.runningPromises + this.outstandingPromises.length; return this.runningPromises + this.outstandingPromises.length;
} }
queue(promiseFactory: ITask<Promise>): Promise; queue(promiseFactory: ITask<TPromise>): TPromise;
queue(promiseFactory: ITask<TPromise<T>>): TPromise<T> { queue(promiseFactory: ITask<TPromise<T>>): TPromise<T> {
return new TPromise<T>((c, e, p) => { return new TPromise<T>((c, e, p) => {
this.outstandingPromises.push({ this.outstandingPromises.push({
...@@ -737,13 +737,13 @@ export class RunOnceWorker<T> extends RunOnceScheduler { ...@@ -737,13 +737,13 @@ export class RunOnceWorker<T> extends RunOnceScheduler {
} }
} }
export function nfcall(fn: Function, ...args: any[]): Promise; export function nfcall(fn: Function, ...args: any[]): TPromise;
export function nfcall<T>(fn: Function, ...args: any[]): TPromise<T>; export function nfcall<T>(fn: Function, ...args: any[]): TPromise<T>;
export function nfcall(fn: Function, ...args: any[]): any { export function nfcall(fn: Function, ...args: any[]): any {
return new TPromise((c, e) => fn(...args, (err: any, result: any) => err ? e(err) : c(result)), () => null); return new TPromise((c, e) => fn(...args, (err: any, result: any) => err ? e(err) : c(result)), () => null);
} }
export function ninvoke(thisArg: any, fn: Function, ...args: any[]): Promise; export function ninvoke(thisArg: any, fn: Function, ...args: any[]): TPromise;
export function ninvoke<T>(thisArg: any, fn: Function, ...args: any[]): TPromise<T>; export function ninvoke<T>(thisArg: any, fn: Function, ...args: any[]): TPromise<T>;
export function ninvoke(thisArg: any, fn: Function, ...args: any[]): any { export function ninvoke(thisArg: any, fn: Function, ...args: any[]): any {
return new TPromise((c, e) => fn.call(thisArg, ...args, (err: any, result: any) => err ? e(err) : c(result)), () => null); return new TPromise((c, e) => fn.call(thisArg, ...args, (err: any, result: any) => err ? e(err) : c(result)), () => null);
......
...@@ -16,7 +16,11 @@ import { toResource } from 'vs/base/test/common/utils'; ...@@ -16,7 +16,11 @@ import { toResource } from 'vs/base/test/common/utils';
import { TextFileEditorModelManager } from 'vs/workbench/services/textfile/common/textFileEditorModelManager'; import { TextFileEditorModelManager } from 'vs/workbench/services/textfile/common/textFileEditorModelManager';
import { FileOperationResult, FileOperationError, IFileService, snapshotToString } from 'vs/platform/files/common/files'; import { FileOperationResult, FileOperationError, IFileService, snapshotToString } from 'vs/platform/files/common/files';
import { IModelService } from 'vs/editor/common/services/modelService'; import { IModelService } from 'vs/editor/common/services/modelService';
import { timeout } from 'vs/base/common/async'; import { timeout as thenableTimeout } from 'vs/base/common/async';
function timeout(n: number) {
return TPromise.wrap(thenableTimeout(n));
}
class ServiceAccessor { class ServiceAccessor {
constructor(@ITextFileService public textFileService: TestTextFileService, @IModelService public modelService: IModelService, @IFileService public fileService: TestFileService) { constructor(@ITextFileService public textFileService: TestTextFileService, @IModelService public modelService: IModelService, @IFileService public fileService: TestFileService) {
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册