From a065331d694a9864c074833316d9eef2ea098f0f Mon Sep 17 00:00:00 2001 From: IgorNovozhilov Date: Sat, 25 Mar 2017 17:26:18 +0300 Subject: [PATCH] [object Generator] 25.3 Generator Objects http://www.ecma-international.org/ecma-262/6.0/#sec-generator-objects ``` C:\Users> node > GF = function* (){} [Function: GF] > GF.constructor.name 'GeneratorFunction' > G = GF() {} > G + '' '[object Generator]' ``` --- src/lib/es2015.generator.d.ts | 11 ++++++++++- src/lib/es2015.symbol.wellknown.d.ts | 2 +- 2 files changed, 11 insertions(+), 2 deletions(-) diff --git a/src/lib/es2015.generator.d.ts b/src/lib/es2015.generator.d.ts index 2f522ad877..d7a3ff1606 100644 --- a/src/lib/es2015.generator.d.ts +++ b/src/lib/es2015.generator.d.ts @@ -1,4 +1,13 @@ -interface GeneratorFunction extends Function { } +interface Generator extends Iterator { } + +interface GeneratorFunction { + /** + * Creates a new Generator object. + * @param args A list of arguments the function accepts. + */ + new (...args: any[]): Generator; + (...args: any[]): Generator; +} interface GeneratorFunctionConstructor { /** diff --git a/src/lib/es2015.symbol.wellknown.d.ts b/src/lib/es2015.symbol.wellknown.d.ts index 71e4cb7c89..5334dae9e0 100644 --- a/src/lib/es2015.symbol.wellknown.d.ts +++ b/src/lib/es2015.symbol.wellknown.d.ts @@ -137,7 +137,7 @@ interface Function { [Symbol.hasInstance](value: any): boolean; } -interface GeneratorFunction extends Function { +interface GeneratorFunction { readonly [Symbol.toStringTag]: "GeneratorFunction"; }