TypeScript/tests/baselines/reference/arrayLiteralWidened.types

56 lines
2.1 KiB
Plaintext
Raw Normal View History

2014-08-15 23:33:16 +02:00
=== tests/cases/conformance/types/typeRelationships/widenedTypes/arrayLiteralWidened.ts ===
// array literals are widened upon assignment according to their element type
var a = []; // any[]
2015-04-13 23:01:57 +02:00
>a : any[], Symbol(a, Decl(arrayLiteralWidened.ts, 2, 3), Decl(arrayLiteralWidened.ts, 4, 3), Decl(arrayLiteralWidened.ts, 5, 3))
2014-08-15 23:33:16 +02:00
>[] : undefined[]
var a = [null, null];
2015-04-13 23:01:57 +02:00
>a : any[], Symbol(a, Decl(arrayLiteralWidened.ts, 2, 3), Decl(arrayLiteralWidened.ts, 4, 3), Decl(arrayLiteralWidened.ts, 5, 3))
2014-08-15 23:33:16 +02:00
>[null, null] : null[]
2015-04-13 21:36:11 +02:00
>null : null
>null : null
2014-08-15 23:33:16 +02:00
var a = [undefined, undefined];
2015-04-13 23:01:57 +02:00
>a : any[], Symbol(a, Decl(arrayLiteralWidened.ts, 2, 3), Decl(arrayLiteralWidened.ts, 4, 3), Decl(arrayLiteralWidened.ts, 5, 3))
2014-08-15 23:33:16 +02:00
>[undefined, undefined] : undefined[]
>undefined : undefined, Symbol(undefined)
>undefined : undefined, Symbol(undefined)
2014-08-15 23:33:16 +02:00
var b = [[], [null, null]]; // any[][]
2015-04-13 23:01:57 +02:00
>b : any[][], Symbol(b, Decl(arrayLiteralWidened.ts, 7, 3), Decl(arrayLiteralWidened.ts, 8, 3), Decl(arrayLiteralWidened.ts, 9, 3))
2014-08-15 23:33:16 +02:00
>[[], [null, null]] : null[][]
>[] : undefined[]
>[null, null] : null[]
2015-04-13 21:36:11 +02:00
>null : null
>null : null
2014-08-15 23:33:16 +02:00
var b = [[], []];
2015-04-13 23:01:57 +02:00
>b : any[][], Symbol(b, Decl(arrayLiteralWidened.ts, 7, 3), Decl(arrayLiteralWidened.ts, 8, 3), Decl(arrayLiteralWidened.ts, 9, 3))
2014-08-15 23:33:16 +02:00
>[[], []] : undefined[][]
>[] : undefined[]
>[] : undefined[]
var b = [[undefined, undefined]];
2015-04-13 23:01:57 +02:00
>b : any[][], Symbol(b, Decl(arrayLiteralWidened.ts, 7, 3), Decl(arrayLiteralWidened.ts, 8, 3), Decl(arrayLiteralWidened.ts, 9, 3))
2014-08-15 23:33:16 +02:00
>[[undefined, undefined]] : undefined[][]
>[undefined, undefined] : undefined[]
>undefined : undefined, Symbol(undefined)
>undefined : undefined, Symbol(undefined)
2014-08-15 23:33:16 +02:00
var c = [[[]]]; // any[][][]
2015-04-13 23:01:57 +02:00
>c : any[][][], Symbol(c, Decl(arrayLiteralWidened.ts, 11, 3), Decl(arrayLiteralWidened.ts, 12, 3))
2014-08-15 23:33:16 +02:00
>[[[]]] : undefined[][][]
>[[]] : undefined[][]
>[] : undefined[]
var c = [[[null]],[undefined]]
2015-04-13 23:01:57 +02:00
>c : any[][][], Symbol(c, Decl(arrayLiteralWidened.ts, 11, 3), Decl(arrayLiteralWidened.ts, 12, 3))
2014-08-15 23:33:16 +02:00
>[[[null]],[undefined]] : null[][][]
>[[null]] : null[][]
>[null] : null[]
2015-04-13 21:36:11 +02:00
>null : null
2014-08-15 23:33:16 +02:00
>[undefined] : undefined[]
>undefined : undefined, Symbol(undefined)
2014-08-15 23:33:16 +02:00