mirror of
https://github.com/microsoft/TypeScript.git
synced 2026-07-12 23:03:10 -05:00
Add tests for generators
This commit is contained in:
5
tests/baselines/reference/generatorTypeCheck1.js
Normal file
5
tests/baselines/reference/generatorTypeCheck1.js
Normal file
@@ -0,0 +1,5 @@
|
||||
//// [generatorTypeCheck1.ts]
|
||||
function* g1(): Iterator<string> { }
|
||||
|
||||
//// [generatorTypeCheck1.js]
|
||||
function* g1() { }
|
||||
5
tests/baselines/reference/generatorTypeCheck1.symbols
Normal file
5
tests/baselines/reference/generatorTypeCheck1.symbols
Normal file
@@ -0,0 +1,5 @@
|
||||
=== tests/cases/conformance/es6/yieldExpressions/generatorTypeCheck1.ts ===
|
||||
function* g1(): Iterator<string> { }
|
||||
>g1 : Symbol(g1, Decl(generatorTypeCheck1.ts, 0, 0))
|
||||
>Iterator : Symbol(Iterator, Decl(lib.d.ts, 1657, 1))
|
||||
|
||||
5
tests/baselines/reference/generatorTypeCheck1.types
Normal file
5
tests/baselines/reference/generatorTypeCheck1.types
Normal file
@@ -0,0 +1,5 @@
|
||||
=== tests/cases/conformance/es6/yieldExpressions/generatorTypeCheck1.ts ===
|
||||
function* g1(): Iterator<string> { }
|
||||
>g1 : () => Iterator<string>
|
||||
>Iterator : Iterator<T>
|
||||
|
||||
9
tests/baselines/reference/generatorTypeCheck10.js
Normal file
9
tests/baselines/reference/generatorTypeCheck10.js
Normal file
@@ -0,0 +1,9 @@
|
||||
//// [generatorTypeCheck10.ts]
|
||||
function* g(): IterableIterator<any> {
|
||||
return;
|
||||
}
|
||||
|
||||
//// [generatorTypeCheck10.js]
|
||||
function* g() {
|
||||
return;
|
||||
}
|
||||
7
tests/baselines/reference/generatorTypeCheck10.symbols
Normal file
7
tests/baselines/reference/generatorTypeCheck10.symbols
Normal file
@@ -0,0 +1,7 @@
|
||||
=== tests/cases/conformance/es6/yieldExpressions/generatorTypeCheck10.ts ===
|
||||
function* g(): IterableIterator<any> {
|
||||
>g : Symbol(g, Decl(generatorTypeCheck10.ts, 0, 0))
|
||||
>IterableIterator : Symbol(IterableIterator, Decl(lib.d.ts, 1667, 1))
|
||||
|
||||
return;
|
||||
}
|
||||
7
tests/baselines/reference/generatorTypeCheck10.types
Normal file
7
tests/baselines/reference/generatorTypeCheck10.types
Normal file
@@ -0,0 +1,7 @@
|
||||
=== tests/cases/conformance/es6/yieldExpressions/generatorTypeCheck10.ts ===
|
||||
function* g(): IterableIterator<any> {
|
||||
>g : () => IterableIterator<any>
|
||||
>IterableIterator : IterableIterator<T>
|
||||
|
||||
return;
|
||||
}
|
||||
9
tests/baselines/reference/generatorTypeCheck11.js
Normal file
9
tests/baselines/reference/generatorTypeCheck11.js
Normal file
@@ -0,0 +1,9 @@
|
||||
//// [generatorTypeCheck11.ts]
|
||||
function* g(): IterableIterator<number> {
|
||||
return 0;
|
||||
}
|
||||
|
||||
//// [generatorTypeCheck11.js]
|
||||
function* g() {
|
||||
return 0;
|
||||
}
|
||||
7
tests/baselines/reference/generatorTypeCheck11.symbols
Normal file
7
tests/baselines/reference/generatorTypeCheck11.symbols
Normal file
@@ -0,0 +1,7 @@
|
||||
=== tests/cases/conformance/es6/yieldExpressions/generatorTypeCheck11.ts ===
|
||||
function* g(): IterableIterator<number> {
|
||||
>g : Symbol(g, Decl(generatorTypeCheck11.ts, 0, 0))
|
||||
>IterableIterator : Symbol(IterableIterator, Decl(lib.d.ts, 1667, 1))
|
||||
|
||||
return 0;
|
||||
}
|
||||
8
tests/baselines/reference/generatorTypeCheck11.types
Normal file
8
tests/baselines/reference/generatorTypeCheck11.types
Normal file
@@ -0,0 +1,8 @@
|
||||
=== tests/cases/conformance/es6/yieldExpressions/generatorTypeCheck11.ts ===
|
||||
function* g(): IterableIterator<number> {
|
||||
>g : () => IterableIterator<number>
|
||||
>IterableIterator : IterableIterator<T>
|
||||
|
||||
return 0;
|
||||
>0 : number
|
||||
}
|
||||
9
tests/baselines/reference/generatorTypeCheck12.js
Normal file
9
tests/baselines/reference/generatorTypeCheck12.js
Normal file
@@ -0,0 +1,9 @@
|
||||
//// [generatorTypeCheck12.ts]
|
||||
function* g(): IterableIterator<number> {
|
||||
return "";
|
||||
}
|
||||
|
||||
//// [generatorTypeCheck12.js]
|
||||
function* g() {
|
||||
return "";
|
||||
}
|
||||
7
tests/baselines/reference/generatorTypeCheck12.symbols
Normal file
7
tests/baselines/reference/generatorTypeCheck12.symbols
Normal file
@@ -0,0 +1,7 @@
|
||||
=== tests/cases/conformance/es6/yieldExpressions/generatorTypeCheck12.ts ===
|
||||
function* g(): IterableIterator<number> {
|
||||
>g : Symbol(g, Decl(generatorTypeCheck12.ts, 0, 0))
|
||||
>IterableIterator : Symbol(IterableIterator, Decl(lib.d.ts, 1667, 1))
|
||||
|
||||
return "";
|
||||
}
|
||||
8
tests/baselines/reference/generatorTypeCheck12.types
Normal file
8
tests/baselines/reference/generatorTypeCheck12.types
Normal file
@@ -0,0 +1,8 @@
|
||||
=== tests/cases/conformance/es6/yieldExpressions/generatorTypeCheck12.ts ===
|
||||
function* g(): IterableIterator<number> {
|
||||
>g : () => IterableIterator<number>
|
||||
>IterableIterator : IterableIterator<T>
|
||||
|
||||
return "";
|
||||
>"" : string
|
||||
}
|
||||
11
tests/baselines/reference/generatorTypeCheck13.js
Normal file
11
tests/baselines/reference/generatorTypeCheck13.js
Normal file
@@ -0,0 +1,11 @@
|
||||
//// [generatorTypeCheck13.ts]
|
||||
function* g(): IterableIterator<number> {
|
||||
yield 0;
|
||||
return "";
|
||||
}
|
||||
|
||||
//// [generatorTypeCheck13.js]
|
||||
function* g() {
|
||||
yield 0;
|
||||
return "";
|
||||
}
|
||||
8
tests/baselines/reference/generatorTypeCheck13.symbols
Normal file
8
tests/baselines/reference/generatorTypeCheck13.symbols
Normal file
@@ -0,0 +1,8 @@
|
||||
=== tests/cases/conformance/es6/yieldExpressions/generatorTypeCheck13.ts ===
|
||||
function* g(): IterableIterator<number> {
|
||||
>g : Symbol(g, Decl(generatorTypeCheck13.ts, 0, 0))
|
||||
>IterableIterator : Symbol(IterableIterator, Decl(lib.d.ts, 1667, 1))
|
||||
|
||||
yield 0;
|
||||
return "";
|
||||
}
|
||||
12
tests/baselines/reference/generatorTypeCheck13.types
Normal file
12
tests/baselines/reference/generatorTypeCheck13.types
Normal file
@@ -0,0 +1,12 @@
|
||||
=== tests/cases/conformance/es6/yieldExpressions/generatorTypeCheck13.ts ===
|
||||
function* g(): IterableIterator<number> {
|
||||
>g : () => IterableIterator<number>
|
||||
>IterableIterator : IterableIterator<T>
|
||||
|
||||
yield 0;
|
||||
>yield 0 : any
|
||||
>0 : number
|
||||
|
||||
return "";
|
||||
>"" : string
|
||||
}
|
||||
11
tests/baselines/reference/generatorTypeCheck14.js
Normal file
11
tests/baselines/reference/generatorTypeCheck14.js
Normal file
@@ -0,0 +1,11 @@
|
||||
//// [generatorTypeCheck14.ts]
|
||||
function* g() {
|
||||
yield 0;
|
||||
return "";
|
||||
}
|
||||
|
||||
//// [generatorTypeCheck14.js]
|
||||
function* g() {
|
||||
yield 0;
|
||||
return "";
|
||||
}
|
||||
7
tests/baselines/reference/generatorTypeCheck14.symbols
Normal file
7
tests/baselines/reference/generatorTypeCheck14.symbols
Normal file
@@ -0,0 +1,7 @@
|
||||
=== tests/cases/conformance/es6/yieldExpressions/generatorTypeCheck14.ts ===
|
||||
function* g() {
|
||||
>g : Symbol(g, Decl(generatorTypeCheck14.ts, 0, 0))
|
||||
|
||||
yield 0;
|
||||
return "";
|
||||
}
|
||||
11
tests/baselines/reference/generatorTypeCheck14.types
Normal file
11
tests/baselines/reference/generatorTypeCheck14.types
Normal file
@@ -0,0 +1,11 @@
|
||||
=== tests/cases/conformance/es6/yieldExpressions/generatorTypeCheck14.ts ===
|
||||
function* g() {
|
||||
>g : () => IterableIterator<number>
|
||||
|
||||
yield 0;
|
||||
>yield 0 : any
|
||||
>0 : number
|
||||
|
||||
return "";
|
||||
>"" : string
|
||||
}
|
||||
9
tests/baselines/reference/generatorTypeCheck15.js
Normal file
9
tests/baselines/reference/generatorTypeCheck15.js
Normal file
@@ -0,0 +1,9 @@
|
||||
//// [generatorTypeCheck15.ts]
|
||||
function* g() {
|
||||
return "";
|
||||
}
|
||||
|
||||
//// [generatorTypeCheck15.js]
|
||||
function* g() {
|
||||
return "";
|
||||
}
|
||||
6
tests/baselines/reference/generatorTypeCheck15.symbols
Normal file
6
tests/baselines/reference/generatorTypeCheck15.symbols
Normal file
@@ -0,0 +1,6 @@
|
||||
=== tests/cases/conformance/es6/yieldExpressions/generatorTypeCheck15.ts ===
|
||||
function* g() {
|
||||
>g : Symbol(g, Decl(generatorTypeCheck15.ts, 0, 0))
|
||||
|
||||
return "";
|
||||
}
|
||||
7
tests/baselines/reference/generatorTypeCheck15.types
Normal file
7
tests/baselines/reference/generatorTypeCheck15.types
Normal file
@@ -0,0 +1,7 @@
|
||||
=== tests/cases/conformance/es6/yieldExpressions/generatorTypeCheck15.ts ===
|
||||
function* g() {
|
||||
>g : () => IterableIterator<any>
|
||||
|
||||
return "";
|
||||
>"" : string
|
||||
}
|
||||
9
tests/baselines/reference/generatorTypeCheck16.js
Normal file
9
tests/baselines/reference/generatorTypeCheck16.js
Normal file
@@ -0,0 +1,9 @@
|
||||
//// [generatorTypeCheck16.ts]
|
||||
function* g() {
|
||||
return;
|
||||
}
|
||||
|
||||
//// [generatorTypeCheck16.js]
|
||||
function* g() {
|
||||
return;
|
||||
}
|
||||
6
tests/baselines/reference/generatorTypeCheck16.symbols
Normal file
6
tests/baselines/reference/generatorTypeCheck16.symbols
Normal file
@@ -0,0 +1,6 @@
|
||||
=== tests/cases/conformance/es6/yieldExpressions/generatorTypeCheck16.ts ===
|
||||
function* g() {
|
||||
>g : Symbol(g, Decl(generatorTypeCheck16.ts, 0, 0))
|
||||
|
||||
return;
|
||||
}
|
||||
6
tests/baselines/reference/generatorTypeCheck16.types
Normal file
6
tests/baselines/reference/generatorTypeCheck16.types
Normal file
@@ -0,0 +1,6 @@
|
||||
=== tests/cases/conformance/es6/yieldExpressions/generatorTypeCheck16.ts ===
|
||||
function* g() {
|
||||
>g : () => IterableIterator<any>
|
||||
|
||||
return;
|
||||
}
|
||||
17
tests/baselines/reference/generatorTypeCheck17.js
Normal file
17
tests/baselines/reference/generatorTypeCheck17.js
Normal file
@@ -0,0 +1,17 @@
|
||||
//// [generatorTypeCheck17.ts]
|
||||
class Foo { x: number }
|
||||
class Bar extends Foo { y: string }
|
||||
function* g(): IterableIterator<Foo> {
|
||||
yield;
|
||||
yield new Bar;
|
||||
}
|
||||
|
||||
//// [generatorTypeCheck17.js]
|
||||
class Foo {
|
||||
}
|
||||
class Bar extends Foo {
|
||||
}
|
||||
function* g() {
|
||||
yield;
|
||||
yield new Bar;
|
||||
}
|
||||
19
tests/baselines/reference/generatorTypeCheck17.symbols
Normal file
19
tests/baselines/reference/generatorTypeCheck17.symbols
Normal file
@@ -0,0 +1,19 @@
|
||||
=== tests/cases/conformance/es6/yieldExpressions/generatorTypeCheck17.ts ===
|
||||
class Foo { x: number }
|
||||
>Foo : Symbol(Foo, Decl(generatorTypeCheck17.ts, 0, 0))
|
||||
>x : Symbol(x, Decl(generatorTypeCheck17.ts, 0, 11))
|
||||
|
||||
class Bar extends Foo { y: string }
|
||||
>Bar : Symbol(Bar, Decl(generatorTypeCheck17.ts, 0, 23))
|
||||
>Foo : Symbol(Foo, Decl(generatorTypeCheck17.ts, 0, 0))
|
||||
>y : Symbol(y, Decl(generatorTypeCheck17.ts, 1, 23))
|
||||
|
||||
function* g(): IterableIterator<Foo> {
|
||||
>g : Symbol(g, Decl(generatorTypeCheck17.ts, 1, 35))
|
||||
>IterableIterator : Symbol(IterableIterator, Decl(lib.d.ts, 1667, 1))
|
||||
>Foo : Symbol(Foo, Decl(generatorTypeCheck17.ts, 0, 0))
|
||||
|
||||
yield;
|
||||
yield new Bar;
|
||||
>Bar : Symbol(Bar, Decl(generatorTypeCheck17.ts, 0, 23))
|
||||
}
|
||||
23
tests/baselines/reference/generatorTypeCheck17.types
Normal file
23
tests/baselines/reference/generatorTypeCheck17.types
Normal file
@@ -0,0 +1,23 @@
|
||||
=== tests/cases/conformance/es6/yieldExpressions/generatorTypeCheck17.ts ===
|
||||
class Foo { x: number }
|
||||
>Foo : Foo
|
||||
>x : number
|
||||
|
||||
class Bar extends Foo { y: string }
|
||||
>Bar : Bar
|
||||
>Foo : Foo
|
||||
>y : string
|
||||
|
||||
function* g(): IterableIterator<Foo> {
|
||||
>g : () => IterableIterator<Foo>
|
||||
>IterableIterator : IterableIterator<T>
|
||||
>Foo : Foo
|
||||
|
||||
yield;
|
||||
>yield : any
|
||||
|
||||
yield new Bar;
|
||||
>yield new Bar : any
|
||||
>new Bar : Bar
|
||||
>Bar : typeof Bar
|
||||
}
|
||||
14
tests/baselines/reference/generatorTypeCheck18.errors.txt
Normal file
14
tests/baselines/reference/generatorTypeCheck18.errors.txt
Normal file
@@ -0,0 +1,14 @@
|
||||
tests/cases/conformance/es6/yieldExpressions/generatorTypeCheck18.ts(5,11): error TS2322: Type 'Baz' is not assignable to type 'Foo'.
|
||||
Property 'x' is missing in type 'Baz'.
|
||||
|
||||
|
||||
==== tests/cases/conformance/es6/yieldExpressions/generatorTypeCheck18.ts (1 errors) ====
|
||||
class Foo { x: number }
|
||||
class Baz { z: number }
|
||||
function* g(): IterableIterator<Foo> {
|
||||
yield;
|
||||
yield new Baz;
|
||||
~~~~~~~
|
||||
!!! error TS2322: Type 'Baz' is not assignable to type 'Foo'.
|
||||
!!! error TS2322: Property 'x' is missing in type 'Baz'.
|
||||
}
|
||||
17
tests/baselines/reference/generatorTypeCheck18.js
Normal file
17
tests/baselines/reference/generatorTypeCheck18.js
Normal file
@@ -0,0 +1,17 @@
|
||||
//// [generatorTypeCheck18.ts]
|
||||
class Foo { x: number }
|
||||
class Baz { z: number }
|
||||
function* g(): IterableIterator<Foo> {
|
||||
yield;
|
||||
yield new Baz;
|
||||
}
|
||||
|
||||
//// [generatorTypeCheck18.js]
|
||||
class Foo {
|
||||
}
|
||||
class Baz {
|
||||
}
|
||||
function* g() {
|
||||
yield;
|
||||
yield new Baz;
|
||||
}
|
||||
17
tests/baselines/reference/generatorTypeCheck19.js
Normal file
17
tests/baselines/reference/generatorTypeCheck19.js
Normal file
@@ -0,0 +1,17 @@
|
||||
//// [generatorTypeCheck19.ts]
|
||||
class Foo { x: number }
|
||||
class Bar extends Foo { y: string }
|
||||
function* g(): IterableIterator<Foo> {
|
||||
yield;
|
||||
yield * [new Bar];
|
||||
}
|
||||
|
||||
//// [generatorTypeCheck19.js]
|
||||
class Foo {
|
||||
}
|
||||
class Bar extends Foo {
|
||||
}
|
||||
function* g() {
|
||||
yield;
|
||||
yield* [new Bar];
|
||||
}
|
||||
19
tests/baselines/reference/generatorTypeCheck19.symbols
Normal file
19
tests/baselines/reference/generatorTypeCheck19.symbols
Normal file
@@ -0,0 +1,19 @@
|
||||
=== tests/cases/conformance/es6/yieldExpressions/generatorTypeCheck19.ts ===
|
||||
class Foo { x: number }
|
||||
>Foo : Symbol(Foo, Decl(generatorTypeCheck19.ts, 0, 0))
|
||||
>x : Symbol(x, Decl(generatorTypeCheck19.ts, 0, 11))
|
||||
|
||||
class Bar extends Foo { y: string }
|
||||
>Bar : Symbol(Bar, Decl(generatorTypeCheck19.ts, 0, 23))
|
||||
>Foo : Symbol(Foo, Decl(generatorTypeCheck19.ts, 0, 0))
|
||||
>y : Symbol(y, Decl(generatorTypeCheck19.ts, 1, 23))
|
||||
|
||||
function* g(): IterableIterator<Foo> {
|
||||
>g : Symbol(g, Decl(generatorTypeCheck19.ts, 1, 35))
|
||||
>IterableIterator : Symbol(IterableIterator, Decl(lib.d.ts, 1667, 1))
|
||||
>Foo : Symbol(Foo, Decl(generatorTypeCheck19.ts, 0, 0))
|
||||
|
||||
yield;
|
||||
yield * [new Bar];
|
||||
>Bar : Symbol(Bar, Decl(generatorTypeCheck19.ts, 0, 23))
|
||||
}
|
||||
24
tests/baselines/reference/generatorTypeCheck19.types
Normal file
24
tests/baselines/reference/generatorTypeCheck19.types
Normal file
@@ -0,0 +1,24 @@
|
||||
=== tests/cases/conformance/es6/yieldExpressions/generatorTypeCheck19.ts ===
|
||||
class Foo { x: number }
|
||||
>Foo : Foo
|
||||
>x : number
|
||||
|
||||
class Bar extends Foo { y: string }
|
||||
>Bar : Bar
|
||||
>Foo : Foo
|
||||
>y : string
|
||||
|
||||
function* g(): IterableIterator<Foo> {
|
||||
>g : () => IterableIterator<Foo>
|
||||
>IterableIterator : IterableIterator<T>
|
||||
>Foo : Foo
|
||||
|
||||
yield;
|
||||
>yield : any
|
||||
|
||||
yield * [new Bar];
|
||||
>yield * [new Bar] : any
|
||||
>[new Bar] : Bar[]
|
||||
>new Bar : Bar
|
||||
>Bar : typeof Bar
|
||||
}
|
||||
5
tests/baselines/reference/generatorTypeCheck2.js
Normal file
5
tests/baselines/reference/generatorTypeCheck2.js
Normal file
@@ -0,0 +1,5 @@
|
||||
//// [generatorTypeCheck2.ts]
|
||||
function* g1(): Iterable<string> { }
|
||||
|
||||
//// [generatorTypeCheck2.js]
|
||||
function* g1() { }
|
||||
5
tests/baselines/reference/generatorTypeCheck2.symbols
Normal file
5
tests/baselines/reference/generatorTypeCheck2.symbols
Normal file
@@ -0,0 +1,5 @@
|
||||
=== tests/cases/conformance/es6/yieldExpressions/generatorTypeCheck2.ts ===
|
||||
function* g1(): Iterable<string> { }
|
||||
>g1 : Symbol(g1, Decl(generatorTypeCheck2.ts, 0, 0))
|
||||
>Iterable : Symbol(Iterable, Decl(lib.d.ts, 1663, 1))
|
||||
|
||||
5
tests/baselines/reference/generatorTypeCheck2.types
Normal file
5
tests/baselines/reference/generatorTypeCheck2.types
Normal file
@@ -0,0 +1,5 @@
|
||||
=== tests/cases/conformance/es6/yieldExpressions/generatorTypeCheck2.ts ===
|
||||
function* g1(): Iterable<string> { }
|
||||
>g1 : () => Iterable<string>
|
||||
>Iterable : Iterable<T>
|
||||
|
||||
14
tests/baselines/reference/generatorTypeCheck20.errors.txt
Normal file
14
tests/baselines/reference/generatorTypeCheck20.errors.txt
Normal file
@@ -0,0 +1,14 @@
|
||||
tests/cases/conformance/es6/yieldExpressions/generatorTypeCheck20.ts(5,13): error TS2322: Type 'Baz' is not assignable to type 'Foo'.
|
||||
Property 'x' is missing in type 'Baz'.
|
||||
|
||||
|
||||
==== tests/cases/conformance/es6/yieldExpressions/generatorTypeCheck20.ts (1 errors) ====
|
||||
class Foo { x: number }
|
||||
class Baz { z: number }
|
||||
function* g(): IterableIterator<Foo> {
|
||||
yield;
|
||||
yield * [new Baz];
|
||||
~~~~~~~~~
|
||||
!!! error TS2322: Type 'Baz' is not assignable to type 'Foo'.
|
||||
!!! error TS2322: Property 'x' is missing in type 'Baz'.
|
||||
}
|
||||
17
tests/baselines/reference/generatorTypeCheck20.js
Normal file
17
tests/baselines/reference/generatorTypeCheck20.js
Normal file
@@ -0,0 +1,17 @@
|
||||
//// [generatorTypeCheck20.ts]
|
||||
class Foo { x: number }
|
||||
class Baz { z: number }
|
||||
function* g(): IterableIterator<Foo> {
|
||||
yield;
|
||||
yield * [new Baz];
|
||||
}
|
||||
|
||||
//// [generatorTypeCheck20.js]
|
||||
class Foo {
|
||||
}
|
||||
class Baz {
|
||||
}
|
||||
function* g() {
|
||||
yield;
|
||||
yield* [new Baz];
|
||||
}
|
||||
12
tests/baselines/reference/generatorTypeCheck21.errors.txt
Normal file
12
tests/baselines/reference/generatorTypeCheck21.errors.txt
Normal file
@@ -0,0 +1,12 @@
|
||||
tests/cases/conformance/es6/yieldExpressions/generatorTypeCheck21.ts(5,13): error TS2488: Type must have a '[Symbol.iterator]()' method that returns an iterator.
|
||||
|
||||
|
||||
==== tests/cases/conformance/es6/yieldExpressions/generatorTypeCheck21.ts (1 errors) ====
|
||||
class Foo { x: number }
|
||||
class Bar extends Foo { y: string }
|
||||
function* g(): IterableIterator<Foo> {
|
||||
yield;
|
||||
yield * new Bar;
|
||||
~~~~~~~
|
||||
!!! error TS2488: Type must have a '[Symbol.iterator]()' method that returns an iterator.
|
||||
}
|
||||
17
tests/baselines/reference/generatorTypeCheck21.js
Normal file
17
tests/baselines/reference/generatorTypeCheck21.js
Normal file
@@ -0,0 +1,17 @@
|
||||
//// [generatorTypeCheck21.ts]
|
||||
class Foo { x: number }
|
||||
class Bar extends Foo { y: string }
|
||||
function* g(): IterableIterator<Foo> {
|
||||
yield;
|
||||
yield * new Bar;
|
||||
}
|
||||
|
||||
//// [generatorTypeCheck21.js]
|
||||
class Foo {
|
||||
}
|
||||
class Bar extends Foo {
|
||||
}
|
||||
function* g() {
|
||||
yield;
|
||||
yield* new Bar;
|
||||
}
|
||||
26
tests/baselines/reference/generatorTypeCheck22.js
Normal file
26
tests/baselines/reference/generatorTypeCheck22.js
Normal file
@@ -0,0 +1,26 @@
|
||||
//// [generatorTypeCheck22.ts]
|
||||
class Foo { x: number }
|
||||
class Bar extends Foo { y: string }
|
||||
class Baz { z: number }
|
||||
function* g3() {
|
||||
yield;
|
||||
yield new Bar;
|
||||
yield new Baz;
|
||||
yield *[new Bar];
|
||||
yield *[new Baz];
|
||||
}
|
||||
|
||||
//// [generatorTypeCheck22.js]
|
||||
class Foo {
|
||||
}
|
||||
class Bar extends Foo {
|
||||
}
|
||||
class Baz {
|
||||
}
|
||||
function* g3() {
|
||||
yield;
|
||||
yield new Bar;
|
||||
yield new Baz;
|
||||
yield* [new Bar];
|
||||
yield* [new Baz];
|
||||
}
|
||||
30
tests/baselines/reference/generatorTypeCheck22.symbols
Normal file
30
tests/baselines/reference/generatorTypeCheck22.symbols
Normal file
@@ -0,0 +1,30 @@
|
||||
=== tests/cases/conformance/es6/yieldExpressions/generatorTypeCheck22.ts ===
|
||||
class Foo { x: number }
|
||||
>Foo : Symbol(Foo, Decl(generatorTypeCheck22.ts, 0, 0))
|
||||
>x : Symbol(x, Decl(generatorTypeCheck22.ts, 0, 11))
|
||||
|
||||
class Bar extends Foo { y: string }
|
||||
>Bar : Symbol(Bar, Decl(generatorTypeCheck22.ts, 0, 23))
|
||||
>Foo : Symbol(Foo, Decl(generatorTypeCheck22.ts, 0, 0))
|
||||
>y : Symbol(y, Decl(generatorTypeCheck22.ts, 1, 23))
|
||||
|
||||
class Baz { z: number }
|
||||
>Baz : Symbol(Baz, Decl(generatorTypeCheck22.ts, 1, 35))
|
||||
>z : Symbol(z, Decl(generatorTypeCheck22.ts, 2, 11))
|
||||
|
||||
function* g3() {
|
||||
>g3 : Symbol(g3, Decl(generatorTypeCheck22.ts, 2, 23))
|
||||
|
||||
yield;
|
||||
yield new Bar;
|
||||
>Bar : Symbol(Bar, Decl(generatorTypeCheck22.ts, 0, 23))
|
||||
|
||||
yield new Baz;
|
||||
>Baz : Symbol(Baz, Decl(generatorTypeCheck22.ts, 1, 35))
|
||||
|
||||
yield *[new Bar];
|
||||
>Bar : Symbol(Bar, Decl(generatorTypeCheck22.ts, 0, 23))
|
||||
|
||||
yield *[new Baz];
|
||||
>Baz : Symbol(Baz, Decl(generatorTypeCheck22.ts, 1, 35))
|
||||
}
|
||||
42
tests/baselines/reference/generatorTypeCheck22.types
Normal file
42
tests/baselines/reference/generatorTypeCheck22.types
Normal file
@@ -0,0 +1,42 @@
|
||||
=== tests/cases/conformance/es6/yieldExpressions/generatorTypeCheck22.ts ===
|
||||
class Foo { x: number }
|
||||
>Foo : Foo
|
||||
>x : number
|
||||
|
||||
class Bar extends Foo { y: string }
|
||||
>Bar : Bar
|
||||
>Foo : Foo
|
||||
>y : string
|
||||
|
||||
class Baz { z: number }
|
||||
>Baz : Baz
|
||||
>z : number
|
||||
|
||||
function* g3() {
|
||||
>g3 : () => IterableIterator<any>
|
||||
|
||||
yield;
|
||||
>yield : any
|
||||
|
||||
yield new Bar;
|
||||
>yield new Bar : any
|
||||
>new Bar : Bar
|
||||
>Bar : typeof Bar
|
||||
|
||||
yield new Baz;
|
||||
>yield new Baz : any
|
||||
>new Baz : Baz
|
||||
>Baz : typeof Baz
|
||||
|
||||
yield *[new Bar];
|
||||
>yield *[new Bar] : any
|
||||
>[new Bar] : Bar[]
|
||||
>new Bar : Bar
|
||||
>Bar : typeof Bar
|
||||
|
||||
yield *[new Baz];
|
||||
>yield *[new Baz] : any
|
||||
>[new Baz] : Baz[]
|
||||
>new Baz : Baz
|
||||
>Baz : typeof Baz
|
||||
}
|
||||
28
tests/baselines/reference/generatorTypeCheck23.js
Normal file
28
tests/baselines/reference/generatorTypeCheck23.js
Normal file
@@ -0,0 +1,28 @@
|
||||
//// [generatorTypeCheck23.ts]
|
||||
class Foo { x: number }
|
||||
class Bar extends Foo { y: string }
|
||||
class Baz { z: number }
|
||||
function* g3() {
|
||||
yield;
|
||||
yield new Foo;
|
||||
yield new Bar;
|
||||
yield new Baz;
|
||||
yield *[new Bar];
|
||||
yield *[new Baz];
|
||||
}
|
||||
|
||||
//// [generatorTypeCheck23.js]
|
||||
class Foo {
|
||||
}
|
||||
class Bar extends Foo {
|
||||
}
|
||||
class Baz {
|
||||
}
|
||||
function* g3() {
|
||||
yield;
|
||||
yield new Foo;
|
||||
yield new Bar;
|
||||
yield new Baz;
|
||||
yield* [new Bar];
|
||||
yield* [new Baz];
|
||||
}
|
||||
33
tests/baselines/reference/generatorTypeCheck23.symbols
Normal file
33
tests/baselines/reference/generatorTypeCheck23.symbols
Normal file
@@ -0,0 +1,33 @@
|
||||
=== tests/cases/conformance/es6/yieldExpressions/generatorTypeCheck23.ts ===
|
||||
class Foo { x: number }
|
||||
>Foo : Symbol(Foo, Decl(generatorTypeCheck23.ts, 0, 0))
|
||||
>x : Symbol(x, Decl(generatorTypeCheck23.ts, 0, 11))
|
||||
|
||||
class Bar extends Foo { y: string }
|
||||
>Bar : Symbol(Bar, Decl(generatorTypeCheck23.ts, 0, 23))
|
||||
>Foo : Symbol(Foo, Decl(generatorTypeCheck23.ts, 0, 0))
|
||||
>y : Symbol(y, Decl(generatorTypeCheck23.ts, 1, 23))
|
||||
|
||||
class Baz { z: number }
|
||||
>Baz : Symbol(Baz, Decl(generatorTypeCheck23.ts, 1, 35))
|
||||
>z : Symbol(z, Decl(generatorTypeCheck23.ts, 2, 11))
|
||||
|
||||
function* g3() {
|
||||
>g3 : Symbol(g3, Decl(generatorTypeCheck23.ts, 2, 23))
|
||||
|
||||
yield;
|
||||
yield new Foo;
|
||||
>Foo : Symbol(Foo, Decl(generatorTypeCheck23.ts, 0, 0))
|
||||
|
||||
yield new Bar;
|
||||
>Bar : Symbol(Bar, Decl(generatorTypeCheck23.ts, 0, 23))
|
||||
|
||||
yield new Baz;
|
||||
>Baz : Symbol(Baz, Decl(generatorTypeCheck23.ts, 1, 35))
|
||||
|
||||
yield *[new Bar];
|
||||
>Bar : Symbol(Bar, Decl(generatorTypeCheck23.ts, 0, 23))
|
||||
|
||||
yield *[new Baz];
|
||||
>Baz : Symbol(Baz, Decl(generatorTypeCheck23.ts, 1, 35))
|
||||
}
|
||||
47
tests/baselines/reference/generatorTypeCheck23.types
Normal file
47
tests/baselines/reference/generatorTypeCheck23.types
Normal file
@@ -0,0 +1,47 @@
|
||||
=== tests/cases/conformance/es6/yieldExpressions/generatorTypeCheck23.ts ===
|
||||
class Foo { x: number }
|
||||
>Foo : Foo
|
||||
>x : number
|
||||
|
||||
class Bar extends Foo { y: string }
|
||||
>Bar : Bar
|
||||
>Foo : Foo
|
||||
>y : string
|
||||
|
||||
class Baz { z: number }
|
||||
>Baz : Baz
|
||||
>z : number
|
||||
|
||||
function* g3() {
|
||||
>g3 : () => IterableIterator<any>
|
||||
|
||||
yield;
|
||||
>yield : any
|
||||
|
||||
yield new Foo;
|
||||
>yield new Foo : any
|
||||
>new Foo : Foo
|
||||
>Foo : typeof Foo
|
||||
|
||||
yield new Bar;
|
||||
>yield new Bar : any
|
||||
>new Bar : Bar
|
||||
>Bar : typeof Bar
|
||||
|
||||
yield new Baz;
|
||||
>yield new Baz : any
|
||||
>new Baz : Baz
|
||||
>Baz : typeof Baz
|
||||
|
||||
yield *[new Bar];
|
||||
>yield *[new Bar] : any
|
||||
>[new Bar] : Bar[]
|
||||
>new Bar : Bar
|
||||
>Bar : typeof Bar
|
||||
|
||||
yield *[new Baz];
|
||||
>yield *[new Baz] : any
|
||||
>[new Baz] : Baz[]
|
||||
>new Baz : Baz
|
||||
>Baz : typeof Baz
|
||||
}
|
||||
28
tests/baselines/reference/generatorTypeCheck24.js
Normal file
28
tests/baselines/reference/generatorTypeCheck24.js
Normal file
@@ -0,0 +1,28 @@
|
||||
//// [generatorTypeCheck24.ts]
|
||||
class Foo { x: number }
|
||||
class Bar extends Foo { y: string }
|
||||
class Baz { z: number }
|
||||
function* g3() {
|
||||
yield;
|
||||
yield * [new Foo];
|
||||
yield new Bar;
|
||||
yield new Baz;
|
||||
yield *[new Bar];
|
||||
yield *[new Baz];
|
||||
}
|
||||
|
||||
//// [generatorTypeCheck24.js]
|
||||
class Foo {
|
||||
}
|
||||
class Bar extends Foo {
|
||||
}
|
||||
class Baz {
|
||||
}
|
||||
function* g3() {
|
||||
yield;
|
||||
yield* [new Foo];
|
||||
yield new Bar;
|
||||
yield new Baz;
|
||||
yield* [new Bar];
|
||||
yield* [new Baz];
|
||||
}
|
||||
33
tests/baselines/reference/generatorTypeCheck24.symbols
Normal file
33
tests/baselines/reference/generatorTypeCheck24.symbols
Normal file
@@ -0,0 +1,33 @@
|
||||
=== tests/cases/conformance/es6/yieldExpressions/generatorTypeCheck24.ts ===
|
||||
class Foo { x: number }
|
||||
>Foo : Symbol(Foo, Decl(generatorTypeCheck24.ts, 0, 0))
|
||||
>x : Symbol(x, Decl(generatorTypeCheck24.ts, 0, 11))
|
||||
|
||||
class Bar extends Foo { y: string }
|
||||
>Bar : Symbol(Bar, Decl(generatorTypeCheck24.ts, 0, 23))
|
||||
>Foo : Symbol(Foo, Decl(generatorTypeCheck24.ts, 0, 0))
|
||||
>y : Symbol(y, Decl(generatorTypeCheck24.ts, 1, 23))
|
||||
|
||||
class Baz { z: number }
|
||||
>Baz : Symbol(Baz, Decl(generatorTypeCheck24.ts, 1, 35))
|
||||
>z : Symbol(z, Decl(generatorTypeCheck24.ts, 2, 11))
|
||||
|
||||
function* g3() {
|
||||
>g3 : Symbol(g3, Decl(generatorTypeCheck24.ts, 2, 23))
|
||||
|
||||
yield;
|
||||
yield * [new Foo];
|
||||
>Foo : Symbol(Foo, Decl(generatorTypeCheck24.ts, 0, 0))
|
||||
|
||||
yield new Bar;
|
||||
>Bar : Symbol(Bar, Decl(generatorTypeCheck24.ts, 0, 23))
|
||||
|
||||
yield new Baz;
|
||||
>Baz : Symbol(Baz, Decl(generatorTypeCheck24.ts, 1, 35))
|
||||
|
||||
yield *[new Bar];
|
||||
>Bar : Symbol(Bar, Decl(generatorTypeCheck24.ts, 0, 23))
|
||||
|
||||
yield *[new Baz];
|
||||
>Baz : Symbol(Baz, Decl(generatorTypeCheck24.ts, 1, 35))
|
||||
}
|
||||
48
tests/baselines/reference/generatorTypeCheck24.types
Normal file
48
tests/baselines/reference/generatorTypeCheck24.types
Normal file
@@ -0,0 +1,48 @@
|
||||
=== tests/cases/conformance/es6/yieldExpressions/generatorTypeCheck24.ts ===
|
||||
class Foo { x: number }
|
||||
>Foo : Foo
|
||||
>x : number
|
||||
|
||||
class Bar extends Foo { y: string }
|
||||
>Bar : Bar
|
||||
>Foo : Foo
|
||||
>y : string
|
||||
|
||||
class Baz { z: number }
|
||||
>Baz : Baz
|
||||
>z : number
|
||||
|
||||
function* g3() {
|
||||
>g3 : () => IterableIterator<any>
|
||||
|
||||
yield;
|
||||
>yield : any
|
||||
|
||||
yield * [new Foo];
|
||||
>yield * [new Foo] : any
|
||||
>[new Foo] : Foo[]
|
||||
>new Foo : Foo
|
||||
>Foo : typeof Foo
|
||||
|
||||
yield new Bar;
|
||||
>yield new Bar : any
|
||||
>new Bar : Bar
|
||||
>Bar : typeof Bar
|
||||
|
||||
yield new Baz;
|
||||
>yield new Baz : any
|
||||
>new Baz : Baz
|
||||
>Baz : typeof Baz
|
||||
|
||||
yield *[new Bar];
|
||||
>yield *[new Bar] : any
|
||||
>[new Bar] : Bar[]
|
||||
>new Bar : Bar
|
||||
>Bar : typeof Bar
|
||||
|
||||
yield *[new Baz];
|
||||
>yield *[new Baz] : any
|
||||
>[new Baz] : Baz[]
|
||||
>new Baz : Baz
|
||||
>Baz : typeof Baz
|
||||
}
|
||||
36
tests/baselines/reference/generatorTypeCheck25.errors.txt
Normal file
36
tests/baselines/reference/generatorTypeCheck25.errors.txt
Normal file
@@ -0,0 +1,36 @@
|
||||
tests/cases/conformance/es6/yieldExpressions/generatorTypeCheck25.ts(4,5): error TS2322: Type '() => IterableIterator<Bar | Baz>' is not assignable to type '() => Iterable<Foo>'.
|
||||
Type 'IterableIterator<Bar | Baz>' is not assignable to type 'Iterable<Foo>'.
|
||||
Types of property '[Symbol.iterator]' are incompatible.
|
||||
Type '() => IterableIterator<Bar | Baz>' is not assignable to type '() => Iterator<Foo>'.
|
||||
Type 'IterableIterator<Bar | Baz>' is not assignable to type 'Iterator<Foo>'.
|
||||
Types of property 'next' are incompatible.
|
||||
Type '(value?: any) => IteratorResult<Bar | Baz>' is not assignable to type '(value?: any) => IteratorResult<Foo>'.
|
||||
Type 'IteratorResult<Bar | Baz>' is not assignable to type 'IteratorResult<Foo>'.
|
||||
Type 'Bar | Baz' is not assignable to type 'Foo'.
|
||||
Type 'Baz' is not assignable to type 'Foo'.
|
||||
Property 'x' is missing in type 'Baz'.
|
||||
|
||||
|
||||
==== tests/cases/conformance/es6/yieldExpressions/generatorTypeCheck25.ts (1 errors) ====
|
||||
class Foo { x: number }
|
||||
class Bar extends Foo { y: string }
|
||||
class Baz { z: number }
|
||||
var g3: () => Iterable<Foo> = function* () {
|
||||
~~
|
||||
!!! error TS2322: Type '() => IterableIterator<Bar | Baz>' is not assignable to type '() => Iterable<Foo>'.
|
||||
!!! error TS2322: Type 'IterableIterator<Bar | Baz>' is not assignable to type 'Iterable<Foo>'.
|
||||
!!! error TS2322: Types of property '[Symbol.iterator]' are incompatible.
|
||||
!!! error TS2322: Type '() => IterableIterator<Bar | Baz>' is not assignable to type '() => Iterator<Foo>'.
|
||||
!!! error TS2322: Type 'IterableIterator<Bar | Baz>' is not assignable to type 'Iterator<Foo>'.
|
||||
!!! error TS2322: Types of property 'next' are incompatible.
|
||||
!!! error TS2322: Type '(value?: any) => IteratorResult<Bar | Baz>' is not assignable to type '(value?: any) => IteratorResult<Foo>'.
|
||||
!!! error TS2322: Type 'IteratorResult<Bar | Baz>' is not assignable to type 'IteratorResult<Foo>'.
|
||||
!!! error TS2322: Type 'Bar | Baz' is not assignable to type 'Foo'.
|
||||
!!! error TS2322: Type 'Baz' is not assignable to type 'Foo'.
|
||||
!!! error TS2322: Property 'x' is missing in type 'Baz'.
|
||||
yield;
|
||||
yield new Bar;
|
||||
yield new Baz;
|
||||
yield *[new Bar];
|
||||
yield *[new Baz];
|
||||
}
|
||||
26
tests/baselines/reference/generatorTypeCheck25.js
Normal file
26
tests/baselines/reference/generatorTypeCheck25.js
Normal file
@@ -0,0 +1,26 @@
|
||||
//// [generatorTypeCheck25.ts]
|
||||
class Foo { x: number }
|
||||
class Bar extends Foo { y: string }
|
||||
class Baz { z: number }
|
||||
var g3: () => Iterable<Foo> = function* () {
|
||||
yield;
|
||||
yield new Bar;
|
||||
yield new Baz;
|
||||
yield *[new Bar];
|
||||
yield *[new Baz];
|
||||
}
|
||||
|
||||
//// [generatorTypeCheck25.js]
|
||||
class Foo {
|
||||
}
|
||||
class Bar extends Foo {
|
||||
}
|
||||
class Baz {
|
||||
}
|
||||
var g3 = function* () {
|
||||
yield;
|
||||
yield new Bar;
|
||||
yield new Baz;
|
||||
yield* [new Bar];
|
||||
yield* [new Baz];
|
||||
};
|
||||
13
tests/baselines/reference/generatorTypeCheck26.js
Normal file
13
tests/baselines/reference/generatorTypeCheck26.js
Normal file
@@ -0,0 +1,13 @@
|
||||
//// [generatorTypeCheck26.ts]
|
||||
function* g(): IterableIterator<(x: string) => number> {
|
||||
yield x => x.length;
|
||||
yield *[x => x.length];
|
||||
return x => x.length;
|
||||
}
|
||||
|
||||
//// [generatorTypeCheck26.js]
|
||||
function* g() {
|
||||
yield x => x.length;
|
||||
yield* [x => x.length];
|
||||
return x => x.length;
|
||||
}
|
||||
22
tests/baselines/reference/generatorTypeCheck26.symbols
Normal file
22
tests/baselines/reference/generatorTypeCheck26.symbols
Normal file
@@ -0,0 +1,22 @@
|
||||
=== tests/cases/conformance/es6/yieldExpressions/generatorTypeCheck26.ts ===
|
||||
function* g(): IterableIterator<(x: string) => number> {
|
||||
>g : Symbol(g, Decl(generatorTypeCheck26.ts, 0, 0))
|
||||
>IterableIterator : Symbol(IterableIterator, Decl(lib.d.ts, 1667, 1))
|
||||
>x : Symbol(x, Decl(generatorTypeCheck26.ts, 0, 33))
|
||||
|
||||
yield x => x.length;
|
||||
>x : Symbol(x, Decl(generatorTypeCheck26.ts, 1, 9))
|
||||
>x.length : Symbol(String.length, Decl(lib.d.ts, 414, 19))
|
||||
>x : Symbol(x, Decl(generatorTypeCheck26.ts, 1, 9))
|
||||
>length : Symbol(String.length, Decl(lib.d.ts, 414, 19))
|
||||
|
||||
yield *[x => x.length];
|
||||
>x : Symbol(x, Decl(generatorTypeCheck26.ts, 2, 12))
|
||||
>x.length : Symbol(String.length, Decl(lib.d.ts, 414, 19))
|
||||
>x : Symbol(x, Decl(generatorTypeCheck26.ts, 2, 12))
|
||||
>length : Symbol(String.length, Decl(lib.d.ts, 414, 19))
|
||||
|
||||
return x => x.length;
|
||||
>x : Symbol(x, Decl(generatorTypeCheck26.ts, 3, 10))
|
||||
>x : Symbol(x, Decl(generatorTypeCheck26.ts, 3, 10))
|
||||
}
|
||||
30
tests/baselines/reference/generatorTypeCheck26.types
Normal file
30
tests/baselines/reference/generatorTypeCheck26.types
Normal file
@@ -0,0 +1,30 @@
|
||||
=== tests/cases/conformance/es6/yieldExpressions/generatorTypeCheck26.ts ===
|
||||
function* g(): IterableIterator<(x: string) => number> {
|
||||
>g : () => IterableIterator<(x: string) => number>
|
||||
>IterableIterator : IterableIterator<T>
|
||||
>x : string
|
||||
|
||||
yield x => x.length;
|
||||
>yield x => x.length : any
|
||||
>x => x.length : (x: string) => number
|
||||
>x : string
|
||||
>x.length : number
|
||||
>x : string
|
||||
>length : number
|
||||
|
||||
yield *[x => x.length];
|
||||
>yield *[x => x.length] : any
|
||||
>[x => x.length] : ((x: string) => number)[]
|
||||
>x => x.length : (x: string) => number
|
||||
>x : string
|
||||
>x.length : number
|
||||
>x : string
|
||||
>length : number
|
||||
|
||||
return x => x.length;
|
||||
>x => x.length : (x: any) => any
|
||||
>x : any
|
||||
>x.length : any
|
||||
>x : any
|
||||
>length : any
|
||||
}
|
||||
13
tests/baselines/reference/generatorTypeCheck27.js
Normal file
13
tests/baselines/reference/generatorTypeCheck27.js
Normal file
@@ -0,0 +1,13 @@
|
||||
//// [generatorTypeCheck27.ts]
|
||||
function* g(): IterableIterator<(x: string) => number> {
|
||||
yield * function* () {
|
||||
yield x => x.length;
|
||||
} ();
|
||||
}
|
||||
|
||||
//// [generatorTypeCheck27.js]
|
||||
function* g() {
|
||||
yield* function* () {
|
||||
yield x => x.length;
|
||||
}();
|
||||
}
|
||||
13
tests/baselines/reference/generatorTypeCheck27.symbols
Normal file
13
tests/baselines/reference/generatorTypeCheck27.symbols
Normal file
@@ -0,0 +1,13 @@
|
||||
=== tests/cases/conformance/es6/yieldExpressions/generatorTypeCheck27.ts ===
|
||||
function* g(): IterableIterator<(x: string) => number> {
|
||||
>g : Symbol(g, Decl(generatorTypeCheck27.ts, 0, 0))
|
||||
>IterableIterator : Symbol(IterableIterator, Decl(lib.d.ts, 1667, 1))
|
||||
>x : Symbol(x, Decl(generatorTypeCheck27.ts, 0, 33))
|
||||
|
||||
yield * function* () {
|
||||
yield x => x.length;
|
||||
>x : Symbol(x, Decl(generatorTypeCheck27.ts, 2, 13))
|
||||
>x : Symbol(x, Decl(generatorTypeCheck27.ts, 2, 13))
|
||||
|
||||
} ();
|
||||
}
|
||||
21
tests/baselines/reference/generatorTypeCheck27.types
Normal file
21
tests/baselines/reference/generatorTypeCheck27.types
Normal file
@@ -0,0 +1,21 @@
|
||||
=== tests/cases/conformance/es6/yieldExpressions/generatorTypeCheck27.ts ===
|
||||
function* g(): IterableIterator<(x: string) => number> {
|
||||
>g : () => IterableIterator<(x: string) => number>
|
||||
>IterableIterator : IterableIterator<T>
|
||||
>x : string
|
||||
|
||||
yield * function* () {
|
||||
>yield * function* () { yield x => x.length; } () : any
|
||||
>function* () { yield x => x.length; } () : IterableIterator<(x: any) => any>
|
||||
>function* () { yield x => x.length; } : () => IterableIterator<(x: any) => any>
|
||||
|
||||
yield x => x.length;
|
||||
>yield x => x.length : any
|
||||
>x => x.length : (x: any) => any
|
||||
>x : any
|
||||
>x.length : any
|
||||
>x : any
|
||||
>length : any
|
||||
|
||||
} ();
|
||||
}
|
||||
17
tests/baselines/reference/generatorTypeCheck28.js
Normal file
17
tests/baselines/reference/generatorTypeCheck28.js
Normal file
@@ -0,0 +1,17 @@
|
||||
//// [generatorTypeCheck28.ts]
|
||||
function* g(): IterableIterator<(x: string) => number> {
|
||||
yield * {
|
||||
*[Symbol.iterator]() {
|
||||
yield x => x.length;
|
||||
}
|
||||
};
|
||||
}
|
||||
|
||||
//// [generatorTypeCheck28.js]
|
||||
function* g() {
|
||||
yield* {
|
||||
*[Symbol.iterator]() {
|
||||
yield x => x.length;
|
||||
}
|
||||
};
|
||||
}
|
||||
20
tests/baselines/reference/generatorTypeCheck28.symbols
Normal file
20
tests/baselines/reference/generatorTypeCheck28.symbols
Normal file
@@ -0,0 +1,20 @@
|
||||
=== tests/cases/conformance/es6/yieldExpressions/generatorTypeCheck28.ts ===
|
||||
function* g(): IterableIterator<(x: string) => number> {
|
||||
>g : Symbol(g, Decl(generatorTypeCheck28.ts, 0, 0))
|
||||
>IterableIterator : Symbol(IterableIterator, Decl(lib.d.ts, 1667, 1))
|
||||
>x : Symbol(x, Decl(generatorTypeCheck28.ts, 0, 33))
|
||||
|
||||
yield * {
|
||||
*[Symbol.iterator]() {
|
||||
>Symbol.iterator : Symbol(SymbolConstructor.iterator, Decl(lib.d.ts, 1236, 31))
|
||||
>Symbol : Symbol(Symbol, Decl(lib.d.ts, 1186, 52), Decl(lib.d.ts, 1292, 11))
|
||||
>iterator : Symbol(SymbolConstructor.iterator, Decl(lib.d.ts, 1236, 31))
|
||||
|
||||
yield x => x.length;
|
||||
>x : Symbol(x, Decl(generatorTypeCheck28.ts, 3, 17))
|
||||
>x.length : Symbol(String.length, Decl(lib.d.ts, 414, 19))
|
||||
>x : Symbol(x, Decl(generatorTypeCheck28.ts, 3, 17))
|
||||
>length : Symbol(String.length, Decl(lib.d.ts, 414, 19))
|
||||
}
|
||||
};
|
||||
}
|
||||
25
tests/baselines/reference/generatorTypeCheck28.types
Normal file
25
tests/baselines/reference/generatorTypeCheck28.types
Normal file
@@ -0,0 +1,25 @@
|
||||
=== tests/cases/conformance/es6/yieldExpressions/generatorTypeCheck28.ts ===
|
||||
function* g(): IterableIterator<(x: string) => number> {
|
||||
>g : () => IterableIterator<(x: string) => number>
|
||||
>IterableIterator : IterableIterator<T>
|
||||
>x : string
|
||||
|
||||
yield * {
|
||||
>yield * { *[Symbol.iterator]() { yield x => x.length; } } : any
|
||||
>{ *[Symbol.iterator]() { yield x => x.length; } } : { [Symbol.iterator](): IterableIterator<(x: string) => number>; }
|
||||
|
||||
*[Symbol.iterator]() {
|
||||
>Symbol.iterator : symbol
|
||||
>Symbol : SymbolConstructor
|
||||
>iterator : symbol
|
||||
|
||||
yield x => x.length;
|
||||
>yield x => x.length : any
|
||||
>x => x.length : (x: string) => number
|
||||
>x : string
|
||||
>x.length : number
|
||||
>x : string
|
||||
>length : number
|
||||
}
|
||||
};
|
||||
}
|
||||
13
tests/baselines/reference/generatorTypeCheck29.js
Normal file
13
tests/baselines/reference/generatorTypeCheck29.js
Normal file
@@ -0,0 +1,13 @@
|
||||
//// [generatorTypeCheck29.ts]
|
||||
function* g2(): Iterator<Iterable<(x: string) => number>> {
|
||||
yield function* () {
|
||||
yield x => x.length;
|
||||
} ()
|
||||
}
|
||||
|
||||
//// [generatorTypeCheck29.js]
|
||||
function* g2() {
|
||||
yield function* () {
|
||||
yield x => x.length;
|
||||
}();
|
||||
}
|
||||
14
tests/baselines/reference/generatorTypeCheck29.symbols
Normal file
14
tests/baselines/reference/generatorTypeCheck29.symbols
Normal file
@@ -0,0 +1,14 @@
|
||||
=== tests/cases/conformance/es6/yieldExpressions/generatorTypeCheck29.ts ===
|
||||
function* g2(): Iterator<Iterable<(x: string) => number>> {
|
||||
>g2 : Symbol(g2, Decl(generatorTypeCheck29.ts, 0, 0))
|
||||
>Iterator : Symbol(Iterator, Decl(lib.d.ts, 1657, 1))
|
||||
>Iterable : Symbol(Iterable, Decl(lib.d.ts, 1663, 1))
|
||||
>x : Symbol(x, Decl(generatorTypeCheck29.ts, 0, 35))
|
||||
|
||||
yield function* () {
|
||||
yield x => x.length;
|
||||
>x : Symbol(x, Decl(generatorTypeCheck29.ts, 2, 13))
|
||||
>x : Symbol(x, Decl(generatorTypeCheck29.ts, 2, 13))
|
||||
|
||||
} ()
|
||||
}
|
||||
22
tests/baselines/reference/generatorTypeCheck29.types
Normal file
22
tests/baselines/reference/generatorTypeCheck29.types
Normal file
@@ -0,0 +1,22 @@
|
||||
=== tests/cases/conformance/es6/yieldExpressions/generatorTypeCheck29.ts ===
|
||||
function* g2(): Iterator<Iterable<(x: string) => number>> {
|
||||
>g2 : () => Iterator<Iterable<(x: string) => number>>
|
||||
>Iterator : Iterator<T>
|
||||
>Iterable : Iterable<T>
|
||||
>x : string
|
||||
|
||||
yield function* () {
|
||||
>yield function* () { yield x => x.length; } () : any
|
||||
>function* () { yield x => x.length; } () : IterableIterator<(x: any) => any>
|
||||
>function* () { yield x => x.length; } : () => IterableIterator<(x: any) => any>
|
||||
|
||||
yield x => x.length;
|
||||
>yield x => x.length : any
|
||||
>x => x.length : (x: any) => any
|
||||
>x : any
|
||||
>x.length : any
|
||||
>x : any
|
||||
>length : any
|
||||
|
||||
} ()
|
||||
}
|
||||
5
tests/baselines/reference/generatorTypeCheck3.js
Normal file
5
tests/baselines/reference/generatorTypeCheck3.js
Normal file
@@ -0,0 +1,5 @@
|
||||
//// [generatorTypeCheck3.ts]
|
||||
function* g1(): IterableIterator<string> { }
|
||||
|
||||
//// [generatorTypeCheck3.js]
|
||||
function* g1() { }
|
||||
5
tests/baselines/reference/generatorTypeCheck3.symbols
Normal file
5
tests/baselines/reference/generatorTypeCheck3.symbols
Normal file
@@ -0,0 +1,5 @@
|
||||
=== tests/cases/conformance/es6/yieldExpressions/generatorTypeCheck3.ts ===
|
||||
function* g1(): IterableIterator<string> { }
|
||||
>g1 : Symbol(g1, Decl(generatorTypeCheck3.ts, 0, 0))
|
||||
>IterableIterator : Symbol(IterableIterator, Decl(lib.d.ts, 1667, 1))
|
||||
|
||||
5
tests/baselines/reference/generatorTypeCheck3.types
Normal file
5
tests/baselines/reference/generatorTypeCheck3.types
Normal file
@@ -0,0 +1,5 @@
|
||||
=== tests/cases/conformance/es6/yieldExpressions/generatorTypeCheck3.ts ===
|
||||
function* g1(): IterableIterator<string> { }
|
||||
>g1 : () => IterableIterator<string>
|
||||
>IterableIterator : IterableIterator<T>
|
||||
|
||||
13
tests/baselines/reference/generatorTypeCheck30.js
Normal file
13
tests/baselines/reference/generatorTypeCheck30.js
Normal file
@@ -0,0 +1,13 @@
|
||||
//// [generatorTypeCheck30.ts]
|
||||
function* g2(): Iterator<Iterable<(x: string) => number>> {
|
||||
yield function* () {
|
||||
yield x => x.length;
|
||||
} ()
|
||||
}
|
||||
|
||||
//// [generatorTypeCheck30.js]
|
||||
function* g2() {
|
||||
yield function* () {
|
||||
yield x => x.length;
|
||||
}();
|
||||
}
|
||||
14
tests/baselines/reference/generatorTypeCheck30.symbols
Normal file
14
tests/baselines/reference/generatorTypeCheck30.symbols
Normal file
@@ -0,0 +1,14 @@
|
||||
=== tests/cases/conformance/es6/yieldExpressions/generatorTypeCheck30.ts ===
|
||||
function* g2(): Iterator<Iterable<(x: string) => number>> {
|
||||
>g2 : Symbol(g2, Decl(generatorTypeCheck30.ts, 0, 0))
|
||||
>Iterator : Symbol(Iterator, Decl(lib.d.ts, 1657, 1))
|
||||
>Iterable : Symbol(Iterable, Decl(lib.d.ts, 1663, 1))
|
||||
>x : Symbol(x, Decl(generatorTypeCheck30.ts, 0, 35))
|
||||
|
||||
yield function* () {
|
||||
yield x => x.length;
|
||||
>x : Symbol(x, Decl(generatorTypeCheck30.ts, 2, 13))
|
||||
>x : Symbol(x, Decl(generatorTypeCheck30.ts, 2, 13))
|
||||
|
||||
} ()
|
||||
}
|
||||
22
tests/baselines/reference/generatorTypeCheck30.types
Normal file
22
tests/baselines/reference/generatorTypeCheck30.types
Normal file
@@ -0,0 +1,22 @@
|
||||
=== tests/cases/conformance/es6/yieldExpressions/generatorTypeCheck30.ts ===
|
||||
function* g2(): Iterator<Iterable<(x: string) => number>> {
|
||||
>g2 : () => Iterator<Iterable<(x: string) => number>>
|
||||
>Iterator : Iterator<T>
|
||||
>Iterable : Iterable<T>
|
||||
>x : string
|
||||
|
||||
yield function* () {
|
||||
>yield function* () { yield x => x.length; } () : any
|
||||
>function* () { yield x => x.length; } () : IterableIterator<(x: any) => any>
|
||||
>function* () { yield x => x.length; } : () => IterableIterator<(x: any) => any>
|
||||
|
||||
yield x => x.length;
|
||||
>yield x => x.length : any
|
||||
>x => x.length : (x: any) => any
|
||||
>x : any
|
||||
>x.length : any
|
||||
>x : any
|
||||
>length : any
|
||||
|
||||
} ()
|
||||
}
|
||||
13
tests/baselines/reference/generatorTypeCheck31.errors.txt
Normal file
13
tests/baselines/reference/generatorTypeCheck31.errors.txt
Normal file
@@ -0,0 +1,13 @@
|
||||
tests/cases/conformance/es6/yieldExpressions/generatorTypeCheck31.ts(2,11): error TS2322: Type 'IterableIterator<(x: any) => any>' is not assignable to type '() => Iterable<(x: string) => number>'.
|
||||
|
||||
|
||||
==== tests/cases/conformance/es6/yieldExpressions/generatorTypeCheck31.ts (1 errors) ====
|
||||
function* g2(): Iterator<() => Iterable<(x: string) => number>> {
|
||||
yield function* () {
|
||||
~~~~~~~~~~~~~~
|
||||
yield x => x.length;
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
} ()
|
||||
~~~~~~~~
|
||||
!!! error TS2322: Type 'IterableIterator<(x: any) => any>' is not assignable to type '() => Iterable<(x: string) => number>'.
|
||||
}
|
||||
13
tests/baselines/reference/generatorTypeCheck31.js
Normal file
13
tests/baselines/reference/generatorTypeCheck31.js
Normal file
@@ -0,0 +1,13 @@
|
||||
//// [generatorTypeCheck31.ts]
|
||||
function* g2(): Iterator<() => Iterable<(x: string) => number>> {
|
||||
yield function* () {
|
||||
yield x => x.length;
|
||||
} ()
|
||||
}
|
||||
|
||||
//// [generatorTypeCheck31.js]
|
||||
function* g2() {
|
||||
yield function* () {
|
||||
yield x => x.length;
|
||||
}();
|
||||
}
|
||||
@@ -0,0 +1,8 @@
|
||||
tests/cases/conformance/es6/yieldExpressions/generatorTypeCheck32.ts(2,29): error TS1163: A 'yield' expression is only allowed in a generator declaration.
|
||||
|
||||
|
||||
==== tests/cases/conformance/es6/yieldExpressions/generatorTypeCheck32.ts (1 errors) ====
|
||||
var s: string;
|
||||
var f: () => number = () => yield s;
|
||||
~~~~~
|
||||
!!! error TS1163: A 'yield' expression is only allowed in a generator declaration.
|
||||
7
tests/baselines/reference/generatorTypeCheck32.js
Normal file
7
tests/baselines/reference/generatorTypeCheck32.js
Normal file
@@ -0,0 +1,7 @@
|
||||
//// [generatorTypeCheck32.ts]
|
||||
var s: string;
|
||||
var f: () => number = () => yield s;
|
||||
|
||||
//// [generatorTypeCheck32.js]
|
||||
var s;
|
||||
var f = () => yield s;
|
||||
15
tests/baselines/reference/generatorTypeCheck33.js
Normal file
15
tests/baselines/reference/generatorTypeCheck33.js
Normal file
@@ -0,0 +1,15 @@
|
||||
//// [generatorTypeCheck33.ts]
|
||||
function* g() {
|
||||
yield 0;
|
||||
function* g2() {
|
||||
yield "";
|
||||
}
|
||||
}
|
||||
|
||||
//// [generatorTypeCheck33.js]
|
||||
function* g() {
|
||||
yield 0;
|
||||
function* g2() {
|
||||
yield "";
|
||||
}
|
||||
}
|
||||
11
tests/baselines/reference/generatorTypeCheck33.symbols
Normal file
11
tests/baselines/reference/generatorTypeCheck33.symbols
Normal file
@@ -0,0 +1,11 @@
|
||||
=== tests/cases/conformance/es6/yieldExpressions/generatorTypeCheck33.ts ===
|
||||
function* g() {
|
||||
>g : Symbol(g, Decl(generatorTypeCheck33.ts, 0, 0))
|
||||
|
||||
yield 0;
|
||||
function* g2() {
|
||||
>g2 : Symbol(g2, Decl(generatorTypeCheck33.ts, 1, 12))
|
||||
|
||||
yield "";
|
||||
}
|
||||
}
|
||||
16
tests/baselines/reference/generatorTypeCheck33.types
Normal file
16
tests/baselines/reference/generatorTypeCheck33.types
Normal file
@@ -0,0 +1,16 @@
|
||||
=== tests/cases/conformance/es6/yieldExpressions/generatorTypeCheck33.ts ===
|
||||
function* g() {
|
||||
>g : () => IterableIterator<number>
|
||||
|
||||
yield 0;
|
||||
>yield 0 : any
|
||||
>0 : number
|
||||
|
||||
function* g2() {
|
||||
>g2 : () => IterableIterator<string>
|
||||
|
||||
yield "";
|
||||
>yield "" : any
|
||||
>"" : string
|
||||
}
|
||||
}
|
||||
15
tests/baselines/reference/generatorTypeCheck34.js
Normal file
15
tests/baselines/reference/generatorTypeCheck34.js
Normal file
@@ -0,0 +1,15 @@
|
||||
//// [generatorTypeCheck34.ts]
|
||||
function* g() {
|
||||
yield 0;
|
||||
function* g2() {
|
||||
return "";
|
||||
}
|
||||
}
|
||||
|
||||
//// [generatorTypeCheck34.js]
|
||||
function* g() {
|
||||
yield 0;
|
||||
function* g2() {
|
||||
return "";
|
||||
}
|
||||
}
|
||||
11
tests/baselines/reference/generatorTypeCheck34.symbols
Normal file
11
tests/baselines/reference/generatorTypeCheck34.symbols
Normal file
@@ -0,0 +1,11 @@
|
||||
=== tests/cases/conformance/es6/yieldExpressions/generatorTypeCheck34.ts ===
|
||||
function* g() {
|
||||
>g : Symbol(g, Decl(generatorTypeCheck34.ts, 0, 0))
|
||||
|
||||
yield 0;
|
||||
function* g2() {
|
||||
>g2 : Symbol(g2, Decl(generatorTypeCheck34.ts, 1, 12))
|
||||
|
||||
return "";
|
||||
}
|
||||
}
|
||||
15
tests/baselines/reference/generatorTypeCheck34.types
Normal file
15
tests/baselines/reference/generatorTypeCheck34.types
Normal file
@@ -0,0 +1,15 @@
|
||||
=== tests/cases/conformance/es6/yieldExpressions/generatorTypeCheck34.ts ===
|
||||
function* g() {
|
||||
>g : () => IterableIterator<number>
|
||||
|
||||
yield 0;
|
||||
>yield 0 : any
|
||||
>0 : number
|
||||
|
||||
function* g2() {
|
||||
>g2 : () => IterableIterator<any>
|
||||
|
||||
return "";
|
||||
>"" : string
|
||||
}
|
||||
}
|
||||
15
tests/baselines/reference/generatorTypeCheck35.js
Normal file
15
tests/baselines/reference/generatorTypeCheck35.js
Normal file
@@ -0,0 +1,15 @@
|
||||
//// [generatorTypeCheck35.ts]
|
||||
function* g() {
|
||||
yield 0;
|
||||
function g2() {
|
||||
return "";
|
||||
}
|
||||
}
|
||||
|
||||
//// [generatorTypeCheck35.js]
|
||||
function* g() {
|
||||
yield 0;
|
||||
function g2() {
|
||||
return "";
|
||||
}
|
||||
}
|
||||
11
tests/baselines/reference/generatorTypeCheck35.symbols
Normal file
11
tests/baselines/reference/generatorTypeCheck35.symbols
Normal file
@@ -0,0 +1,11 @@
|
||||
=== tests/cases/conformance/es6/yieldExpressions/generatorTypeCheck35.ts ===
|
||||
function* g() {
|
||||
>g : Symbol(g, Decl(generatorTypeCheck35.ts, 0, 0))
|
||||
|
||||
yield 0;
|
||||
function g2() {
|
||||
>g2 : Symbol(g2, Decl(generatorTypeCheck35.ts, 1, 12))
|
||||
|
||||
return "";
|
||||
}
|
||||
}
|
||||
15
tests/baselines/reference/generatorTypeCheck35.types
Normal file
15
tests/baselines/reference/generatorTypeCheck35.types
Normal file
@@ -0,0 +1,15 @@
|
||||
=== tests/cases/conformance/es6/yieldExpressions/generatorTypeCheck35.ts ===
|
||||
function* g() {
|
||||
>g : () => IterableIterator<number>
|
||||
|
||||
yield 0;
|
||||
>yield 0 : any
|
||||
>0 : number
|
||||
|
||||
function g2() {
|
||||
>g2 : () => string
|
||||
|
||||
return "";
|
||||
>"" : string
|
||||
}
|
||||
}
|
||||
9
tests/baselines/reference/generatorTypeCheck36.js
Normal file
9
tests/baselines/reference/generatorTypeCheck36.js
Normal file
@@ -0,0 +1,9 @@
|
||||
//// [generatorTypeCheck36.ts]
|
||||
function* g() {
|
||||
yield yield 0;
|
||||
}
|
||||
|
||||
//// [generatorTypeCheck36.js]
|
||||
function* g() {
|
||||
yield yield 0;
|
||||
}
|
||||
6
tests/baselines/reference/generatorTypeCheck36.symbols
Normal file
6
tests/baselines/reference/generatorTypeCheck36.symbols
Normal file
@@ -0,0 +1,6 @@
|
||||
=== tests/cases/conformance/es6/yieldExpressions/generatorTypeCheck36.ts ===
|
||||
function* g() {
|
||||
>g : Symbol(g, Decl(generatorTypeCheck36.ts, 0, 0))
|
||||
|
||||
yield yield 0;
|
||||
}
|
||||
9
tests/baselines/reference/generatorTypeCheck36.types
Normal file
9
tests/baselines/reference/generatorTypeCheck36.types
Normal file
@@ -0,0 +1,9 @@
|
||||
=== tests/cases/conformance/es6/yieldExpressions/generatorTypeCheck36.ts ===
|
||||
function* g() {
|
||||
>g : () => IterableIterator<any>
|
||||
|
||||
yield yield 0;
|
||||
>yield yield 0 : any
|
||||
>yield 0 : any
|
||||
>0 : number
|
||||
}
|
||||
9
tests/baselines/reference/generatorTypeCheck37.js
Normal file
9
tests/baselines/reference/generatorTypeCheck37.js
Normal file
@@ -0,0 +1,9 @@
|
||||
//// [generatorTypeCheck37.ts]
|
||||
function* g() {
|
||||
return yield yield 0;
|
||||
}
|
||||
|
||||
//// [generatorTypeCheck37.js]
|
||||
function* g() {
|
||||
return yield yield 0;
|
||||
}
|
||||
6
tests/baselines/reference/generatorTypeCheck37.symbols
Normal file
6
tests/baselines/reference/generatorTypeCheck37.symbols
Normal file
@@ -0,0 +1,6 @@
|
||||
=== tests/cases/conformance/es6/yieldExpressions/generatorTypeCheck37.ts ===
|
||||
function* g() {
|
||||
>g : Symbol(g, Decl(generatorTypeCheck37.ts, 0, 0))
|
||||
|
||||
return yield yield 0;
|
||||
}
|
||||
9
tests/baselines/reference/generatorTypeCheck37.types
Normal file
9
tests/baselines/reference/generatorTypeCheck37.types
Normal file
@@ -0,0 +1,9 @@
|
||||
=== tests/cases/conformance/es6/yieldExpressions/generatorTypeCheck37.ts ===
|
||||
function* g() {
|
||||
>g : () => IterableIterator<any>
|
||||
|
||||
return yield yield 0;
|
||||
>yield yield 0 : any
|
||||
>yield 0 : any
|
||||
>0 : number
|
||||
}
|
||||
13
tests/baselines/reference/generatorTypeCheck38.js
Normal file
13
tests/baselines/reference/generatorTypeCheck38.js
Normal file
@@ -0,0 +1,13 @@
|
||||
//// [generatorTypeCheck38.ts]
|
||||
var yield;
|
||||
function* g() {
|
||||
yield 0;
|
||||
var v: typeof yield;
|
||||
}
|
||||
|
||||
//// [generatorTypeCheck38.js]
|
||||
var yield;
|
||||
function* g() {
|
||||
yield 0;
|
||||
var v;
|
||||
}
|
||||
12
tests/baselines/reference/generatorTypeCheck38.symbols
Normal file
12
tests/baselines/reference/generatorTypeCheck38.symbols
Normal file
@@ -0,0 +1,12 @@
|
||||
=== tests/cases/conformance/es6/yieldExpressions/generatorTypeCheck38.ts ===
|
||||
var yield;
|
||||
>yield : Symbol(yield, Decl(generatorTypeCheck38.ts, 0, 3))
|
||||
|
||||
function* g() {
|
||||
>g : Symbol(g, Decl(generatorTypeCheck38.ts, 0, 10))
|
||||
|
||||
yield 0;
|
||||
var v: typeof yield;
|
||||
>v : Symbol(v, Decl(generatorTypeCheck38.ts, 3, 7))
|
||||
>yield : Symbol(yield, Decl(generatorTypeCheck38.ts, 0, 3))
|
||||
}
|
||||
15
tests/baselines/reference/generatorTypeCheck38.types
Normal file
15
tests/baselines/reference/generatorTypeCheck38.types
Normal file
@@ -0,0 +1,15 @@
|
||||
=== tests/cases/conformance/es6/yieldExpressions/generatorTypeCheck38.ts ===
|
||||
var yield;
|
||||
>yield : any
|
||||
|
||||
function* g() {
|
||||
>g : () => IterableIterator<number>
|
||||
|
||||
yield 0;
|
||||
>yield 0 : any
|
||||
>0 : number
|
||||
|
||||
var v: typeof yield;
|
||||
>v : any
|
||||
>yield : any
|
||||
}
|
||||
27
tests/baselines/reference/generatorTypeCheck39.errors.txt
Normal file
27
tests/baselines/reference/generatorTypeCheck39.errors.txt
Normal file
@@ -0,0 +1,27 @@
|
||||
tests/cases/conformance/es6/yieldExpressions/generatorTypeCheck39.ts(5,5): error TS1129: Statement expected.
|
||||
tests/cases/conformance/es6/yieldExpressions/generatorTypeCheck39.ts(5,6): error TS2346: Supplied parameters do not match any signature of call target.
|
||||
tests/cases/conformance/es6/yieldExpressions/generatorTypeCheck39.ts(5,16): error TS2304: Cannot find name 'yield'.
|
||||
tests/cases/conformance/es6/yieldExpressions/generatorTypeCheck39.ts(5,22): error TS1005: ',' expected.
|
||||
tests/cases/conformance/es6/yieldExpressions/generatorTypeCheck39.ts(9,1): error TS1128: Declaration or statement expected.
|
||||
|
||||
|
||||
==== tests/cases/conformance/es6/yieldExpressions/generatorTypeCheck39.ts (5 errors) ====
|
||||
function decorator(x: any) {
|
||||
return y => { };
|
||||
}
|
||||
function* g() {
|
||||
@decorator(yield 0)
|
||||
~
|
||||
!!! error TS1129: Statement expected.
|
||||
~~~~~~~~~~~~~~~~~~
|
||||
!!! error TS2346: Supplied parameters do not match any signature of call target.
|
||||
~~~~~
|
||||
!!! error TS2304: Cannot find name 'yield'.
|
||||
~
|
||||
!!! error TS1005: ',' expected.
|
||||
class C {
|
||||
x = yield 0;
|
||||
}
|
||||
}
|
||||
~
|
||||
!!! error TS1128: Declaration or statement expected.
|
||||
33
tests/baselines/reference/generatorTypeCheck39.js
Normal file
33
tests/baselines/reference/generatorTypeCheck39.js
Normal file
@@ -0,0 +1,33 @@
|
||||
//// [generatorTypeCheck39.ts]
|
||||
function decorator(x: any) {
|
||||
return y => { };
|
||||
}
|
||||
function* g() {
|
||||
@decorator(yield 0)
|
||||
class C {
|
||||
x = yield 0;
|
||||
}
|
||||
}
|
||||
|
||||
//// [generatorTypeCheck39.js]
|
||||
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
||||
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") return Reflect.decorate(decorators, target, key, desc);
|
||||
switch (arguments.length) {
|
||||
case 2: return decorators.reduceRight(function(o, d) { return (d && d(o)) || o; }, target);
|
||||
case 3: return decorators.reduceRight(function(o, d) { return (d && d(target, key)), void 0; }, void 0);
|
||||
case 4: return decorators.reduceRight(function(o, d) { return (d && d(target, key, o)) || o; }, desc);
|
||||
}
|
||||
};
|
||||
function decorator(x) {
|
||||
return y => { };
|
||||
}
|
||||
function* g() { }
|
||||
let C = class {
|
||||
constructor() {
|
||||
this.x = yield 0;
|
||||
}
|
||||
};
|
||||
Object.defineProperty(C, "name", { value: "C", configurable: true });
|
||||
C = __decorate([
|
||||
decorator(yield, 0)
|
||||
], C);
|
||||
5
tests/baselines/reference/generatorTypeCheck4.js
Normal file
5
tests/baselines/reference/generatorTypeCheck4.js
Normal file
@@ -0,0 +1,5 @@
|
||||
//// [generatorTypeCheck4.ts]
|
||||
function* g1(): {} { }
|
||||
|
||||
//// [generatorTypeCheck4.js]
|
||||
function* g1() { }
|
||||
4
tests/baselines/reference/generatorTypeCheck4.symbols
Normal file
4
tests/baselines/reference/generatorTypeCheck4.symbols
Normal file
@@ -0,0 +1,4 @@
|
||||
=== tests/cases/conformance/es6/yieldExpressions/generatorTypeCheck4.ts ===
|
||||
function* g1(): {} { }
|
||||
>g1 : Symbol(g1, Decl(generatorTypeCheck4.ts, 0, 0))
|
||||
|
||||
4
tests/baselines/reference/generatorTypeCheck4.types
Normal file
4
tests/baselines/reference/generatorTypeCheck4.types
Normal file
@@ -0,0 +1,4 @@
|
||||
=== tests/cases/conformance/es6/yieldExpressions/generatorTypeCheck4.ts ===
|
||||
function* g1(): {} { }
|
||||
>g1 : () => {}
|
||||
|
||||
12
tests/baselines/reference/generatorTypeCheck40.errors.txt
Normal file
12
tests/baselines/reference/generatorTypeCheck40.errors.txt
Normal file
@@ -0,0 +1,12 @@
|
||||
tests/cases/conformance/es6/yieldExpressions/generatorTypeCheck40.ts(2,11): error TS9004: 'class' declarations are only supported directly inside a module or as a top level declaration.
|
||||
tests/cases/conformance/es6/yieldExpressions/generatorTypeCheck40.ts(2,21): error TS9002: Only identifiers/qualified-names with optional type arguments are currently supported in a class 'extends' clauses.
|
||||
|
||||
|
||||
==== tests/cases/conformance/es6/yieldExpressions/generatorTypeCheck40.ts (2 errors) ====
|
||||
function* g() {
|
||||
class C extends (yield 0) { }
|
||||
~
|
||||
!!! error TS9004: 'class' declarations are only supported directly inside a module or as a top level declaration.
|
||||
~~~~~~~~~
|
||||
!!! error TS9002: Only identifiers/qualified-names with optional type arguments are currently supported in a class 'extends' clauses.
|
||||
}
|
||||
10
tests/baselines/reference/generatorTypeCheck40.js
Normal file
10
tests/baselines/reference/generatorTypeCheck40.js
Normal file
@@ -0,0 +1,10 @@
|
||||
//// [generatorTypeCheck40.ts]
|
||||
function* g() {
|
||||
class C extends (yield 0) { }
|
||||
}
|
||||
|
||||
//// [generatorTypeCheck40.js]
|
||||
function* g() {
|
||||
class C extends (yield 0) {
|
||||
}
|
||||
}
|
||||
13
tests/baselines/reference/generatorTypeCheck41.js
Normal file
13
tests/baselines/reference/generatorTypeCheck41.js
Normal file
@@ -0,0 +1,13 @@
|
||||
//// [generatorTypeCheck41.ts]
|
||||
function* g() {
|
||||
let x = {
|
||||
[yield 0]: 0
|
||||
}
|
||||
}
|
||||
|
||||
//// [generatorTypeCheck41.js]
|
||||
function* g() {
|
||||
let x = {
|
||||
[yield 0]: 0
|
||||
};
|
||||
}
|
||||
10
tests/baselines/reference/generatorTypeCheck41.symbols
Normal file
10
tests/baselines/reference/generatorTypeCheck41.symbols
Normal file
@@ -0,0 +1,10 @@
|
||||
=== tests/cases/conformance/es6/yieldExpressions/generatorTypeCheck41.ts ===
|
||||
function* g() {
|
||||
>g : Symbol(g, Decl(generatorTypeCheck41.ts, 0, 0))
|
||||
|
||||
let x = {
|
||||
>x : Symbol(x, Decl(generatorTypeCheck41.ts, 1, 7))
|
||||
|
||||
[yield 0]: 0
|
||||
}
|
||||
}
|
||||
14
tests/baselines/reference/generatorTypeCheck41.types
Normal file
14
tests/baselines/reference/generatorTypeCheck41.types
Normal file
@@ -0,0 +1,14 @@
|
||||
=== tests/cases/conformance/es6/yieldExpressions/generatorTypeCheck41.ts ===
|
||||
function* g() {
|
||||
>g : () => IterableIterator<number>
|
||||
|
||||
let x = {
|
||||
>x : {}
|
||||
>{ [yield 0]: 0 } : {}
|
||||
|
||||
[yield 0]: 0
|
||||
>yield 0 : any
|
||||
>0 : number
|
||||
>0 : number
|
||||
}
|
||||
}
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user