TypeScript/tests/baselines/reference/bestCommonTypeOfTuple2.types
2015-04-13 14:29:37 -07:00

98 lines
3.8 KiB
Plaintext

=== tests/cases/conformance/types/typeRelationships/bestCommonType/bestCommonTypeOfTuple2.ts ===
interface base { }
>base : base, Symbol(base, Decl(bestCommonTypeOfTuple2.ts, 0, 0))
interface base1 { i }
>base1 : base1, Symbol(base1, Decl(bestCommonTypeOfTuple2.ts, 0, 18))
>i : any, Symbol(i, Decl(bestCommonTypeOfTuple2.ts, 1, 17))
class C implements base { c }
>C : C, Symbol(C, Decl(bestCommonTypeOfTuple2.ts, 1, 21))
>base : base, Symbol(base, Decl(bestCommonTypeOfTuple2.ts, 0, 0))
>c : any, Symbol(c, Decl(bestCommonTypeOfTuple2.ts, 2, 25))
class D implements base { d }
>D : D, Symbol(D, Decl(bestCommonTypeOfTuple2.ts, 2, 29))
>base : base, Symbol(base, Decl(bestCommonTypeOfTuple2.ts, 0, 0))
>d : any, Symbol(d, Decl(bestCommonTypeOfTuple2.ts, 3, 25))
class E implements base { e }
>E : E, Symbol(E, Decl(bestCommonTypeOfTuple2.ts, 3, 29))
>base : base, Symbol(base, Decl(bestCommonTypeOfTuple2.ts, 0, 0))
>e : any, Symbol(e, Decl(bestCommonTypeOfTuple2.ts, 4, 25))
class F extends C { f }
>F : F, Symbol(F, Decl(bestCommonTypeOfTuple2.ts, 4, 29))
>C : C, Symbol(C, Decl(bestCommonTypeOfTuple2.ts, 1, 21))
>f : any, Symbol(f, Decl(bestCommonTypeOfTuple2.ts, 5, 19))
class C1 implements base1 { i = "foo"; c }
>C1 : C1, Symbol(C1, Decl(bestCommonTypeOfTuple2.ts, 5, 23))
>base1 : base1, Symbol(base1, Decl(bestCommonTypeOfTuple2.ts, 0, 18))
>i : string, Symbol(i, Decl(bestCommonTypeOfTuple2.ts, 7, 27))
>"foo" : string
>c : any, Symbol(c, Decl(bestCommonTypeOfTuple2.ts, 7, 38))
class D1 extends C1 { i = "bar"; d }
>D1 : D1, Symbol(D1, Decl(bestCommonTypeOfTuple2.ts, 7, 42))
>C1 : C1, Symbol(C1, Decl(bestCommonTypeOfTuple2.ts, 5, 23))
>i : string, Symbol(i, Decl(bestCommonTypeOfTuple2.ts, 8, 21))
>"bar" : string
>d : any, Symbol(d, Decl(bestCommonTypeOfTuple2.ts, 8, 32))
var t1: [C, base];
>t1 : [C, base], Symbol(t1, Decl(bestCommonTypeOfTuple2.ts, 10, 3))
>C : C, Symbol(C, Decl(bestCommonTypeOfTuple2.ts, 1, 21))
>base : base, Symbol(base, Decl(bestCommonTypeOfTuple2.ts, 0, 0))
var t2: [C, D];
>t2 : [C, D], Symbol(t2, Decl(bestCommonTypeOfTuple2.ts, 11, 3))
>C : C, Symbol(C, Decl(bestCommonTypeOfTuple2.ts, 1, 21))
>D : D, Symbol(D, Decl(bestCommonTypeOfTuple2.ts, 2, 29))
var t3: [C1, D1];
>t3 : [C1, D1], Symbol(t3, Decl(bestCommonTypeOfTuple2.ts, 12, 3))
>C1 : C1, Symbol(C1, Decl(bestCommonTypeOfTuple2.ts, 5, 23))
>D1 : D1, Symbol(D1, Decl(bestCommonTypeOfTuple2.ts, 7, 42))
var t4: [base1, C1];
>t4 : [base1, C1], Symbol(t4, Decl(bestCommonTypeOfTuple2.ts, 13, 3))
>base1 : base1, Symbol(base1, Decl(bestCommonTypeOfTuple2.ts, 0, 18))
>C1 : C1, Symbol(C1, Decl(bestCommonTypeOfTuple2.ts, 5, 23))
var t5: [C1, F]
>t5 : [C1, F], Symbol(t5, Decl(bestCommonTypeOfTuple2.ts, 14, 3))
>C1 : C1, Symbol(C1, Decl(bestCommonTypeOfTuple2.ts, 5, 23))
>F : F, Symbol(F, Decl(bestCommonTypeOfTuple2.ts, 4, 29))
var e11 = t1[4]; // base
>e11 : base, Symbol(e11, Decl(bestCommonTypeOfTuple2.ts, 16, 3))
>t1[4] : base
>t1 : [C, base], Symbol(t1, Decl(bestCommonTypeOfTuple2.ts, 10, 3))
>4 : number
var e21 = t2[4]; // {}
>e21 : C | D, Symbol(e21, Decl(bestCommonTypeOfTuple2.ts, 17, 3))
>t2[4] : C | D
>t2 : [C, D], Symbol(t2, Decl(bestCommonTypeOfTuple2.ts, 11, 3))
>4 : number
var e31 = t3[4]; // C1
>e31 : C1, Symbol(e31, Decl(bestCommonTypeOfTuple2.ts, 18, 3))
>t3[4] : C1
>t3 : [C1, D1], Symbol(t3, Decl(bestCommonTypeOfTuple2.ts, 12, 3))
>4 : number
var e41 = t4[2]; // base1
>e41 : base1, Symbol(e41, Decl(bestCommonTypeOfTuple2.ts, 19, 3))
>t4[2] : base1
>t4 : [base1, C1], Symbol(t4, Decl(bestCommonTypeOfTuple2.ts, 13, 3))
>2 : number
var e51 = t5[2]; // {}
>e51 : F | C1, Symbol(e51, Decl(bestCommonTypeOfTuple2.ts, 20, 3))
>t5[2] : F | C1
>t5 : [C1, F], Symbol(t5, Decl(bestCommonTypeOfTuple2.ts, 14, 3))
>2 : number