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 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105
|
=== tests/cases/compiler/arrowFunctionErrorSpan.ts ===
function f(a: () => number) { }
>f : (a: () => number) => void
>a : () => number
// oneliner
f(() => { });
>f(() => { }) : void
>f : (a: () => number) => void
>() => { } : () => void
// multiline, body
f(() => {
>f(() => {}) : void
>f : (a: () => number) => void
>() => {} : () => void
});
// multiline 2, body
f(() => {
>f(() => {}) : void
>f : (a: () => number) => void
>() => {} : () => void
});
// multiline 3, arrow on a new line
f(()
>f(() => { }) : void
>f : (a: () => number) => void
>() => { } : () => void
=> { });
// multiline 4, arguments
f((a,
>f((a, b, c, d) => { }) : void
>f : (a: () => number) => void
>(a, b, c, d) => { } : (a: any, b: any, c: any, d: any) => void
>a : any
b,
>b : any
c,
>c : any
d) => { });
>d : any
// single line with a comment
f(/*
>f(/* */() => { }) : void
>f : (a: () => number) => void
*/() => { });
>() => { } : () => void
// multi line with a comment
f(/*
>f(/* */() => { }) : void
>f : (a: () => number) => void
*/() => { });
>() => { } : () => void
// multi line with a comment 2
f(/*
>f(/* */() => { }) : void
>f : (a: () => number) => void
*/() => {
>() => { } : () => void
});
// multi line with a comment 3
f( // comment 1
>f( // comment 1 // comment 2 () => // comment 3 { // comment 4 } // comment 5) : void
>f : (a: () => number) => void
// comment 2
() =>
>() => // comment 3 { // comment 4 } : () => void
// comment 3
{
// comment 4
}
// comment 5
);
// body is not a block
f(_ => 1 +
>f(_ => 1 + 2) : void
>f : (a: () => number) => void
>_ => 1 + 2 : (_: any) => number
>_ : any
>1 + 2 : number
>1 : 1
2);
>2 : 2
|