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 41 42 43 44
|
=== tests/cases/compiler/restArgAssignmentCompat.ts ===
function f(...x: number[]) {
>f : (...x: number[]) => void
>x : number[]
x.forEach((n, i) => void ('item ' + i + ' = ' + n));
>x.forEach((n, i) => void ('item ' + i + ' = ' + n)) : void
>x.forEach : (callbackfn: (value: number, index: number, array: number[]) => void, thisArg?: any) => void
>x : number[]
>forEach : (callbackfn: (value: number, index: number, array: number[]) => void, thisArg?: any) => void
>(n, i) => void ('item ' + i + ' = ' + n) : (n: number, i: number) => any
>n : number
>i : number
>void ('item ' + i + ' = ' + n) : undefined
>('item ' + i + ' = ' + n) : string
>'item ' + i + ' = ' + n : string
>'item ' + i + ' = ' : string
>'item ' + i : string
>'item ' : "item "
>i : number
>' = ' : " = "
>n : number
}
function g(x: number[], y: string) { }
>g : (x: number[], y: string) => void
>x : number[]
>y : string
var n = g;
>n : (x: number[], y: string) => void
>g : (x: number[], y: string) => void
n = f;
>n = f : (...x: number[]) => void
>n : (x: number[], y: string) => void
>f : (...x: number[]) => void
n([4], 'foo');
>n([4], 'foo') : void
>n : (x: number[], y: string) => void
>[4] : number[]
>4 : 4
>'foo' : "foo"
|