1 /*
2  * Copyright (c) 2024 Huawei Device Co., Ltd.
3  * Licensed under the Apache License, Version 2.0 (the "License");
4  * you may not use this file except in compliance with the License.
5  * You may obtain a copy of the License at
6  *
7  * http://www.apache.org/licenses/LICENSE-2.0
8  *
9  * Unless required by applicable law or agreed to in writing, software
10  * distributed under the License is distributed on an "AS IS" BASIS,
11  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12  * See the License for the specific language governing permissions and
13  * limitations under the License.
14  */
15 
16 #include "TSAnalyzer.h"
17 
18 namespace ark::es2panda::checker {
19 
20 // from as folder
Check([[maybe_unused]] ir::NamedType *node) const21 checker::Type *TSAnalyzer::Check([[maybe_unused]] ir::NamedType *node) const
22 {
23     UNREACHABLE();
24 }
25 
Check([[maybe_unused]] ir::PrefixAssertionExpression *expr) const26 checker::Type *TSAnalyzer::Check([[maybe_unused]] ir::PrefixAssertionExpression *expr) const
27 {
28     UNREACHABLE();
29 }
30 
Check([[maybe_unused]] ir::ClassProperty *st) const31 checker::Type *TSAnalyzer::Check([[maybe_unused]] ir::ClassProperty *st) const
32 {
33     UNREACHABLE();
34 }
35 
Check([[maybe_unused]] ir::ClassStaticBlock *st) const36 checker::Type *TSAnalyzer::Check([[maybe_unused]] ir::ClassStaticBlock *st) const
37 {
38     UNREACHABLE();
39 }
40 
Check([[maybe_unused]] ir::Decorator *st) const41 checker::Type *TSAnalyzer::Check([[maybe_unused]] ir::Decorator *st) const
42 {
43     UNREACHABLE();
44 }
45 
Check([[maybe_unused]] ir::MethodDefinition *node) const46 checker::Type *TSAnalyzer::Check([[maybe_unused]] ir::MethodDefinition *node) const
47 {
48     UNREACHABLE();
49 }
50 
Check([[maybe_unused]] ir::Property *expr) const51 checker::Type *TSAnalyzer::Check([[maybe_unused]] ir::Property *expr) const
52 {
53     UNREACHABLE();
54 }
55 
Check([[maybe_unused]] ir::ScriptFunction *node) const56 checker::Type *TSAnalyzer::Check([[maybe_unused]] ir::ScriptFunction *node) const
57 {
58     UNREACHABLE();
59 }
60 
Check([[maybe_unused]] ir::SpreadElement *expr) const61 checker::Type *TSAnalyzer::Check([[maybe_unused]] ir::SpreadElement *expr) const
62 {
63     UNREACHABLE();
64 }
65 
Check([[maybe_unused]] ir::TemplateElement *expr) const66 checker::Type *TSAnalyzer::Check([[maybe_unused]] ir::TemplateElement *expr) const
67 {
68     UNREACHABLE();
69 }
70 
71 // from ets folder
Check([[maybe_unused]] ir::ETSScript *expr) const72 checker::Type *TSAnalyzer::Check([[maybe_unused]] ir::ETSScript *expr) const
73 {
74     UNREACHABLE();
75 }
76 
Check([[maybe_unused]] ir::ETSClassLiteral *expr) const77 checker::Type *TSAnalyzer::Check([[maybe_unused]] ir::ETSClassLiteral *expr) const
78 {
79     UNREACHABLE();
80 }
81 
Check([[maybe_unused]] ir::ETSFunctionType *node) const82 checker::Type *TSAnalyzer::Check([[maybe_unused]] ir::ETSFunctionType *node) const
83 {
84     UNREACHABLE();
85 }
86 
Check([[maybe_unused]] ir::ETSImportDeclaration *node) const87 checker::Type *TSAnalyzer::Check([[maybe_unused]] ir::ETSImportDeclaration *node) const
88 {
89     UNREACHABLE();
90 }
91 
Check([[maybe_unused]] ir::ETSLaunchExpression *expr) const92 checker::Type *TSAnalyzer::Check([[maybe_unused]] ir::ETSLaunchExpression *expr) const
93 {
94     UNREACHABLE();
95 }
96 
Check([[maybe_unused]] ir::ETSNewArrayInstanceExpression *expr) const97 checker::Type *TSAnalyzer::Check([[maybe_unused]] ir::ETSNewArrayInstanceExpression *expr) const
98 {
99     UNREACHABLE();
100 }
101 
Check([[maybe_unused]] ir::ETSNewClassInstanceExpression *expr) const102 checker::Type *TSAnalyzer::Check([[maybe_unused]] ir::ETSNewClassInstanceExpression *expr) const
103 {
104     UNREACHABLE();
105 }
106 
Check([[maybe_unused]] ir::ETSNewMultiDimArrayInstanceExpression *expr) const107 checker::Type *TSAnalyzer::Check([[maybe_unused]] ir::ETSNewMultiDimArrayInstanceExpression *expr) const
108 {
109     UNREACHABLE();
110 }
111 
Check([[maybe_unused]] ir::ETSPackageDeclaration *st) const112 checker::Type *TSAnalyzer::Check([[maybe_unused]] ir::ETSPackageDeclaration *st) const
113 {
114     UNREACHABLE();
115 }
116 
Check([[maybe_unused]] ir::ETSParameterExpression *expr) const117 checker::Type *TSAnalyzer::Check([[maybe_unused]] ir::ETSParameterExpression *expr) const
118 {
119     UNREACHABLE();
120 }
121 
Check([[maybe_unused]] ir::ETSPrimitiveType *node) const122 checker::Type *TSAnalyzer::Check([[maybe_unused]] ir::ETSPrimitiveType *node) const
123 {
124     UNREACHABLE();
125 }
126 
Check([[maybe_unused]] ir::ETSStructDeclaration *node) const127 checker::Type *TSAnalyzer::Check([[maybe_unused]] ir::ETSStructDeclaration *node) const
128 {
129     UNREACHABLE();
130 }
131 
Check([[maybe_unused]] ir::ETSTuple *node) const132 checker::Type *TSAnalyzer::Check([[maybe_unused]] ir::ETSTuple *node) const
133 {
134     UNREACHABLE();
135 }
136 
Check([[maybe_unused]] ir::ETSTypeReference *node) const137 checker::Type *TSAnalyzer::Check([[maybe_unused]] ir::ETSTypeReference *node) const
138 {
139     UNREACHABLE();
140 }
141 
Check([[maybe_unused]] ir::ETSTypeReferencePart *node) const142 checker::Type *TSAnalyzer::Check([[maybe_unused]] ir::ETSTypeReferencePart *node) const
143 {
144     UNREACHABLE();
145 }
146 
Check([[maybe_unused]] ir::ETSNullType *node) const147 checker::Type *TSAnalyzer::Check([[maybe_unused]] ir::ETSNullType *node) const
148 {
149     UNREACHABLE();
150 }
151 
Check([[maybe_unused]] ir::ETSUndefinedType *node) const152 checker::Type *TSAnalyzer::Check([[maybe_unused]] ir::ETSUndefinedType *node) const
153 {
154     UNREACHABLE();
155 }
156 
Check([[maybe_unused]] ir::ETSStringLiteralType *node) const157 checker::Type *TSAnalyzer::Check([[maybe_unused]] ir::ETSStringLiteralType *node) const
158 {
159     UNREACHABLE();
160 }
161 
Check([[maybe_unused]] ir::ETSUnionType *node) const162 checker::Type *TSAnalyzer::Check([[maybe_unused]] ir::ETSUnionType *node) const
163 {
164     UNREACHABLE();
165 }
166 
Check([[maybe_unused]] ir::ETSWildcardType *node) const167 checker::Type *TSAnalyzer::Check([[maybe_unused]] ir::ETSWildcardType *node) const
168 {
169     UNREACHABLE();
170 }
171 
Check([[maybe_unused]] ir::BlockExpression *st) const172 checker::Type *TSAnalyzer::Check([[maybe_unused]] ir::BlockExpression *st) const
173 {
174     UNREACHABLE();
175 }
176 
Check([[maybe_unused]] ir::ClassExpression *expr) const177 checker::Type *TSAnalyzer::Check([[maybe_unused]] ir::ClassExpression *expr) const
178 {
179     UNREACHABLE();
180 }
181 
Check([[maybe_unused]] ir::DirectEvalExpression *expr) const182 checker::Type *TSAnalyzer::Check([[maybe_unused]] ir::DirectEvalExpression *expr) const
183 {
184     UNREACHABLE();
185 }
186 
Check([[maybe_unused]] ir::ImportExpression *expr) const187 checker::Type *TSAnalyzer::Check([[maybe_unused]] ir::ImportExpression *expr) const
188 {
189     UNREACHABLE();
190 }
191 
Check([[maybe_unused]] ir::CharLiteral *expr) const192 checker::Type *TSAnalyzer::Check([[maybe_unused]] ir::CharLiteral *expr) const
193 {
194     UNREACHABLE();
195 }
196 
Check([[maybe_unused]] ir::UndefinedLiteral *expr) const197 checker::Type *TSAnalyzer::Check([[maybe_unused]] ir::UndefinedLiteral *expr) const
198 {
199     UNREACHABLE();
200 }
201 
202 // compile methods for MODULE-related nodes in alphabetical order
Check([[maybe_unused]] ir::ExportAllDeclaration *st) const203 checker::Type *TSAnalyzer::Check([[maybe_unused]] ir::ExportAllDeclaration *st) const
204 {
205     UNREACHABLE();
206 }
207 
Check([[maybe_unused]] ir::ExportDefaultDeclaration *st) const208 checker::Type *TSAnalyzer::Check([[maybe_unused]] ir::ExportDefaultDeclaration *st) const
209 {
210     UNREACHABLE();
211 }
212 
Check([[maybe_unused]] ir::ExportNamedDeclaration *st) const213 checker::Type *TSAnalyzer::Check([[maybe_unused]] ir::ExportNamedDeclaration *st) const
214 {
215     UNREACHABLE();
216 }
217 
Check([[maybe_unused]] ir::ExportSpecifier *st) const218 checker::Type *TSAnalyzer::Check([[maybe_unused]] ir::ExportSpecifier *st) const
219 {
220     UNREACHABLE();
221 }
222 
Check([[maybe_unused]] ir::ImportDeclaration *st) const223 checker::Type *TSAnalyzer::Check([[maybe_unused]] ir::ImportDeclaration *st) const
224 {
225     UNREACHABLE();
226 }
227 
Check([[maybe_unused]] ir::ImportDefaultSpecifier *st) const228 checker::Type *TSAnalyzer::Check([[maybe_unused]] ir::ImportDefaultSpecifier *st) const
229 {
230     UNREACHABLE();
231 }
232 
Check([[maybe_unused]] ir::ImportNamespaceSpecifier *st) const233 checker::Type *TSAnalyzer::Check([[maybe_unused]] ir::ImportNamespaceSpecifier *st) const
234 {
235     UNREACHABLE();
236 }
237 
Check([[maybe_unused]] ir::ImportSpecifier *st) const238 checker::Type *TSAnalyzer::Check([[maybe_unused]] ir::ImportSpecifier *st) const
239 {
240     UNREACHABLE();
241 }
242 // compile methods for STATEMENTS in alphabetical order
Check([[maybe_unused]] ir::AssertStatement *st) const243 checker::Type *TSAnalyzer::Check([[maybe_unused]] ir::AssertStatement *st) const
244 {
245     UNREACHABLE();
246 }
247 
Check([[maybe_unused]] ir::ClassDeclaration *st) const248 checker::Type *TSAnalyzer::Check([[maybe_unused]] ir::ClassDeclaration *st) const
249 {
250     UNREACHABLE();
251 }
252 
Check([[maybe_unused]] ir::ContinueStatement *st) const253 checker::Type *TSAnalyzer::Check([[maybe_unused]] ir::ContinueStatement *st) const
254 {
255     UNREACHABLE();
256 }
257 
Check([[maybe_unused]] ir::DebuggerStatement *st) const258 checker::Type *TSAnalyzer::Check([[maybe_unused]] ir::DebuggerStatement *st) const
259 {
260     UNREACHABLE();
261 }
262 
Check([[maybe_unused]] ir::ForInStatement *st) const263 checker::Type *TSAnalyzer::Check([[maybe_unused]] ir::ForInStatement *st) const
264 {
265     UNREACHABLE();
266 }
267 
Check([[maybe_unused]] ir::ForOfStatement *st) const268 checker::Type *TSAnalyzer::Check([[maybe_unused]] ir::ForOfStatement *st) const
269 {
270     UNREACHABLE();
271 }
272 
Check([[maybe_unused]] ir::LabelledStatement *st) const273 checker::Type *TSAnalyzer::Check([[maybe_unused]] ir::LabelledStatement *st) const
274 {
275     UNREACHABLE();
276 }
277 
Check([[maybe_unused]] ir::SwitchCaseStatement *st) const278 checker::Type *TSAnalyzer::Check([[maybe_unused]] ir::SwitchCaseStatement *st) const
279 {
280     UNREACHABLE();
281 }
282 
Check([[maybe_unused]] ir::ThrowStatement *st) const283 checker::Type *TSAnalyzer::Check([[maybe_unused]] ir::ThrowStatement *st) const
284 {
285     UNREACHABLE();
286 }
287 
Check([[maybe_unused]] ir::TSClassImplements *expr) const288 checker::Type *TSAnalyzer::Check([[maybe_unused]] ir::TSClassImplements *expr) const
289 {
290     UNREACHABLE();
291 }
292 
Check([[maybe_unused]] ir::TSConditionalType *node) const293 checker::Type *TSAnalyzer::Check([[maybe_unused]] ir::TSConditionalType *node) const
294 {
295     UNREACHABLE();
296 }
297 
Check([[maybe_unused]] ir::ETSReExportDeclaration *node) const298 checker::Type *TSAnalyzer::Check([[maybe_unused]] ir::ETSReExportDeclaration *node) const
299 {
300     UNREACHABLE();
301 }
302 
Check([[maybe_unused]] ir::TSEnumMember *st) const303 checker::Type *TSAnalyzer::Check([[maybe_unused]] ir::TSEnumMember *st) const
304 {
305     UNREACHABLE();
306 }
307 
Check([[maybe_unused]] ir::TSExternalModuleReference *expr) const308 checker::Type *TSAnalyzer::Check([[maybe_unused]] ir::TSExternalModuleReference *expr) const
309 {
310     UNREACHABLE();
311 }
312 
Check([[maybe_unused]] ir::TSImportEqualsDeclaration *st) const313 checker::Type *TSAnalyzer::Check([[maybe_unused]] ir::TSImportEqualsDeclaration *st) const
314 {
315     UNREACHABLE();
316 }
317 
Check([[maybe_unused]] ir::TSImportType *node) const318 checker::Type *TSAnalyzer::Check([[maybe_unused]] ir::TSImportType *node) const
319 {
320     UNREACHABLE();
321 }
322 
Check([[maybe_unused]] ir::TSInferType *node) const323 checker::Type *TSAnalyzer::Check([[maybe_unused]] ir::TSInferType *node) const
324 {
325     UNREACHABLE();
326 }
327 
Check([[maybe_unused]] ir::TSInterfaceHeritage *expr) const328 checker::Type *TSAnalyzer::Check([[maybe_unused]] ir::TSInterfaceHeritage *expr) const
329 {
330     UNREACHABLE();
331 }
332 
Check([[maybe_unused]] ir::TSIntersectionType *node) const333 checker::Type *TSAnalyzer::Check([[maybe_unused]] ir::TSIntersectionType *node) const
334 {
335     UNREACHABLE();
336 }
337 
Check([[maybe_unused]] ir::TSMappedType *node) const338 checker::Type *TSAnalyzer::Check([[maybe_unused]] ir::TSMappedType *node) const
339 {
340     UNREACHABLE();
341 }
342 
Check([[maybe_unused]] ir::TSModuleBlock *st) const343 checker::Type *TSAnalyzer::Check([[maybe_unused]] ir::TSModuleBlock *st) const
344 {
345     UNREACHABLE();
346 }
347 
Check([[maybe_unused]] ir::TSModuleDeclaration *st) const348 checker::Type *TSAnalyzer::Check([[maybe_unused]] ir::TSModuleDeclaration *st) const
349 {
350     UNREACHABLE();
351 }
352 
Check([[maybe_unused]] ir::TSNonNullExpression *expr) const353 checker::Type *TSAnalyzer::Check([[maybe_unused]] ir::TSNonNullExpression *expr) const
354 {
355     UNREACHABLE();
356 }
357 
Check([[maybe_unused]] ir::TSObjectKeyword *node) const358 checker::Type *TSAnalyzer::Check([[maybe_unused]] ir::TSObjectKeyword *node) const
359 {
360     UNREACHABLE();
361 }
362 
Check([[maybe_unused]] ir::TSParameterProperty *expr) const363 checker::Type *TSAnalyzer::Check([[maybe_unused]] ir::TSParameterProperty *expr) const
364 {
365     UNREACHABLE();
366 }
367 
Check([[maybe_unused]] ir::TSThisType *node) const368 checker::Type *TSAnalyzer::Check([[maybe_unused]] ir::TSThisType *node) const
369 {
370     UNREACHABLE();
371 }
372 
Check([[maybe_unused]] ir::TSTypeAssertion *expr) const373 checker::Type *TSAnalyzer::Check([[maybe_unused]] ir::TSTypeAssertion *expr) const
374 {
375     UNREACHABLE();
376 }
377 
Check([[maybe_unused]] ir::TSTypeOperator *node) const378 checker::Type *TSAnalyzer::Check([[maybe_unused]] ir::TSTypeOperator *node) const
379 {
380     UNREACHABLE();
381 }
382 
Check([[maybe_unused]] ir::TSTypeParameter *expr) const383 checker::Type *TSAnalyzer::Check([[maybe_unused]] ir::TSTypeParameter *expr) const
384 {
385     UNREACHABLE();
386 }
387 
Check([[maybe_unused]] ir::TSTypeParameterDeclaration *expr) const388 checker::Type *TSAnalyzer::Check([[maybe_unused]] ir::TSTypeParameterDeclaration *expr) const
389 {
390     UNREACHABLE();
391 }
392 
Check([[maybe_unused]] ir::TSTypeParameterInstantiation *expr) const393 checker::Type *TSAnalyzer::Check([[maybe_unused]] ir::TSTypeParameterInstantiation *expr) const
394 {
395     UNREACHABLE();
396 }
397 
Check([[maybe_unused]] ir::TSTypePredicate *node) const398 checker::Type *TSAnalyzer::Check([[maybe_unused]] ir::TSTypePredicate *node) const
399 {
400     UNREACHABLE();
401 }
402 
Check([[maybe_unused]] ir::DummyNode *node) const403 checker::Type *TSAnalyzer::Check([[maybe_unused]] ir::DummyNode *node) const
404 {
405     UNREACHABLE();
406 }
407 
Check([[maybe_unused]] ir::NamespaceDeclaration *expr) const408 checker::Type *TSAnalyzer::Check([[maybe_unused]] ir::NamespaceDeclaration *expr) const
409 {
410     UNREACHABLE();
411 }
412 
Check([[maybe_unused]] ir::NamespaceDefinition *expr) const413 checker::Type *TSAnalyzer::Check([[maybe_unused]] ir::NamespaceDefinition *expr) const
414 {
415     UNREACHABLE();
416 }
417 }  // namespace ark::es2panda::checker
418