File: classExtendingClass.types

package info (click to toggle)
node-typescript 3.3.3333-1
  • links: PTS, VCS
  • area: main
  • in suites: buster
  • size: 324,548 kB
  • sloc: makefile: 6; sh: 3
file content (105 lines) | stat: -rw-r--r-- 1,498 bytes parent folder | download | duplicates (5)
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
=== tests/cases/conformance/classes/classDeclarations/classHeritageSpecification/classExtendingClass.ts ===
class C {
>C : C

    foo: string;
>foo : string

    thing() { }
>thing : () => void

    static other() { }
>other : () => void
}

class D extends C {
>D : D
>C : C

    bar: string;
>bar : string
}

var d: D;
>d : D

var r = d.foo;
>r : string
>d.foo : string
>d : D
>foo : string

var r2 = d.bar;
>r2 : string
>d.bar : string
>d : D
>bar : string

var r3 = d.thing();
>r3 : void
>d.thing() : void
>d.thing : () => void
>d : D
>thing : () => void

var r4 = D.other();
>r4 : void
>D.other() : void
>D.other : () => void
>D : typeof D
>other : () => void

class C2<T> {
>C2 : C2<T>

    foo: T;
>foo : T

    thing(x: T) { }
>thing : (x: T) => void
>x : T

    static other<T>(x: T) { }
>other : <T>(x: T) => void
>x : T
}

class D2<T> extends C2<T> {
>D2 : D2<T>
>C2 : C2<T>

    bar: string;
>bar : string
}

var d2: D2<string>;
>d2 : D2<string>

var r5 = d2.foo;
>r5 : string
>d2.foo : string
>d2 : D2<string>
>foo : string

var r6 = d2.bar;
>r6 : string
>d2.bar : string
>d2 : D2<string>
>bar : string

var r7 = d2.thing('');
>r7 : void
>d2.thing('') : void
>d2.thing : (x: string) => void
>d2 : D2<string>
>thing : (x: string) => void
>'' : ""

var r8 = D2.other(1);
>r8 : void
>D2.other(1) : void
>D2.other : <T>(x: T) => void
>D2 : typeof D2
>other : <T>(x: T) => void
>1 : 1