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
|
=== tests/cases/conformance/expressions/functionCalls/callWithSpread4.ts ===
type R = { a: number }
>R : { a: number; }
>a : number
type W = { b: number }
>W : { b: number; }
>b : number
type RW = { a: number, b: number }
>RW : { a: number; b: number; }
>a : number
>b : number
declare const pli: {
>pli : { (s1: R, s2: RW, s3: RW, s4: RW, s5: W): Promise<void>; (streams: ReadonlyArray<R | W | RW>): Promise<void>; (s1: R, s2: RW | W, ...streams: Array<RW | W>): Promise<void>; }
(s1: R, s2: RW, s3: RW, s4: RW, s5: W): Promise<void>;
>s1 : R
>s2 : RW
>s3 : RW
>s4 : RW
>s5 : W
(streams: ReadonlyArray<R | W | RW>): Promise<void>;
>streams : readonly (R | W | RW)[]
(s1: R, s2: RW | W, ...streams: Array<RW | W>): Promise<void>;
>s1 : R
>s2 : W | RW
>streams : (W | RW)[]
}
declare var writes: W
>writes : W
declare var reads: R
>reads : R
declare var tr: W
>tr : W
declare var gun: RW[]
>gun : RW[]
declare var gz: RW[]
>gz : RW[]
declare var fun: (inp: any) => AsyncGenerator<string, void, unknown>
>fun : (inp: any) => AsyncGenerator<string, void, unknown>
>inp : any
pli(
>pli( reads, ...gun, tr, fun, ...gz, writes) : Promise<void>
>pli : { (s1: R, s2: RW, s3: RW, s4: RW, s5: W): Promise<void>; (streams: readonly (R | W | RW)[]): Promise<void>; (s1: R, s2: W | RW, ...streams: (W | RW)[]): Promise<void>; }
reads,
>reads : R
...gun,
>...gun : RW
>gun : RW[]
tr,
>tr : W
fun,
>fun : (inp: any) => AsyncGenerator<string, void, unknown>
...gz,
>...gz : RW
>gz : RW[]
writes
>writes : W
);
declare function test(x: any, y: () => string): string | undefined;
>test : (x: any, y: () => string) => string | undefined
>x : any
>y : () => string
declare var anys: any[]
>anys : any[]
test(...anys)
>test(...anys) : string | undefined
>test : (x: any, y: () => string) => string | undefined
>...anys : any
>anys : any[]
pli(...[reads, writes, writes] as const)
>pli(...[reads, writes, writes] as const) : Promise<void>
>pli : { (s1: R, s2: RW, s3: RW, s4: RW, s5: W): Promise<void>; (streams: readonly (R | W | RW)[]): Promise<void>; (s1: R, s2: W | RW, ...streams: (W | RW)[]): Promise<void>; }
>...[reads, writes, writes] as const : R | W
>[reads, writes, writes] as const : readonly [R, W, W]
>[reads, writes, writes] : readonly [R, W, W]
>reads : R
>writes : W
>writes : W
|