* Always generate type & symbol baselines * Accept changed shadowed baselines * Accept brand new type and symbol baselines * Allow `getTypeAtLocation` to return undefined in the type writer * Accept baselines which had missing type information * Bind container for dynamically names enum members so they may be printed * Accept type/symbol baselines for enums with computed members * First pass at reducing typeWriter memory overhead * Use generators to allow for type and symbol baselines with no cache * Accept new baselines for tests whose output was fixed by better newline splitting * Hard cap on number of declarations printed, cache declaration print text * handle differing newlines better still to handle RWC newlines * Lower abridging count, accept abridged baselines * Limit max RWC error output size, limit RWC type and symbol baseline input size * Move skip logic into type and symbol baseliner to streamline error handling * Accept removal of empty baselines * Canonicalize path earlier to handle odd paths in input files * Do canonicalization earlier still, also ensure parallel perf profiles for different targets do not trample one another * No need to pathify again
180 lines
4.2 KiB
Plaintext
180 lines
4.2 KiB
Plaintext
=== tests/cases/conformance/expressions/functionCalls/callWithSpread2.ts ===
|
|
declare function all(a?: number, b?: number): void;
|
|
>all : (a?: number, b?: number) => void
|
|
>a : number
|
|
>b : number
|
|
|
|
declare function weird(a?: number | string, b?: number | string): void;
|
|
>weird : (a?: string | number, b?: string | number) => void
|
|
>a : string | number
|
|
>b : string | number
|
|
|
|
declare function prefix(s: string, a?: number, b?: number): void;
|
|
>prefix : (s: string, a?: number, b?: number) => void
|
|
>s : string
|
|
>a : number
|
|
>b : number
|
|
|
|
declare function rest(s: string, a?: number, b?: number, ...rest: number[]): void;
|
|
>rest : (s: string, a?: number, b?: number, ...rest: number[]) => void
|
|
>s : string
|
|
>a : number
|
|
>b : number
|
|
>rest : number[]
|
|
|
|
declare function normal(s: string): void;
|
|
>normal : (s: string) => void
|
|
>s : string
|
|
|
|
declare function thunk(): string;
|
|
>thunk : () => string
|
|
|
|
declare var ns: number[];
|
|
>ns : number[]
|
|
|
|
declare var mixed: (number | string)[];
|
|
>mixed : (string | number)[]
|
|
|
|
declare var tuple: [number, string];
|
|
>tuple : [number, string]
|
|
|
|
// good
|
|
all(...ns)
|
|
>all(...ns) : void
|
|
>all : (a?: number, b?: number) => void
|
|
>...ns : number
|
|
>ns : number[]
|
|
|
|
weird(...ns)
|
|
>weird(...ns) : void
|
|
>weird : (a?: string | number, b?: string | number) => void
|
|
>...ns : number
|
|
>ns : number[]
|
|
|
|
weird(...mixed)
|
|
>weird(...mixed) : void
|
|
>weird : (a?: string | number, b?: string | number) => void
|
|
>...mixed : string | number
|
|
>mixed : (string | number)[]
|
|
|
|
weird(...tuple)
|
|
>weird(...tuple) : void
|
|
>weird : (a?: string | number, b?: string | number) => void
|
|
>...tuple : string | number
|
|
>tuple : [number, string]
|
|
|
|
prefix("a", ...ns)
|
|
>prefix("a", ...ns) : void
|
|
>prefix : (s: string, a?: number, b?: number) => void
|
|
>"a" : "a"
|
|
>...ns : number
|
|
>ns : number[]
|
|
|
|
rest("d", ...ns)
|
|
>rest("d", ...ns) : void
|
|
>rest : (s: string, a?: number, b?: number, ...rest: number[]) => void
|
|
>"d" : "d"
|
|
>...ns : number
|
|
>ns : number[]
|
|
|
|
|
|
// this covers the arguments case
|
|
normal("g", ...ns)
|
|
>normal("g", ...ns) : void
|
|
>normal : (s: string) => void
|
|
>"g" : "g"
|
|
>...ns : number
|
|
>ns : number[]
|
|
|
|
normal("h", ...mixed)
|
|
>normal("h", ...mixed) : void
|
|
>normal : (s: string) => void
|
|
>"h" : "h"
|
|
>...mixed : string | number
|
|
>mixed : (string | number)[]
|
|
|
|
normal("i", ...tuple)
|
|
>normal("i", ...tuple) : void
|
|
>normal : (s: string) => void
|
|
>"i" : "i"
|
|
>...tuple : string | number
|
|
>tuple : [number, string]
|
|
|
|
thunk(...ns)
|
|
>thunk(...ns) : string
|
|
>thunk : () => string
|
|
>...ns : number
|
|
>ns : number[]
|
|
|
|
thunk(...mixed)
|
|
>thunk(...mixed) : string
|
|
>thunk : () => string
|
|
>...mixed : string | number
|
|
>mixed : (string | number)[]
|
|
|
|
thunk(...tuple)
|
|
>thunk(...tuple) : string
|
|
>thunk : () => string
|
|
>...tuple : string | number
|
|
>tuple : [number, string]
|
|
|
|
// bad
|
|
all(...mixed)
|
|
>all(...mixed) : void
|
|
>all : (a?: number, b?: number) => void
|
|
>...mixed : string | number
|
|
>mixed : (string | number)[]
|
|
|
|
all(...tuple)
|
|
>all(...tuple) : void
|
|
>all : (a?: number, b?: number) => void
|
|
>...tuple : string | number
|
|
>tuple : [number, string]
|
|
|
|
prefix("b", ...mixed)
|
|
>prefix("b", ...mixed) : void
|
|
>prefix : (s: string, a?: number, b?: number) => void
|
|
>"b" : "b"
|
|
>...mixed : string | number
|
|
>mixed : (string | number)[]
|
|
|
|
prefix("c", ...tuple)
|
|
>prefix("c", ...tuple) : void
|
|
>prefix : (s: string, a?: number, b?: number) => void
|
|
>"c" : "c"
|
|
>...tuple : string | number
|
|
>tuple : [number, string]
|
|
|
|
rest("e", ...mixed)
|
|
>rest("e", ...mixed) : void
|
|
>rest : (s: string, a?: number, b?: number, ...rest: number[]) => void
|
|
>"e" : "e"
|
|
>...mixed : string | number
|
|
>mixed : (string | number)[]
|
|
|
|
rest("f", ...tuple)
|
|
>rest("f", ...tuple) : void
|
|
>rest : (s: string, a?: number, b?: number, ...rest: number[]) => void
|
|
>"f" : "f"
|
|
>...tuple : string | number
|
|
>tuple : [number, string]
|
|
|
|
prefix(...ns) // required parameters are required
|
|
>prefix(...ns) : void
|
|
>prefix : (s: string, a?: number, b?: number) => void
|
|
>...ns : number
|
|
>ns : number[]
|
|
|
|
prefix(...mixed)
|
|
>prefix(...mixed) : void
|
|
>prefix : (s: string, a?: number, b?: number) => void
|
|
>...mixed : string | number
|
|
>mixed : (string | number)[]
|
|
|
|
prefix(...tuple)
|
|
>prefix(...tuple) : void
|
|
>prefix : (s: string, a?: number, b?: number) => void
|
|
>...tuple : string | number
|
|
>tuple : [number, string]
|
|
|