@@ -75,86 +75,129 @@ class Bar {
75
75
b?: number;
76
76
>b : Symbol(Bar.b, Decl(optionalMethods.ts, 19, 14))
77
77
78
+ c? = 2;
79
+ >c : Symbol(Bar.c, Decl(optionalMethods.ts, 20, 15))
80
+
81
+ constructor(public d?: number, public e = 10) {}
82
+ >d : Symbol(Bar.d, Decl(optionalMethods.ts, 22, 16))
83
+ >e : Symbol(Bar.e, Decl(optionalMethods.ts, 22, 34))
84
+
78
85
f() {
79
- >f : Symbol(Bar.f, Decl(optionalMethods.ts, 20, 15 ))
86
+ >f : Symbol(Bar.f, Decl(optionalMethods.ts, 22, 52 ))
80
87
81
88
return 1;
82
89
}
83
90
g?(): number; // Body of optional method can be omitted
84
- >g : Symbol(Bar.g, Decl(optionalMethods.ts, 23 , 5))
91
+ >g : Symbol(Bar.g, Decl(optionalMethods.ts, 25 , 5))
85
92
86
93
h?() {
87
- >h : Symbol(Bar.h, Decl(optionalMethods.ts, 24 , 17))
94
+ >h : Symbol(Bar.h, Decl(optionalMethods.ts, 26 , 17))
88
95
89
96
return 2;
90
97
}
91
98
}
92
99
93
100
function test2(x: Bar) {
94
- >test2 : Symbol(test2, Decl(optionalMethods.ts, 28 , 1))
95
- >x : Symbol(x, Decl(optionalMethods.ts, 30 , 15))
101
+ >test2 : Symbol(test2, Decl(optionalMethods.ts, 30 , 1))
102
+ >x : Symbol(x, Decl(optionalMethods.ts, 32 , 15))
96
103
>Bar : Symbol(Bar, Decl(optionalMethods.ts, 16, 1))
97
104
98
105
x.a;
99
106
>x.a : Symbol(Bar.a, Decl(optionalMethods.ts, 18, 11))
100
- >x : Symbol(x, Decl(optionalMethods.ts, 30 , 15))
107
+ >x : Symbol(x, Decl(optionalMethods.ts, 32 , 15))
101
108
>a : Symbol(Bar.a, Decl(optionalMethods.ts, 18, 11))
102
109
103
110
x.b;
104
111
>x.b : Symbol(Bar.b, Decl(optionalMethods.ts, 19, 14))
105
- >x : Symbol(x, Decl(optionalMethods.ts, 30 , 15))
112
+ >x : Symbol(x, Decl(optionalMethods.ts, 32 , 15))
106
113
>b : Symbol(Bar.b, Decl(optionalMethods.ts, 19, 14))
107
114
115
+ x.c;
116
+ >x.c : Symbol(Bar.c, Decl(optionalMethods.ts, 20, 15))
117
+ >x : Symbol(x, Decl(optionalMethods.ts, 32, 15))
118
+ >c : Symbol(Bar.c, Decl(optionalMethods.ts, 20, 15))
119
+
120
+ x.d;
121
+ >x.d : Symbol(Bar.d, Decl(optionalMethods.ts, 22, 16))
122
+ >x : Symbol(x, Decl(optionalMethods.ts, 32, 15))
123
+ >d : Symbol(Bar.d, Decl(optionalMethods.ts, 22, 16))
124
+
125
+ x.e;
126
+ >x.e : Symbol(Bar.e, Decl(optionalMethods.ts, 22, 34))
127
+ >x : Symbol(x, Decl(optionalMethods.ts, 32, 15))
128
+ >e : Symbol(Bar.e, Decl(optionalMethods.ts, 22, 34))
129
+
108
130
x.f;
109
- >x.f : Symbol(Bar.f, Decl(optionalMethods.ts, 20, 15 ))
110
- >x : Symbol(x, Decl(optionalMethods.ts, 30 , 15))
111
- >f : Symbol(Bar.f, Decl(optionalMethods.ts, 20, 15 ))
131
+ >x.f : Symbol(Bar.f, Decl(optionalMethods.ts, 22, 52 ))
132
+ >x : Symbol(x, Decl(optionalMethods.ts, 32 , 15))
133
+ >f : Symbol(Bar.f, Decl(optionalMethods.ts, 22, 52 ))
112
134
113
135
x.g;
114
- >x.g : Symbol(Bar.g, Decl(optionalMethods.ts, 23 , 5))
115
- >x : Symbol(x, Decl(optionalMethods.ts, 30 , 15))
116
- >g : Symbol(Bar.g, Decl(optionalMethods.ts, 23 , 5))
136
+ >x.g : Symbol(Bar.g, Decl(optionalMethods.ts, 25 , 5))
137
+ >x : Symbol(x, Decl(optionalMethods.ts, 32 , 15))
138
+ >g : Symbol(Bar.g, Decl(optionalMethods.ts, 25 , 5))
117
139
118
140
let f1 = x.f();
119
- >f1 : Symbol(f1, Decl(optionalMethods.ts, 35 , 7))
120
- >x.f : Symbol(Bar.f, Decl(optionalMethods.ts, 20, 15 ))
121
- >x : Symbol(x, Decl(optionalMethods.ts, 30 , 15))
122
- >f : Symbol(Bar.f, Decl(optionalMethods.ts, 20, 15 ))
141
+ >f1 : Symbol(f1, Decl(optionalMethods.ts, 40 , 7))
142
+ >x.f : Symbol(Bar.f, Decl(optionalMethods.ts, 22, 52 ))
143
+ >x : Symbol(x, Decl(optionalMethods.ts, 32 , 15))
144
+ >f : Symbol(Bar.f, Decl(optionalMethods.ts, 22, 52 ))
123
145
124
146
let g1 = x.g && x.g();
125
- >g1 : Symbol(g1, Decl(optionalMethods.ts, 36 , 7))
126
- >x.g : Symbol(Bar.g, Decl(optionalMethods.ts, 23 , 5))
127
- >x : Symbol(x, Decl(optionalMethods.ts, 30 , 15))
128
- >g : Symbol(Bar.g, Decl(optionalMethods.ts, 23 , 5))
129
- >x.g : Symbol(Bar.g, Decl(optionalMethods.ts, 23 , 5))
130
- >x : Symbol(x, Decl(optionalMethods.ts, 30 , 15))
131
- >g : Symbol(Bar.g, Decl(optionalMethods.ts, 23 , 5))
147
+ >g1 : Symbol(g1, Decl(optionalMethods.ts, 41 , 7))
148
+ >x.g : Symbol(Bar.g, Decl(optionalMethods.ts, 25 , 5))
149
+ >x : Symbol(x, Decl(optionalMethods.ts, 32 , 15))
150
+ >g : Symbol(Bar.g, Decl(optionalMethods.ts, 25 , 5))
151
+ >x.g : Symbol(Bar.g, Decl(optionalMethods.ts, 25 , 5))
152
+ >x : Symbol(x, Decl(optionalMethods.ts, 32 , 15))
153
+ >g : Symbol(Bar.g, Decl(optionalMethods.ts, 25 , 5))
132
154
133
155
let g2 = x.g ? x.g() : 0;
134
- >g2 : Symbol(g2, Decl(optionalMethods.ts, 37 , 7))
135
- >x.g : Symbol(Bar.g, Decl(optionalMethods.ts, 23 , 5))
136
- >x : Symbol(x, Decl(optionalMethods.ts, 30 , 15))
137
- >g : Symbol(Bar.g, Decl(optionalMethods.ts, 23 , 5))
138
- >x.g : Symbol(Bar.g, Decl(optionalMethods.ts, 23 , 5))
139
- >x : Symbol(x, Decl(optionalMethods.ts, 30 , 15))
140
- >g : Symbol(Bar.g, Decl(optionalMethods.ts, 23 , 5))
156
+ >g2 : Symbol(g2, Decl(optionalMethods.ts, 42 , 7))
157
+ >x.g : Symbol(Bar.g, Decl(optionalMethods.ts, 25 , 5))
158
+ >x : Symbol(x, Decl(optionalMethods.ts, 32 , 15))
159
+ >g : Symbol(Bar.g, Decl(optionalMethods.ts, 25 , 5))
160
+ >x.g : Symbol(Bar.g, Decl(optionalMethods.ts, 25 , 5))
161
+ >x : Symbol(x, Decl(optionalMethods.ts, 32 , 15))
162
+ >g : Symbol(Bar.g, Decl(optionalMethods.ts, 25 , 5))
141
163
142
164
let h1 = x.h && x.h();
143
- >h1 : Symbol(h1, Decl(optionalMethods.ts, 38 , 7))
144
- >x.h : Symbol(Bar.h, Decl(optionalMethods.ts, 24 , 17))
145
- >x : Symbol(x, Decl(optionalMethods.ts, 30 , 15))
146
- >h : Symbol(Bar.h, Decl(optionalMethods.ts, 24 , 17))
147
- >x.h : Symbol(Bar.h, Decl(optionalMethods.ts, 24 , 17))
148
- >x : Symbol(x, Decl(optionalMethods.ts, 30 , 15))
149
- >h : Symbol(Bar.h, Decl(optionalMethods.ts, 24 , 17))
165
+ >h1 : Symbol(h1, Decl(optionalMethods.ts, 43 , 7))
166
+ >x.h : Symbol(Bar.h, Decl(optionalMethods.ts, 26 , 17))
167
+ >x : Symbol(x, Decl(optionalMethods.ts, 32 , 15))
168
+ >h : Symbol(Bar.h, Decl(optionalMethods.ts, 26 , 17))
169
+ >x.h : Symbol(Bar.h, Decl(optionalMethods.ts, 26 , 17))
170
+ >x : Symbol(x, Decl(optionalMethods.ts, 32 , 15))
171
+ >h : Symbol(Bar.h, Decl(optionalMethods.ts, 26 , 17))
150
172
151
173
let h2 = x.h ? x.h() : 0;
152
- >h2 : Symbol(h2, Decl(optionalMethods.ts, 39, 7))
153
- >x.h : Symbol(Bar.h, Decl(optionalMethods.ts, 24, 17))
154
- >x : Symbol(x, Decl(optionalMethods.ts, 30, 15))
155
- >h : Symbol(Bar.h, Decl(optionalMethods.ts, 24, 17))
156
- >x.h : Symbol(Bar.h, Decl(optionalMethods.ts, 24, 17))
157
- >x : Symbol(x, Decl(optionalMethods.ts, 30, 15))
158
- >h : Symbol(Bar.h, Decl(optionalMethods.ts, 24, 17))
174
+ >h2 : Symbol(h2, Decl(optionalMethods.ts, 44, 7))
175
+ >x.h : Symbol(Bar.h, Decl(optionalMethods.ts, 26, 17))
176
+ >x : Symbol(x, Decl(optionalMethods.ts, 32, 15))
177
+ >h : Symbol(Bar.h, Decl(optionalMethods.ts, 26, 17))
178
+ >x.h : Symbol(Bar.h, Decl(optionalMethods.ts, 26, 17))
179
+ >x : Symbol(x, Decl(optionalMethods.ts, 32, 15))
180
+ >h : Symbol(Bar.h, Decl(optionalMethods.ts, 26, 17))
181
+ }
182
+
183
+ class Base {
184
+ >Base : Symbol(Base, Decl(optionalMethods.ts, 45, 1))
185
+
186
+ a?: number;
187
+ >a : Symbol(Base.a, Decl(optionalMethods.ts, 47, 12))
188
+
189
+ f?(): number;
190
+ >f : Symbol(Base.f, Decl(optionalMethods.ts, 48, 15))
191
+ }
192
+
193
+ class Derived extends Base {
194
+ >Derived : Symbol(Derived, Decl(optionalMethods.ts, 50, 1))
195
+ >Base : Symbol(Base, Decl(optionalMethods.ts, 45, 1))
196
+
197
+ a = 1;
198
+ >a : Symbol(Derived.a, Decl(optionalMethods.ts, 52, 28))
199
+
200
+ f(): number { return 1; }
201
+ >f : Symbol(Derived.f, Decl(optionalMethods.ts, 53, 10))
159
202
}
160
203
0 commit comments