13af6ab5fSopenharmony_ci# Copyright (c) 2021-2024 Huawei Device Co., Ltd.
23af6ab5fSopenharmony_ci# Licensed under the Apache License, Version 2.0 (the "License");
33af6ab5fSopenharmony_ci# you may not use this file except in compliance with the License.
43af6ab5fSopenharmony_ci# You may obtain a copy of the License at
53af6ab5fSopenharmony_ci#
63af6ab5fSopenharmony_ci# http://www.apache.org/licenses/LICENSE-2.0
73af6ab5fSopenharmony_ci#
83af6ab5fSopenharmony_ci# Unless required by applicable law or agreed to in writing, software
93af6ab5fSopenharmony_ci# distributed under the License is distributed on an "AS IS" BASIS,
103af6ab5fSopenharmony_ci# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
113af6ab5fSopenharmony_ci# See the License for the specific language governing permissions and
123af6ab5fSopenharmony_ci# limitations under the License.
133af6ab5fSopenharmony_ci
143af6ab5fSopenharmony_ci
153af6ab5fSopenharmony_ci#CMake for generate es2panda_lib files
163af6ab5fSopenharmony_ci
173af6ab5fSopenharmony_ciset(LIB_NAME es2panda_lib)
183af6ab5fSopenharmony_ciset(LIBGEN_DIR ${GENERATED_DIR}/${LIB_NAME})
193af6ab5fSopenharmony_cimake_directory(${LIBGEN_DIR})
203af6ab5fSopenharmony_ciset(RB_LIST "")
213af6ab5fSopenharmony_ci
223af6ab5fSopenharmony_ciset(ES2PANDA_API
233af6ab5fSopenharmony_ci    ${CMAKE_CURRENT_SOURCE_DIR}/cppToCTypes.yaml
243af6ab5fSopenharmony_ci)
253af6ab5fSopenharmony_ci
263af6ab5fSopenharmony_ciset (HEADERS_TO_BE_PARSED
273af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/varbinder/variableFlags.h
283af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/lexer/regexp/regexp.h
293af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/util/language.h
303af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/lexer/token/tokenType.h
313af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/ir/astNodeFlags.h
323af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/ir/astNodeMapping.h
333af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/ir/module/exportDefaultDeclaration.h
343af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/ir/statements/forInStatement.h
353af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/checker/types/ts/voidType.h
363af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/ir/expressions/classExpression.h
373af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/ir/ts/tsConditionalType.h
383af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/ir/expressions/templateLiteral.h
393af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/ir/statements/breakStatement.h
403af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/ir/ets/etsImportDeclaration.h
413af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/ir/ts/tsArrayType.h
423af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/checker/types/ts/numberType.h
433af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/ir/module/importDefaultSpecifier.h
443af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/checker/types/ets/etsFunctionType.h
453af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/ir/base/classDefinition.h
463af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/checker/types/ts/typeParameter.h
473af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/checker/types/ets/etsEnumType.h
483af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/ir/statement.h
493af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/ir/irnode.h
503af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/checker/types/typeRelation.h
513af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/ir/visitor/AstVisitor.h
523af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/ir/statements/classDeclaration.h
533af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/ir/base/tsMethodSignature.h
543af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/ir/ts/tsExternalModuleReference.h
553af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/ir/ts/tsInterfaceBody.h
563af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/checker/types/ts/nonPrimitiveType.h
573af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/ir/ts/tsTypeParameterInstantiation.h
583af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/ir/module/importDeclaration.h
593af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/checker/types/ets/etsDynamicType.h
603af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/ir/statements/doWhileStatement.h
613af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/ir/expressions/literals/bigIntLiteral.h
623af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/ir/expressions/assignmentExpression.h
633af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/ir/srcDump.h
643af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/checker/types/ets/etsBooleanType.h
653af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/ir/expressions/sequenceExpression.h
663af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/ir/expressions/literals/nullLiteral.h
673af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/ir/ts/tsStringKeyword.h
683af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/ir/ts/tsUnionType.h
693af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/ir/ts/tsClassImplements.h
703af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/checker/types/typeFlag.h
713af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/ir/base/tsPropertySignature.h
723af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/checker/types/ts/stringLiteralType.h
733af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/ir/expressions/conditionalExpression.h
743af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/ir/ts/tsFunctionType.h
753af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/checker/types/ts/undefinedType.h
763af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/checker/types/ts/numberLiteralType.h
773af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/ir/ts/tsObjectKeyword.h
783af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/checker/types/ts/tupleType.h
793af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/checker/types/ets/etsStringType.h
803af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/ir/base/property.h
813af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/ir/astDump.h
823af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/ir/base/tsSignatureDeclaration.h
833af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/ir/ets/etsReExportDeclaration.h
843af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/ir/ts/tsUndefinedKeyword.h
853af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/ir/expressions/arrowFunctionExpression.h
863af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/ir/expressions/callExpression.h
873af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/ir/ts/tsInterfaceHeritage.h
883af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/ir/expressions/updateExpression.h
893af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/ir/module/importSpecifier.h
903af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/ir/ets/etsNewClassInstanceExpression.h
913af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/ir/statements/labelledStatement.h
923af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/ir/ts/tsModuleBlock.h
933af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/ir/ts/tsTypePredicate.h
943af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/ir/base/catchClause.h
953af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/ir/base/classProperty.h
963af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/ir/base/tsIndexSignature.h
973af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/checker/types/ts/arrayType.h
983af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/ir/astNode.h
993af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/ir/statements/ifStatement.h
1003af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/ir/ets/etsTuple.h
1013af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/ir/module/exportSpecifier.h
1023af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/ir/ts/tsNamedTupleMember.h
1033af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/ir/statements/returnStatement.h
1043af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/checker/types/ts/neverType.h
1053af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/checker/types/ts/unionType.h
1063af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/ir/statements/tryStatement.h
1073af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/ir/ts/tsQualifiedName.h
1083af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/checker/types/ts/types.h
1093af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/ir/ts/tsLiteralType.h
1103af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/checker/types/typeMapping.h
1113af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/checker/types/ets/etsBigIntType.h
1123af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/ir/expressions/arrayExpression.h
1133af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/ir/ets/etsUnionType.h
1143af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/ir/ts/tsTypeParameter.h
1153af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/ir/ts/tsConstructorType.h
1163af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/ir/ts/tsTypeParameterDeclaration.h
1173af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/checker/types/ts/enumLiteralType.h
1183af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/ir/expressions/literals/charLiteral.h
1193af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/ir/base/classElement.h
1203af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/ir/statements/switchStatement.h
1213af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/ir/expressions/identifier.h
1223af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/ir/expressions/objectExpression.h
1233af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/ir/statements/functionDeclaration.h
1243af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/ir/as/prefixAssertionExpression.h
1253af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/checker/types/ts/typeReference.h
1263af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/ir/expressions/memberExpression.h
1273af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/checker/types/ets/etsExtensionFuncHelperType.h
1283af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/ir/ets/etsNullishTypes.h
1293af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/ir/ets/etsLaunchExpression.h
1303af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/ir/expressions/awaitExpression.h
1313af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/ir/ets/etsFunctionType.h
1323af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/checker/types/ets/etsArrayType.h
1333af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/ir/expressions/binaryExpression.h
1343af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/checker/types/ets/etsNullishTypes.h
1353af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/ir/expressions/newExpression.h
1363af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/ir/expressions/literals/stringLiteral.h
1373af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/ir/ts/tsTupleType.h
1383af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/checker/types/ets/longType.h
1393af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/ir/module/exportAllDeclaration.h
1403af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/checker/types/ts/bigintType.h
1413af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/ir/ts/tsParenthesizedType.h
1423af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/ir/ts/tsModuleDeclaration.h
1433af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/ir/ets/etsPackageDeclaration.h
1443af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/checker/types/ets/etsDynamicFunctionType.h
1453af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/ir/expressions/literals/regExpLiteral.h
1463af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/ir/ets/etsNewArrayInstanceExpression.h
1473af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/checker/types/ets/etsVoidType.h
1483af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/ir/base/metaProperty.h
1493af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/checker/types/type.h
1503af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/checker/types/ts/booleanLiteralType.h
1513af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/checker/types/ts/anyType.h
1523af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/ir/ets/etsScript.h
1533af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/ir/ts/tsInferType.h
1543af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/ir/ts/tsMappedType.h
1553af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/ir/statements/debuggerStatement.h
1563af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/ir/ts/tsBooleanKeyword.h
1573af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/ir/ts/tsEnumDeclaration.h
1583af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/checker/types/ets/etsObjectType.h
1593af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/checker/types/ts/interfaceType.h
1603af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/checker/types/ts/functionType.h
1613af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/ir/statements/emptyStatement.h
1623af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/ir/expressions/omittedExpression.h
1633af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/ir/ts/tsNeverKeyword.h
1643af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/ir/expressions/blockExpression.h
1653af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/checker/types/ts/objectDescriptor.h
1663af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/ir/ts/tsBigintKeyword.h
1673af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/ir/statements/blockStatement.h
1683af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/ir/expressions/literals/numberLiteral.h
1693af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/checker/types/ets/shortType.h
1703af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/checker/types/ts/bigintLiteralType.h
1713af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/ir/expression.h
1723af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/checker/types/ts/objectLiteralType.h
1733af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/ir/typeNode.h
1743af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/ir/base/spreadElement.h
1753af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/ir/ts/tsTypeAssertion.h
1763af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/ir/ts/tsTypeOperator.h
1773af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/ir/ts/tsAsExpression.h
1783af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/ir/statements/expressionStatement.h
1793af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/checker/types/ts/elementFlags.h
1803af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/ir/ts/tsImportType.h
1813af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/checker/types/ts/indexInfo.h
1823af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/checker/types/ets/etsTupleType.h
1833af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/checker/types/signature.h
1843af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/ir/ets/etsPrimitiveType.h
1853af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/ir/as/namedType.h
1863af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/ir/statements/throwStatement.h
1873af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/ir/statements/forOfStatement.h
1883af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/ir/statements/switchCaseStatement.h
1893af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/ir/base/templateElement.h
1903af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/checker/types/ets/charType.h
1913af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/checker/types/ets/intType.h
1923af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/ir/statements/forUpdateStatement.h
1933af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/checker/types/ets/floatType.h
1943af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/ir/ets/etsImportSource.h
1953af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/ir/ets/etsTypeReferencePart.h
1963af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/ir/ts/tsUnknownKeyword.h
1973af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/ir/ets/etsStructDeclaration.h
1983af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/checker/types/ts/objectType.h
1993af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/ir/expressions/chainExpression.h
2003af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/checker/types/ets/byteType.h
2013af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/ir/ts/tsVoidKeyword.h
2023af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/ir/statements/whileStatement.h
2033af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/ir/expressions/taggedTemplateExpression.h
2043af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/ir/statements/assertStatement.h
2053af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/checker/types/ets/etsUnionType.h
2063af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/checker/types/ts/stringType.h
2073af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/ir/expressions/literals/booleanLiteral.h
2083af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/ir/expressions/functionExpression.h
2093af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/ir/statements/variableDeclarator.h
2103af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/ir/module/importNamespaceSpecifier.h
2113af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/ir/module/exportNamedDeclaration.h
2123af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/ir/expressions/thisExpression.h
2133af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/ir/ts/tsTypeReference.h
2143af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/ir/base/classStaticBlock.h
2153af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/ir/expressions/unaryExpression.h
2163af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/ir/ts/tsThisType.h
2173af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/ir/ts/tsNullKeyword.h
2183af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/checker/types/ets/etsTypeParameter.h
2193af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/checker/types/typeFacts.h
2203af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/ir/base/decorator.h
2213af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/checker/types/globalTypesHolder.h
2223af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/ir/ets/etsClassLiteral.h
2233af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/ir/ts/tsTypeAliasDeclaration.h
2243af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/ir/ts/tsNonNullExpression.h
2253af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/ir/ts/tsTypeLiteral.h
2263af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/ir/ts/tsNumberKeyword.h
2273af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/ir/opaqueTypeNode.h
2283af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/ir/base/scriptFunction.h
2293af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/ir/expressions/literal.h
2303af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/ir/ts/tsInterfaceDeclaration.h
2313af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/ir/ts/tsImportEqualsDeclaration.h
2323af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/ir/validationInfo.h
2333af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/ir/base/methodDefinition.h
2343af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/ir/ts/tsIntersectionType.h
2353af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/checker/types/ts/nullType.h
2363af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/checker/types/ts/unknownType.h
2373af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/ir/ts/tsEnumMember.h
2383af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/ir/expressions/superExpression.h
2393af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/checker/types/ts/constructorType.h
2403af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/ir/ets/etsTypeReference.h
2413af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/checker/types/ets/etsNonNullishType.h
2423af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/checker/types/ets/etsObjectTypeConstants.h
2433af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/checker/types/ets/types.h
2443af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/ir/statements/variableDeclaration.h
2453af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/ir/opcodeMap.h
2463af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/ir/ts/tsAnyKeyword.h
2473af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/checker/types/ets/doubleType.h
2483af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/ir/visitor/IterateAstVisitor.h
2493af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/checker/types/ts/enumType.h
2503af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/ir/expressions/directEvalExpression.h
2513af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/ir/ts/tsParameterProperty.h
2523af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/ir/statements/continueStatement.h
2533af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/ir/ets/etsWildcardType.h
2543af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/ir/expressions/literals/undefinedLiteral.h
2553af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/ir/ts/tsIndexedAccessType.h
2563af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/checker/types/ets/wildcardType.h
2573af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/checker/types/ts/booleanType.h
2583af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/ir/expressions/typeofExpression.h
2593af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/checker/types/ets/etsAsyncFuncReturnType.h
2603af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/ir/statements/loopStatement.h
2613af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/ir/base/scriptFunctionSignature.h
2623af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/ir/expressions/yieldExpression.h
2633af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/ir/ets/etsNewMultiDimArrayInstanceExpression.h
2643af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/ir/ets/etsParameterExpression.h
2653af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/ir/ts/tsTypeQuery.h
2663af6ab5fSopenharmony_ci    ${ES2PANDA_ROOT}/ir/expressions/importExpression.h
2673af6ab5fSopenharmony_ci)
2683af6ab5fSopenharmony_ci
2693af6ab5fSopenharmony_ciset (ES2PANDA_API_GENERATED
2703af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/ir/statements/labelledStatement.yaml
2713af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/checker/types/ts/unknownType.yaml
2723af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/ir/statements/throwStatement.yaml
2733af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/ir/base/classProperty.yaml
2743af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/ir/ts/tsVoidKeyword.yaml
2753af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/checker/types/ts/stringLiteralType.yaml
2763af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/ir/ets/etsFunctionType.yaml
2773af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/ir/ts/tsTypeOperator.yaml
2783af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/ir/statements/ifStatement.yaml
2793af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/ir/ts/tsConstructorType.yaml
2803af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/ir/base/decorator.yaml
2813af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/ir/ts/tsEnumDeclaration.yaml
2823af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/ir/ts/tsNeverKeyword.yaml
2833af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/ir/module/importDefaultSpecifier.yaml
2843af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/checker/types/ts/objectType.yaml
2853af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/ir/expressions/objectExpression.yaml
2863af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/ir/module/importSpecifier.yaml
2873af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/ir/expressions/conditionalExpression.yaml
2883af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/checker/types/ets/etsDynamicFunctionType.yaml
2893af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/ir/expressions/callExpression.yaml
2903af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/ir/expressions/literals/bigIntLiteral.yaml
2913af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/ir/base/classElement.yaml
2923af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/checker/types/ets/types.yaml
2933af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/ir/ts/tsImportType.yaml
2943af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/ir/expressions/taggedTemplateExpression.yaml
2953af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/ir/visitor/IterateAstVisitor.yaml
2963af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/ir/statements/functionDeclaration.yaml
2973af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/ir/ets/etsTypeReference.yaml
2983af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/checker/types/ts/tupleType.yaml
2993af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/ir/ts/tsTypeReference.yaml
3003af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/checker/types/ts/functionType.yaml
3013af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/ir/ets/etsImportSource.yaml
3023af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/ir/as/namedType.yaml
3033af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/ir/expressions/literals/numberLiteral.yaml
3043af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/ir/ts/tsFunctionType.yaml
3053af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/ir/base/templateElement.yaml
3063af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/ir/ts/tsInterfaceDeclaration.yaml
3073af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/checker/types/ts/typeReference.yaml
3083af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/ir/statements/variableDeclaration.yaml
3093af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/checker/types/ts/booleanType.yaml
3103af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/checker/types/ts/neverType.yaml
3113af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/checker/types/ts/numberType.yaml
3123af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/ir/expressions/literals/undefinedLiteral.yaml
3133af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/allEnums.yaml
3143af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/checker/types/ts/indexInfo.yaml
3153af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/checker/types/ets/etsFunctionType.yaml
3163af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/ir/expressions/memberExpression.yaml
3173af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/ir/ts/tsClassImplements.yaml
3183af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/ir/ts/tsObjectKeyword.yaml
3193af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/checker/types/ts/unionType.yaml
3203af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/ir/ets/etsUnionType.yaml
3213af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/ir/base/tsPropertySignature.yaml
3223af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/checker/types/ts/objectDescriptor.yaml
3233af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/ir/ts/tsConditionalType.yaml
3243af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/ir/ts/tsLiteralType.yaml
3253af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/ir/ts/tsTypeAliasDeclaration.yaml
3263af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/ir/statements/debuggerStatement.yaml
3273af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/checker/types/ts/elementFlags.yaml
3283af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/ir/statements/returnStatement.yaml
3293af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/ir/module/exportDefaultDeclaration.yaml
3303af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/ir/base/scriptFunction.yaml
3313af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/ir/base/classDefinition.yaml
3323af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/checker/types/ets/etsArrayType.yaml
3333af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/checker/types/ts/interfaceType.yaml
3343af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/ir/expressions/arrayExpression.yaml
3353af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/ir/ts/tsInterfaceBody.yaml
3363af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/ir/ts/tsTypeQuery.yaml
3373af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/ir/ts/tsBigintKeyword.yaml
3383af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/ir/base/property.yaml
3393af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/ir/statements/variableDeclarator.yaml
3403af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/ir/expressions/literals/stringLiteral.yaml
3413af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/ir/ts/tsTypeAssertion.yaml
3423af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/ir/ts/tsExternalModuleReference.yaml
3433af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/ir/ts/tsUndefinedKeyword.yaml
3443af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/checker/types/signature.yaml
3453af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/ir/ets/etsTuple.yaml
3463af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/util/language.yaml
3473af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/ir/statements/tryStatement.yaml
3483af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/checker/types/ets/etsBigIntType.yaml
3493af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/checker/types/ts/anyType.yaml
3503af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/checker/types/globalTypesHolder.yaml
3513af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/checker/types/ets/longType.yaml
3523af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/ir/astNode.yaml
3533af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/ir/expressions/unaryExpression.yaml
3543af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/ir/statements/forInStatement.yaml
3553af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/ir/expressions/thisExpression.yaml
3563af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/ir/base/tsMethodSignature.yaml
3573af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/ir/expressions/binaryExpression.yaml
3583af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/checker/types/ts/bigintLiteralType.yaml
3593af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/ir/expressions/superExpression.yaml
3603af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/ir/statements/assertStatement.yaml
3613af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/ir/ts/tsStringKeyword.yaml
3623af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/checker/types/ets/etsAsyncFuncReturnType.yaml
3633af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/ir/expressions/assignmentExpression.yaml
3643af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/ir/astNodeMapping.yaml
3653af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/checker/types/ts/voidType.yaml
3663af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/checker/types/ets/doubleType.yaml
3673af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/ir/statements/expressionStatement.yaml
3683af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/ir/ets/etsScript.yaml
3693af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/ir/base/metaProperty.yaml
3703af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/ir/ts/tsArrayType.yaml
3713af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/ir/base/tsSignatureDeclaration.yaml
3723af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/ir/module/exportAllDeclaration.yaml
3733af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/ir/module/exportSpecifier.yaml
3743af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/ir/ts/tsTupleType.yaml
3753af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/ir/expressions/functionExpression.yaml
3763af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/checker/types/ets/etsExtensionFuncHelperType.yaml
3773af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/ir/base/tsIndexSignature.yaml
3783af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/checker/types/ts/nullType.yaml
3793af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/ir/ts/tsModuleDeclaration.yaml
3803af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/checker/types/ets/etsVoidType.yaml
3813af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/checker/types/ets/etsNonNullishType.yaml
3823af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/checker/types/ts/bigintType.yaml
3833af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/ir/module/importDeclaration.yaml
3843af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/checker/types/ets/etsStringType.yaml
3853af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/ir/ts/tsParenthesizedType.yaml
3863af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/ir/astNodeFlags.yaml
3873af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/checker/types/ts/typeParameter.yaml
3883af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/ir/expressions/literal.yaml
3893af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/ir/expressions/literals/charLiteral.yaml
3903af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/checker/types/ets/intType.yaml
3913af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/checker/types/ts/objectLiteralType.yaml
3923af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/checker/types/typeFlag.yaml
3933af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/ir/ets/etsPackageDeclaration.yaml
3943af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/ir/ets/etsImportDeclaration.yaml
3953af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/ir/ets/etsStructDeclaration.yaml
3963af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/ir/ts/tsModuleBlock.yaml
3973af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/ir/ets/etsNewArrayInstanceExpression.yaml
3983af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/ir/statements/loopStatement.yaml
3993af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/ir/statements/emptyStatement.yaml
4003af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/ir/ets/etsLaunchExpression.yaml
4013af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/ir/statements/whileStatement.yaml
4023af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/ir/base/scriptFunctionSignature.yaml
4033af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/checker/types/ts/numberLiteralType.yaml
4043af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/checker/types/typeMapping.yaml
4053af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/ir/expressions/chainExpression.yaml
4063af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/ir/ts/tsIntersectionType.yaml
4073af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/ir/expressions/updateExpression.yaml
4083af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/checker/types/ets/etsEnumType.yaml
4093af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/ir/expressions/blockExpression.yaml
4103af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/ir/ts/tsTypeLiteral.yaml
4113af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/ir/ts/tsTypeParameter.yaml
4123af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/checker/types/ets/etsDynamicType.yaml
4133af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/checker/types/ets/charType.yaml
4143af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/ir/ts/tsBooleanKeyword.yaml
4153af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/ir/base/spreadElement.yaml
4163af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/ir/ts/tsTypePredicate.yaml
4173af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/ir/module/importNamespaceSpecifier.yaml
4183af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/ir/module/exportNamedDeclaration.yaml
4193af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/ir/ets/etsParameterExpression.yaml
4203af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/ir/ts/tsTypeParameterInstantiation.yaml
4213af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/ir/expressions/literals/nullLiteral.yaml
4223af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/ir/ts/tsInferType.yaml
4233af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/ir/statements/switchCaseStatement.yaml
4243af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/ir/expressions/yieldExpression.yaml
4253af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/checker/types/ts/undefinedType.yaml
4263af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/ir/ts/tsImportEqualsDeclaration.yaml
4273af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/checker/types/ts/stringType.yaml
4283af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/ir/expressions/literals/booleanLiteral.yaml
4293af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/ir/ts/tsNumberKeyword.yaml
4303af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/checker/types/ts/nonPrimitiveType.yaml
4313af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/ir/base/classStaticBlock.yaml
4323af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/checker/types/ets/etsNullishTypes.yaml
4333af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/checker/types/type.yaml
4343af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/ir/ts/tsNonNullExpression.yaml
4353af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/ir/as/prefixAssertionExpression.yaml
4363af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/checker/types/typeFacts.yaml
4373af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/ir/expressions/classExpression.yaml
4383af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/checker/types/ets/etsTupleType.yaml
4393af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/pathsToHeaders.yaml
4403af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/ir/statements/forOfStatement.yaml
4413af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/checker/types/typeRelation.yaml
4423af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/ir/expressions/templateLiteral.yaml
4433af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/ir/ts/tsUnionType.yaml
4443af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/ir/ts/tsUnknownKeyword.yaml
4453af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/ir/expressions/identifier.yaml
4463af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/ir/opaqueTypeNode.yaml
4473af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/ir/statements/blockStatement.yaml
4483af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/ir/statement.yaml
4493af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/ir/expressions/directEvalExpression.yaml
4503af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/ir/ts/tsTypeParameterDeclaration.yaml
4513af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/ir/base/methodDefinition.yaml
4523af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/ir/ts/tsNullKeyword.yaml
4533af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/ir/ts/tsInterfaceHeritage.yaml
4543af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/checker/types/ts/enumLiteralType.yaml
4553af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/ir/expression.yaml
4563af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/ir/srcDump.yaml
4573af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/checker/types/ts/types.yaml
4583af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/checker/types/ets/floatType.yaml
4593af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/ir/ets/etsClassLiteral.yaml
4603af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/ir/irnode.yaml
4613af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/ir/statements/breakStatement.yaml
4623af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/checker/types/ets/byteType.yaml
4633af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/ir/expressions/literals/regExpLiteral.yaml
4643af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/checker/types/ets/etsTypeParameter.yaml
4653af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/checker/types/ets/etsObjectTypeConstants.yaml
4663af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/ir/ts/tsMappedType.yaml
4673af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/ir/opcodeMap.yaml
4683af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/ir/ts/tsAnyKeyword.yaml
4693af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/checker/types/ets/etsUnionType.yaml
4703af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/ir/statements/classDeclaration.yaml
4713af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/checker/types/ts/enumType.yaml
4723af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/ir/ts/tsIndexedAccessType.yaml
4733af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/ir/ts/tsQualifiedName.yaml
4743af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/ir/expressions/awaitExpression.yaml
4753af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/ir/validationInfo.yaml
4763af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/ir/statements/continueStatement.yaml
4773af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/ir/ets/etsNewMultiDimArrayInstanceExpression.yaml
4783af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/ir/ts/tsNamedTupleMember.yaml
4793af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/ir/expressions/importExpression.yaml
4803af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/ir/astDump.yaml
4813af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/ir/ets/etsNullishTypes.yaml
4823af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/ir/expressions/typeofExpression.yaml
4833af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/ir/ts/tsEnumMember.yaml
4843af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/checker/types/ets/wildcardType.yaml
4853af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/lexer/regexp/regexp.yaml
4863af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/ir/statements/switchStatement.yaml
4873af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/checker/types/ets/etsBooleanType.yaml
4883af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/varbinder/variableFlags.yaml
4893af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/ir/statements/doWhileStatement.yaml
4903af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/ir/base/catchClause.yaml
4913af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/checker/types/ts/constructorType.yaml
4923af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/ir/visitor/AstVisitor.yaml
4933af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/ir/expressions/sequenceExpression.yaml
4943af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/ir/expressions/arrowFunctionExpression.yaml
4953af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/checker/types/ts/booleanLiteralType.yaml
4963af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/checker/types/ets/etsObjectType.yaml
4973af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/ir/expressions/omittedExpression.yaml
4983af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/checker/types/ts/arrayType.yaml
4993af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/lexer/token/tokenType.yaml
5003af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/ir/ets/etsNewClassInstanceExpression.yaml
5013af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/ir/ts/tsAsExpression.yaml
5023af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/ir/statements/forUpdateStatement.yaml
5033af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/ir/ets/etsTypeReferencePart.yaml
5043af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/ir/ets/etsReExportDeclaration.yaml
5053af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/ir/ets/etsPrimitiveType.yaml
5063af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/ir/typeNode.yaml
5073af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/ir/expressions/newExpression.yaml
5083af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/ir/ts/tsParameterProperty.yaml
5093af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/ir/ets/etsWildcardType.yaml
5103af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/checker/types/ets/shortType.yaml
5113af6ab5fSopenharmony_ci    ${LIBGEN_DIR}/gen/headers/ir/ts/tsThisType.yaml
5123af6ab5fSopenharmony_ci)
5133af6ab5fSopenharmony_ci
5143af6ab5fSopenharmony_ci
5153af6ab5fSopenharmony_cilist(APPEND ES2PANDA_API ${ES2PANDA_API_GENERATED})
5163af6ab5fSopenharmony_ciforeach(_ IN LISTS ES2PANDA_API)
5173af6ab5fSopenharmony_ci    list(APPEND RB_LIST "${CMAKE_CURRENT_SOURCE_DIR}/${LIB_NAME}.rb")
5183af6ab5fSopenharmony_ciendforeach()
5193af6ab5fSopenharmony_ci
5203af6ab5fSopenharmony_ciset (ES2PANDA_INC
5213af6ab5fSopenharmony_ci    ${LIB_NAME}_include.inc.erb
5223af6ab5fSopenharmony_ci    ${LIB_NAME}_decl.inc.erb
5233af6ab5fSopenharmony_ci    ${LIB_NAME}_enums.inc.erb
5243af6ab5fSopenharmony_ci    ${LIB_NAME}_impl.inc.erb
5253af6ab5fSopenharmony_ci    ${LIB_NAME}_list.inc.erb
5263af6ab5fSopenharmony_ci)
5273af6ab5fSopenharmony_ci
5283af6ab5fSopenharmony_cipanda_gen(
5293af6ab5fSopenharmony_ci    DATA ${ES2PANDA_API}
5303af6ab5fSopenharmony_ci    TARGET_NAME gen_api
5313af6ab5fSopenharmony_ci    TEMPLATES ${ES2PANDA_INC}
5323af6ab5fSopenharmony_ci    API ${RB_LIST}
5333af6ab5fSopenharmony_ci    DESTINATION ${LIBGEN_DIR}
5343af6ab5fSopenharmony_ci    SOURCE ${CMAKE_CURRENT_SOURCE_DIR}
5353af6ab5fSopenharmony_ci    EXTRA_DEPENDENCIES gen_yamls
5363af6ab5fSopenharmony_ci)
5373af6ab5fSopenharmony_ci
5383af6ab5fSopenharmony_ciset(HEADERS_PARSER_SOURCES
5393af6ab5fSopenharmony_ci    ${CMAKE_CURRENT_SOURCE_DIR}/headers_parser/cpp_keywords.py
5403af6ab5fSopenharmony_ci    ${CMAKE_CURRENT_SOURCE_DIR}/headers_parser/cpp_parser.py
5413af6ab5fSopenharmony_ci    ${CMAKE_CURRENT_SOURCE_DIR}/headers_parser/file_tools.py
5423af6ab5fSopenharmony_ci    ${CMAKE_CURRENT_SOURCE_DIR}/headers_parser/line_iterator.py
5433af6ab5fSopenharmony_ci    ${CMAKE_CURRENT_SOURCE_DIR}/headers_parser/log_tools.py
5443af6ab5fSopenharmony_ci    ${CMAKE_CURRENT_SOURCE_DIR}/headers_parser/main.py
5453af6ab5fSopenharmony_ci    ${CMAKE_CURRENT_SOURCE_DIR}/headers_parser/parse_arguments.py
5463af6ab5fSopenharmony_ci    ${CMAKE_CURRENT_SOURCE_DIR}/headers_parser/parse_class.py
5473af6ab5fSopenharmony_ci    ${CMAKE_CURRENT_SOURCE_DIR}/headers_parser/parse_define.py
5483af6ab5fSopenharmony_ci    ${CMAKE_CURRENT_SOURCE_DIR}/headers_parser/parse_enum.py
5493af6ab5fSopenharmony_ci    ${CMAKE_CURRENT_SOURCE_DIR}/headers_parser/parse_method.py
5503af6ab5fSopenharmony_ci    ${CMAKE_CURRENT_SOURCE_DIR}/headers_parser/parse_namespace.py
5513af6ab5fSopenharmony_ci    ${CMAKE_CURRENT_SOURCE_DIR}/headers_parser/parse_struct.py
5523af6ab5fSopenharmony_ci    ${CMAKE_CURRENT_SOURCE_DIR}/headers_parser/parse_using.py
5533af6ab5fSopenharmony_ci    ${CMAKE_CURRENT_SOURCE_DIR}/headers_parser/prepare_header.py
5543af6ab5fSopenharmony_ci    ${CMAKE_CURRENT_SOURCE_DIR}/headers_parser/runtime_collections.py
5553af6ab5fSopenharmony_ci    ${CMAKE_CURRENT_SOURCE_DIR}/headers_parser/supported_types.py
5563af6ab5fSopenharmony_ci    ${CMAKE_CURRENT_SOURCE_DIR}/headers_parser/text_tools.py
5573af6ab5fSopenharmony_ci)
5583af6ab5fSopenharmony_ci
5593af6ab5fSopenharmony_ciadd_custom_command(
5603af6ab5fSopenharmony_ci    OUTPUT ${ES2PANDA_API_GENERATED}
5613af6ab5fSopenharmony_ci    COMMAND python3 -B ${CMAKE_CURRENT_SOURCE_DIR}/headers_parser/main.py
5623af6ab5fSopenharmony_ci        "${ES2PANDA_ROOT}" "${LIBGEN_DIR}" ${HEADERS_TO_BE_PARSED}
5633af6ab5fSopenharmony_ci    DEPENDS ${HEADERS_TO_BE_PARSED} ${HEADERS_PARSER_SOURCES}
5643af6ab5fSopenharmony_ci)
5653af6ab5fSopenharmony_ci
5663af6ab5fSopenharmony_ciadd_custom_target(gen_yamls DEPENDS ${ES2PANDA_API_GENERATED} ${HEADERS_PARSER_SOURCES})
5673af6ab5fSopenharmony_ci
5683af6ab5fSopenharmony_ci
5693af6ab5fSopenharmony_ciset(ES2PANDA_PUBLIC_SOURCES
5703af6ab5fSopenharmony_ci    ${LIB_NAME}.cpp
5713af6ab5fSopenharmony_ci    ../util/generateBin.cpp
5723af6ab5fSopenharmony_ci    ../util/options.cpp
5733af6ab5fSopenharmony_ci    ../util/plugin.cpp
5743af6ab5fSopenharmony_ci)
5753af6ab5fSopenharmony_ci
5763af6ab5fSopenharmony_ci
5773af6ab5fSopenharmony_cipanda_add_library(es2panda-public ${PANDA_DEFAULT_LIB_TYPE} ${ES2PANDA_PUBLIC_SOURCES})
5783af6ab5fSopenharmony_ciadd_dependencies(es2panda-lib gen_api)
5793af6ab5fSopenharmony_ciadd_dependencies(es2panda-public es2panda-lib)
5803af6ab5fSopenharmony_ci
5813af6ab5fSopenharmony_ci
5823af6ab5fSopenharmony_cipanda_target_include_directories(es2panda-public
5833af6ab5fSopenharmony_ci    PRIVATE ${ES2PANDA_ROOT}/
5843af6ab5fSopenharmony_ci    PRIVATE ${OUTPUT_DIR}
5853af6ab5fSopenharmony_ci)
5863af6ab5fSopenharmony_ci
5873af6ab5fSopenharmony_cipanda_target_compile_options(es2panda-public
5883af6ab5fSopenharmony_ci  PRIVATE -fexceptions -Werror=shadow
5893af6ab5fSopenharmony_ci)
5903af6ab5fSopenharmony_ci
5913af6ab5fSopenharmony_cipanda_target_link_libraries(es2panda-public
5923af6ab5fSopenharmony_ci  PUBLIC arkbase es2panda-lib
5933af6ab5fSopenharmony_ci  PRIVATE arkbytecodeopt
5943af6ab5fSopenharmony_ci)
5953af6ab5fSopenharmony_ci
5963af6ab5fSopenharmony_cipanda_add_sanitizers(TARGET es2panda-public SANITIZERS
5973af6ab5fSopenharmony_ci  ${PANDA_SANITIZERS_LIST})
598