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 106 107 108 109 110 111 112 113 114
|
=== tests/cases/conformance/internalModules/DeclarationMerging/part1.ts ===
module A {
>A : typeof A
export interface Point {
x: number;
>x : number
y: number;
>y : number
}
export module Utils {
>Utils : typeof Utils
export function mirror<T extends Point>(p: T) {
>mirror : <T extends Point>(p: T) => { x: number; y: number; }
>p : T
return { x: p.y, y: p.x };
>{ x: p.y, y: p.x } : { x: number; y: number; }
>x : number
>p.y : number
>p : T
>y : number
>y : number
>p.x : number
>p : T
>x : number
}
}
}
=== tests/cases/conformance/internalModules/DeclarationMerging/part2.ts ===
module A {
>A : typeof A
export var Origin: Point = { x: 0, y: 0 };
>Origin : Point
>{ x: 0, y: 0 } : { x: number; y: number; }
>x : number
>0 : 0
>y : number
>0 : 0
export module Utils {
>Utils : typeof Utils
export class Plane {
>Plane : Plane
constructor(public tl: Point, public br: Point) { }
>tl : Point
>br : Point
}
}
}
=== tests/cases/conformance/internalModules/DeclarationMerging/part3.ts ===
// test the merging actually worked
var o: { x: number; y: number };
>o : { x: number; y: number; }
>x : number
>y : number
var o: A.Point;
>o : { x: number; y: number; }
>A : any
var o = A.Origin;
>o : { x: number; y: number; }
>A.Origin : A.Point
>A : typeof A
>Origin : A.Point
var o = A.Utils.mirror(o);
>o : { x: number; y: number; }
>A.Utils.mirror(o) : { x: number; y: number; }
>A.Utils.mirror : <T extends A.Point>(p: T) => { x: number; y: number; }
>A.Utils : typeof A.Utils
>A : typeof A
>Utils : typeof A.Utils
>mirror : <T extends A.Point>(p: T) => { x: number; y: number; }
>o : { x: number; y: number; }
var p: { tl: A.Point; br: A.Point };
>p : { tl: A.Point; br: A.Point; }
>tl : A.Point
>A : any
>br : A.Point
>A : any
var p: A.Utils.Plane;
>p : { tl: A.Point; br: A.Point; }
>A : any
>Utils : any
var p = new A.Utils.Plane(o, { x: 1, y: 1 });
>p : { tl: A.Point; br: A.Point; }
>new A.Utils.Plane(o, { x: 1, y: 1 }) : A.Utils.Plane
>A.Utils.Plane : typeof A.Utils.Plane
>A.Utils : typeof A.Utils
>A : typeof A
>Utils : typeof A.Utils
>Plane : typeof A.Utils.Plane
>o : { x: number; y: number; }
>{ x: 1, y: 1 } : { x: number; y: number; }
>x : number
>1 : 1
>y : number
>1 : 1
|