TypeScript/tests/baselines/reference/classWithOnlyPublicMembersEquivalentToInterface2.types

79 lines
1 KiB
Plaintext
Raw Normal View History

2014-08-15 23:33:16 +02:00
=== tests/cases/conformance/types/namedTypes/classWithOnlyPublicMembersEquivalentToInterface2.ts ===
// no errors expected
class C {
>C : C
2014-08-15 23:33:16 +02:00
public x: string;
>x : string
2014-08-15 23:33:16 +02:00
public y(a: number): number { return null; }
>y : (a: number) => number
>a : number
2015-04-13 21:36:11 +02:00
>null : null
2014-08-15 23:33:16 +02:00
public get z() { return 1; }
>z : number
2015-04-13 21:36:11 +02:00
>1 : number
2014-08-15 23:33:16 +02:00
public set z(v) { }
>z : number
>v : number
2014-08-15 23:33:16 +02:00
[x: string]: Object;
>x : string
>Object : Object
2014-08-15 23:33:16 +02:00
[x: number]: Object;
>x : number
>Object : Object
2014-08-15 23:33:16 +02:00
0: number;
public static foo: string; // doesn't effect equivalence
>foo : string
2014-08-15 23:33:16 +02:00
}
interface I {
>I : I
2014-08-15 23:33:16 +02:00
x: string;
>x : string
2014-08-15 23:33:16 +02:00
y(b: number): number;
>y : (b: number) => number
>b : number
2014-08-15 23:33:16 +02:00
z: number;
>z : number
2014-08-15 23:33:16 +02:00
[x: string]: Object;
>x : string
>Object : Object
2014-08-15 23:33:16 +02:00
[x: number]: Object;
>x : number
>Object : Object
2014-08-15 23:33:16 +02:00
0: number;
}
var c: C;
>c : C
>C : C
2014-08-15 23:33:16 +02:00
var i: I;
>i : I
>I : I
2014-08-15 23:33:16 +02:00
c = i;
>c = i : I
>c : C
>i : I
2014-08-15 23:33:16 +02:00
i = c;
>i = c : C
>i : I
>c : C
2014-08-15 23:33:16 +02:00