File: destructuringAssignabilityCheck.types

package info (click to toggle)
node-typescript 4.9.5%2Bds1-2
  • links: PTS, VCS
  • area: main
  • in suites: sid, trixie
  • size: 533,908 kB
  • sloc: javascript: 2,018,330; makefile: 7; sh: 1
file content (40 lines) | stat: -rw-r--r-- 786 bytes parent folder | download | duplicates (4)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
=== tests/cases/conformance/es6/destructuring/destructuringAssignabilityCheck.ts ===
const [] = {}; // should be error
>{} : {}

const {} = undefined; // error correctly
>undefined : undefined

(([]) => 0)({}); // should be error
>(([]) => 0)({}) : number
>(([]) => 0) : ([]: {}) => number
>([]) => 0 : ([]: {}) => number
>0 : 0
>{} : {}

(({}) => 0)(undefined); // should be error
>(({}) => 0)(undefined) : number
>(({}) => 0) : ({}: undefined) => number
>({}) => 0 : ({}: undefined) => number
>0 : 0
>undefined : undefined

function foo({}: undefined) {
>foo : ({}: undefined) => number

    return 0
>0 : 0
}
function bar([]: {}) {
>bar : ([]: {}) => number

    return 0
>0 : 0
}

const { }: undefined = 1
>1 : 1

const []: {} = {}
>{} : {}