• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1/*
2 * Copyright (c) 2022-2025 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// HANDWRITTEN (for now)
17
18export enum Es2pandaAstNodeType {
19    AST_NODE_TYPE_ARROW_FUNCTION_EXPRESSION,
20    AST_NODE_TYPE_ANNOTATION_DECLARATION,
21    AST_NODE_TYPE_ANNOTATION_USAGE,
22    AST_NODE_TYPE_ASSERT_STATEMENT,
23    AST_NODE_TYPE_AWAIT_EXPRESSION,
24    AST_NODE_TYPE_BIGINT_LITERAL,
25    AST_NODE_TYPE_BINARY_EXPRESSION,
26    AST_NODE_TYPE_BLOCK_STATEMENT,
27    AST_NODE_TYPE_BOOLEAN_LITERAL,
28    AST_NODE_TYPE_BREAK_STATEMENT,
29    AST_NODE_TYPE_CALL_EXPRESSION,
30    AST_NODE_TYPE_CATCH_CLAUSE,
31    AST_NODE_TYPE_CHAIN_EXPRESSION,
32    AST_NODE_TYPE_CHAR_LITERAL,
33    AST_NODE_TYPE_CLASS_DEFINITION,
34    AST_NODE_TYPE_CLASS_DECLARATION,
35    AST_NODE_TYPE_CLASS_EXPRESSION,
36    AST_NODE_TYPE_CLASS_PROPERTY,
37    AST_NODE_TYPE_CLASS_STATIC_BLOCK,
38    AST_NODE_TYPE_CONDITIONAL_EXPRESSION,
39    AST_NODE_TYPE_CONTINUE_STATEMENT,
40    AST_NODE_TYPE_DEBUGGER_STATEMENT,
41    AST_NODE_TYPE_DECORATOR,
42    AST_NODE_TYPE_DIRECT_EVAL,
43    AST_NODE_TYPE_DO_WHILE_STATEMENT,
44    AST_NODE_TYPE_EMPTY_STATEMENT,
45    AST_NODE_TYPE_EXPORT_ALL_DECLARATION,
46    AST_NODE_TYPE_EXPORT_DEFAULT_DECLARATION,
47    AST_NODE_TYPE_EXPORT_NAMED_DECLARATION,
48    AST_NODE_TYPE_EXPORT_SPECIFIER,
49    AST_NODE_TYPE_EXPRESSION_STATEMENT,
50    AST_NODE_TYPE_FOR_IN_STATEMENT,
51    AST_NODE_TYPE_FOR_OF_STATEMENT,
52    AST_NODE_TYPE_FOR_UPDATE_STATEMENT,
53    AST_NODE_TYPE_FUNCTION_DECLARATION,
54    AST_NODE_TYPE_FUNCTION_EXPRESSION,
55    AST_NODE_TYPE_IDENTIFIER,
56    AST_NODE_TYPE_DUMMYNODE,
57    AST_NODE_TYPE_IF_STATEMENT,
58    AST_NODE_TYPE_IMPORT_DECLARATION,
59    AST_NODE_TYPE_IMPORT_EXPRESSION,
60    AST_NODE_TYPE_IMPORT_DEFAULT_SPECIFIER,
61    AST_NODE_TYPE_IMPORT_NAMESPACE_SPECIFIER,
62    AST_NODE_TYPE_IMPORT_SPECIFIER,
63    AST_NODE_TYPE_LABELLED_STATEMENT,
64    AST_NODE_TYPE_MEMBER_EXPRESSION,
65    AST_NODE_TYPE_META_PROPERTY_EXPRESSION,
66    AST_NODE_TYPE_METHOD_DEFINITION,
67    AST_NODE_TYPE_NAMED_TYPE,
68    AST_NODE_TYPE_NEW_EXPRESSION,
69    AST_NODE_TYPE_NULL_LITERAL,
70    AST_NODE_TYPE_UNDEFINED_LITERAL,
71    AST_NODE_TYPE_NUMBER_LITERAL,
72    AST_NODE_TYPE_OMITTED_EXPRESSION,
73    AST_NODE_TYPE_PREFIX_ASSERTION_EXPRESSION,
74    AST_NODE_TYPE_PROPERTY,
75    AST_NODE_TYPE_REGEXP_LITERAL,
76    AST_NODE_TYPE_REEXPORT_STATEMENT,
77    AST_NODE_TYPE_RETURN_STATEMENT,
78    AST_NODE_TYPE_SCRIPT_FUNCTION,
79    AST_NODE_TYPE_SEQUENCE_EXPRESSION,
80    AST_NODE_TYPE_STRING_LITERAL,
81    AST_NODE_TYPE_ETS_NON_NULLISH_TYPE,
82    AST_NODE_TYPE_ETS_NULL_TYPE,
83    AST_NODE_TYPE_ETS_UNDEFINED_TYPE,
84    AST_NODE_TYPE_ETS_NEVER_TYPE,
85    AST_NODE_TYPE_ETS_STRING_LITERAL_TYPE,
86    AST_NODE_TYPE_ETS_FUNCTION_TYPE,
87    AST_NODE_TYPE_ETS_WILDCARD_TYPE,
88    AST_NODE_TYPE_ETS_PRIMITIVE_TYPE,
89    AST_NODE_TYPE_ETS_PACKAGE_DECLARATION,
90    AST_NODE_TYPE_ETS_CLASS_LITERAL,
91    AST_NODE_TYPE_ETS_TYPE_REFERENCE,
92    AST_NODE_TYPE_ETS_TYPE_REFERENCE_PART,
93    AST_NODE_TYPE_ETS_UNION_TYPE,
94    AST_NODE_TYPE_ETS_KEYOF_TYPE,
95    AST_NODE_TYPE_ETS_NEW_ARRAY_INSTANCE_EXPRESSION,
96    AST_NODE_TYPE_ETS_NEW_MULTI_DIM_ARRAY_INSTANCE_EXPRESSION,
97    AST_NODE_TYPE_ETS_NEW_CLASS_INSTANCE_EXPRESSION,
98    AST_NODE_TYPE_ETS_IMPORT_DECLARATION,
99    AST_NODE_TYPE_ETS_PARAMETER_EXPRESSION,
100    AST_NODE_TYPE_ETS_TUPLE,
101    AST_NODE_TYPE_ETS_MODULE,
102    AST_NODE_TYPE_SUPER_EXPRESSION,
103    AST_NODE_TYPE_STRUCT_DECLARATION,
104    AST_NODE_TYPE_SWITCH_CASE_STATEMENT,
105    AST_NODE_TYPE_SWITCH_STATEMENT,
106    AST_NODE_TYPE_TS_ENUM_DECLARATION,
107    AST_NODE_TYPE_TS_ENUM_MEMBER,
108    AST_NODE_TYPE_TS_EXTERNAL_MODULE_REFERENCE,
109    AST_NODE_TYPE_TS_NUMBER_KEYWORD,
110    AST_NODE_TYPE_TS_ANY_KEYWORD,
111    AST_NODE_TYPE_TS_STRING_KEYWORD,
112    AST_NODE_TYPE_TS_BOOLEAN_KEYWORD,
113    AST_NODE_TYPE_TS_VOID_KEYWORD,
114    AST_NODE_TYPE_TS_UNDEFINED_KEYWORD,
115    AST_NODE_TYPE_TS_UNKNOWN_KEYWORD,
116    AST_NODE_TYPE_TS_OBJECT_KEYWORD,
117    AST_NODE_TYPE_TS_BIGINT_KEYWORD,
118    AST_NODE_TYPE_TS_NEVER_KEYWORD,
119    AST_NODE_TYPE_TS_NON_NULL_EXPRESSION,
120    AST_NODE_TYPE_TS_NULL_KEYWORD,
121    AST_NODE_TYPE_TS_ARRAY_TYPE,
122    AST_NODE_TYPE_TS_UNION_TYPE,
123    AST_NODE_TYPE_TS_TYPE_LITERAL,
124    AST_NODE_TYPE_TS_PROPERTY_SIGNATURE,
125    AST_NODE_TYPE_TS_METHOD_SIGNATURE,
126    AST_NODE_TYPE_TS_SIGNATURE_DECLARATION,
127    AST_NODE_TYPE_TS_PARENT_TYPE,
128    AST_NODE_TYPE_TS_LITERAL_TYPE,
129    AST_NODE_TYPE_TS_INFER_TYPE,
130    AST_NODE_TYPE_TS_CONDITIONAL_TYPE,
131    AST_NODE_TYPE_TS_IMPORT_TYPE,
132    AST_NODE_TYPE_TS_INTERSECTION_TYPE,
133    AST_NODE_TYPE_TS_MAPPED_TYPE,
134    AST_NODE_TYPE_TS_MODULE_BLOCK,
135    AST_NODE_TYPE_TS_THIS_TYPE,
136    AST_NODE_TYPE_TS_TYPE_OPERATOR,
137    AST_NODE_TYPE_TS_TYPE_PARAMETER,
138    AST_NODE_TYPE_TS_TYPE_PARAMETER_DECLARATION,
139    AST_NODE_TYPE_TS_TYPE_PARAMETER_INSTANTIATION,
140    AST_NODE_TYPE_TS_TYPE_PREDICATE,
141    AST_NODE_TYPE_TS_PARAMETER_PROPERTY,
142    AST_NODE_TYPE_TS_MODULE_DECLARATION,
143    AST_NODE_TYPE_TS_IMPORT_EQUALS_DECLARATION,
144    AST_NODE_TYPE_TS_FUNCTION_TYPE,
145    AST_NODE_TYPE_TS_CONSTRUCTOR_TYPE,
146    AST_NODE_TYPE_TS_TYPE_ALIAS_DECLARATION,
147    AST_NODE_TYPE_TS_TYPE_REFERENCE,
148    AST_NODE_TYPE_TS_QUALIFIED_NAME,
149    AST_NODE_TYPE_TS_INDEXED_ACCESS_TYPE,
150    AST_NODE_TYPE_TS_INTERFACE_DECLARATION,
151    AST_NODE_TYPE_TS_INTERFACE_BODY,
152    AST_NODE_TYPE_TS_INTERFACE_HERITAGE,
153    AST_NODE_TYPE_TS_TUPLE_TYPE,
154    AST_NODE_TYPE_TS_NAMED_TUPLE_MEMBER,
155    AST_NODE_TYPE_TS_INDEX_SIGNATURE,
156    AST_NODE_TYPE_TS_TYPE_QUERY,
157    AST_NODE_TYPE_TS_AS_EXPRESSION,
158    AST_NODE_TYPE_TS_CLASS_IMPLEMENTS,
159    AST_NODE_TYPE_TS_TYPE_ASSERTION,
160    AST_NODE_TYPE_TAGGED_TEMPLATE_EXPRESSION,
161    AST_NODE_TYPE_TEMPLATE_ELEMENT,
162    AST_NODE_TYPE_TEMPLATE_LITERAL,
163    AST_NODE_TYPE_THIS_EXPRESSION,
164    AST_NODE_TYPE_TYPEOF_EXPRESSION,
165    AST_NODE_TYPE_THROW_STATEMENT,
166    AST_NODE_TYPE_TRY_STATEMENT,
167    AST_NODE_TYPE_UNARY_EXPRESSION,
168    AST_NODE_TYPE_UPDATE_EXPRESSION,
169    AST_NODE_TYPE_VARIABLE_DECLARATION,
170    AST_NODE_TYPE_VARIABLE_DECLARATOR,
171    AST_NODE_TYPE_WHILE_STATEMENT,
172    AST_NODE_TYPE_YIELD_EXPRESSION,
173    AST_NODE_TYPE_OPAQUE_TYPE_NODE,
174    AST_NODE_TYPE_BLOCK_EXPRESSION,
175    AST_NODE_TYPE_ERROR_TYPE_NODE,
176    AST_NODE_TYPE_ARRAY_EXPRESSION,
177    AST_NODE_TYPE_ARRAY_PATTERN,
178    AST_NODE_TYPE_ASSIGNMENT_EXPRESSION,
179    AST_NODE_TYPE_ASSIGNMENT_PATTERN,
180    AST_NODE_TYPE_OBJECT_EXPRESSION,
181    AST_NODE_TYPE_OBJECT_PATTERN,
182    AST_NODE_TYPE_SPREAD_ELEMENT,
183    AST_NODE_TYPE_REST_ELEMENT,
184}
185
186export enum Es2pandaImportFlags {
187    IMPORT_FLAGS_NONE,
188    IMPORT_FLAGS_DEFAULT_IMPORT,
189    IMPORT_FLAGS_IMPLICIT_PACKAGE_IMPORT,
190}
191