TypeScript/tests/baselines/reference/varArgsOnConstructorTypes.types

71 lines
3.4 KiB
Text

=== tests/cases/compiler/varArgsOnConstructorTypes.ts ===
export class A {
>A : A, Symbol(A,Decl(varArgsOnConstructorTypes.ts,0,0))
constructor(ctor) { }
>ctor : any, Symbol(ctor,Decl(varArgsOnConstructorTypes.ts,1,16))
}
export class B extends A {
>B : B, Symbol(B,Decl(varArgsOnConstructorTypes.ts,2,1))
>A : A, Symbol(A,Decl(varArgsOnConstructorTypes.ts,0,0))
private p1: number;
>p1 : number, Symbol(p1,Decl(varArgsOnConstructorTypes.ts,4,26))
private p2: string;
>p2 : string, Symbol(p2,Decl(varArgsOnConstructorTypes.ts,5,23))
constructor(element: any, url: string) {
>element : any, Symbol(element,Decl(varArgsOnConstructorTypes.ts,8,16))
>url : string, Symbol(url,Decl(varArgsOnConstructorTypes.ts,8,29))
super(element);
>super(element) : void
>super : typeof A, Symbol(A,Decl(varArgsOnConstructorTypes.ts,0,0))
>element : any, Symbol(element,Decl(varArgsOnConstructorTypes.ts,8,16))
this.p1 = element;
>this.p1 = element : any
>this.p1 : number, Symbol(p1,Decl(varArgsOnConstructorTypes.ts,4,26))
>this : B, Symbol(B,Decl(varArgsOnConstructorTypes.ts,2,1))
>p1 : number, Symbol(p1,Decl(varArgsOnConstructorTypes.ts,4,26))
>element : any, Symbol(element,Decl(varArgsOnConstructorTypes.ts,8,16))
this.p2 = url;
>this.p2 = url : string
>this.p2 : string, Symbol(p2,Decl(varArgsOnConstructorTypes.ts,5,23))
>this : B, Symbol(B,Decl(varArgsOnConstructorTypes.ts,2,1))
>p2 : string, Symbol(p2,Decl(varArgsOnConstructorTypes.ts,5,23))
>url : string, Symbol(url,Decl(varArgsOnConstructorTypes.ts,8,29))
}
}
export interface I1 {
>I1 : I1, Symbol(I1,Decl(varArgsOnConstructorTypes.ts,13,1))
register(inputClass: new(...params: any[]) => A);
>register : { (inputClass: new (...params: any[]) => A): any; (inputClass: (new (...params: any[]) => A)[]): any; }, Symbol(register,Decl(varArgsOnConstructorTypes.ts,15,21),Decl(varArgsOnConstructorTypes.ts,16,53))
>inputClass : new (...params: any[]) => A, Symbol(inputClass,Decl(varArgsOnConstructorTypes.ts,16,13))
>params : any[], Symbol(params,Decl(varArgsOnConstructorTypes.ts,16,29))
>A : A, Symbol(A,Decl(varArgsOnConstructorTypes.ts,0,0))
register(inputClass: { new (...params: any[]): A; }[]);
>register : { (inputClass: new (...params: any[]) => A): any; (inputClass: (new (...params: any[]) => A)[]): any; }, Symbol(register,Decl(varArgsOnConstructorTypes.ts,15,21),Decl(varArgsOnConstructorTypes.ts,16,53))
>inputClass : (new (...params: any[]) => A)[], Symbol(inputClass,Decl(varArgsOnConstructorTypes.ts,17,13))
>params : any[], Symbol(params,Decl(varArgsOnConstructorTypes.ts,17,32))
>A : A, Symbol(A,Decl(varArgsOnConstructorTypes.ts,0,0))
}
var reg: I1;
>reg : I1, Symbol(reg,Decl(varArgsOnConstructorTypes.ts,21,3))
>I1 : I1, Symbol(I1,Decl(varArgsOnConstructorTypes.ts,13,1))
reg.register(B);
>reg.register(B) : any
>reg.register : { (inputClass: new (...params: any[]) => A): any; (inputClass: (new (...params: any[]) => A)[]): any; }, Symbol(I1.register,Decl(varArgsOnConstructorTypes.ts,15,21),Decl(varArgsOnConstructorTypes.ts,16,53))
>reg : I1, Symbol(reg,Decl(varArgsOnConstructorTypes.ts,21,3))
>register : { (inputClass: new (...params: any[]) => A): any; (inputClass: (new (...params: any[]) => A)[]): any; }, Symbol(I1.register,Decl(varArgsOnConstructorTypes.ts,15,21),Decl(varArgsOnConstructorTypes.ts,16,53))
>B : typeof B, Symbol(B,Decl(varArgsOnConstructorTypes.ts,2,1))