97 lines
1.5 KiB
Text
97 lines
1.5 KiB
Text
=== tests/cases/conformance/internalModules/DeclarationMerging/TwoInternalModulesThatMergeEachWithExportedAndNonExportedClassesOfTheSameName.ts ===
|
|
module A {
|
|
>A : typeof A
|
|
|
|
export class Point {
|
|
>Point : Point
|
|
|
|
x: number;
|
|
>x : number
|
|
|
|
y: number;
|
|
>y : number
|
|
}
|
|
}
|
|
|
|
module A {
|
|
>A : typeof A
|
|
|
|
class Point {
|
|
>Point : Point
|
|
|
|
fromCarthesian(p: A.Point) {
|
|
>fromCarthesian : (p: A.Point) => { x: number; y: number; }
|
|
>p : A.Point
|
|
>A : unknown
|
|
>Point : A.Point
|
|
|
|
return { x: p.x, y: p.y };
|
|
>{ x: p.x, y: p.y } : { x: number; y: number; }
|
|
>x : number
|
|
>p.x : number
|
|
>p : A.Point
|
|
>x : number
|
|
>y : number
|
|
>p.y : number
|
|
>p : A.Point
|
|
>y : number
|
|
}
|
|
}
|
|
}
|
|
|
|
// ensure merges as expected
|
|
var p: { x: number; y: number; };
|
|
>p : { x: number; y: number; }
|
|
>x : number
|
|
>y : number
|
|
|
|
var p: A.Point;
|
|
>p : { x: number; y: number; }
|
|
>A : unknown
|
|
>Point : A.Point
|
|
|
|
module X.Y.Z {
|
|
>X : typeof X
|
|
>Y : typeof Y
|
|
>Z : typeof Z
|
|
|
|
export class Line {
|
|
>Line : Line
|
|
|
|
length: number;
|
|
>length : number
|
|
}
|
|
}
|
|
|
|
module X {
|
|
>X : typeof X
|
|
|
|
export module Y {
|
|
>Y : typeof Y
|
|
|
|
export module Z {
|
|
>Z : typeof Z
|
|
|
|
class Line {
|
|
>Line : Line
|
|
|
|
name: string;
|
|
>name : string
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
// ensure merges as expected
|
|
var l: { length: number; }
|
|
>l : { length: number; }
|
|
>length : number
|
|
|
|
var l: X.Y.Z.Line;
|
|
>l : { length: number; }
|
|
>X : unknown
|
|
>Y : unknown
|
|
>Z : unknown
|
|
>Line : X.Y.Z.Line
|
|
|
|
|