diff --git a/ts/00_commitinfo_data.ts b/ts/00_commitinfo_data.ts index 1e46a0f..dcb37a0 100644 --- a/ts/00_commitinfo_data.ts +++ b/ts/00_commitinfo_data.ts @@ -3,6 +3,6 @@ */ export const commitinfo = { name: '@pushrocks/smartpromise', - version: '4.0.1', + version: '4.0.2', description: 'simple promises and Deferred constructs' } diff --git a/ts/smartpromise.classes.deferred.ts b/ts/smartpromise.classes.deferred.ts index 1517094..37f121c 100644 --- a/ts/smartpromise.classes.deferred.ts +++ b/ts/smartpromise.classes.deferred.ts @@ -14,6 +14,12 @@ export class Deferred { public reject: IReject; public status: TDeferredStatus; public claimed = false; + public claim() { + if (this.claimed) { + throw new Error('Deferred already claimed'); + } + this.claimed = true; + } public startedAt: number; public stoppedAt: number;