Added typing to Deferred and defer()

This commit is contained in:
Andrew Gaspar
2013-06-20 00:43:35 -07:00
parent c37c38a984
commit 9c38124670
3 changed files with 5 additions and 5 deletions
+1 -1
View File
@@ -2,7 +2,7 @@
Q(8).then(x => console.log(x.toExponential()));
var delay = function (delay) {
var delay = function (delay: number) {
var d = Q.defer();
setTimeout(d.resolve, delay);
return d.promise;
Vendored
+3 -3
View File
@@ -8,10 +8,10 @@ declare function Q<T>(value: T): Q.Promise<T>;
declare module Q {
interface Deferred<T> {
promise: Promise<T>;
resolve(value: any): any;
resolve(value: T): any;
reject(reason: any);
notify(value: any);
makeNodeResolver(): () => void;
makeNodeResolver(): (reason, value: T) => void;
}
interface Promise<T> {
@@ -55,7 +55,7 @@ declare module Q {
export function isRejected(): bool;
export function isPending(): bool;
export function valueOf(): any;
export function defer(): Deferred;
export function defer<T>(): Deferred<T>;
export function reject(): Promise<any>;
export function promise(factory: { resolve: Function; reject: Function; notify: Function; }): Promise<any>;
export function isPromise(value: any): bool;
+1 -1
View File
@@ -67,7 +67,7 @@ q.nfcall(fs.readFile, "foo.txt", "utf-8").then(replaceText);
q.ninvoke(fs, "readFile", "foo.txt", "utf-8").then(replaceText);
var deferred = q.defer();
var deferred = q.defer<string>();
fs.readFile("foo.txt", "utf-8", deferred.makeNodeResolver());
deferred.promise.then(replaceText);