arkanalyzer 1.0.84 → 1.0.86

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (2732) hide show
  1. package/README.en.md +95 -95
  2. package/README.md +107 -107
  3. package/config/arkanalyzer.json +23 -23
  4. package/docs/HowToCreatePR.md +54 -54
  5. package/docs/HowToHandleIssues.md +155 -155
  6. package/docs/api_docs/ArkAnalyzer/namespaces/ts/README.md +1655 -1655
  7. package/docs/api_docs/ArkAnalyzer/namespaces/ts/classes/ArkTSLinterTimePrinter.md +81 -81
  8. package/docs/api_docs/ArkAnalyzer/namespaces/ts/classes/OperationCanceledException.md +19 -19
  9. package/docs/api_docs/ArkAnalyzer/namespaces/ts/enumerations/ClassificationType.md +209 -209
  10. package/docs/api_docs/ArkAnalyzer/namespaces/ts/enumerations/ClassificationTypeNames.md +201 -201
  11. package/docs/api_docs/ArkAnalyzer/namespaces/ts/enumerations/CompletionInfoFlags.md +65 -65
  12. package/docs/api_docs/ArkAnalyzer/namespaces/ts/enumerations/CompletionTriggerKind.md +39 -39
  13. package/docs/api_docs/ArkAnalyzer/namespaces/ts/enumerations/DiagnosticCategory.md +41 -41
  14. package/docs/api_docs/ArkAnalyzer/namespaces/ts/enumerations/ElementFlags.md +73 -73
  15. package/docs/api_docs/ArkAnalyzer/namespaces/ts/enumerations/EmitFlags.md +241 -241
  16. package/docs/api_docs/ArkAnalyzer/namespaces/ts/enumerations/EmitHint.md +65 -65
  17. package/docs/api_docs/ArkAnalyzer/namespaces/ts/enumerations/EndOfLineState.md +65 -65
  18. package/docs/api_docs/ArkAnalyzer/namespaces/ts/enumerations/EtsFlags.md +97 -97
  19. package/docs/api_docs/ArkAnalyzer/namespaces/ts/enumerations/ExitStatus.md +63 -63
  20. package/docs/api_docs/ArkAnalyzer/namespaces/ts/enumerations/Extension.md +129 -129
  21. package/docs/api_docs/ArkAnalyzer/namespaces/ts/enumerations/FileWatcherEventKind.md +33 -33
  22. package/docs/api_docs/ArkAnalyzer/namespaces/ts/enumerations/FlowFlags.md +129 -129
  23. package/docs/api_docs/ArkAnalyzer/namespaces/ts/enumerations/GeneratedIdentifierFlags.md +49 -49
  24. package/docs/api_docs/ArkAnalyzer/namespaces/ts/enumerations/HighlightSpanKind.md +41 -41
  25. package/docs/api_docs/ArkAnalyzer/namespaces/ts/enumerations/ImportsNotUsedAsValues.md +33 -33
  26. package/docs/api_docs/ArkAnalyzer/namespaces/ts/enumerations/IndentStyle.md +33 -33
  27. package/docs/api_docs/ArkAnalyzer/namespaces/ts/enumerations/IndexKind.md +25 -25
  28. package/docs/api_docs/ArkAnalyzer/namespaces/ts/enumerations/InferencePriority.md +121 -121
  29. package/docs/api_docs/ArkAnalyzer/namespaces/ts/enumerations/InlayHintKind.md +33 -33
  30. package/docs/api_docs/ArkAnalyzer/namespaces/ts/enumerations/InternalSymbolName.md +145 -145
  31. package/docs/api_docs/ArkAnalyzer/namespaces/ts/enumerations/InvalidatedProjectKind.md +33 -33
  32. package/docs/api_docs/ArkAnalyzer/namespaces/ts/enumerations/JsxEmit.md +57 -57
  33. package/docs/api_docs/ArkAnalyzer/namespaces/ts/enumerations/JsxFlags.md +45 -45
  34. package/docs/api_docs/ArkAnalyzer/namespaces/ts/enumerations/LanguageServiceMode.md +33 -33
  35. package/docs/api_docs/ArkAnalyzer/namespaces/ts/enumerations/LanguageVariant.md +25 -25
  36. package/docs/api_docs/ArkAnalyzer/namespaces/ts/enumerations/ListFormat.md +553 -553
  37. package/docs/api_docs/ArkAnalyzer/namespaces/ts/enumerations/ModifierFlags.md +225 -225
  38. package/docs/api_docs/ArkAnalyzer/namespaces/ts/enumerations/ModuleDetectionKind.md +39 -39
  39. package/docs/api_docs/ArkAnalyzer/namespaces/ts/enumerations/ModuleKind.md +97 -97
  40. package/docs/api_docs/ArkAnalyzer/namespaces/ts/enumerations/ModuleResolutionKind.md +41 -41
  41. package/docs/api_docs/ArkAnalyzer/namespaces/ts/enumerations/NewLineKind.md +25 -25
  42. package/docs/api_docs/ArkAnalyzer/namespaces/ts/enumerations/NodeBuilderFlags.md +269 -269
  43. package/docs/api_docs/ArkAnalyzer/namespaces/ts/enumerations/NodeFlags.md +249 -249
  44. package/docs/api_docs/ArkAnalyzer/namespaces/ts/enumerations/ObjectFlags.md +161 -161
  45. package/docs/api_docs/ArkAnalyzer/namespaces/ts/enumerations/OrganizeImportsMode.md +33 -33
  46. package/docs/api_docs/ArkAnalyzer/namespaces/ts/enumerations/OuterExpressionKinds.md +65 -65
  47. package/docs/api_docs/ArkAnalyzer/namespaces/ts/enumerations/OutliningSpanKind.md +49 -49
  48. package/docs/api_docs/ArkAnalyzer/namespaces/ts/enumerations/OutputFileType.md +33 -33
  49. package/docs/api_docs/ArkAnalyzer/namespaces/ts/enumerations/PollingWatchKind.md +41 -41
  50. package/docs/api_docs/ArkAnalyzer/namespaces/ts/enumerations/ScriptElementKind.md +381 -381
  51. package/docs/api_docs/ArkAnalyzer/namespaces/ts/enumerations/ScriptElementKindModifier.md +201 -201
  52. package/docs/api_docs/ArkAnalyzer/namespaces/ts/enumerations/ScriptKind.md +84 -84
  53. package/docs/api_docs/ArkAnalyzer/namespaces/ts/enumerations/ScriptTarget.md +113 -113
  54. package/docs/api_docs/ArkAnalyzer/namespaces/ts/enumerations/SemanticClassificationFormat.md +25 -25
  55. package/docs/api_docs/ArkAnalyzer/namespaces/ts/enumerations/SemicolonPreference.md +33 -33
  56. package/docs/api_docs/ArkAnalyzer/namespaces/ts/enumerations/SignatureKind.md +25 -25
  57. package/docs/api_docs/ArkAnalyzer/namespaces/ts/enumerations/SymbolDisplayPartKind.md +209 -209
  58. package/docs/api_docs/ArkAnalyzer/namespaces/ts/enumerations/SymbolFlags.md +489 -489
  59. package/docs/api_docs/ArkAnalyzer/namespaces/ts/enumerations/SymbolFormatFlags.md +49 -49
  60. package/docs/api_docs/ArkAnalyzer/namespaces/ts/enumerations/SyntaxKind.md +3177 -3177
  61. package/docs/api_docs/ArkAnalyzer/namespaces/ts/enumerations/TimePhase.md +89 -89
  62. package/docs/api_docs/ArkAnalyzer/namespaces/ts/enumerations/TokenClass.md +89 -89
  63. package/docs/api_docs/ArkAnalyzer/namespaces/ts/enumerations/TokenFlags.md +57 -57
  64. package/docs/api_docs/ArkAnalyzer/namespaces/ts/enumerations/TypeFlags.md +393 -393
  65. package/docs/api_docs/ArkAnalyzer/namespaces/ts/enumerations/TypeFormatFlags.md +203 -203
  66. package/docs/api_docs/ArkAnalyzer/namespaces/ts/enumerations/TypePredicateKind.md +41 -41
  67. package/docs/api_docs/ArkAnalyzer/namespaces/ts/enumerations/WatchDirectoryFlags.md +25 -25
  68. package/docs/api_docs/ArkAnalyzer/namespaces/ts/enumerations/WatchDirectoryKind.md +41 -41
  69. package/docs/api_docs/ArkAnalyzer/namespaces/ts/enumerations/WatchFileKind.md +57 -57
  70. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/addEmitHelper.md +33 -33
  71. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/addEmitHelpers.md +33 -33
  72. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/addSyntheticLeadingComment.md +39 -39
  73. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/addSyntheticTrailingComment.md +39 -39
  74. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/canHaveDecorators.md +21 -21
  75. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/canHaveModifiers.md +21 -21
  76. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/choosePathContainsModules.md +25 -25
  77. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/classicNameResolver.md +41 -41
  78. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/collapseTextChangeRangesAcrossMultipleVersions.md +28 -28
  79. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/concatenateDecoratorsAndModifiers.md +25 -25
  80. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/convertCompilerOptionsFromJson.md +37 -37
  81. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/convertToObject.md +27 -27
  82. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/convertTypeAcquisitionFromJson.md +37 -37
  83. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/couldStartTrivia.md +25 -25
  84. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/createAbstractBuilder.md +75 -75
  85. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/createBuilderStatusReporter.md +27 -27
  86. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/createClassifier.md +17 -17
  87. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/createCompilerHost.md +25 -25
  88. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/createDocumentRegistry.md +25 -25
  89. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/createEmitAndSemanticDiagnosticsBuilderProgram.md +77 -77
  90. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/createEmitAndSemanticDiagnosticsBuilderProgramForArkTs.md +41 -41
  91. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/createIncrementalCompilerHost.md +25 -25
  92. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/createIncrementalProgram.md +27 -27
  93. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/createIncrementalProgramForArkTs.md +21 -21
  94. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/createInputFiles.md +99 -99
  95. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/createLanguageService.md +29 -29
  96. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/createLanguageServiceSourceFile.md +45 -45
  97. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/createModuleResolutionCache.md +29 -29
  98. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/createObfTextSingleLineWriter.md +15 -15
  99. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/createPrinter.md +25 -25
  100. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/createProgram.md +83 -83
  101. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/createScanner.md +45 -45
  102. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/createSemanticDiagnosticsBuilderProgram.md +75 -75
  103. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/createSolutionBuilder.md +35 -35
  104. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/createSolutionBuilderHost.md +43 -43
  105. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/createSolutionBuilderWithWatch.md +39 -39
  106. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/createSolutionBuilderWithWatchHost.md +43 -43
  107. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/createSourceFile.md +41 -41
  108. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/createSourceMapGenerator.md +37 -37
  109. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/createSourceMapSource.md +31 -31
  110. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/createTextChangeRange.md +25 -25
  111. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/createTextSpan.md +25 -25
  112. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/createTextSpanFromBounds.md +25 -25
  113. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/createTextWriter.md +21 -21
  114. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/createTypeReferenceDirectiveResolutionCache.md +33 -33
  115. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/createUnparsedSourceFile.md +71 -71
  116. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/createWatchCompilerHost.md +111 -111
  117. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/createWatchProgram.md +55 -55
  118. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/decodedTextSpanIntersectsWith.md +33 -33
  119. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/displayPartsToString.md +21 -21
  120. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/disposeEmitNodes.md +25 -25
  121. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/escapeLeadingUnderscores.md +23 -23
  122. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/findAncestor.md +63 -63
  123. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/findConfigFile.md +29 -29
  124. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/flattenDiagnosticMessageText.md +29 -29
  125. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/forEachChild.md +51 -51
  126. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/forEachLeadingCommentRange.md +75 -75
  127. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/forEachTrailingCommentRange.md +75 -75
  128. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/formatDiagnostic.md +25 -25
  129. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/formatDiagnostics.md +25 -25
  130. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/formatDiagnosticsWithColorAndContext.md +25 -25
  131. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/getAllDecorators.md +21 -21
  132. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/getAllJSDocTags.md +33 -33
  133. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/getAllJSDocTagsOfKind.md +27 -27
  134. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/getAutomaticTypeDirectiveNames.md +32 -32
  135. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/getCombinedModifierFlags.md +21 -21
  136. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/getCombinedNodeFlags.md +21 -21
  137. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/getCommentRange.md +23 -23
  138. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/getConfigFileParsingDiagnostics.md +21 -21
  139. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/getConstantValue.md +23 -23
  140. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/getDecorators.md +21 -21
  141. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/getDefaultCompilerOptions.md +15 -15
  142. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/getDefaultFormatCodeSettings.md +21 -21
  143. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/getDefaultLibFileName.md +21 -21
  144. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/getDefaultLibFilePath.md +25 -25
  145. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/getEffectiveConstraintOfTypeParameter.md +21 -21
  146. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/getEffectiveTypeParameterDeclarations.md +29 -29
  147. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/getEffectiveTypeRoots.md +25 -25
  148. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/getEmitHelpers.md +23 -23
  149. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/getIllegalDecorators.md +21 -21
  150. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/getImpliedNodeFormatForFile.md +46 -46
  151. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/getJSDocAugmentsTag.md +23 -23
  152. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/getJSDocClassTag.md +23 -23
  153. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/getJSDocDeprecatedTag.md +23 -23
  154. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/getJSDocEnumTag.md +23 -23
  155. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/getJSDocImplementsTags.md +23 -23
  156. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/getJSDocOverrideTagNoCache.md +21 -21
  157. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/getJSDocParameterTags.md +34 -34
  158. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/getJSDocPrivateTag.md +23 -23
  159. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/getJSDocProtectedTag.md +23 -23
  160. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/getJSDocPublicTag.md +23 -23
  161. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/getJSDocReadonlyTag.md +23 -23
  162. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/getJSDocReturnTag.md +23 -23
  163. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/getJSDocReturnType.md +28 -28
  164. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/getJSDocTags.md +23 -23
  165. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/getJSDocTemplateTag.md +23 -23
  166. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/getJSDocThisTag.md +23 -23
  167. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/getJSDocType.md +33 -33
  168. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/getJSDocTypeParameterTags.md +32 -32
  169. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/getJSDocTypeTag.md +23 -23
  170. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/getLeadingCommentRanges.md +25 -25
  171. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/getLeadingCommentRangesOfNode.md +25 -25
  172. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/getLineAndCharacterOfPosition.md +25 -25
  173. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/getModeForFileReference.md +28 -28
  174. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/getModeForResolutionAtIndex.md +33 -33
  175. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/getModeForUsageLocation.md +38 -38
  176. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/getModifiers.md +21 -21
  177. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/getModuleByPMType.md +21 -21
  178. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/getModulePathPartByPMType.md +21 -21
  179. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/getNameOfDeclaration.md +21 -21
  180. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/getNameOfJSDocTypedef.md +21 -21
  181. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/getNodeMajorVersion.md +15 -15
  182. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/getOriginalNode.md +91 -91
  183. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/getOutputFileNames.md +29 -29
  184. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/getPackageJsonByPMType.md +21 -21
  185. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/getParseTreeNode.md +63 -63
  186. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/getParsedCommandLineOfConfigFile.md +43 -43
  187. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/getPositionOfLineAndCharacter.md +29 -29
  188. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/getPreEmitDiagnostics.md +29 -29
  189. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/getShebang.md +23 -23
  190. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/getSourceMapRange.md +23 -23
  191. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/getSupportedCodeFixes.md +15 -15
  192. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/getSyntheticLeadingComments.md +21 -21
  193. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/getSyntheticTrailingComments.md +21 -21
  194. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/getTextOfJSDocComment.md +23 -23
  195. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/getTokenSourceMapRange.md +27 -27
  196. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/getTrailingCommentRanges.md +25 -25
  197. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/getTsBuildInfoEmitOutputFilePath.md +21 -21
  198. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/getTsBuildInfoEmitOutputFilePathForLinter.md +21 -21
  199. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/getTypeExportImportAndConstEnumTransformer.md +31 -31
  200. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/getTypeParameterOwner.md +21 -21
  201. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/hasJSDocParameterTags.md +28 -28
  202. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/hasOnlyExpressionInitializer.md +23 -23
  203. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/hasRestParameter.md +21 -21
  204. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/hasTsNoCheckOrTsIgnoreFlag.md +21 -21
  205. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/idText.md +21 -21
  206. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isAccessor.md +21 -21
  207. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isArrayBindingPattern.md +21 -21
  208. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isArrayLiteralExpression.md +21 -21
  209. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isArrayTypeNode.md +21 -21
  210. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isArrowFunction.md +21 -21
  211. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isAsExpression.md +21 -21
  212. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isAssertClause.md +21 -21
  213. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isAssertEntry.md +21 -21
  214. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isAssertionExpression.md +21 -21
  215. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isAssertionKey.md +21 -21
  216. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isAsteriskToken.md +21 -21
  217. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isAutoAccessorPropertyDeclaration.md +21 -21
  218. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isAwaitExpression.md +21 -21
  219. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isBigIntLiteral.md +21 -21
  220. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isBinaryExpression.md +21 -21
  221. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isBindingElement.md +21 -21
  222. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isBindingName.md +21 -21
  223. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isBlock.md +21 -21
  224. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isBreakOrContinueStatement.md +21 -21
  225. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isBreakStatement.md +21 -21
  226. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isBundle.md +21 -21
  227. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isCallChain.md +21 -21
  228. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isCallExpression.md +21 -21
  229. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isCallLikeExpression.md +21 -21
  230. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isCallOrNewExpression.md +21 -21
  231. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isCallSignatureDeclaration.md +21 -21
  232. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isCaseBlock.md +21 -21
  233. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isCaseClause.md +21 -21
  234. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isCaseOrDefaultClause.md +21 -21
  235. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isCatchClause.md +21 -21
  236. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isClassDeclaration.md +21 -21
  237. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isClassElement.md +21 -21
  238. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isClassExpression.md +21 -21
  239. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isClassLike.md +21 -21
  240. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isClassOrTypeElement.md +21 -21
  241. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isClassStaticBlockDeclaration.md +21 -21
  242. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isCommaListExpression.md +21 -21
  243. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isComputedPropertyName.md +21 -21
  244. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isConditionalExpression.md +21 -21
  245. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isConditionalTypeNode.md +21 -21
  246. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isConstTypeReference.md +21 -21
  247. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isConstructSignatureDeclaration.md +21 -21
  248. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isConstructorDeclaration.md +21 -21
  249. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isConstructorTypeNode.md +21 -21
  250. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isContinueStatement.md +21 -21
  251. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isDebuggerStatement.md +21 -21
  252. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isDecorator.md +21 -21
  253. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isDefaultClause.md +21 -21
  254. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isDeleteExpression.md +21 -21
  255. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isDoStatement.md +21 -21
  256. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isDotDotDotToken.md +21 -21
  257. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isElementAccessChain.md +21 -21
  258. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isElementAccessExpression.md +21 -21
  259. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isEmptyBindingElement.md +21 -21
  260. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isEmptyBindingPattern.md +21 -21
  261. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isEmptyStatement.md +21 -21
  262. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isEntityName.md +21 -21
  263. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isEnumDeclaration.md +21 -21
  264. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isEnumMember.md +21 -21
  265. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isEtsComponentExpression.md +21 -21
  266. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isEtsFunctionDecorators.md +25 -25
  267. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isExportAssignment.md +21 -21
  268. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isExportDeclaration.md +21 -21
  269. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isExportSpecifier.md +21 -21
  270. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isExpressionStatement.md +21 -21
  271. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isExpressionWithTypeArguments.md +21 -21
  272. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isExternalModule.md +21 -21
  273. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isExternalModuleNameRelative.md +21 -21
  274. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isExternalModuleReference.md +21 -21
  275. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isForInStatement.md +21 -21
  276. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isForOfStatement.md +21 -21
  277. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isForStatement.md +21 -21
  278. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isFunctionDeclaration.md +21 -21
  279. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isFunctionExpression.md +21 -21
  280. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isFunctionLike.md +21 -21
  281. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isFunctionOrConstructorTypeNode.md +21 -21
  282. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isFunctionTypeNode.md +21 -21
  283. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isGetAccessor.md +21 -21
  284. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isGetAccessorDeclaration.md +21 -21
  285. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isHeritageClause.md +21 -21
  286. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isIdentifier.md +21 -21
  287. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isIdentifierPart.md +29 -29
  288. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isIdentifierStart.md +25 -25
  289. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isIfStatement.md +21 -21
  290. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isImportClause.md +21 -21
  291. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isImportDeclaration.md +21 -21
  292. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isImportEqualsDeclaration.md +21 -21
  293. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isImportOrExportSpecifier.md +21 -21
  294. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isImportSpecifier.md +21 -21
  295. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isImportTypeAssertionContainer.md +21 -21
  296. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isImportTypeNode.md +21 -21
  297. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isIndexSignatureDeclaration.md +21 -21
  298. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isIndexedAccessTypeNode.md +21 -21
  299. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isInferTypeNode.md +21 -21
  300. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isInterfaceDeclaration.md +21 -21
  301. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isIntersectionTypeNode.md +21 -21
  302. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isIterationStatement.md +47 -47
  303. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isJSDoc.md +21 -21
  304. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isJSDocAllType.md +21 -21
  305. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isJSDocAugmentsTag.md +21 -21
  306. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isJSDocAuthorTag.md +21 -21
  307. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isJSDocCallbackTag.md +21 -21
  308. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isJSDocClassTag.md +21 -21
  309. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isJSDocCommentContainingNode.md +23 -23
  310. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isJSDocDeprecatedTag.md +21 -21
  311. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isJSDocEnumTag.md +21 -21
  312. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isJSDocFunctionType.md +21 -21
  313. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isJSDocImplementsTag.md +21 -21
  314. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isJSDocLink.md +21 -21
  315. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isJSDocLinkCode.md +21 -21
  316. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isJSDocLinkLike.md +21 -21
  317. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isJSDocLinkPlain.md +21 -21
  318. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isJSDocMemberName.md +21 -21
  319. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isJSDocNameReference.md +21 -21
  320. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isJSDocNamepathType.md +21 -21
  321. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isJSDocNonNullableType.md +21 -21
  322. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isJSDocNullableType.md +21 -21
  323. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isJSDocOptionalType.md +21 -21
  324. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isJSDocOverrideTag.md +21 -21
  325. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isJSDocParameterTag.md +21 -21
  326. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isJSDocPrivateTag.md +21 -21
  327. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isJSDocPropertyLikeTag.md +21 -21
  328. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isJSDocPropertyTag.md +21 -21
  329. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isJSDocProtectedTag.md +21 -21
  330. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isJSDocPublicTag.md +21 -21
  331. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isJSDocReadonlyTag.md +21 -21
  332. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isJSDocReturnTag.md +21 -21
  333. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isJSDocSeeTag.md +21 -21
  334. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isJSDocSignature.md +21 -21
  335. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isJSDocTemplateTag.md +21 -21
  336. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isJSDocThisTag.md +21 -21
  337. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isJSDocTypeExpression.md +21 -21
  338. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isJSDocTypeLiteral.md +21 -21
  339. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isJSDocTypeTag.md +21 -21
  340. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isJSDocTypedefTag.md +21 -21
  341. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isJSDocUnknownTag.md +21 -21
  342. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isJSDocUnknownType.md +21 -21
  343. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isJSDocVariadicType.md +21 -21
  344. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isJsxAttribute.md +21 -21
  345. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isJsxAttributes.md +21 -21
  346. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isJsxClosingElement.md +21 -21
  347. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isJsxClosingFragment.md +21 -21
  348. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isJsxElement.md +21 -21
  349. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isJsxExpression.md +21 -21
  350. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isJsxFragment.md +21 -21
  351. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isJsxOpeningElement.md +21 -21
  352. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isJsxOpeningFragment.md +21 -21
  353. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isJsxOpeningLikeElement.md +21 -21
  354. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isJsxSelfClosingElement.md +21 -21
  355. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isJsxSpreadAttribute.md +21 -21
  356. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isJsxText.md +21 -21
  357. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isLabeledStatement.md +21 -21
  358. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isLineBreak.md +21 -21
  359. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isLiteralExpression.md +21 -21
  360. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isLiteralTypeNode.md +21 -21
  361. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isMappedTypeNode.md +21 -21
  362. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isMemberName.md +21 -21
  363. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isMetaProperty.md +21 -21
  364. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isMethodDeclaration.md +21 -21
  365. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isMethodSignature.md +21 -21
  366. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isMinusToken.md +21 -21
  367. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isMissingDeclaration.md +21 -21
  368. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isModifier.md +21 -21
  369. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isModifierLike.md +21 -21
  370. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isModuleBlock.md +21 -21
  371. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isModuleDeclaration.md +21 -21
  372. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isNamedExportBindings.md +21 -21
  373. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isNamedExports.md +21 -21
  374. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isNamedImports.md +21 -21
  375. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isNamedTupleMember.md +21 -21
  376. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isNamespaceExport.md +21 -21
  377. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isNamespaceExportDeclaration.md +21 -21
  378. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isNamespaceImport.md +21 -21
  379. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isNewExpression.md +21 -21
  380. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isNoSubstitutionTemplateLiteral.md +21 -21
  381. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isNonNullChain.md +21 -21
  382. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isNonNullExpression.md +21 -21
  383. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isNotEmittedStatement.md +21 -21
  384. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isNullishCoalesce.md +21 -21
  385. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isNumericLiteral.md +21 -21
  386. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isOHModules.md +21 -21
  387. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isOHModulesDirectory.md +21 -21
  388. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isObjectBindingPattern.md +21 -21
  389. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isObjectLiteralElement.md +21 -21
  390. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isObjectLiteralElementLike.md +21 -21
  391. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isObjectLiteralExpression.md +21 -21
  392. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isOhpm.md +21 -21
  393. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isOhpmAndOhModules.md +25 -25
  394. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isOmittedExpression.md +21 -21
  395. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isOptionalChain.md +21 -21
  396. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isOptionalTypeNode.md +21 -21
  397. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isParameter.md +21 -21
  398. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isParameterPropertyDeclaration.md +25 -25
  399. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isParenthesizedExpression.md +21 -21
  400. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isParenthesizedTypeNode.md +21 -21
  401. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isParseTreeNode.md +25 -25
  402. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isPartiallyEmittedExpression.md +21 -21
  403. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isPlusToken.md +21 -21
  404. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isPostfixUnaryExpression.md +21 -21
  405. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isPrefixUnaryExpression.md +21 -21
  406. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isPrivateIdentifier.md +21 -21
  407. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isPropertyAccessChain.md +21 -21
  408. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isPropertyAccessExpression.md +21 -21
  409. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isPropertyAccessOrQualifiedName.md +21 -21
  410. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isPropertyAssignment.md +21 -21
  411. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isPropertyDeclaration.md +21 -21
  412. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isPropertyName.md +21 -21
  413. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isPropertySignature.md +21 -21
  414. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isQualifiedName.md +21 -21
  415. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isRegularExpressionLiteral.md +21 -21
  416. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isRestParameter.md +21 -21
  417. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isRestTypeNode.md +21 -21
  418. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isReturnStatement.md +21 -21
  419. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isSatisfiesExpression.md +21 -21
  420. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isSemicolonClassElement.md +21 -21
  421. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isSetAccessor.md +21 -21
  422. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isSetAccessorDeclaration.md +21 -21
  423. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isShorthandPropertyAssignment.md +21 -21
  424. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isSourceFile.md +21 -21
  425. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isSpreadAssignment.md +21 -21
  426. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isSpreadElement.md +21 -21
  427. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isStringLiteral.md +21 -21
  428. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isStringLiteralLike.md +21 -21
  429. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isStringTextContainingNode.md +21 -21
  430. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isStruct.md +21 -21
  431. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isStructDeclaration.md +21 -21
  432. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isSwitchStatement.md +21 -21
  433. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isSyntheticExpression.md +21 -21
  434. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isTaggedTemplateExpression.md +21 -21
  435. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isTargetModulesDerectory.md +21 -21
  436. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isTemplateExpression.md +21 -21
  437. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isTemplateHead.md +21 -21
  438. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isTemplateLiteral.md +21 -21
  439. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isTemplateLiteralToken.md +21 -21
  440. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isTemplateLiteralTypeNode.md +21 -21
  441. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isTemplateLiteralTypeSpan.md +21 -21
  442. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isTemplateMiddle.md +21 -21
  443. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isTemplateMiddleOrTemplateTail.md +21 -21
  444. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isTemplateSpan.md +21 -21
  445. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isTemplateTail.md +21 -21
  446. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isThisTypeNode.md +21 -21
  447. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isThrowStatement.md +21 -21
  448. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isToken.md +25 -25
  449. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isTokenKind.md +25 -25
  450. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isTryStatement.md +21 -21
  451. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isTupleTypeNode.md +21 -21
  452. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isTypeAliasDeclaration.md +21 -21
  453. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isTypeAssertionExpression.md +21 -21
  454. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isTypeElement.md +21 -21
  455. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isTypeLiteralNode.md +21 -21
  456. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isTypeNode.md +25 -25
  457. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isTypeOfExpression.md +21 -21
  458. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isTypeOnlyImportOrExportDeclaration.md +21 -21
  459. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isTypeOperatorNode.md +21 -21
  460. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isTypeParameterDeclaration.md +21 -21
  461. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isTypePredicateNode.md +21 -21
  462. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isTypeQueryNode.md +21 -21
  463. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isTypeReferenceNode.md +21 -21
  464. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isUnionTypeNode.md +21 -21
  465. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isUnparsedNode.md +21 -21
  466. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isUnparsedPrepend.md +21 -21
  467. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isUnparsedSource.md +21 -21
  468. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isUnparsedTextLike.md +21 -21
  469. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isVariableDeclaration.md +21 -21
  470. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isVariableDeclarationList.md +21 -21
  471. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isVariableStatement.md +21 -21
  472. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isVoidExpression.md +21 -21
  473. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isWhileStatement.md +21 -21
  474. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isWhiteSpaceLike.md +21 -21
  475. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isWhiteSpaceSingleLine.md +23 -23
  476. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isWithStatement.md +21 -21
  477. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/isYieldExpression.md +21 -21
  478. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/moveEmitHelpers.md +31 -31
  479. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/moveSyntheticComments.md +31 -31
  480. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/nodeModuleNameResolver.md +41 -41
  481. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/parseCommandLine.md +25 -25
  482. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/parseConfigFileTextToJson.md +39 -39
  483. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/parseIsolatedEntityName.md +25 -25
  484. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/parseJsonConfigFileContent.md +62 -62
  485. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/parseJsonSourceFileConfigFileContent.md +60 -60
  486. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/parseJsonText.md +27 -27
  487. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/parseModuleFromPath.md +34 -34
  488. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/pathContainsOHModules.md +21 -21
  489. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/preProcessFile.md +29 -29
  490. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/readBuilderProgram.md +29 -29
  491. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/readConfigFile.md +37 -37
  492. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/readJsonConfigFile.md +29 -29
  493. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/reduceEachLeadingCommentRange.md +47 -47
  494. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/reduceEachTrailingCommentRange.md +47 -47
  495. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/removeEmitHelper.md +27 -27
  496. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/resolveModuleName.md +45 -45
  497. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/resolveModuleNameFromCache.md +33 -33
  498. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/resolveProjectReferencePath.md +48 -48
  499. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/resolveTripleslashReference.md +25 -25
  500. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/resolveTypeReferenceDirective.md +49 -49
  501. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/setCommentRange.md +33 -33
  502. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/setConstantValue.md +27 -27
  503. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/setEmitFlags.md +33 -33
  504. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/setOriginalNode.md +31 -31
  505. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/setParentRecursive.md +73 -73
  506. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/setSourceMapRange.md +33 -33
  507. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/setSyntheticLeadingComments.md +31 -31
  508. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/setSyntheticTrailingComments.md +31 -31
  509. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/setTextRange.md +31 -31
  510. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/setTokenSourceMapRange.md +37 -37
  511. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/skipPartiallyEmittedExpressions.md +39 -39
  512. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/sortAndDeduplicateDiagnostics.md +27 -27
  513. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/symbolName.md +21 -21
  514. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/textChangeRangeIsUnchanged.md +21 -21
  515. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/textChangeRangeNewSpan.md +21 -21
  516. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/textSpanContainsPosition.md +25 -25
  517. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/textSpanContainsTextSpan.md +25 -25
  518. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/textSpanEnd.md +21 -21
  519. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/textSpanIntersection.md +25 -25
  520. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/textSpanIntersectsWith.md +29 -29
  521. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/textSpanIntersectsWithPosition.md +25 -25
  522. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/textSpanIntersectsWithTextSpan.md +25 -25
  523. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/textSpanIsEmpty.md +21 -21
  524. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/textSpanOverlap.md +25 -25
  525. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/textSpanOverlapsWith.md +25 -25
  526. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/toEditorSettings.md +21 -21
  527. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/tokenToString.md +21 -21
  528. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/transform.md +43 -43
  529. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/transformTypeExportImportAndConstEnumInTypeScript.md +34 -34
  530. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/transpile.md +37 -37
  531. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/transpileModule.md +25 -25
  532. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/unescapeLeadingUnderscores.md +27 -27
  533. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/updateLanguageServiceSourceFile.md +41 -41
  534. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/updateSourceFile.md +37 -37
  535. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/validateLocaleAndSetLanguage.md +38 -38
  536. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/visitEachChild.md +91 -91
  537. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/visitFunctionBody.md +88 -88
  538. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/visitIterationBody.md +31 -31
  539. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/visitLexicalEnvironment.md +44 -44
  540. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/visitNode.md +95 -95
  541. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/visitNodes.md +107 -107
  542. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/visitParameterList.md +69 -69
  543. package/docs/api_docs/ArkAnalyzer/namespaces/ts/functions/walkUpBindingElementsAndPatterns.md +21 -21
  544. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/AmdDependency.md +25 -25
  545. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/ApplicableRefactorInfo.md +54 -54
  546. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/ApplyCodeActionCommandResult.md +17 -17
  547. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/ArrayBindingPattern.md +487 -487
  548. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/ArrayDestructuringAssignment.md +539 -539
  549. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/ArrayLiteralExpression.md +559 -559
  550. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/ArrayTypeNode.md +499 -499
  551. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/ArrowFunction.md +626 -626
  552. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/AsExpression.md +507 -507
  553. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/AssertClause.md +495 -495
  554. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/AssertEntry.md +495 -495
  555. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/AssertsIdentifierTypePredicate.md +53 -53
  556. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/AssertsThisTypePredicate.md +53 -53
  557. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/AssignmentExpression.md +550 -550
  558. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/AutoAccessorPropertyDeclaration.md +571 -571
  559. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/AwaitExpression.md +511 -511
  560. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/BigIntLiteral.md +599 -599
  561. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/BigIntLiteralType.md +483 -483
  562. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/BinaryExpression.md +531 -531
  563. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/BindingElement.md +527 -527
  564. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/Block.md +499 -499
  565. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/BreakStatement.md +499 -499
  566. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/BuildInvalidedProject.md +327 -327
  567. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/BuildOptions.md +61 -61
  568. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/BuilderProgram.md +312 -312
  569. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/BuilderProgramHost.md +54 -54
  570. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/Bundle.md +495 -495
  571. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/CallChain.md +595 -595
  572. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/CallExpression.md +577 -577
  573. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/CallHierarchyIncomingCall.md +25 -25
  574. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/CallHierarchyItem.md +65 -65
  575. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/CallHierarchyOutgoingCall.md +25 -25
  576. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/CallSignatureDeclaration.md +563 -563
  577. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/CancellationToken.md +37 -37
  578. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/CaseBlock.md +487 -487
  579. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/CaseClause.md +495 -495
  580. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/CatchClause.md +495 -495
  581. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/CheckJsDirective.md +45 -45
  582. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/ClassDeclaration.md +553 -553
  583. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/ClassElement.md +522 -522
  584. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/ClassExpression.md +611 -611
  585. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/ClassLikeDeclarationBase.md +533 -533
  586. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/ClassStaticBlockDeclaration.md +523 -523
  587. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/ClassificationInfo.md +25 -25
  588. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/ClassificationResult.md +25 -25
  589. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/Classifications.md +25 -25
  590. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/ClassifiedSpan.md +25 -25
  591. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/ClassifiedSpan2020.md +25 -25
  592. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/Classifier.md +85 -85
  593. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/CodeAction.md +44 -44
  594. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/CodeFixAction.md +85 -85
  595. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/Collection.md +106 -106
  596. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/CombinedCodeActions.md +25 -25
  597. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/CombinedCodeFixScope.md +29 -29
  598. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/CommaListExpression.md +501 -501
  599. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/CommentRange.md +57 -57
  600. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/CompilerHost.md +617 -617
  601. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/CompilerOptions.md +839 -839
  602. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/CompletionEntry.md +164 -164
  603. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/CompletionEntryDataAutoImport.md +63 -63
  604. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/CompletionEntryDataResolved.md +82 -82
  605. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/CompletionEntryDataUnresolved.md +92 -92
  606. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/CompletionEntryDetails.md +85 -85
  607. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/CompletionEntryLabelDetails.md +25 -25
  608. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/CompletionInfo.md +77 -77
  609. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/ComputedPropertyName.md +487 -487
  610. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/ConditionCheckResult.md +33 -33
  611. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/ConditionalExpression.md +531 -531
  612. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/ConditionalRoot.md +81 -81
  613. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/ConditionalType.md +487 -487
  614. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/ConditionalTypeNode.md +523 -523
  615. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/ConfigFileDiagnosticsReporter.md +26 -26
  616. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/ConstructSignatureDeclaration.md +563 -563
  617. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/ConstructorDeclaration.md +618 -618
  618. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/ConstructorTypeNode.md +551 -551
  619. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/ContinueStatement.md +499 -499
  620. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/CoreTransformationContext.md +131 -131
  621. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/CreateProgramOptions.md +57 -57
  622. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/CreateSourceFileOptions.md +51 -51
  623. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/CustomTransformer.md +45 -45
  624. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/CustomTransformers.md +39 -39
  625. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/DebuggerStatement.md +491 -491
  626. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/Declaration.md +507 -507
  627. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/DeclarationStatement.md +530 -530
  628. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/Decorator.md +487 -487
  629. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/DefaultClause.md +487 -487
  630. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/DeferredTypeReference.md +504 -504
  631. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/DefinitionInfo.md +135 -135
  632. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/DefinitionInfoAndBoundSpan.md +25 -25
  633. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/DeleteExpression.md +511 -511
  634. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/Diagnostic.md +123 -123
  635. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/DiagnosticMessage.md +57 -57
  636. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/DiagnosticMessageChain.md +46 -46
  637. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/DiagnosticRelatedInformation.md +61 -61
  638. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/DiagnosticWithLocation.md +135 -135
  639. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/DoStatement.md +511 -511
  640. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/DocCommentTemplateOptions.md +17 -17
  641. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/DocumentHighlights.md +25 -25
  642. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/DocumentRegistry.md +390 -390
  643. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/DocumentSpan.md +70 -70
  644. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/ESMap.md +216 -216
  645. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/EditorOptions.md +65 -65
  646. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/EditorSettings.md +69 -69
  647. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/ElementAccessChain.md +583 -583
  648. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/ElementAccessExpression.md +568 -568
  649. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/EmitAndSemanticDiagnosticsBuilderProgram.md +436 -436
  650. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/EmitHelperBase.md +54 -54
  651. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/EmitHost.md +517 -517
  652. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/EmitOutput.md +25 -25
  653. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/EmitResult.md +35 -35
  654. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/EmitTextWriter.md +755 -755
  655. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/EmptyStatement.md +491 -491
  656. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/EnumDeclaration.md +523 -523
  657. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/EnumMember.md +511 -511
  658. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/EnumType.md +447 -447
  659. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/EtsComponentExpression.md +595 -595
  660. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/EtsOptions.md +157 -157
  661. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/EvolvingArrayType.md +475 -475
  662. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/ExportAssignment.md +534 -534
  663. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/ExportDeclaration.md +551 -551
  664. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/ExportSpecifier.md +519 -519
  665. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/Expression.md +505 -505
  666. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/ExpressionStatement.md +503 -503
  667. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/ExpressionWithTypeArguments.md +571 -571
  668. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/ExtendedConfigCacheEntry.md +25 -25
  669. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/ExternalModuleReference.md +487 -487
  670. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/FalseLiteral.md +551 -551
  671. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/FileCheckModuleInfo.md +33 -33
  672. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/FileExtensionInfo.md +33 -33
  673. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/FileReference.md +53 -53
  674. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/FileTextChanges.md +33 -33
  675. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/FileWatcher.md +21 -21
  676. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/FlowArrayMutation.md +53 -53
  677. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/FlowAssignment.md +53 -53
  678. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/FlowCall.md +53 -53
  679. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/FlowCondition.md +53 -53
  680. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/FlowLabel.md +45 -45
  681. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/FlowNodeBase.md +36 -36
  682. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/FlowReduceLabel.md +61 -61
  683. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/FlowStart.md +45 -45
  684. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/FlowSwitchClause.md +69 -69
  685. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/ForInStatement.md +519 -519
  686. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/ForOfStatement.md +527 -527
  687. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/ForStatement.md +527 -527
  688. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/FormatCodeOptions.md +217 -217
  689. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/FormatCodeSettings.md +249 -249
  690. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/FormatDiagnosticsHost.md +51 -51
  691. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/FunctionDeclaration.md +618 -618
  692. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/FunctionExpression.md +678 -678
  693. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/FunctionLikeDeclarationBase.md +596 -596
  694. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/FunctionOrConstructorTypeNodeBase.md +556 -556
  695. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/FunctionTypeNode.md +544 -544
  696. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/GenericType.md +549 -549
  697. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/GetAccessorDeclaration.md +642 -642
  698. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/GetCompletionsAtPositionOptions.md +394 -394
  699. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/GetEffectiveTypeRootsHost.md +43 -43
  700. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/HeritageClause.md +495 -495
  701. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/HighlightSpan.md +49 -49
  702. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/HostCancellationToken.md +21 -21
  703. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/IScriptSnapshot.md +89 -89
  704. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/Identifier.md +602 -602
  705. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/IdentifierTypePredicate.md +53 -53
  706. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/IfStatement.md +515 -515
  707. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/ImplementationLocation.md +107 -107
  708. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/ImportCall.md +587 -587
  709. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/ImportClause.md +527 -527
  710. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/ImportDeclaration.md +517 -517
  711. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/ImportEqualsDeclaration.md +535 -535
  712. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/ImportExpression.md +551 -551
  713. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/ImportSpecifier.md +519 -519
  714. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/ImportTypeAssertionContainer.md +495 -495
  715. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/ImportTypeNode.md +535 -535
  716. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/IncompleteCompletionsCache.md +51 -51
  717. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/IncompleteType.md +25 -25
  718. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/IncrementalProgramOptions.md +63 -63
  719. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/IndexInfo.md +41 -41
  720. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/IndexSignatureDeclaration.md +575 -575
  721. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/IndexType.md +455 -455
  722. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/IndexedAccessType.md +487 -487
  723. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/IndexedAccessTypeNode.md +507 -507
  724. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/InferTypeNode.md +499 -499
  725. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/InlayHint.md +49 -49
  726. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/InlayHintsContext.md +57 -57
  727. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/InputFiles.md +543 -543
  728. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/InstallPackageAction.md +9 -9
  729. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/InstallPackageOptions.md +25 -25
  730. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/InstantiableType.md +457 -457
  731. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/InterfaceDeclaration.md +539 -539
  732. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/InterfaceType.md +498 -498
  733. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/InterfaceTypeWithDeclaredMembers.md +541 -541
  734. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/IntersectionType.md +459 -459
  735. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/IntersectionTypeNode.md +499 -499
  736. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/InvalidatedProjectBase.md +83 -83
  737. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/IterationStatement.md +507 -507
  738. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/Iterator.md +29 -29
  739. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/JSDoc.md +495 -495
  740. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/JSDocAllType.md +503 -503
  741. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/JSDocAugmentsTag.md +520 -520
  742. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/JSDocAuthorTag.md +503 -503
  743. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/JSDocCallbackTag.md +543 -543
  744. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/JSDocClassTag.md +503 -503
  745. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/JSDocContainer.md +42 -42
  746. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/JSDocDeprecatedTag.md +503 -503
  747. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/JSDocEnumTag.md +523 -523
  748. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/JSDocFunctionType.md +563 -563
  749. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/JSDocImplementsTag.md +517 -517
  750. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/JSDocLink.md +495 -495
  751. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/JSDocLinkCode.md +495 -495
  752. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/JSDocLinkDisplayPart.md +45 -45
  753. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/JSDocLinkPlain.md +495 -495
  754. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/JSDocMemberName.md +497 -497
  755. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/JSDocNameReference.md +487 -487
  756. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/JSDocNamepathType.md +511 -511
  757. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/JSDocNamespaceDeclaration.md +527 -527
  758. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/JSDocNonNullableType.md +519 -519
  759. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/JSDocNullableType.md +519 -519
  760. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/JSDocOptionalType.md +511 -511
  761. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/JSDocOverrideTag.md +503 -503
  762. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/JSDocParameterTag.md +565 -565
  763. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/JSDocPrivateTag.md +503 -503
  764. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/JSDocPropertyLikeTag.md +554 -554
  765. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/JSDocPropertyTag.md +565 -565
  766. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/JSDocProtectedTag.md +503 -503
  767. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/JSDocPublicTag.md +503 -503
  768. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/JSDocReadonlyTag.md +503 -503
  769. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/JSDocReturnTag.md +511 -511
  770. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/JSDocSeeTag.md +511 -511
  771. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/JSDocSignature.md +539 -539
  772. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/JSDocTag.md +518 -518
  773. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/JSDocTagInfo-1.md +33 -33
  774. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/JSDocTemplateTag.md +519 -519
  775. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/JSDocText.md +487 -487
  776. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/JSDocThisTag.md +511 -511
  777. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/JSDocType.md +512 -512
  778. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/JSDocTypeExpression.md +499 -499
  779. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/JSDocTypeLiteral.md +521 -521
  780. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/JSDocTypeTag.md +511 -511
  781. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/JSDocTypedefTag.md +543 -543
  782. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/JSDocUnknownTag.md +503 -503
  783. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/JSDocUnknownType.md +503 -503
  784. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/JSDocVariadicType.md +511 -511
  785. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/JsDocNodeCheckConfig.md +25 -25
  786. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/JsDocNodeCheckConfigItem.md +101 -101
  787. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/JsDocTagInfo.md +25 -25
  788. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/JsonMinusNumericLiteral.md +539 -539
  789. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/JsonObjectExpressionStatement.md +503 -503
  790. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/JsonSourceFile.md +798 -798
  791. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/JsxAttribute.md +523 -523
  792. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/JsxAttributes.md +580 -580
  793. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/JsxClosingElement.md +487 -487
  794. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/JsxClosingFragment.md +491 -491
  795. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/JsxClosingTagInfo.md +17 -17
  796. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/JsxElement.md +575 -575
  797. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/JsxExpression.md +507 -507
  798. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/JsxFragment.md +575 -575
  799. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/JsxOpeningElement.md +515 -515
  800. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/JsxOpeningFragment.md +491 -491
  801. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/JsxSelfClosingElement.md +575 -575
  802. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/JsxSpreadAttribute.md +523 -523
  803. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/JsxTagNamePropertyAccess.md +587 -587
  804. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/JsxText.md +523 -523
  805. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/KeywordToken.md +490 -490
  806. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/KeywordTypeNode.md +497 -497
  807. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/LabeledStatement.md +507 -507
  808. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/LanguageService.md +1797 -1797
  809. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/LanguageServiceHost.md +737 -737
  810. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/LeftHandSideExpression.md +530 -530
  811. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/LineAndCharacter.md +27 -27
  812. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/LiteralExpression.md +603 -603
  813. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/LiteralLikeNode.md +509 -509
  814. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/LiteralType.md +477 -477
  815. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/LiteralTypeNode.md +499 -499
  816. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/Map.md +211 -211
  817. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/MapLike.md +23 -23
  818. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/MappedTypeNode.md +553 -553
  819. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/MemberExpression.md +543 -543
  820. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/MetaProperty.md +567 -567
  821. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/MethodDeclaration.md +630 -630
  822. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/MethodSignature.md +563 -563
  823. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/MinimalResolutionCacheHost.md +283 -283
  824. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/MissingDeclaration.md +515 -515
  825. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/ModeAwareCache.md +137 -137
  826. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/ModifierToken.md +485 -485
  827. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/ModuleBlock.md +499 -499
  828. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/ModuleDeclaration.md +528 -528
  829. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/ModulePath.md +33 -33
  830. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/ModuleResolutionCache.md +125 -125
  831. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/ModuleResolutionHost.md +210 -210
  832. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/ModuleSpecifierCache.md +169 -169
  833. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/ModuleSpecifierOptions.md +17 -17
  834. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/ModuleSpecifierResolutionHost.md +211 -211
  835. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/NamedDeclaration.md +522 -522
  836. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/NamedExports.md +487 -487
  837. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/NamedImports.md +487 -487
  838. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/NamedTupleMember.md +535 -535
  839. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/NamespaceDeclaration.md +527 -527
  840. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/NamespaceExport.md +503 -503
  841. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/NamespaceExportDeclaration.md +515 -515
  842. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/NamespaceImport.md +503 -503
  843. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/NavigateToItem.md +81 -81
  844. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/NavigationBarItem.md +78 -78
  845. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/NavigationTree.md +69 -69
  846. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/NewExpression.md +587 -587
  847. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/NoSubstitutionTemplateLiteral.md +623 -623
  848. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/Node.md +429 -429
  849. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/NodeArray.md +1151 -1151
  850. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/NodeFactory.md +12911 -12911
  851. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/NodeVisitor.md +77 -77
  852. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/NodeWithTypeArguments.md +506 -506
  853. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/NodesVisitor.md +85 -85
  854. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/NonNullChain.md +547 -547
  855. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/NonNullExpression.md +539 -539
  856. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/NonRelativeModuleNameResolutionCache.md +62 -62
  857. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/NotEmittedStatement.md +491 -491
  858. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/NullLiteral.md +551 -551
  859. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/NumberLiteralType.md +483 -483
  860. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/NumericLiteral.md +611 -611
  861. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/ObjectBindingPattern.md +487 -487
  862. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/ObjectDestructuringAssignment.md +539 -539
  863. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/ObjectLiteralElement.md +522 -522
  864. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/ObjectLiteralExpression.md +580 -580
  865. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/ObjectLiteralExpressionBase.md +587 -587
  866. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/ObjectType.md +461 -461
  867. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/OmittedExpression.md +491 -491
  868. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/OptionalTypeNode.md +499 -499
  869. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/OrganizeImportsArgs.md +57 -57
  870. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/OutliningSpan.md +60 -60
  871. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/OutputFile.md +33 -33
  872. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/PackageId.md +45 -45
  873. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/PackageJsonInfoCache.md +27 -27
  874. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/ParameterDeclaration.md +535 -535
  875. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/ParenthesizedExpression.md +559 -559
  876. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/ParenthesizedTypeNode.md +499 -499
  877. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/ParseConfigFileHost.md +161 -161
  878. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/ParseConfigHost.md +113 -113
  879. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/ParsedCommandLine.md +83 -83
  880. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/ParsedTsconfig.md +51 -51
  881. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/PartiallyEmittedExpression.md +535 -535
  882. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/PerDirectoryResolutionCache.md +78 -78
  883. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/PerModuleNameCache.md +49 -49
  884. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/PerformanceEvent.md +25 -25
  885. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/PluginImport.md +17 -17
  886. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/PostfixUnaryExpression.md +531 -531
  887. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/PreProcessedFileInfo.md +57 -57
  888. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/PrefixUnaryExpression.md +535 -535
  889. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/PrimaryExpression.md +571 -571
  890. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/PrintHandlers.md +141 -141
  891. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/Printer.md +150 -150
  892. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/PrinterOptions.md +65 -65
  893. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/PrivateIdentifier.md +567 -567
  894. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/Program.md +584 -584
  895. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/ProgramHost.md +406 -406
  896. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/ProjectReference.md +49 -49
  897. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/PropertyAccessChain.md +595 -595
  898. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/PropertyAccessEntityNameExpression.md +597 -597
  899. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/PropertyAccessExpression.md +586 -586
  900. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/PropertyAssignment.md +547 -547
  901. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/PropertyDeclaration.md +551 -551
  902. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/PropertyLikeDeclaration.md +503 -503
  903. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/PropertySignature.md +547 -547
  904. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/PseudoBigInt.md +27 -27
  905. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/PunctuationToken.md +485 -485
  906. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/Push.md +35 -35
  907. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/QualifiedName.md +495 -495
  908. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/QuickInfo.md +57 -57
  909. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/RawSourceMap.md +65 -65
  910. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/ReadBuildProgramHost.md +63 -63
  911. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/ReadonlyCollection.md +61 -61
  912. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/ReadonlyESMap.md +141 -141
  913. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/ReadonlyMap.md +147 -147
  914. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/ReadonlySet.md +117 -117
  915. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/ReadonlyTextRange.md +30 -30
  916. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/ReadonlyUnderscoreEscapedMap.md +151 -151
  917. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/RefactorActionInfo.md +55 -55
  918. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/RefactorEditInfo.md +44 -44
  919. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/ReferenceEntry.md +111 -111
  920. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/ReferencedSymbol.md +25 -25
  921. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/ReferencedSymbolDefinitionInfo.md +159 -159
  922. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/ReferencedSymbolEntry.md +123 -123
  923. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/RegularExpressionLiteral.md +599 -599
  924. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/RenameInfoFailure.md +25 -25
  925. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/RenameInfoOptions.md +21 -21
  926. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/RenameInfoSuccess.md +68 -68
  927. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/RenameLocation.md +107 -107
  928. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/ReportFileInError.md +25 -25
  929. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/ResolveProjectReferencePathHost.md +29 -29
  930. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/ResolvedModule.md +39 -39
  931. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/ResolvedModuleFull.md +64 -64
  932. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/ResolvedModuleSpecifierInfo.md +33 -33
  933. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/ResolvedModuleWithFailedLookupLocations.md +17 -17
  934. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/ResolvedProjectReference.md +33 -33
  935. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/ResolvedTypeReferenceDirective.md +43 -43
  936. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/ResolvedTypeReferenceDirectiveWithFailedLookupLocations.md +25 -25
  937. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/RestTypeNode.md +499 -499
  938. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/ReturnStatement.md +499 -499
  939. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/SatisfiesExpression.md +507 -507
  940. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/Scanner.md +565 -565
  941. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/ScopedEmitHelper.md +73 -73
  942. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/ScriptReferenceHost.md +74 -74
  943. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/SelectionRange.md +25 -25
  944. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/SemanticDiagnosticsBuilderProgram.md +401 -401
  945. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/SemicolonClassElement.md +517 -517
  946. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/Set.md +181 -181
  947. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/SetAccessorDeclaration.md +642 -642
  948. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/ShorthandPropertyAssignment.md +548 -548
  949. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/Signature.md +129 -129
  950. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/SignatureDeclarationBase.md +537 -537
  951. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/SignatureHelpCharacterTypedReason.md +30 -30
  952. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/SignatureHelpInvokedReason.md +28 -28
  953. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/SignatureHelpItem.md +71 -71
  954. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/SignatureHelpItems.md +51 -51
  955. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/SignatureHelpItemsOptions.md +17 -17
  956. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/SignatureHelpParameter.md +49 -49
  957. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/SignatureHelpRetriggeredReason.md +32 -32
  958. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/SolutionBuilder.md +129 -129
  959. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/SolutionBuilderHost.md +704 -704
  960. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/SolutionBuilderHostBase.md +661 -661
  961. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/SolutionBuilderWithWatchHost.md +862 -862
  962. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/SortedArray.md +1465 -1465
  963. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/SortedReadonlyArray.md +1127 -1127
  964. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/SourceFile.md +722 -722
  965. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/SourceFileLike.md +45 -45
  966. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/SourceFileMayBeEmittedHost.md +79 -79
  967. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/SourceMapGenerator.md +219 -219
  968. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/SourceMapGeneratorOptions.md +17 -17
  969. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/SourceMapRange.md +45 -45
  970. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/SourceMapSource.md +61 -61
  971. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/SourceMapSpan.md +69 -69
  972. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/SpreadAssignment.md +523 -523
  973. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/SpreadElement.md +499 -499
  974. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/Statement.md +509 -509
  975. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/StringLiteral.md +611 -611
  976. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/StringLiteralType.md +483 -483
  977. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/StringMappingType.md +455 -455
  978. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/StructDeclaration.md +553 -553
  979. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/SubstitutionType.md +471 -471
  980. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/SuperCall.md +587 -587
  981. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/SuperElementAccessExpression.md +575 -575
  982. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/SuperExpression.md +551 -551
  983. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/SuperPropertyAccessExpression.md +587 -587
  984. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/SwitchStatement.md +515 -515
  985. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/Symbol.md +165 -165
  986. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/SymbolDisplayPart.md +29 -29
  987. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/SymbolTracker.md +233 -233
  988. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/SyntaxList.md +487 -487
  989. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/SynthesizedComment.md +77 -77
  990. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/SyntheticExpression.md +515 -515
  991. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/System.md +592 -592
  992. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/TagCheckConfig.md +41 -41
  993. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/TagCheckParam.md +25 -25
  994. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/TaggedTemplateExpression.md +563 -563
  995. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/TemplateExpression.md +567 -567
  996. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/TemplateHead.md +527 -527
  997. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/TemplateLiteralLikeNode.md +530 -530
  998. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/TemplateLiteralType.md +463 -463
  999. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/TemplateLiteralTypeNode.md +507 -507
  1000. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/TemplateLiteralTypeSpan.md +507 -507
  1001. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/TemplateMiddle.md +527 -527
  1002. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/TemplateSpan.md +495 -495
  1003. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/TemplateTail.md +527 -527
  1004. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/TextChange.md +25 -25
  1005. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/TextChangeRange.md +25 -25
  1006. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/TextInsertion.md +27 -27
  1007. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/TextRange.md +32 -32
  1008. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/TextSpan.md +25 -25
  1009. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/ThisExpression.md +551 -551
  1010. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/ThisTypeNode.md +491 -491
  1011. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/ThisTypePredicate.md +53 -53
  1012. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/ThrowStatement.md +499 -499
  1013. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/TodoComment.md +33 -33
  1014. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/TodoCommentDescriptor.md +25 -25
  1015. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/Token.md +490 -490
  1016. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/TransformationContext.md +353 -353
  1017. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/TransformationResult.md +133 -133
  1018. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/TransientIdentifier.md +622 -622
  1019. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/TranspileOptions.md +57 -57
  1020. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/TranspileOutput.md +33 -33
  1021. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/TrueLiteral.md +551 -551
  1022. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/TryStatement.md +515 -515
  1023. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/TsConfigSourceFile.md +802 -802
  1024. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/TupleType.md +601 -601
  1025. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/TupleTypeNode.md +499 -499
  1026. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/TupleTypeReference.md +504 -504
  1027. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/Type.md +340 -340
  1028. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/TypeAcquisition.md +58 -58
  1029. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/TypeAliasDeclaration.md +531 -531
  1030. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/TypeAssertion.md +519 -519
  1031. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/TypeChecker.md +1466 -1466
  1032. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/TypeElement.md +529 -529
  1033. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/TypeLiteralNode.md +511 -511
  1034. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/TypeNode.md +514 -514
  1035. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/TypeOfExpression.md +511 -511
  1036. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/TypeOperatorNode.md +507 -507
  1037. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/TypeParameter.md +447 -447
  1038. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/TypeParameterDeclaration.md +529 -529
  1039. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/TypePredicateBase.md +32 -32
  1040. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/TypePredicateNode.md +515 -515
  1041. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/TypeQueryNode.md +511 -511
  1042. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/TypeReference.md +498 -498
  1043. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/TypeReferenceDirectiveResolutionCache.md +83 -83
  1044. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/TypeReferenceNode.md +511 -511
  1045. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/UnaryExpression.md +508 -508
  1046. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/UnderscoreEscapedMap.md +211 -211
  1047. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/UnionOrIntersectionType.md +460 -460
  1048. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/UnionType.md +459 -459
  1049. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/UnionTypeNode.md +499 -499
  1050. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/UniqueESSymbolType.md +455 -455
  1051. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/UnparsedPrepend.md +499 -499
  1052. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/UnparsedPrologue.md +491 -491
  1053. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/UnparsedSection.md +494 -494
  1054. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/UnparsedSource.md +575 -575
  1055. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/UnparsedSyntheticReference.md +491 -491
  1056. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/UnparsedTextLike.md +491 -491
  1057. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/UnscopedEmitHelper.md +73 -73
  1058. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/UpdateBundleProject.md +129 -129
  1059. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/UpdateExpression.md +517 -517
  1060. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/UpdateOutputFileStampsProject.md +113 -113
  1061. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/UserPreferences.md +239 -239
  1062. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/VariableDeclaration.md +527 -527
  1063. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/VariableDeclarationList.md +487 -487
  1064. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/VariableStatement.md +499 -499
  1065. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/VoidExpression.md +511 -511
  1066. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/Watch.md +48 -48
  1067. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/WatchCompilerHost.md +706 -706
  1068. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/WatchCompilerHostOfConfigFile.md +764 -764
  1069. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/WatchCompilerHostOfFilesAndCompilerOptions.md +751 -751
  1070. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/WatchHost.md +160 -160
  1071. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/WatchOfConfigFile.md +57 -57
  1072. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/WatchOfFilesAndCompilerOptions.md +77 -77
  1073. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/WatchOptions.md +61 -61
  1074. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/WhileStatement.md +511 -511
  1075. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/WithStatement.md +507 -507
  1076. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/WriteFileCallbackData.md +9 -9
  1077. package/docs/api_docs/ArkAnalyzer/namespaces/ts/interfaces/YieldExpression.md +507 -507
  1078. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_0/README.md +36 -36
  1079. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_0/classes/LinterConfig.md +63 -63
  1080. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_0/classes/TSCCompiledProgram.md +81 -81
  1081. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_0/classes/TypeScriptLinter.md +307 -307
  1082. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_0/functions/runArkTSLinter.md +33 -33
  1083. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_0/functions/translateDiag.md +25 -25
  1084. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_0/interfaces/ProblemInfo.md +105 -105
  1085. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_0/namespaces/Autofixer/README.md +25 -25
  1086. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_0/namespaces/Autofixer/functions/fixCtorParameterProperties.md +25 -25
  1087. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_0/namespaces/Autofixer/functions/fixFunctionExpression.md +29 -29
  1088. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_0/namespaces/Autofixer/functions/fixLiteralAsPropertyName.md +21 -21
  1089. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_0/namespaces/Autofixer/functions/fixPropertyAccessByIndex.md +21 -21
  1090. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_0/namespaces/Autofixer/functions/fixReturnType.md +25 -25
  1091. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_0/namespaces/Autofixer/functions/shouldAutofix.md +25 -25
  1092. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_0/namespaces/Autofixer/interfaces/Autofix.md +33 -33
  1093. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_0/namespaces/Autofixer/variables/AUTOFIX_ALL.md +11 -11
  1094. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_0/namespaces/Autofixer/variables/autofixInfo.md +11 -11
  1095. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_0/namespaces/Common/README.md +13 -13
  1096. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_0/namespaces/Common/interfaces/AutofixInfo.md +33 -33
  1097. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_0/namespaces/Common/interfaces/CommandLineOptions.md +65 -65
  1098. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_0/namespaces/Common/interfaces/LintOptions.md +29 -29
  1099. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_0/namespaces/DiagnosticCheckerNamespace/README.md +11 -11
  1100. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_0/namespaces/DiagnosticCheckerNamespace/interfaces/DiagnosticChecker.md +27 -27
  1101. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_0/namespaces/LibraryTypeCallDiagnosticCheckerNamespace/README.md +22 -22
  1102. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_0/namespaces/LibraryTypeCallDiagnosticCheckerNamespace/classes/LibraryTypeCallDiagnosticChecker.md +153 -153
  1103. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_0/namespaces/LibraryTypeCallDiagnosticCheckerNamespace/variables/ARGUMENT_OF_TYPE_0_IS_NOT_ASSIGNABLE_TO_PARAMETER_OF_TYPE_1_ERROR_CODE.md +11 -11
  1104. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_0/namespaces/LibraryTypeCallDiagnosticCheckerNamespace/variables/ARGUMENT_OF_TYPE_NULL_IS_NOT_ASSIGNABLE_TO_PARAMETER_OF_TYPE_1_RE.md +11 -11
  1105. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_0/namespaces/LibraryTypeCallDiagnosticCheckerNamespace/variables/ARGUMENT_OF_TYPE_UNDEFINED_IS_NOT_ASSIGNABLE_TO_PARAMETER_OF_TYPE_1_RE.md +11 -11
  1106. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_0/namespaces/LibraryTypeCallDiagnosticCheckerNamespace/variables/NO_OVERLOAD_MATCHES_THIS_CALL_ERROR_CODE.md +11 -11
  1107. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_0/namespaces/LibraryTypeCallDiagnosticCheckerNamespace/variables/TYPE_0_IS_NOT_ASSIGNABLE_TO_TYPE_1_ERROR_CODE.md +11 -11
  1108. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_0/namespaces/LibraryTypeCallDiagnosticCheckerNamespace/variables/TYPE_NULL_IS_NOT_ASSIGNABLE_TO_TYPE_1_RE.md +11 -11
  1109. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_0/namespaces/LibraryTypeCallDiagnosticCheckerNamespace/variables/TYPE_UNDEFINED_IS_NOT_ASSIGNABLE_TO_TYPE_1_RE.md +11 -11
  1110. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_0/namespaces/LibraryTypeCallDiagnosticCheckerNamespace/variables/TYPE_UNKNOWN_IS_NOT_ASSIGNABLE_TO_TYPE_1_RE.md +11 -11
  1111. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_0/namespaces/Problems/README.md +19 -19
  1112. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_0/namespaces/Problems/classes/FaultAttributs.md +43 -43
  1113. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_0/namespaces/Problems/enumerations/FaultID.md +689 -689
  1114. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_0/namespaces/Problems/variables/faultsAttrs.md +11 -11
  1115. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_0/namespaces/Utils/README.md +143 -143
  1116. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_0/namespaces/Utils/enumerations/CheckType.md +49 -49
  1117. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_0/namespaces/Utils/enumerations/ProblemSeverity.md +25 -25
  1118. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_0/namespaces/Utils/functions/clearTrueSymbolAtLocationCache.md +15 -15
  1119. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_0/namespaces/Utils/functions/clearTypeChecker.md +15 -15
  1120. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_0/namespaces/Utils/functions/decodeAutofixInfo.md +21 -21
  1121. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_0/namespaces/Utils/functions/encodeProblemInfo.md +21 -21
  1122. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_0/namespaces/Utils/functions/entityNameToString.md +21 -21
  1123. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_0/namespaces/Utils/functions/findParentIf.md +21 -21
  1124. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_0/namespaces/Utils/functions/followIfAliased.md +21 -21
  1125. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_0/namespaces/Utils/functions/getAccessModifier.md +21 -21
  1126. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_0/namespaces/Utils/functions/getDeclaration.md +21 -21
  1127. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_0/namespaces/Utils/functions/getEndPos.md +21 -21
  1128. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_0/namespaces/Utils/functions/getModifier.md +25 -25
  1129. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_0/namespaces/Utils/functions/getParentSymbolName.md +21 -21
  1130. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_0/namespaces/Utils/functions/getScriptKind.md +21 -21
  1131. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_0/namespaces/Utils/functions/getStartPos.md +21 -21
  1132. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_0/namespaces/Utils/functions/getSymbolDeclarationTypeNode.md +21 -21
  1133. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_0/namespaces/Utils/functions/getSymbolOfCallExpression.md +21 -21
  1134. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_0/namespaces/Utils/functions/getVariableDeclarationTypeNode.md +21 -21
  1135. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_0/namespaces/Utils/functions/hasAccessModifier.md +21 -21
  1136. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_0/namespaces/Utils/functions/hasEsObjectType.md +21 -21
  1137. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_0/namespaces/Utils/functions/hasLibraryType.md +21 -21
  1138. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_0/namespaces/Utils/functions/hasMethods.md +21 -21
  1139. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_0/namespaces/Utils/functions/hasModifier.md +25 -25
  1140. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_0/namespaces/Utils/functions/hasPredecessor.md +25 -25
  1141. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_0/namespaces/Utils/functions/isAnonymousType.md +21 -21
  1142. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_0/namespaces/Utils/functions/isAnyType.md +21 -21
  1143. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_0/namespaces/Utils/functions/isAssignmentOperator.md +21 -21
  1144. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_0/namespaces/Utils/functions/isBooleanType.md +21 -21
  1145. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_0/namespaces/Utils/functions/isCallToFunctionWithOmittedReturnType.md +21 -21
  1146. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_0/namespaces/Utils/functions/isCompileTimeExpression.md +21 -21
  1147. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_0/namespaces/Utils/functions/isConst.md +21 -21
  1148. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_0/namespaces/Utils/functions/isDefaultImport.md +21 -21
  1149. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_0/namespaces/Utils/functions/isDerivedFrom.md +25 -25
  1150. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_0/namespaces/Utils/functions/isDestructuringAssignmentLHS.md +21 -21
  1151. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_0/namespaces/Utils/functions/isDynamicLiteralInitializer.md +21 -21
  1152. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_0/namespaces/Utils/functions/isDynamicType.md +21 -21
  1153. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_0/namespaces/Utils/functions/isEnumMemberType.md +21 -21
  1154. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_0/namespaces/Utils/functions/isEnumType.md +21 -21
  1155. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_0/namespaces/Utils/functions/isEsObjectPossiblyAllowed.md +21 -21
  1156. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_0/namespaces/Utils/functions/isEsObjectSymbol.md +21 -21
  1157. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_0/namespaces/Utils/functions/isEsObjectType.md +21 -21
  1158. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_0/namespaces/Utils/functions/isExpressionAssignableToType.md +25 -25
  1159. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_0/namespaces/Utils/functions/isFunctionOrMethod.md +21 -21
  1160. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_0/namespaces/Utils/functions/isFunctionSymbol.md +21 -21
  1161. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_0/namespaces/Utils/functions/isGenericArrayType.md +21 -21
  1162. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_0/namespaces/Utils/functions/isGlobalSymbol.md +21 -21
  1163. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_0/namespaces/Utils/functions/isInsideBlock.md +21 -21
  1164. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_0/namespaces/Utils/functions/isIntegerConstantValue.md +21 -21
  1165. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_0/namespaces/Utils/functions/isInterfaceType.md +21 -21
  1166. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_0/namespaces/Utils/functions/isIntrinsicObjectType.md +21 -21
  1167. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_0/namespaces/Utils/functions/isLibrarySymbol.md +21 -21
  1168. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_0/namespaces/Utils/functions/isLibraryType.md +21 -21
  1169. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_0/namespaces/Utils/functions/isLiteralType.md +21 -21
  1170. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_0/namespaces/Utils/functions/isMethodAssignment.md +21 -21
  1171. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_0/namespaces/Utils/functions/isNullType.md +21 -21
  1172. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_0/namespaces/Utils/functions/isNumberConstantValue.md +21 -21
  1173. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_0/namespaces/Utils/functions/isNumberLikeType.md +21 -21
  1174. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_0/namespaces/Utils/functions/isNumberType.md +21 -21
  1175. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_0/namespaces/Utils/functions/isObjectLiteralType.md +21 -21
  1176. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_0/namespaces/Utils/functions/isObjectType.md +21 -21
  1177. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_0/namespaces/Utils/functions/isPrimitiveEnumMemberType.md +25 -25
  1178. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_0/namespaces/Utils/functions/isPrimitiveEnumType.md +25 -25
  1179. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_0/namespaces/Utils/functions/isPrimitiveType.md +21 -21
  1180. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_0/namespaces/Utils/functions/isPrototypeSymbol.md +21 -21
  1181. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_0/namespaces/Utils/functions/isReferenceType.md +21 -21
  1182. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_0/namespaces/Utils/functions/isStdLibrarySymbol.md +21 -21
  1183. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_0/namespaces/Utils/functions/isStdLibraryType.md +21 -21
  1184. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_0/namespaces/Utils/functions/isStdPartialType.md +21 -21
  1185. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_0/namespaces/Utils/functions/isStdReadonlyType.md +21 -21
  1186. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_0/namespaces/Utils/functions/isStdRecordType.md +21 -21
  1187. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_0/namespaces/Utils/functions/isStdRequiredType.md +21 -21
  1188. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_0/namespaces/Utils/functions/isStdSymbol.md +21 -21
  1189. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_0/namespaces/Utils/functions/isStringConstantValue.md +21 -21
  1190. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_0/namespaces/Utils/functions/isStringLikeType.md +21 -21
  1191. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_0/namespaces/Utils/functions/isStringType.md +21 -21
  1192. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_0/namespaces/Utils/functions/isStruct.md +21 -21
  1193. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_0/namespaces/Utils/functions/isStructDeclaration.md +21 -21
  1194. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_0/namespaces/Utils/functions/isStructDeclarationKind.md +21 -21
  1195. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_0/namespaces/Utils/functions/isStructObjectInitializer.md +21 -21
  1196. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_0/namespaces/Utils/functions/isSupportedType.md +21 -21
  1197. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_0/namespaces/Utils/functions/isSymbolAPI.md +21 -21
  1198. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_0/namespaces/Utils/functions/isSymbolIterator.md +21 -21
  1199. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_0/namespaces/Utils/functions/isThisOrSuperExpr.md +21 -21
  1200. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_0/namespaces/Utils/functions/isType.md +25 -25
  1201. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_0/namespaces/Utils/functions/isTypeDeclSyntaxKind.md +21 -21
  1202. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_0/namespaces/Utils/functions/isTypeReference.md +21 -21
  1203. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_0/namespaces/Utils/functions/isTypeSymbol.md +21 -21
  1204. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_0/namespaces/Utils/functions/isTypedArray.md +21 -21
  1205. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_0/namespaces/Utils/functions/isUnknownType.md +21 -21
  1206. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_0/namespaces/Utils/functions/isUnsupportedType.md +21 -21
  1207. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_0/namespaces/Utils/functions/isUnsupportedUnionType.md +21 -21
  1208. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_0/namespaces/Utils/functions/isValidEnumMemberInit.md +21 -21
  1209. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_0/namespaces/Utils/functions/isValueAssignableToESObject.md +21 -21
  1210. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_0/namespaces/Utils/functions/logTscDiagnostic.md +25 -25
  1211. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_0/namespaces/Utils/functions/needToDeduceStructuralIdentity.md +29 -29
  1212. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_0/namespaces/Utils/functions/pathContainsDirectory.md +25 -25
  1213. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_0/namespaces/Utils/functions/processParentTypes.md +29 -29
  1214. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_0/namespaces/Utils/functions/processParentTypesCheck.md +25 -25
  1215. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_0/namespaces/Utils/functions/relatedByInheritanceOrIdentical.md +25 -25
  1216. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_0/namespaces/Utils/functions/setTestMode.md +21 -21
  1217. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_0/namespaces/Utils/functions/setTypeChecker.md +21 -21
  1218. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_0/namespaces/Utils/functions/symbolHasDuplicateName.md +25 -25
  1219. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_0/namespaces/Utils/functions/symbolHasEsObjectType.md +21 -21
  1220. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_0/namespaces/Utils/functions/trueSymbolAtLocation.md +21 -21
  1221. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_0/namespaces/Utils/functions/typeIsRecursive.md +25 -25
  1222. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_0/namespaces/Utils/functions/unwrapParenthesized.md +21 -21
  1223. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_0/namespaces/Utils/functions/unwrapParenthesizedType.md +21 -21
  1224. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_0/namespaces/Utils/functions/validateFields.md +25 -25
  1225. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_0/namespaces/Utils/functions/validateObjectLiteralType.md +21 -21
  1226. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_0/namespaces/Utils/variables/ALLOWED_STD_SYMBOL_API.md +11 -11
  1227. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_0/namespaces/Utils/variables/ARKTS_IGNORE_DIRS.md +11 -11
  1228. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_0/namespaces/Utils/variables/ARKTS_IGNORE_FILES.md +11 -11
  1229. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_0/namespaces/Utils/variables/ARKUI_DECORATORS.md +11 -11
  1230. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_0/namespaces/Utils/variables/ES_OBJECT.md +11 -11
  1231. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_0/namespaces/Utils/variables/FUNCTION_HAS_NO_RETURN_ERROR_CODE.md +11 -11
  1232. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_0/namespaces/Utils/variables/LIMITED_STANDARD_UTILITY_TYPES.md +11 -11
  1233. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_0/namespaces/Utils/variables/LIMITED_STD_GLOBAL_FUNC.md +11 -11
  1234. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_0/namespaces/Utils/variables/LIMITED_STD_OBJECT_API.md +11 -11
  1235. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_0/namespaces/Utils/variables/LIMITED_STD_PROXYHANDLER_API.md +11 -11
  1236. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_0/namespaces/Utils/variables/LIMITED_STD_REFLECT_API.md +11 -11
  1237. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_0/namespaces/Utils/variables/NON_INITIALIZABLE_PROPERTY_ClASS_DECORATORS.md +11 -11
  1238. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_0/namespaces/Utils/variables/NON_INITIALIZABLE_PROPERTY_DECORATORS.md +11 -11
  1239. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_0/namespaces/Utils/variables/NON_RETURN_FUNCTION_DECORATORS.md +11 -11
  1240. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_0/namespaces/Utils/variables/PROPERTY_HAS_NO_INITIALIZER_ERROR_CODE.md +11 -11
  1241. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_0/namespaces/Utils/variables/STANDARD_LIBRARIES.md +11 -11
  1242. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_0/namespaces/Utils/variables/TYPED_ARRAYS.md +11 -11
  1243. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_0/variables/cookBookMsg.md +11 -11
  1244. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_0/variables/cookBookTag.md +11 -11
  1245. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/README.md +43 -43
  1246. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/classes/InteropTypescriptLinter.md +241 -241
  1247. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/classes/LinterConfig.md +63 -63
  1248. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/classes/TSCCompiledProgram.md +81 -81
  1249. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/classes/TypeScriptLinter.md +331 -331
  1250. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/functions/runArkTSLinter.md +33 -33
  1251. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/functions/translateDiag.md +25 -25
  1252. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/interfaces/KitInfo.md +17 -17
  1253. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/interfaces/KitSymbol.md +25 -25
  1254. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/interfaces/ProblemInfo.md +105 -105
  1255. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Autofixer/README.md +25 -25
  1256. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Autofixer/functions/fixCtorParameterProperties.md +25 -25
  1257. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Autofixer/functions/fixFunctionExpression.md +29 -29
  1258. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Autofixer/functions/fixLiteralAsPropertyName.md +21 -21
  1259. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Autofixer/functions/fixPropertyAccessByIndex.md +21 -21
  1260. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Autofixer/functions/fixReturnType.md +25 -25
  1261. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Autofixer/functions/shouldAutofix.md +25 -25
  1262. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Autofixer/interfaces/Autofix.md +33 -33
  1263. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Autofixer/variables/AUTOFIX_ALL.md +11 -11
  1264. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Autofixer/variables/autofixInfo.md +11 -11
  1265. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Common/README.md +17 -17
  1266. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Common/enumerations/ProblemSeverity.md +25 -25
  1267. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Common/interfaces/AutofixInfo.md +33 -33
  1268. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Common/interfaces/CommandLineOptions.md +65 -65
  1269. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Common/interfaces/LintOptions.md +29 -29
  1270. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/DiagnosticCheckerNamespace/README.md +11 -11
  1271. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/DiagnosticCheckerNamespace/interfaces/DiagnosticChecker.md +27 -27
  1272. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/LibraryTypeCallDiagnosticCheckerNamespace/README.md +30 -30
  1273. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/LibraryTypeCallDiagnosticCheckerNamespace/classes/LibraryTypeCallDiagnosticChecker.md +197 -197
  1274. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/LibraryTypeCallDiagnosticCheckerNamespace/enumerations/ErrorType.md +41 -41
  1275. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/LibraryTypeCallDiagnosticCheckerNamespace/variables/ARGUMENT_OF_TYPE.md +11 -11
  1276. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/LibraryTypeCallDiagnosticCheckerNamespace/variables/ARGUMENT_OF_TYPE_0_IS_NOT_ASSIGNABLE_TO_PARAMETER_OF_TYPE_1_ERROR_CODE.md +11 -11
  1277. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/LibraryTypeCallDiagnosticCheckerNamespace/variables/ARGUMENT_OF_TYPE_NULL_IS_NOT_ASSIGNABLE_TO_PARAMETER_OF_TYPE_1_RE.md +11 -11
  1278. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/LibraryTypeCallDiagnosticCheckerNamespace/variables/ARGUMENT_OF_TYPE_UNDEFINED_IS_NOT_ASSIGNABLE_TO_PARAMETER_OF_TYPE_1_RE.md +11 -11
  1279. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/LibraryTypeCallDiagnosticCheckerNamespace/variables/IS_NOT_ASSIGNABLE_TO_PARAMETER_OF_TYPE.md +11 -11
  1280. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/LibraryTypeCallDiagnosticCheckerNamespace/variables/IS_NOT_ASSIGNABLE_TO_TYPE.md +11 -11
  1281. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/LibraryTypeCallDiagnosticCheckerNamespace/variables/NO_OVERLOAD_MATCHES_THIS_CALL_ERROR_CODE.md +11 -11
  1282. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/LibraryTypeCallDiagnosticCheckerNamespace/variables/TYPE.md +11 -11
  1283. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/LibraryTypeCallDiagnosticCheckerNamespace/variables/TYPE_0_IS_NOT_ASSIGNABLE_TO_TYPE_1_ERROR_CODE.md +11 -11
  1284. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/LibraryTypeCallDiagnosticCheckerNamespace/variables/TYPE_NULL_IS_NOT_ASSIGNABLE_TO_TYPE_1_RE.md +11 -11
  1285. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/LibraryTypeCallDiagnosticCheckerNamespace/variables/TYPE_UNDEFINED_IS_NOT_ASSIGNABLE_TO_TYPE_1_RE.md +11 -11
  1286. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/LibraryTypeCallDiagnosticCheckerNamespace/variables/TYPE_UNKNOWN_IS_NOT_ASSIGNABLE_TO_TYPE_1_RE.md +11 -11
  1287. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Problems/README.md +19 -19
  1288. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Problems/classes/FaultAttributes.md +59 -59
  1289. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Problems/enumerations/FaultID.md +905 -905
  1290. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Problems/variables/faultsAttrs.md +11 -11
  1291. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/README.md +218 -218
  1292. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/functions/checkTypeSet.md +25 -25
  1293. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/functions/clearTrueSymbolAtLocationCache.md +15 -15
  1294. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/functions/clearTypeChecker.md +15 -15
  1295. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/functions/decodeAutofixInfo.md +21 -21
  1296. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/functions/encodeProblemInfo.md +21 -21
  1297. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/functions/entityNameToString.md +21 -21
  1298. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/functions/findParentIf.md +21 -21
  1299. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/functions/followIfAliased.md +21 -21
  1300. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/functions/getAccessModifier.md +21 -21
  1301. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/functions/getCatchWithUnsupportedTypeHighlightRange.md +21 -21
  1302. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/functions/getClassExpressionHighlightRange.md +21 -21
  1303. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/functions/getConstAssertionHighlightRange.md +21 -21
  1304. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/functions/getDeclWithDuplicateNameHighlightRange.md +21 -21
  1305. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/functions/getDeclaration.md +21 -21
  1306. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/functions/getDeclarationNode.md +21 -21
  1307. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/functions/getDecoratorName.md +21 -21
  1308. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/functions/getDecoratorsIfInSendableClass.md +21 -21
  1309. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/functions/getDeleteOperatorHighlightRange.md +21 -21
  1310. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/functions/getEndPos.md +21 -21
  1311. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/functions/getForInStatementHighlightRange.md +21 -21
  1312. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/functions/getFunctionApplyCallHighlightRange.md +21 -21
  1313. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/functions/getHighlightRange.md +25 -25
  1314. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/functions/getInstanceofUnsupportedHighlightRange.md +21 -21
  1315. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/functions/getKeywordHighlightRange.md +25 -25
  1316. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/functions/getLimitedReturnTypeInferenceHighlightRange.md +21 -21
  1317. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/functions/getLocalFunctionHighlightRange.md +21 -21
  1318. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/functions/getModifier.md +25 -25
  1319. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/functions/getMultipleStaticBlocksHighlightRange.md +21 -21
  1320. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/functions/getNonNullableType.md +21 -21
  1321. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/functions/getNonSendableDecorators.md +21 -21
  1322. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/functions/getObjectLiteralNoContextTypeHighlightRange.md +21 -21
  1323. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/functions/getParentSymbolName.md +21 -21
  1324. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/functions/getScriptKind.md +21 -21
  1325. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/functions/getSendableDecorator.md +21 -21
  1326. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/functions/getSendableDefiniteAssignmentHighlightRange.md +21 -21
  1327. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/functions/getStartPos.md +21 -21
  1328. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/functions/getSymbolDeclarationTypeNode.md +21 -21
  1329. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/functions/getSymbolOfCallExpression.md +21 -21
  1330. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/functions/getTypeOrTypeConstraintAtLocation.md +21 -21
  1331. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/functions/getTypeQueryHighlightRange.md +21 -21
  1332. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/functions/getVarDeclarationHighlightRange.md +21 -21
  1333. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/functions/getVariableDeclarationTypeNode.md +21 -21
  1334. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/functions/getWithStatementHighlightRange.md +21 -21
  1335. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/functions/hasAccessModifier.md +21 -21
  1336. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/functions/hasEsObjectType.md +21 -21
  1337. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/functions/hasLibraryType.md +21 -21
  1338. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/functions/hasMethods.md +21 -21
  1339. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/functions/hasModifier.md +25 -25
  1340. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/functions/hasPredecessor.md +25 -25
  1341. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/functions/hasSendableDecorator.md +21 -21
  1342. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/functions/hasSendableDecoratorFunctionOverload.md +21 -21
  1343. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/functions/hasSendableTypeAlias.md +21 -21
  1344. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/functions/isAllowedIndexSignature.md +21 -21
  1345. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/functions/isAnonymous.md +21 -21
  1346. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/functions/isAnonymousType.md +21 -21
  1347. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/functions/isAnyType.md +21 -21
  1348. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/functions/isArkTSCollectionsArrayLikeType.md +21 -21
  1349. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/functions/isArkTSCollectionsClassOrInterfaceDeclaration.md +21 -21
  1350. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/functions/isArray.md +21 -21
  1351. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/functions/isAssignmentOperator.md +21 -21
  1352. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/functions/isBooleanLikeType.md +21 -21
  1353. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/functions/isCallToFunctionWithOmittedReturnType.md +21 -21
  1354. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/functions/isCompileTimeExpression.md +21 -21
  1355. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/functions/isConst.md +21 -21
  1356. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/functions/isConstEnum.md +21 -21
  1357. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/functions/isDefaultImport.md +21 -21
  1358. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/functions/isDestructuringAssignmentLHS.md +21 -21
  1359. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/functions/isDynamicLiteralInitializer.md +21 -21
  1360. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/functions/isDynamicType.md +21 -21
  1361. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/functions/isEnum.md +21 -21
  1362. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/functions/isEnumMemberType.md +21 -21
  1363. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/functions/isEnumStringLiteral.md +21 -21
  1364. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/functions/isEnumType.md +21 -21
  1365. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/functions/isEsObjectPossiblyAllowed.md +21 -21
  1366. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/functions/isEsObjectSymbol.md +21 -21
  1367. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/functions/isEsObjectType.md +21 -21
  1368. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/functions/isFunctionOrMethod.md +21 -21
  1369. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/functions/isFunctionSymbol.md +21 -21
  1370. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/functions/isGenericArrayType.md +21 -21
  1371. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/functions/isGlobalSymbol.md +21 -21
  1372. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/functions/isISendableInterface.md +21 -21
  1373. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/functions/isInImportWhiteList.md +21 -21
  1374. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/functions/isInsideBlock.md +21 -21
  1375. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/functions/isIntegerConstantValue.md +21 -21
  1376. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/functions/isInterfaceType.md +21 -21
  1377. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/functions/isIntrinsicObjectType.md +21 -21
  1378. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/functions/isLibrarySymbol.md +21 -21
  1379. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/functions/isLibraryType.md +21 -21
  1380. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/functions/isLiteralType.md +21 -21
  1381. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/functions/isMethodAssignment.md +21 -21
  1382. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/functions/isNonSendableFunctionTypeAlias.md +21 -21
  1383. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/functions/isNullType.md +21 -21
  1384. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/functions/isNumberConstantValue.md +21 -21
  1385. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/functions/isNumberLikeType.md +21 -21
  1386. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/functions/isObject.md +21 -21
  1387. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/functions/isObjectLiteralAssignable.md +25 -25
  1388. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/functions/isObjectLiteralType.md +21 -21
  1389. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/functions/isObjectType.md +21 -21
  1390. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/functions/isOrDerivedFrom.md +29 -29
  1391. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/functions/isPrimitiveEnumMemberType.md +25 -25
  1392. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/functions/isPrimitiveLiteralType.md +21 -21
  1393. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/functions/isPrimitiveType.md +21 -21
  1394. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/functions/isPrototypeSymbol.md +21 -21
  1395. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/functions/isPurePrimitiveLiteralType.md +21 -21
  1396. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/functions/isReadonlyArrayType.md +21 -21
  1397. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/functions/isReferenceType.md +21 -21
  1398. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/functions/isSendableClassOrInterface.md +21 -21
  1399. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/functions/isSendableClassOrInterfaceEntity.md +21 -21
  1400. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/functions/isSendableFunction.md +21 -21
  1401. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/functions/isSendableType.md +21 -21
  1402. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/functions/isSendableTypeAlias.md +21 -21
  1403. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/functions/isSendableTypeNode.md +25 -25
  1404. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/functions/isSendableUnionType.md +21 -21
  1405. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/functions/isShareableEntity.md +21 -21
  1406. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/functions/isShareableType.md +21 -21
  1407. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/functions/isSharedModule.md +21 -21
  1408. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/functions/isStdBigIntType.md +21 -21
  1409. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/functions/isStdBooleanType.md +21 -21
  1410. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/functions/isStdErrorType.md +21 -21
  1411. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/functions/isStdLibrarySymbol.md +21 -21
  1412. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/functions/isStdLibraryType.md +21 -21
  1413. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/functions/isStdMapType.md +21 -21
  1414. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/functions/isStdNumberType.md +21 -21
  1415. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/functions/isStdPartialType.md +21 -21
  1416. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/functions/isStdReadonlyType.md +21 -21
  1417. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/functions/isStdRecordType.md +21 -21
  1418. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/functions/isStdRequiredType.md +21 -21
  1419. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/functions/isStdSymbol.md +21 -21
  1420. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/functions/isStringConstantValue.md +21 -21
  1421. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/functions/isStringLikeType.md +21 -21
  1422. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/functions/isStringType.md +21 -21
  1423. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/functions/isStruct.md +21 -21
  1424. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/functions/isStructDeclaration.md +21 -21
  1425. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/functions/isStructDeclarationKind.md +21 -21
  1426. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/functions/isStructObjectInitializer.md +21 -21
  1427. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/functions/isSupportedType.md +21 -21
  1428. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/functions/isSymbolAPI.md +21 -21
  1429. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/functions/isSymbolIterator.md +21 -21
  1430. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/functions/isSymbolIteratorExpression.md +21 -21
  1431. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/functions/isThisOrSuperExpr.md +21 -21
  1432. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/functions/isTuple.md +21 -21
  1433. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/functions/isType.md +25 -25
  1434. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/functions/isTypeDeclSyntaxKind.md +21 -21
  1435. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/functions/isTypeReference.md +21 -21
  1436. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/functions/isTypeSymbol.md +21 -21
  1437. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/functions/isTypedArray.md +21 -21
  1438. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/functions/isUnknownType.md +21 -21
  1439. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/functions/isUnsupportedType.md +21 -21
  1440. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/functions/isUnsupportedUnionType.md +21 -21
  1441. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/functions/isValidComputedPropertyName.md +25 -25
  1442. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/functions/isValidEnumMemberInit.md +21 -21
  1443. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/functions/isValueAssignableToESObject.md +21 -21
  1444. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/functions/isWrongSendableFunctionAssignment.md +25 -25
  1445. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/functions/logTscDiagnostic.md +25 -25
  1446. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/functions/needStrictMatchType.md +25 -25
  1447. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/functions/needToDeduceStructuralIdentity.md +33 -33
  1448. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/functions/pathContainsDirectory.md +25 -25
  1449. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/functions/processParentTypes.md +29 -29
  1450. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/functions/reduceReference.md +21 -21
  1451. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/functions/relatedByInheritanceOrIdentical.md +25 -25
  1452. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/functions/searchFileExportDecl.md +25 -25
  1453. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/functions/setTestMode.md +21 -21
  1454. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/functions/setTypeChecker.md +21 -21
  1455. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/functions/symbolHasDuplicateName.md +25 -25
  1456. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/functions/symbolHasEsObjectType.md +21 -21
  1457. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/functions/trueSymbolAtLocation.md +21 -21
  1458. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/functions/typeContainsNonSendableClassOrInterface.md +21 -21
  1459. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/functions/typeContainsSendableClassOrInterface.md +21 -21
  1460. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/functions/typeIsRecursive.md +25 -25
  1461. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/functions/unwrapParenthesized.md +21 -21
  1462. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/functions/unwrapParenthesizedType.md +21 -21
  1463. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/functions/unwrapParenthesizedTypeNode.md +21 -21
  1464. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/functions/validateFields.md +25 -25
  1465. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/functions/validateObjectLiteralType.md +21 -21
  1466. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/type-aliases/CheckType.md +21 -21
  1467. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/variables/ALLOWED_STD_SYMBOL_API.md +11 -11
  1468. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/variables/ARKTS_COLLECTIONS_D_ETS.md +11 -11
  1469. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/variables/ARKTS_IGNORE_DIRS.md +11 -11
  1470. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/variables/ARKTS_IGNORE_FILES.md +11 -11
  1471. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/variables/ARKTS_LANG_D_ETS.md +11 -11
  1472. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/variables/COLLECTIONS_NAMESPACE.md +11 -11
  1473. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/variables/D_TS.md +11 -11
  1474. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/variables/ES_OBJECT.md +11 -11
  1475. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/variables/FUNCTION_HAS_NO_RETURN_ERROR_CODE.md +11 -11
  1476. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/variables/ISENDABLE_TYPE.md +11 -11
  1477. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/variables/LANG_NAMESPACE.md +11 -11
  1478. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/variables/LIMITED_STANDARD_UTILITY_TYPES.md +11 -11
  1479. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/variables/LIMITED_STD_GLOBAL_FUNC.md +11 -11
  1480. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/variables/LIMITED_STD_OBJECT_API.md +11 -11
  1481. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/variables/LIMITED_STD_PROXYHANDLER_API.md +11 -11
  1482. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/variables/LIMITED_STD_REFLECT_API.md +11 -11
  1483. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/variables/NON_INITIALIZABLE_PROPERTY_CLASS_DECORATORS.md +11 -11
  1484. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/variables/NON_INITIALIZABLE_PROPERTY_DECORATORS.md +11 -11
  1485. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/variables/NON_RETURN_FUNCTION_DECORATORS.md +11 -11
  1486. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/variables/PROPERTY_HAS_NO_INITIALIZER_ERROR_CODE.md +11 -11
  1487. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/variables/SENDABLE_CLOSURE_DECLS.md +11 -11
  1488. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/variables/SENDABLE_DECORATOR.md +11 -11
  1489. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/variables/SENDABLE_DECORATOR_NODES.md +11 -11
  1490. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/variables/SENDABLE_INTERFACE.md +11 -11
  1491. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/variables/STANDARD_LIBRARIES.md +11 -11
  1492. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/variables/TYPED_ARRAYS.md +11 -11
  1493. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/namespaces/Utils/variables/USE_SHARED.md +11 -11
  1494. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/type-aliases/KitSymbols.md +11 -11
  1495. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/variables/cookBookMsg.md +11 -11
  1496. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ArkTSLinter_1_1/variables/cookBookTag.md +11 -11
  1497. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ScriptSnapshot/README.md +11 -11
  1498. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/ScriptSnapshot/functions/fromString.md +21 -21
  1499. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/server/README.md +34 -34
  1500. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/server/interfaces/BeginInstallTypes.md +73 -73
  1501. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/server/interfaces/CloseProject.md +33 -33
  1502. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/server/interfaces/DiscoverTypings.md +89 -89
  1503. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/server/interfaces/EndInstallTypes.md +81 -81
  1504. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/server/interfaces/InitializationFailedResponse.md +41 -41
  1505. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/server/interfaces/InstallPackageRequest.md +57 -57
  1506. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/server/interfaces/InstallTypes.md +66 -66
  1507. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/server/interfaces/InvalidateCachedTypings.md +37 -37
  1508. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/server/interfaces/PackageInstalledResponse.md +53 -53
  1509. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/server/interfaces/ProjectResponse.md +40 -40
  1510. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/server/interfaces/SetTypings.md +69 -69
  1511. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/server/interfaces/TypesRegistryRequest.md +17 -17
  1512. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/server/interfaces/TypingInstallerRequestWithProjectName.md +23 -23
  1513. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/server/interfaces/TypingInstallerResponse.md +22 -22
  1514. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/server/type-aliases/ActionInvalidate.md +11 -11
  1515. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/server/type-aliases/ActionPackageInstalled.md +11 -11
  1516. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/server/type-aliases/ActionSet.md +11 -11
  1517. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/server/type-aliases/EventBeginInstallTypes.md +11 -11
  1518. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/server/type-aliases/EventEndInstallTypes.md +11 -11
  1519. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/server/type-aliases/EventInitializationFailed.md +11 -11
  1520. package/docs/api_docs/ArkAnalyzer/namespaces/ts/namespaces/server/type-aliases/EventTypesRegistry.md +11 -11
  1521. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/AbstractKeyword.md +11 -11
  1522. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/AccessExpression.md +11 -11
  1523. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/AccessibilityModifier.md +11 -11
  1524. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/AccessorDeclaration.md +11 -11
  1525. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/AccessorKeyword.md +11 -11
  1526. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/AdditiveOperator.md +11 -11
  1527. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/AdditiveOperatorOrHigher.md +11 -11
  1528. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/AffectedFileResult.md +17 -17
  1529. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/ArrayBindingElement.md +11 -11
  1530. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/ArrayBindingOrAssignmentElement.md +11 -11
  1531. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/ArrayBindingOrAssignmentPattern.md +11 -11
  1532. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/AssertKeyword.md +11 -11
  1533. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/AssertionExpression.md +11 -11
  1534. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/AssertionKey.md +11 -11
  1535. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/AssertsKeyword.md +11 -11
  1536. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/AssertsToken.md +15 -15
  1537. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/AssignmentOperator.md +11 -11
  1538. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/AssignmentOperatorOrHigher.md +11 -11
  1539. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/AssignmentOperatorToken.md +11 -11
  1540. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/AssignmentPattern.md +11 -11
  1541. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/AsteriskToken.md +11 -11
  1542. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/AsyncKeyword.md +11 -11
  1543. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/AwaitKeyword.md +11 -11
  1544. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/AwaitKeywordToken.md +15 -15
  1545. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/BaseType.md +11 -11
  1546. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/BinaryOperator.md +11 -11
  1547. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/BinaryOperatorToken.md +11 -11
  1548. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/BindingName.md +11 -11
  1549. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/BindingOrAssignmentElement.md +11 -11
  1550. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/BindingOrAssignmentElementRestIndicator.md +11 -11
  1551. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/BindingOrAssignmentElementTarget.md +11 -11
  1552. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/BindingOrAssignmentPattern.md +11 -11
  1553. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/BindingPattern.md +11 -11
  1554. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/BitwiseOperator.md +11 -11
  1555. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/BitwiseOperatorOrHigher.md +11 -11
  1556. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/BlockLike.md +11 -11
  1557. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/BooleanLiteral.md +11 -11
  1558. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/BreakOrContinueStatement.md +11 -11
  1559. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/CallLikeExpression.md +11 -11
  1560. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/CaseOrDefaultClause.md +11 -11
  1561. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/ClassLikeDeclaration.md +11 -11
  1562. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/ClassMemberModifier.md +11 -11
  1563. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/CodeActionCommand.md +11 -11
  1564. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/ColonToken.md +11 -11
  1565. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/CommentKind.md +11 -11
  1566. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/CompilerOptionsValue.md +11 -11
  1567. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/CompletionEntryData.md +11 -11
  1568. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/CompletionsTriggerCharacter.md +11 -11
  1569. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/CompoundAssignmentOperator.md +11 -11
  1570. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/ConciseBody.md +11 -11
  1571. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/ConstKeyword.md +11 -11
  1572. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/CreateProgram.md +49 -49
  1573. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/CustomTransformerFactory.md +21 -21
  1574. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/DeclarationName.md +11 -11
  1575. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/DeclarationWithTypeParameterChildren.md +11 -11
  1576. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/DeclarationWithTypeParameters.md +11 -11
  1577. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/DeclareKeyword.md +11 -11
  1578. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/DefaultKeyword.md +11 -11
  1579. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/DestructuringAssignment.md +11 -11
  1580. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/DestructuringPattern.md +11 -11
  1581. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/DiagnosticReporter.md +21 -21
  1582. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/DirectoryWatcherCallback.md +21 -21
  1583. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/DocumentRegistryBucketKey.md +17 -17
  1584. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/DotDotDotToken.md +11 -11
  1585. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/DotToken.md +11 -11
  1586. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/EmitHelper.md +11 -11
  1587. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/EmitHelperUniqueNameCallback.md +21 -21
  1588. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/EndOfFileToken.md +11 -11
  1589. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/EntityName.md +11 -11
  1590. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/EntityNameExpression.md +11 -11
  1591. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/EntityNameOrEntityNameExpression.md +11 -11
  1592. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/EqualityOperator.md +11 -11
  1593. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/EqualityOperatorOrHigher.md +11 -11
  1594. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/EqualsGreaterThanToken.md +11 -11
  1595. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/EqualsToken.md +11 -11
  1596. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/ErrorCallback.md +25 -25
  1597. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/ExclamationToken.md +11 -11
  1598. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/ExponentiationOperator.md +11 -11
  1599. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/ExportKeyword.md +11 -11
  1600. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/FileWatcherCallback.md +29 -29
  1601. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/FlowNode.md +11 -11
  1602. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/FlowType.md +11 -11
  1603. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/ForInOrOfStatement.md +11 -11
  1604. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/ForInitializer.md +11 -11
  1605. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/FunctionBody.md +11 -11
  1606. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/FunctionLike.md +15 -15
  1607. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/FunctionLikeDeclaration.md +11 -11
  1608. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/FunctionOrConstructorTypeNode.md +11 -11
  1609. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/HasDecorators.md +11 -11
  1610. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/HasExpressionInitializer.md +11 -11
  1611. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/HasIllegalDecorators.md +11 -11
  1612. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/HasInitializer.md +11 -11
  1613. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/HasJSDoc.md +11 -11
  1614. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/HasModifiers.md +11 -11
  1615. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/HasType.md +11 -11
  1616. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/HasTypeArguments.md +11 -11
  1617. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/ImportOrExportSpecifier.md +11 -11
  1618. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/InKeyword.md +11 -11
  1619. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/IncrementExpression.md +13 -13
  1620. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/InvalidatedProject.md +17 -17
  1621. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/JSDocComment.md +11 -11
  1622. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/JSDocNamespaceBody.md +11 -11
  1623. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/JSDocSyntaxKind.md +11 -11
  1624. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/JSDocTypeReferencingNode.md +11 -11
  1625. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/JsFileExtensionInfo.md +15 -15
  1626. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/JsonObjectExpression.md +11 -11
  1627. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/JsxAttributeLike.md +11 -11
  1628. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/JsxAttributeValue.md +11 -11
  1629. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/JsxChild.md +11 -11
  1630. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/JsxOpeningLikeElement.md +11 -11
  1631. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/JsxTagNameExpression.md +11 -11
  1632. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/JsxTokenSyntaxKind.md +11 -11
  1633. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/KeywordSyntaxKind.md +11 -11
  1634. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/KeywordTypeSyntaxKind.md +11 -11
  1635. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/LiteralSyntaxKind.md +11 -11
  1636. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/LiteralToken.md +11 -11
  1637. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/LogicalOperator.md +11 -11
  1638. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/LogicalOperatorOrHigher.md +11 -11
  1639. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/LogicalOrCoalescingAssignmentOperator.md +11 -11
  1640. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/MemberName.md +11 -11
  1641. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/MinusToken.md +11 -11
  1642. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/Modifier.md +11 -11
  1643. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/ModifierLike.md +11 -11
  1644. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/ModifierSyntaxKind.md +11 -11
  1645. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/ModifiersArray.md +11 -11
  1646. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/ModuleBody.md +11 -11
  1647. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/ModuleName.md +11 -11
  1648. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/ModuleReference.md +11 -11
  1649. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/MultiplicativeOperator.md +11 -11
  1650. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/MultiplicativeOperatorOrHigher.md +11 -11
  1651. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/NamedExportBindings.md +11 -11
  1652. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/NamedImportBindings.md +11 -11
  1653. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/NamedImportsOrExports.md +11 -11
  1654. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/NamespaceBody.md +11 -11
  1655. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/ObjectBindingOrAssignmentElement.md +11 -11
  1656. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/ObjectBindingOrAssignmentPattern.md +11 -11
  1657. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/ObjectLiteralElementLike.md +13 -13
  1658. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/ObjectTypeDeclaration.md +11 -11
  1659. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/OptionalChain.md +11 -11
  1660. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/OutKeyword.md +11 -11
  1661. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/OverrideKeyword.md +11 -11
  1662. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/ParameterPropertyDeclaration.md +21 -21
  1663. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/ParameterPropertyModifier.md +11 -11
  1664. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/Path.md +17 -17
  1665. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/PlusToken.md +11 -11
  1666. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/PostfixUnaryOperator.md +11 -11
  1667. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/PrefixUnaryOperator.md +11 -11
  1668. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/PrivateKeyword.md +11 -11
  1669. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/PropertyName.md +11 -11
  1670. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/PropertyNameLiteral.md +11 -11
  1671. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/ProtectedKeyword.md +11 -11
  1672. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/PseudoLiteralSyntaxKind.md +11 -11
  1673. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/PseudoLiteralToken.md +11 -11
  1674. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/PublicKeyword.md +11 -11
  1675. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/PunctuationSyntaxKind.md +11 -11
  1676. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/QuestionDotToken.md +11 -11
  1677. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/QuestionToken.md +11 -11
  1678. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/ReadonlyKeyword.md +11 -11
  1679. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/ReadonlyToken.md +15 -15
  1680. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/RedirectTargetsMap.md +11 -11
  1681. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/RefactorTriggerReason.md +11 -11
  1682. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/RelationalOperator.md +11 -11
  1683. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/RelationalOperatorOrHigher.md +11 -11
  1684. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/RenameInfo.md +11 -11
  1685. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/ReportEmitErrorSummary.md +25 -25
  1686. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/ResolvedConfigFileName.md +21 -21
  1687. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/ShiftOperator.md +11 -11
  1688. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/ShiftOperatorOrHigher.md +11 -11
  1689. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/SignatureDeclaration.md +11 -11
  1690. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/SignatureHelpRetriggerCharacter.md +11 -11
  1691. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/SignatureHelpTriggerCharacter.md +11 -11
  1692. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/SignatureHelpTriggerReason.md +11 -11
  1693. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/StaticKeyword.md +11 -11
  1694. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/String.md +18 -18
  1695. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/StringLiteralLike.md +11 -11
  1696. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/StructuredType.md +11 -11
  1697. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/SuperProperty.md +11 -11
  1698. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/SymbolTable.md +13 -13
  1699. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/TemplateLiteral.md +11 -11
  1700. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/TemplateLiteralToken.md +11 -11
  1701. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/TokenSyntaxKind.md +11 -11
  1702. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/Transformer.md +29 -29
  1703. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/TransformerFactory.md +30 -30
  1704. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/TriviaSyntaxKind.md +11 -11
  1705. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/TypeOfTag.md +11 -11
  1706. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/TypeOnlyAliasDeclaration.md +11 -11
  1707. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/TypeOnlyCompatibleAliasDeclaration.md +11 -11
  1708. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/TypePredicate.md +11 -11
  1709. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/TypeReferenceType.md +11 -11
  1710. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/TypeVariable.md +11 -11
  1711. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/UnionOrIntersectionTypeNode.md +11 -11
  1712. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/UnparsedNode.md +11 -11
  1713. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/UnparsedSourceText.md +11 -11
  1714. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/VariableLikeDeclaration.md +11 -11
  1715. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/VisitResult.md +17 -17
  1716. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/Visitor.md +23 -23
  1717. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/WatchStatusReporter.md +33 -33
  1718. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/WithMetadata.md +23 -23
  1719. package/docs/api_docs/ArkAnalyzer/namespaces/ts/type-aliases/WriteFileCallback.md +41 -41
  1720. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createAdd.md +29 -29
  1721. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createArrayBindingPattern.md +25 -25
  1722. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createArrayLiteral.md +29 -29
  1723. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createArrayTypeNode.md +25 -25
  1724. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createArrowFunction.md +79 -79
  1725. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createAsExpression.md +29 -29
  1726. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createAssignment.md +29 -29
  1727. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createAwait.md +25 -25
  1728. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createBigIntLiteral.md +25 -25
  1729. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createBinary.md +33 -33
  1730. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createBindingElement.md +37 -37
  1731. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createBlock.md +29 -29
  1732. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createBreak.md +25 -25
  1733. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createBundle.md +29 -29
  1734. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createCall.md +33 -33
  1735. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createCallChain.md +37 -37
  1736. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createCallSignature.md +33 -33
  1737. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createCaseBlock.md +25 -25
  1738. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createCaseClause.md +29 -29
  1739. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createCatchClause.md +29 -29
  1740. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createClassDeclaration.md +79 -79
  1741. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createClassExpression.md +41 -41
  1742. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createComma.md +29 -29
  1743. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createCommaList.md +25 -25
  1744. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createComputedPropertyName.md +25 -25
  1745. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createConditional.md +67 -67
  1746. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createConditionalTypeNode.md +37 -37
  1747. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createConstructSignature.md +33 -33
  1748. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createConstructor.md +63 -63
  1749. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createConstructorTypeNode.md +33 -33
  1750. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createContinue.md +25 -25
  1751. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createDebuggerStatement.md +19 -19
  1752. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createDecorator.md +25 -25
  1753. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createDefaultClause.md +25 -25
  1754. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createDelete.md +25 -25
  1755. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createDo.md +29 -29
  1756. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createElementAccess.md +29 -29
  1757. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createElementAccessChain.md +33 -33
  1758. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createEmptyStatement.md +19 -19
  1759. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createEnumDeclaration.md +63 -63
  1760. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createEnumMember.md +29 -29
  1761. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createExportAssignment.md +63 -63
  1762. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createExportDeclaration.md +41 -41
  1763. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createExportDefault.md +25 -25
  1764. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createExportSpecifier.md +33 -33
  1765. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createExpressionStatement.md +25 -25
  1766. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createExpressionWithTypeArguments.md +29 -29
  1767. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createExternalModuleExport.md +25 -25
  1768. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createExternalModuleReference.md +25 -25
  1769. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createFalse.md +19 -19
  1770. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createFileLevelUniqueName.md +25 -25
  1771. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createFor.md +37 -37
  1772. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createForIn.md +33 -33
  1773. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createForOf.md +37 -37
  1774. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createFunctionDeclaration.md +95 -95
  1775. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createFunctionExpression.md +49 -49
  1776. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createFunctionTypeNode.md +33 -33
  1777. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createGetAccessor.md +79 -79
  1778. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createHeritageClause.md +29 -29
  1779. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createIdentifier.md +25 -25
  1780. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createIf.md +33 -33
  1781. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createImmediatelyInvokedArrowFunction.md +51 -51
  1782. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createImmediatelyInvokedFunctionExpression.md +51 -51
  1783. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createImportClause.md +33 -33
  1784. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createImportDeclaration.md +71 -71
  1785. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createImportEqualsDeclaration.md +71 -71
  1786. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createImportSpecifier.md +33 -33
  1787. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createImportTypeNode.md +101 -101
  1788. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createIndexSignature.md +37 -37
  1789. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createIndexedAccessTypeNode.md +29 -29
  1790. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createInferTypeNode.md +25 -25
  1791. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createInterfaceDeclaration.md +79 -79
  1792. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createIntersectionTypeNode.md +25 -25
  1793. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createJSDocAugmentsTag.md +33 -33
  1794. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createJSDocAuthorTag.md +29 -29
  1795. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createJSDocCallbackTag.md +37 -37
  1796. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createJSDocClassTag.md +29 -29
  1797. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createJSDocComment.md +29 -29
  1798. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createJSDocEnumTag.md +33 -33
  1799. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createJSDocImplementsTag.md +33 -33
  1800. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createJSDocParamTag.md +37 -37
  1801. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createJSDocParameterTag.md +45 -45
  1802. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createJSDocPrivateTag.md +29 -29
  1803. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createJSDocPropertyTag.md +45 -45
  1804. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createJSDocProtectedTag.md +29 -29
  1805. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createJSDocPublicTag.md +29 -29
  1806. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createJSDocReadonlyTag.md +29 -29
  1807. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createJSDocReturnTag.md +33 -33
  1808. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createJSDocSignature.md +33 -33
  1809. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createJSDocTag.md +29 -29
  1810. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createJSDocTemplateTag.md +37 -37
  1811. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createJSDocThisTag.md +33 -33
  1812. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createJSDocTypeExpression.md +25 -25
  1813. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createJSDocTypeLiteral.md +29 -29
  1814. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createJSDocTypeTag.md +33 -33
  1815. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createJSDocTypedefTag.md +37 -37
  1816. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createJsxAttribute.md +29 -29
  1817. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createJsxAttributes.md +25 -25
  1818. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createJsxClosingElement.md +25 -25
  1819. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createJsxElement.md +33 -33
  1820. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createJsxExpression.md +29 -29
  1821. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createJsxFragment.md +33 -33
  1822. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createJsxJsxClosingFragment.md +19 -19
  1823. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createJsxOpeningElement.md +33 -33
  1824. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createJsxOpeningFragment.md +19 -19
  1825. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createJsxSelfClosingElement.md +33 -33
  1826. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createJsxSpreadAttribute.md +25 -25
  1827. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createJsxText.md +29 -29
  1828. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createKeywordTypeNode.md +31 -31
  1829. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createLabel.md +29 -29
  1830. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createLessThan.md +29 -29
  1831. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createLiteral.md +71 -71
  1832. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createLiteralTypeNode.md +25 -25
  1833. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createLogicalAnd.md +29 -29
  1834. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createLogicalNot.md +25 -25
  1835. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createLogicalOr.md +29 -29
  1836. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createLoopVariable.md +25 -25
  1837. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createMappedTypeNode.md +45 -45
  1838. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createMetaProperty.md +29 -29
  1839. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createMethod.md +103 -103
  1840. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createMethodSignature.md +41 -41
  1841. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createModifier.md +31 -31
  1842. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createModifiersFromModifierFlags.md +25 -25
  1843. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createModuleBlock.md +25 -25
  1844. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createModuleDeclaration.md +71 -71
  1845. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createNamedExports.md +25 -25
  1846. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createNamedImports.md +25 -25
  1847. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createNamespaceExport.md +25 -25
  1848. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createNamespaceExportDeclaration.md +25 -25
  1849. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createNamespaceImport.md +25 -25
  1850. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createNew.md +33 -33
  1851. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createNoSubstitutionTemplateLiteral.md +51 -51
  1852. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createNode.md +33 -33
  1853. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createNodeArray.md +35 -35
  1854. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createNonNullChain.md +25 -25
  1855. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createNonNullExpression.md +25 -25
  1856. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createNotEmittedStatement.md +25 -25
  1857. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createNull.md +19 -19
  1858. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createNumericLiteral.md +29 -29
  1859. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createObjectBindingPattern.md +25 -25
  1860. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createObjectLiteral.md +29 -29
  1861. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createOmittedExpression.md +19 -19
  1862. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createOptimisticUniqueName.md +25 -25
  1863. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createOptionalTypeNode.md +25 -25
  1864. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createParameter.md +87 -87
  1865. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createParen.md +25 -25
  1866. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createParenthesizedType.md +25 -25
  1867. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createPartiallyEmittedExpression.md +29 -29
  1868. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createPostfix.md +29 -29
  1869. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createPostfixIncrement.md +25 -25
  1870. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createPrefix.md +29 -29
  1871. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createPrivateIdentifier.md +25 -25
  1872. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createProperty.md +79 -79
  1873. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createPropertyAccess.md +29 -29
  1874. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createPropertyAccessChain.md +33 -33
  1875. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createPropertyAssignment.md +29 -29
  1876. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createPropertySignature.md +41 -41
  1877. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createQualifiedName.md +29 -29
  1878. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createRegularExpressionLiteral.md +25 -25
  1879. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createRestTypeNode.md +25 -25
  1880. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createReturn.md +25 -25
  1881. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createSemicolonClassElement.md +19 -19
  1882. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createSetAccessor.md +71 -71
  1883. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createShorthandPropertyAssignment.md +29 -29
  1884. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createSpread.md +25 -25
  1885. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createSpreadAssignment.md +25 -25
  1886. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createStatement.md +25 -25
  1887. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createStrictEquality.md +29 -29
  1888. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createStrictInequality.md +29 -29
  1889. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createStringLiteral.md +55 -55
  1890. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createStringLiteralFromNode.md +29 -29
  1891. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createSubtract.md +29 -29
  1892. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createSuper.md +19 -19
  1893. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createSwitch.md +29 -29
  1894. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createTaggedTemplate.md +55 -55
  1895. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createTempVariable.md +25 -25
  1896. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createTemplateExpression.md +29 -29
  1897. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createTemplateHead.md +59 -59
  1898. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createTemplateMiddle.md +59 -59
  1899. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createTemplateSpan.md +29 -29
  1900. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createTemplateTail.md +59 -59
  1901. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createThis.md +19 -19
  1902. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createThisTypeNode.md +19 -19
  1903. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createThrow.md +25 -25
  1904. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createToken.md +31 -31
  1905. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createTrue.md +19 -19
  1906. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createTry.md +33 -33
  1907. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createTupleTypeNode.md +25 -25
  1908. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createTypeAliasDeclaration.md +71 -71
  1909. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createTypeAssertion.md +29 -29
  1910. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createTypeLiteralNode.md +25 -25
  1911. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createTypeOf.md +25 -25
  1912. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createTypeOperatorNode.md +47 -47
  1913. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createTypeParameterDeclaration.md +63 -63
  1914. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createTypePredicateNode.md +29 -29
  1915. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createTypePredicateNodeWithModifier.md +33 -33
  1916. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createTypeQueryNode.md +29 -29
  1917. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createTypeReferenceNode.md +29 -29
  1918. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createUnionTypeNode.md +25 -25
  1919. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createUniqueName.md +29 -29
  1920. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createVariableDeclaration.md +63 -63
  1921. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createVariableDeclarationList.md +29 -29
  1922. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createVariableStatement.md +29 -29
  1923. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createVoid.md +25 -25
  1924. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createVoidZero.md +19 -19
  1925. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createWhile.md +29 -29
  1926. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createWith.md +29 -29
  1927. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/createYield.md +47 -47
  1928. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/factory.md +11 -11
  1929. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/getGeneratedNameForNode.md +25 -25
  1930. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/getMutableClone.md +36 -36
  1931. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/isIdentifierOrPrivateIdentifier.md +25 -25
  1932. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/isTypeAssertion.md +25 -25
  1933. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/ohModulesPathPart.md +11 -11
  1934. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/servicesVersion.md +13 -13
  1935. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/sys.md +11 -11
  1936. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/unchangedTextChangeRange.md +11 -11
  1937. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/updateArrayBindingPattern.md +29 -29
  1938. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/updateArrayLiteral.md +29 -29
  1939. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/updateArrayTypeNode.md +29 -29
  1940. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/updateArrowFunction.md +87 -87
  1941. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/updateAsExpression.md +33 -33
  1942. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/updateAwait.md +29 -29
  1943. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/updateBinary.md +37 -37
  1944. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/updateBindingElement.md +41 -41
  1945. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/updateBlock.md +29 -29
  1946. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/updateBreak.md +29 -29
  1947. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/updateBundle.md +33 -33
  1948. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/updateCall.md +37 -37
  1949. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/updateCallChain.md +41 -41
  1950. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/updateCallSignature.md +37 -37
  1951. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/updateCaseBlock.md +29 -29
  1952. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/updateCaseClause.md +33 -33
  1953. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/updateCatchClause.md +33 -33
  1954. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/updateClassDeclaration.md +87 -87
  1955. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/updateClassExpression.md +45 -45
  1956. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/updateCommaList.md +29 -29
  1957. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/updateComputedPropertyName.md +29 -29
  1958. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/updateConditional.md +45 -45
  1959. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/updateConditionalTypeNode.md +41 -41
  1960. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/updateConstructSignature.md +37 -37
  1961. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/updateConstructor.md +71 -71
  1962. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/updateConstructorTypeNode.md +37 -37
  1963. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/updateContinue.md +29 -29
  1964. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/updateDecorator.md +29 -29
  1965. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/updateDefaultClause.md +29 -29
  1966. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/updateDelete.md +29 -29
  1967. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/updateDo.md +33 -33
  1968. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/updateElementAccess.md +33 -33
  1969. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/updateElementAccessChain.md +37 -37
  1970. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/updateEnumDeclaration.md +71 -71
  1971. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/updateEnumMember.md +33 -33
  1972. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/updateExportAssignment.md +63 -63
  1973. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/updateExportDeclaration.md +45 -45
  1974. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/updateExportSpecifier.md +37 -37
  1975. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/updateExpressionStatement.md +29 -29
  1976. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/updateExpressionWithTypeArguments.md +33 -33
  1977. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/updateExternalModuleReference.md +29 -29
  1978. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/updateFor.md +41 -41
  1979. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/updateForIn.md +37 -37
  1980. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/updateForOf.md +41 -41
  1981. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/updateFunctionDeclaration.md +103 -103
  1982. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/updateFunctionExpression.md +53 -53
  1983. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/updateFunctionTypeNode.md +37 -37
  1984. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/updateGetAccessor.md +87 -87
  1985. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/updateHeritageClause.md +29 -29
  1986. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/updateIf.md +37 -37
  1987. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/updateImportClause.md +37 -37
  1988. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/updateImportDeclaration.md +79 -79
  1989. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/updateImportEqualsDeclaration.md +79 -79
  1990. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/updateImportSpecifier.md +37 -37
  1991. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/updateImportTypeNode.md +79 -79
  1992. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/updateIndexSignature.md +71 -71
  1993. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/updateIndexedAccessTypeNode.md +33 -33
  1994. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/updateInferTypeNode.md +29 -29
  1995. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/updateInterfaceDeclaration.md +87 -87
  1996. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/updateIntersectionTypeNode.md +29 -29
  1997. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/updateJsxAttribute.md +33 -33
  1998. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/updateJsxAttributes.md +29 -29
  1999. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/updateJsxClosingElement.md +29 -29
  2000. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/updateJsxElement.md +37 -37
  2001. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/updateJsxExpression.md +29 -29
  2002. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/updateJsxFragment.md +37 -37
  2003. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/updateJsxOpeningElement.md +37 -37
  2004. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/updateJsxSelfClosingElement.md +37 -37
  2005. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/updateJsxSpreadAttribute.md +29 -29
  2006. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/updateJsxText.md +33 -33
  2007. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/updateLabel.md +33 -33
  2008. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/updateLiteralTypeNode.md +29 -29
  2009. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/updateMappedTypeNode.md +49 -49
  2010. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/updateMetaProperty.md +29 -29
  2011. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/updateMethod.md +111 -111
  2012. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/updateMethodSignature.md +45 -45
  2013. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/updateModuleBlock.md +29 -29
  2014. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/updateModuleDeclaration.md +71 -71
  2015. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/updateNamedExports.md +29 -29
  2016. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/updateNamedImports.md +29 -29
  2017. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/updateNamespaceExport.md +29 -29
  2018. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/updateNamespaceExportDeclaration.md +29 -29
  2019. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/updateNamespaceImport.md +29 -29
  2020. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/updateNew.md +37 -37
  2021. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/updateNonNullChain.md +29 -29
  2022. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/updateNonNullExpression.md +29 -29
  2023. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/updateObjectBindingPattern.md +29 -29
  2024. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/updateObjectLiteral.md +29 -29
  2025. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/updateOptionalTypeNode.md +29 -29
  2026. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/updateParameter.md +95 -95
  2027. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/updateParen.md +29 -29
  2028. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/updateParenthesizedType.md +29 -29
  2029. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/updatePartiallyEmittedExpression.md +29 -29
  2030. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/updatePostfix.md +29 -29
  2031. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/updatePrefix.md +29 -29
  2032. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/updateProperty.md +87 -87
  2033. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/updatePropertyAccess.md +33 -33
  2034. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/updatePropertyAccessChain.md +37 -37
  2035. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/updatePropertyAssignment.md +33 -33
  2036. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/updatePropertySignature.md +45 -45
  2037. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/updateQualifiedName.md +33 -33
  2038. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/updateRestTypeNode.md +29 -29
  2039. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/updateReturn.md +29 -29
  2040. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/updateSetAccessor.md +79 -79
  2041. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/updateShorthandPropertyAssignment.md +33 -33
  2042. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/updateSourceFileNode.md +49 -49
  2043. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/updateSpread.md +29 -29
  2044. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/updateSpreadAssignment.md +29 -29
  2045. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/updateStatement.md +29 -29
  2046. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/updateSwitch.md +33 -33
  2047. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/updateTaggedTemplate.md +63 -63
  2048. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/updateTemplateExpression.md +33 -33
  2049. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/updateTemplateSpan.md +33 -33
  2050. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/updateThrow.md +29 -29
  2051. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/updateTry.md +37 -37
  2052. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/updateTupleTypeNode.md +29 -29
  2053. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/updateTypeAliasDeclaration.md +79 -79
  2054. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/updateTypeAssertion.md +33 -33
  2055. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/updateTypeLiteralNode.md +29 -29
  2056. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/updateTypeOf.md +29 -29
  2057. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/updateTypeOperatorNode.md +29 -29
  2058. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/updateTypeParameterDeclaration.md +71 -71
  2059. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/updateTypePredicateNode.md +33 -33
  2060. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/updateTypePredicateNodeWithModifier.md +37 -37
  2061. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/updateTypeQueryNode.md +33 -33
  2062. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/updateTypeReferenceNode.md +33 -33
  2063. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/updateUnionTypeNode.md +29 -29
  2064. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/updateVariableDeclaration.md +71 -71
  2065. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/updateVariableDeclarationList.md +29 -29
  2066. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/updateVariableStatement.md +33 -33
  2067. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/updateVoid.md +29 -29
  2068. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/updateWhile.md +33 -33
  2069. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/updateWith.md +33 -33
  2070. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/updateYield.md +33 -33
  2071. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/version.md +13 -13
  2072. package/docs/api_docs/ArkAnalyzer/namespaces/ts/variables/versionMajorMinor.md +11 -11
  2073. package/docs/api_docs/README.md +94 -94
  2074. package/docs/api_docs/_media/HowToCreatePR.md +54 -54
  2075. package/docs/api_docs/_media/README.md +107 -107
  2076. package/docs/api_docs/_media/globals.md +342 -342
  2077. package/docs/api_docs/classes/AbstractAnalysis.md +291 -291
  2078. package/docs/api_docs/classes/AbstractBinopExpr.md +311 -311
  2079. package/docs/api_docs/classes/AbstractExpr.md +129 -129
  2080. package/docs/api_docs/classes/AbstractFieldRef.md +186 -186
  2081. package/docs/api_docs/classes/AbstractInvokeExpr.md +301 -301
  2082. package/docs/api_docs/classes/AbstractRef.md +109 -109
  2083. package/docs/api_docs/classes/AddrPagEdge.md +197 -197
  2084. package/docs/api_docs/classes/AliasClassSignature.md +213 -213
  2085. package/docs/api_docs/classes/AliasType.md +338 -338
  2086. package/docs/api_docs/classes/AliasTypeExpr.md +242 -242
  2087. package/docs/api_docs/classes/AliasTypeSignature.md +67 -67
  2088. package/docs/api_docs/classes/AnnotationNamespaceType.md +131 -131
  2089. package/docs/api_docs/classes/AnnotationType.md +84 -84
  2090. package/docs/api_docs/classes/AnnotationTypeQueryType.md +83 -83
  2091. package/docs/api_docs/classes/AnyType.md +59 -59
  2092. package/docs/api_docs/classes/ArkAliasTypeDefineStmt.md +772 -772
  2093. package/docs/api_docs/classes/ArkArrayRef.md +226 -226
  2094. package/docs/api_docs/classes/ArkAssignStmt.md +808 -808
  2095. package/docs/api_docs/classes/ArkAwaitExpr.md +163 -163
  2096. package/docs/api_docs/classes/ArkBody.md +211 -211
  2097. package/docs/api_docs/classes/ArkCastExpr.md +167 -167
  2098. package/docs/api_docs/classes/ArkCaughtExceptionRef.md +129 -129
  2099. package/docs/api_docs/classes/ArkClass.md +1609 -1609
  2100. package/docs/api_docs/classes/ArkConditionExpr.md +350 -350
  2101. package/docs/api_docs/classes/ArkDeleteExpr.md +163 -163
  2102. package/docs/api_docs/classes/ArkField.md +893 -893
  2103. package/docs/api_docs/classes/ArkFile.md +735 -735
  2104. package/docs/api_docs/classes/ArkIfStmt.md +765 -765
  2105. package/docs/api_docs/classes/ArkInstanceFieldRef.md +263 -263
  2106. package/docs/api_docs/classes/ArkInstanceInvokeExpr.md +362 -362
  2107. package/docs/api_docs/classes/ArkInstanceOfExpr.md +179 -179
  2108. package/docs/api_docs/classes/ArkInvokeStmt.md +738 -738
  2109. package/docs/api_docs/classes/ArkMethod.md +1651 -1651
  2110. package/docs/api_docs/classes/ArkNamespace.md +1259 -1259
  2111. package/docs/api_docs/classes/ArkNewArrayExpr.md +213 -213
  2112. package/docs/api_docs/classes/ArkNewExpr.md +145 -145
  2113. package/docs/api_docs/classes/ArkNormalBinopExpr.md +350 -350
  2114. package/docs/api_docs/classes/ArkParameterRef.md +181 -181
  2115. package/docs/api_docs/classes/ArkPhiExpr.md +187 -187
  2116. package/docs/api_docs/classes/ArkPtrInvokeExpr.md +374 -374
  2117. package/docs/api_docs/classes/ArkReturnStmt.md +750 -750
  2118. package/docs/api_docs/classes/ArkReturnVoidStmt.md +714 -714
  2119. package/docs/api_docs/classes/ArkSignatureBuilder.md +129 -129
  2120. package/docs/api_docs/classes/ArkStaticFieldRef.md +207 -207
  2121. package/docs/api_docs/classes/ArkStaticInvokeExpr.md +323 -323
  2122. package/docs/api_docs/classes/ArkThisRef.md +129 -129
  2123. package/docs/api_docs/classes/ArkThrowStmt.md +750 -750
  2124. package/docs/api_docs/classes/ArkTypeOfExpr.md +163 -163
  2125. package/docs/api_docs/classes/ArkUnopExpr.md +183 -183
  2126. package/docs/api_docs/classes/ArkYieldExpr.md +163 -163
  2127. package/docs/api_docs/classes/ArrayType.md +159 -159
  2128. package/docs/api_docs/classes/AstTreeUtils.md +95 -95
  2129. package/docs/api_docs/classes/BaseEdge.md +158 -158
  2130. package/docs/api_docs/classes/BaseExplicitGraph.md +235 -235
  2131. package/docs/api_docs/classes/BaseNode.md +266 -266
  2132. package/docs/api_docs/classes/BasicBlock.md +485 -485
  2133. package/docs/api_docs/classes/BigIntType.md +75 -75
  2134. package/docs/api_docs/classes/BooleanType.md +75 -75
  2135. package/docs/api_docs/classes/CGStat.md +185 -185
  2136. package/docs/api_docs/classes/CSFuncID.md +47 -47
  2137. package/docs/api_docs/classes/CallGraph.md +797 -797
  2138. package/docs/api_docs/classes/CallGraphBuilder.md +153 -153
  2139. package/docs/api_docs/classes/CallGraphEdge.md +247 -247
  2140. package/docs/api_docs/classes/CallGraphNode.md +393 -393
  2141. package/docs/api_docs/classes/CallSite.md +87 -87
  2142. package/docs/api_docs/classes/Cfg.md +309 -309
  2143. package/docs/api_docs/classes/ClassHierarchyAnalysis.md +359 -359
  2144. package/docs/api_docs/classes/ClassSignature.md +163 -163
  2145. package/docs/api_docs/classes/ClassType.md +133 -133
  2146. package/docs/api_docs/classes/ClosureFieldRef.md +161 -161
  2147. package/docs/api_docs/classes/ClosureType.md +121 -121
  2148. package/docs/api_docs/classes/Constant.md +108 -108
  2149. package/docs/api_docs/classes/CopyPagEdge.md +197 -197
  2150. package/docs/api_docs/classes/DVFG.md +379 -379
  2151. package/docs/api_docs/classes/DVFGBuilder.md +103 -103
  2152. package/docs/api_docs/classes/DataflowProblem.md +183 -183
  2153. package/docs/api_docs/classes/DataflowResult.md +43 -43
  2154. package/docs/api_docs/classes/DataflowSolver.md +469 -469
  2155. package/docs/api_docs/classes/Decorator.md +135 -135
  2156. package/docs/api_docs/classes/DefUseChain.md +59 -59
  2157. package/docs/api_docs/classes/DiffPTData.md +359 -359
  2158. package/docs/api_docs/classes/DominanceFinder.md +81 -81
  2159. package/docs/api_docs/classes/DominanceTree.md +69 -69
  2160. package/docs/api_docs/classes/DotClassPrinter.md +85 -85
  2161. package/docs/api_docs/classes/DotFilePrinter.md +73 -73
  2162. package/docs/api_docs/classes/DotMethodPrinter.md +103 -103
  2163. package/docs/api_docs/classes/DotNamespacePrinter.md +85 -85
  2164. package/docs/api_docs/classes/DummyCallCreator.md +73 -73
  2165. package/docs/api_docs/classes/DummyMainCreater.md +115 -115
  2166. package/docs/api_docs/classes/DynCallSite.md +87 -87
  2167. package/docs/api_docs/classes/EnumValueType.md +95 -95
  2168. package/docs/api_docs/classes/ExportInfo.md +785 -785
  2169. package/docs/api_docs/classes/ExprUseReplacer.md +51 -51
  2170. package/docs/api_docs/classes/Fact.md +35 -35
  2171. package/docs/api_docs/classes/FieldSignature.md +147 -147
  2172. package/docs/api_docs/classes/FileSignature.md +87 -87
  2173. package/docs/api_docs/classes/FileUtils.md +129 -129
  2174. package/docs/api_docs/classes/FullPosition.md +139 -139
  2175. package/docs/api_docs/classes/FuncPag.md +143 -143
  2176. package/docs/api_docs/classes/FunctionType.md +101 -101
  2177. package/docs/api_docs/classes/GenericType.md +177 -177
  2178. package/docs/api_docs/classes/GlobalRef.md +205 -205
  2179. package/docs/api_docs/classes/GraphPrinter.md +183 -183
  2180. package/docs/api_docs/classes/IRUtils.md +199 -199
  2181. package/docs/api_docs/classes/ImportInfo.md +915 -915
  2182. package/docs/api_docs/classes/InterFuncPag.md +51 -51
  2183. package/docs/api_docs/classes/IntersectionType.md +81 -81
  2184. package/docs/api_docs/classes/JsonPrinter.md +65 -65
  2185. package/docs/api_docs/classes/KLimitedContextSensitive.md +147 -147
  2186. package/docs/api_docs/classes/LexicalEnvType.md +113 -113
  2187. package/docs/api_docs/classes/LineColPosition.md +85 -85
  2188. package/docs/api_docs/classes/LiteralType.md +113 -113
  2189. package/docs/api_docs/classes/LoadPagEdge.md +197 -197
  2190. package/docs/api_docs/classes/Local.md +428 -428
  2191. package/docs/api_docs/classes/LocalSignature.md +67 -67
  2192. package/docs/api_docs/classes/Logger.md +71 -71
  2193. package/docs/api_docs/classes/MethodSignature.md +152 -152
  2194. package/docs/api_docs/classes/MethodSignatureManager.md +187 -187
  2195. package/docs/api_docs/classes/MethodSubSignature.md +135 -135
  2196. package/docs/api_docs/classes/ModelUtils.md +719 -719
  2197. package/docs/api_docs/classes/ModulePath.md +47 -47
  2198. package/docs/api_docs/classes/NamespaceSignature.md +103 -103
  2199. package/docs/api_docs/classes/NeverType.md +57 -57
  2200. package/docs/api_docs/classes/NullType.md +75 -75
  2201. package/docs/api_docs/classes/NumberType.md +75 -75
  2202. package/docs/api_docs/classes/PAGStat.md +119 -119
  2203. package/docs/api_docs/classes/PTAStat.md +307 -307
  2204. package/docs/api_docs/classes/Pag.md +695 -695
  2205. package/docs/api_docs/classes/PagArrayNode.md +981 -981
  2206. package/docs/api_docs/classes/PagBuilder.md +920 -920
  2207. package/docs/api_docs/classes/PagEdge.md +209 -209
  2208. package/docs/api_docs/classes/PagFuncNode.md +1143 -1143
  2209. package/docs/api_docs/classes/PagGlobalThisNode.md +1035 -1035
  2210. package/docs/api_docs/classes/PagInstanceFieldNode.md +973 -973
  2211. package/docs/api_docs/classes/PagLocalNode.md +1111 -1111
  2212. package/docs/api_docs/classes/PagNewContainerExprNode.md +1011 -1011
  2213. package/docs/api_docs/classes/PagNewExprNode.md +1035 -1035
  2214. package/docs/api_docs/classes/PagNode.md +858 -858
  2215. package/docs/api_docs/classes/PagParamNode.md +973 -973
  2216. package/docs/api_docs/classes/PagStaticFieldNode.md +973 -973
  2217. package/docs/api_docs/classes/PagThisRefNode.md +1003 -1003
  2218. package/docs/api_docs/classes/PathEdge.md +53 -53
  2219. package/docs/api_docs/classes/PathEdgePoint.md +53 -53
  2220. package/docs/api_docs/classes/PointerAnalysis.md +587 -587
  2221. package/docs/api_docs/classes/PointerAnalysisConfig.md +173 -173
  2222. package/docs/api_docs/classes/PrimitiveType.md +91 -91
  2223. package/docs/api_docs/classes/Printer.md +60 -60
  2224. package/docs/api_docs/classes/PrinterBuilder.md +182 -182
  2225. package/docs/api_docs/classes/PtsSet.md +289 -289
  2226. package/docs/api_docs/classes/RapidTypeAnalysis.md +391 -391
  2227. package/docs/api_docs/classes/RefUseReplacer.md +51 -51
  2228. package/docs/api_docs/classes/SCCDetection.md +164 -164
  2229. package/docs/api_docs/classes/Scene.md +945 -945
  2230. package/docs/api_docs/classes/SceneConfig.md +261 -261
  2231. package/docs/api_docs/classes/SceneManager.md +103 -103
  2232. package/docs/api_docs/classes/Scope.md +59 -59
  2233. package/docs/api_docs/classes/SourceClassPrinter.md +407 -407
  2234. package/docs/api_docs/classes/SourceFilePrinter.md +81 -81
  2235. package/docs/api_docs/classes/SourceMethodPrinter.md +429 -429
  2236. package/docs/api_docs/classes/SourceNamespacePrinter.md +395 -395
  2237. package/docs/api_docs/classes/StaticSingleAssignmentFormer.md +37 -37
  2238. package/docs/api_docs/classes/Stmt.md +578 -578
  2239. package/docs/api_docs/classes/StmtUseReplacer.md +51 -51
  2240. package/docs/api_docs/classes/StringType.md +75 -75
  2241. package/docs/api_docs/classes/ThisPagEdge.md +197 -197
  2242. package/docs/api_docs/classes/TupleType.md +121 -121
  2243. package/docs/api_docs/classes/Type.md +63 -63
  2244. package/docs/api_docs/classes/TypeInference.md +561 -561
  2245. package/docs/api_docs/classes/UnclearReferenceType.md +97 -97
  2246. package/docs/api_docs/classes/UndefinedType.md +75 -75
  2247. package/docs/api_docs/classes/UndefinedVariableChecker.md +409 -409
  2248. package/docs/api_docs/classes/UndefinedVariableSolver.md +591 -591
  2249. package/docs/api_docs/classes/UnionType.md +127 -127
  2250. package/docs/api_docs/classes/UnknownType.md +59 -59
  2251. package/docs/api_docs/classes/ValueUtil.md +141 -141
  2252. package/docs/api_docs/classes/ViewTreePrinter.md +65 -65
  2253. package/docs/api_docs/classes/VisibleValue.md +81 -81
  2254. package/docs/api_docs/classes/VoidType.md +59 -59
  2255. package/docs/api_docs/classes/WritePagEdge.md +197 -197
  2256. package/docs/api_docs/enumerations/CallGraphNodeKind.md +49 -49
  2257. package/docs/api_docs/enumerations/LOG_LEVEL.md +49 -49
  2258. package/docs/api_docs/enumerations/LOG_MODULE_TYPE.md +41 -41
  2259. package/docs/api_docs/enumerations/NormalBinaryOperator.md +129 -129
  2260. package/docs/api_docs/enumerations/PagEdgeKind.md +65 -65
  2261. package/docs/api_docs/enumerations/PagNodeKind.md +73 -73
  2262. package/docs/api_docs/enumerations/RelationalBinaryOperator.md +81 -81
  2263. package/docs/api_docs/enumerations/StorageLinkEdgeType.md +33 -33
  2264. package/docs/api_docs/enumerations/StorageType.md +33 -33
  2265. package/docs/api_docs/enumerations/UnaryOperator.md +33 -33
  2266. package/docs/api_docs/functions/addCfg2Stmt.md +21 -21
  2267. package/docs/api_docs/functions/classSignatureCompare.md +25 -25
  2268. package/docs/api_docs/functions/extractLastBracketContent.md +21 -21
  2269. package/docs/api_docs/functions/fetchDependenciesFromFile.md +21 -21
  2270. package/docs/api_docs/functions/fieldSignatureCompare.md +25 -25
  2271. package/docs/api_docs/functions/fileSignatureCompare.md +25 -25
  2272. package/docs/api_docs/functions/genSignature4ImportClause.md +25 -25
  2273. package/docs/api_docs/functions/getAllFiles.md +47 -47
  2274. package/docs/api_docs/functions/getCallbackMethodFromStmt.md +25 -25
  2275. package/docs/api_docs/functions/getFileRecursively.md +29 -29
  2276. package/docs/api_docs/functions/isEtsAtomicComponent.md +21 -21
  2277. package/docs/api_docs/functions/isEtsContainerComponent.md +21 -21
  2278. package/docs/api_docs/functions/isEtsSystemComponent.md +21 -21
  2279. package/docs/api_docs/functions/isItemRegistered.md +35 -35
  2280. package/docs/api_docs/functions/methodSignatureCompare.md +25 -25
  2281. package/docs/api_docs/functions/methodSubSignatureCompare.md +25 -25
  2282. package/docs/api_docs/functions/parseJsonText.md +21 -21
  2283. package/docs/api_docs/functions/printCallGraphDetails.md +29 -29
  2284. package/docs/api_docs/functions/splitStringWithRegex.md +21 -21
  2285. package/docs/api_docs/functions/transfer2UnixPath.md +21 -21
  2286. package/docs/api_docs/globals.md +342 -342
  2287. package/docs/api_docs/interfaces/AbilityMessage.md +33 -33
  2288. package/docs/api_docs/interfaces/ArkSignature.md +21 -21
  2289. package/docs/api_docs/interfaces/FlowFunction.md +33 -33
  2290. package/docs/api_docs/interfaces/ICallSite.md +33 -33
  2291. package/docs/api_docs/interfaces/Value.md +59 -59
  2292. package/docs/api_docs/interfaces/ViewTree.md +119 -119
  2293. package/docs/api_docs/interfaces/ViewTreeNode.md +184 -184
  2294. package/docs/api_docs/type-aliases/AliasTypeOriginalModel.md +11 -11
  2295. package/docs/api_docs/type-aliases/BaseSignature.md +11 -11
  2296. package/docs/api_docs/type-aliases/BinaryOperator.md +11 -11
  2297. package/docs/api_docs/type-aliases/FuncID.md +11 -11
  2298. package/docs/api_docs/type-aliases/InterProceduralEdge.md +35 -35
  2299. package/docs/api_docs/type-aliases/InterProceduralSrcType.md +11 -11
  2300. package/docs/api_docs/type-aliases/IntraProceduralEdge.md +43 -43
  2301. package/docs/api_docs/type-aliases/Kind.md +11 -11
  2302. package/docs/api_docs/type-aliases/Method.md +11 -11
  2303. package/docs/api_docs/type-aliases/NodeID.md +11 -11
  2304. package/docs/api_docs/type-aliases/PagNodeType.md +11 -11
  2305. package/docs/api_docs/type-aliases/Signature.md +11 -11
  2306. package/docs/api_docs/variables/ALL.md +11 -11
  2307. package/docs/api_docs/variables/ANONYMOUS_CLASS_DELIMITER.md +11 -11
  2308. package/docs/api_docs/variables/ANONYMOUS_CLASS_PREFIX.md +11 -11
  2309. package/docs/api_docs/variables/ANONYMOUS_METHOD_PREFIX.md +11 -11
  2310. package/docs/api_docs/variables/ANY_KEYWORD.md +11 -11
  2311. package/docs/api_docs/variables/ARKTS_STATIC_MARK.md +11 -11
  2312. package/docs/api_docs/variables/BIGINT_KEYWORD.md +11 -11
  2313. package/docs/api_docs/variables/BOOLEAN_KEYWORD.md +11 -11
  2314. package/docs/api_docs/variables/BUILDER_DECORATOR.md +11 -11
  2315. package/docs/api_docs/variables/BUILDER_PARAM_DECORATOR.md +11 -11
  2316. package/docs/api_docs/variables/BUILDIN_ATOMIC_COMPONENT.md +11 -11
  2317. package/docs/api_docs/variables/BUILDIN_SYSTEM_COMPONENT.md +11 -11
  2318. package/docs/api_docs/variables/BUILD_PROFILE_JSON5.md +11 -11
  2319. package/docs/api_docs/variables/CALLBACK_METHOD_NAME.md +11 -11
  2320. package/docs/api_docs/variables/CALL_BACK.md +11 -11
  2321. package/docs/api_docs/variables/CALL_SIGNATURE_NAME.md +11 -11
  2322. package/docs/api_docs/variables/COMPONENT_ATTRIBUTE.md +11 -11
  2323. package/docs/api_docs/variables/COMPONENT_BRANCH_FUNCTION.md +11 -11
  2324. package/docs/api_docs/variables/COMPONENT_BUILD_FUNCTION.md +11 -11
  2325. package/docs/api_docs/variables/COMPONENT_COMMON.md +11 -11
  2326. package/docs/api_docs/variables/COMPONENT_CREATE_FUNCTION.md +11 -11
  2327. package/docs/api_docs/variables/COMPONENT_CUSTOMVIEW.md +11 -11
  2328. package/docs/api_docs/variables/COMPONENT_DECORATOR.md +11 -11
  2329. package/docs/api_docs/variables/COMPONENT_FOR_EACH.md +11 -11
  2330. package/docs/api_docs/variables/COMPONENT_IF.md +11 -11
  2331. package/docs/api_docs/variables/COMPONENT_IF_BRANCH.md +11 -11
  2332. package/docs/api_docs/variables/COMPONENT_INSTANCE.md +11 -11
  2333. package/docs/api_docs/variables/COMPONENT_LAZY_FOR_EACH.md +11 -11
  2334. package/docs/api_docs/variables/COMPONENT_LIFECYCLE_METHOD_NAME.md +11 -11
  2335. package/docs/api_docs/variables/COMPONENT_POP_FUNCTION.md +11 -11
  2336. package/docs/api_docs/variables/COMPONENT_REPEAT.md +11 -11
  2337. package/docs/api_docs/variables/CONSTRUCTOR_NAME.md +11 -11
  2338. package/docs/api_docs/variables/DECLARE_KEYWORD.md +11 -11
  2339. package/docs/api_docs/variables/DEFAULT.md +11 -11
  2340. package/docs/api_docs/variables/DEFAULT_ARK_CLASS_NAME.md +11 -11
  2341. package/docs/api_docs/variables/DEFAULT_ARK_METHOD_NAME.md +11 -11
  2342. package/docs/api_docs/variables/DEFAULT_NAME.md +11 -11
  2343. package/docs/api_docs/variables/ENTRY_DECORATOR.md +11 -11
  2344. package/docs/api_docs/variables/ETS_COMPILER_OPTIONS.md +109 -109
  2345. package/docs/api_docs/variables/FUNCTION.md +11 -11
  2346. package/docs/api_docs/variables/GLOBAL_THIS_NAME.md +11 -11
  2347. package/docs/api_docs/variables/IMPORT.md +11 -11
  2348. package/docs/api_docs/variables/INSTANCE_INIT_METHOD_NAME.md +11 -11
  2349. package/docs/api_docs/variables/LEXICAL_ENV_NAME_PREFIX.md +11 -11
  2350. package/docs/api_docs/variables/LIFECYCLE_METHOD_NAME.md +11 -11
  2351. package/docs/api_docs/variables/NAME_DELIMITER.md +11 -11
  2352. package/docs/api_docs/variables/NAME_PREFIX.md +11 -11
  2353. package/docs/api_docs/variables/NEVER_KEYWORD.md +11 -11
  2354. package/docs/api_docs/variables/NULL_KEYWORD.md +11 -11
  2355. package/docs/api_docs/variables/NUMBER_KEYWORD.md +11 -11
  2356. package/docs/api_docs/variables/OH_PACKAGE_JSON5.md +11 -11
  2357. package/docs/api_docs/variables/ON_OFF.md +11 -11
  2358. package/docs/api_docs/variables/PROMISE.md +11 -11
  2359. package/docs/api_docs/variables/SPECIAL_CONTAINER_COMPONENT.md +11 -11
  2360. package/docs/api_docs/variables/STATIC_BLOCK_METHOD_NAME_PREFIX.md +11 -11
  2361. package/docs/api_docs/variables/STATIC_INIT_METHOD_NAME.md +11 -11
  2362. package/docs/api_docs/variables/STRING_KEYWORD.md +11 -11
  2363. package/docs/api_docs/variables/SUPER_NAME.md +11 -11
  2364. package/docs/api_docs/variables/TEMP_LOCAL_PREFIX.md +11 -11
  2365. package/docs/api_docs/variables/THIS_NAME.md +11 -11
  2366. package/docs/api_docs/variables/TSCONFIG_JSON.md +11 -11
  2367. package/docs/api_docs/variables/UNDEFINED_KEYWORD.md +11 -11
  2368. package/docs/api_docs/variables/UNKNOWN_CLASS_NAME.md +11 -11
  2369. package/docs/api_docs/variables/UNKNOWN_FIELD_NAME.md +11 -11
  2370. package/docs/api_docs/variables/UNKNOWN_FILE_NAME.md +11 -11
  2371. package/docs/api_docs/variables/UNKNOWN_KEYWORD.md +11 -11
  2372. package/docs/api_docs/variables/UNKNOWN_METHOD_NAME.md +11 -11
  2373. package/docs/api_docs/variables/UNKNOWN_NAME.md +11 -11
  2374. package/docs/api_docs/variables/UNKNOWN_NAMESPACE_NAME.md +11 -11
  2375. package/docs/api_docs/variables/UNKNOWN_PROJECT_NAME.md +11 -11
  2376. package/docs/api_docs/variables/VOID_KEYWORD.md +11 -11
  2377. package/lib/Config.d.ts +77 -77
  2378. package/lib/Config.js +242 -242
  2379. package/lib/Scene.d.ts +332 -332
  2380. package/lib/Scene.js +1429 -1429
  2381. package/lib/VFG/DVFG.d.ts +42 -42
  2382. package/lib/VFG/DVFG.js +109 -109
  2383. package/lib/VFG/builder/DVFGBuilder.d.ts +16 -16
  2384. package/lib/VFG/builder/DVFGBuilder.js +124 -124
  2385. package/lib/callgraph/algorithm/AbstractAnalysis.d.ts +32 -32
  2386. package/lib/callgraph/algorithm/AbstractAnalysis.js +183 -183
  2387. package/lib/callgraph/algorithm/ClassHierarchyAnalysis.d.ts +12 -12
  2388. package/lib/callgraph/algorithm/ClassHierarchyAnalysis.js +85 -85
  2389. package/lib/callgraph/algorithm/RapidTypeAnalysis.d.ts +15 -15
  2390. package/lib/callgraph/algorithm/RapidTypeAnalysis.js +143 -143
  2391. package/lib/callgraph/common/Statistics.d.ts +61 -61
  2392. package/lib/callgraph/common/Statistics.js +268 -268
  2393. package/lib/callgraph/model/CallGraph.d.ts +82 -82
  2394. package/lib/callgraph/model/CallGraph.js +363 -363
  2395. package/lib/callgraph/model/CallSite.d.ts +38 -38
  2396. package/lib/callgraph/model/CallSite.js +82 -82
  2397. package/lib/callgraph/model/builder/CallGraphBuilder.d.ts +16 -16
  2398. package/lib/callgraph/model/builder/CallGraphBuilder.js +111 -111
  2399. package/lib/callgraph/pointerAnalysis/DummyCallCreator.d.ts +22 -22
  2400. package/lib/callgraph/pointerAnalysis/DummyCallCreator.js +106 -106
  2401. package/lib/callgraph/pointerAnalysis/PTAUtils.d.ts +20 -20
  2402. package/lib/callgraph/pointerAnalysis/PTAUtils.js +88 -88
  2403. package/lib/callgraph/pointerAnalysis/Pag.d.ts +279 -279
  2404. package/lib/callgraph/pointerAnalysis/Pag.js +1069 -1069
  2405. package/lib/callgraph/pointerAnalysis/PagBuilder.d.ts +153 -153
  2406. package/lib/callgraph/pointerAnalysis/PagBuilder.js +1370 -1370
  2407. package/lib/callgraph/pointerAnalysis/PointerAnalysis.d.ts +75 -75
  2408. package/lib/callgraph/pointerAnalysis/PointerAnalysis.js +607 -607
  2409. package/lib/callgraph/pointerAnalysis/PointerAnalysisConfig.d.ts +27 -27
  2410. package/lib/callgraph/pointerAnalysis/PointerAnalysisConfig.js +102 -102
  2411. package/lib/callgraph/pointerAnalysis/PtsDS.d.ts +80 -80
  2412. package/lib/callgraph/pointerAnalysis/PtsDS.js +312 -312
  2413. package/lib/callgraph/pointerAnalysis/context/Context.d.ts +69 -69
  2414. package/lib/callgraph/pointerAnalysis/context/Context.js +206 -206
  2415. package/lib/callgraph/pointerAnalysis/context/ContextItem.d.ts +39 -39
  2416. package/lib/callgraph/pointerAnalysis/context/ContextItem.js +99 -99
  2417. package/lib/callgraph/pointerAnalysis/context/ContextSelector.d.ts +45 -45
  2418. package/lib/callgraph/pointerAnalysis/context/ContextSelector.js +137 -137
  2419. package/lib/callgraph/pointerAnalysis/plugins/ContainerPlugin.d.ts +23 -23
  2420. package/lib/callgraph/pointerAnalysis/plugins/ContainerPlugin.js +169 -169
  2421. package/lib/callgraph/pointerAnalysis/plugins/FunctionPlugin.d.ts +25 -25
  2422. package/lib/callgraph/pointerAnalysis/plugins/FunctionPlugin.js +151 -151
  2423. package/lib/callgraph/pointerAnalysis/plugins/IPagPlugin.d.ts +14 -14
  2424. package/lib/callgraph/pointerAnalysis/plugins/IPagPlugin.js +16 -16
  2425. package/lib/callgraph/pointerAnalysis/plugins/PluginManager.d.ts +29 -29
  2426. package/lib/callgraph/pointerAnalysis/plugins/PluginManager.js +81 -81
  2427. package/lib/callgraph/pointerAnalysis/plugins/SdkPlugin.d.ts +40 -40
  2428. package/lib/callgraph/pointerAnalysis/plugins/SdkPlugin.js +274 -274
  2429. package/lib/callgraph/pointerAnalysis/plugins/StoragePlugin.d.ts +67 -67
  2430. package/lib/callgraph/pointerAnalysis/plugins/StoragePlugin.js +288 -288
  2431. package/lib/callgraph/pointerAnalysis/plugins/TaskPoolPlugin.d.ts +34 -34
  2432. package/lib/callgraph/pointerAnalysis/plugins/TaskPoolPlugin.js +199 -199
  2433. package/lib/callgraph/pointerAnalysis/plugins/WorkerPlugin.d.ts +26 -26
  2434. package/lib/callgraph/pointerAnalysis/plugins/WorkerPlugin.js +171 -171
  2435. package/lib/core/base/Constant.d.ts +51 -51
  2436. package/lib/core/base/Constant.js +109 -109
  2437. package/lib/core/base/Decorator.d.ts +15 -15
  2438. package/lib/core/base/Decorator.js +46 -46
  2439. package/lib/core/base/DefUseChain.d.ts +8 -8
  2440. package/lib/core/base/DefUseChain.js +25 -25
  2441. package/lib/core/base/Expr.d.ts +371 -371
  2442. package/lib/core/base/Expr.js +1034 -1034
  2443. package/lib/core/base/Local.d.ts +104 -104
  2444. package/lib/core/base/Local.js +186 -186
  2445. package/lib/core/base/Position.d.ts +30 -30
  2446. package/lib/core/base/Position.js +147 -147
  2447. package/lib/core/base/Ref.d.ts +176 -176
  2448. package/lib/core/base/Ref.js +374 -374
  2449. package/lib/core/base/Stmt.d.ts +237 -237
  2450. package/lib/core/base/Stmt.js +525 -525
  2451. package/lib/core/base/Trap.d.ts +8 -8
  2452. package/lib/core/base/Trap.js +30 -30
  2453. package/lib/core/base/Type.d.ts +326 -326
  2454. package/lib/core/base/Type.js +671 -671
  2455. package/lib/core/base/TypeExpr.d.ts +71 -71
  2456. package/lib/core/base/TypeExpr.js +161 -161
  2457. package/lib/core/base/Value.d.ts +32 -32
  2458. package/lib/core/base/Value.js +16 -16
  2459. package/lib/core/common/ArkError.d.ts +14 -14
  2460. package/lib/core/common/ArkError.js +28 -28
  2461. package/lib/core/common/ArkIRTransformer.d.ts +70 -70
  2462. package/lib/core/common/ArkIRTransformer.js +819 -819
  2463. package/lib/core/common/ArkValueTransformer.d.ts +99 -99
  2464. package/lib/core/common/ArkValueTransformer.js +1853 -1853
  2465. package/lib/core/common/Builtin.d.ts +45 -45
  2466. package/lib/core/common/Builtin.js +106 -106
  2467. package/lib/core/common/Const.d.ts +40 -40
  2468. package/lib/core/common/Const.js +65 -65
  2469. package/lib/core/common/DummyMainCreater.d.ts +76 -76
  2470. package/lib/core/common/DummyMainCreater.js +460 -460
  2471. package/lib/core/common/EtsConst.d.ts +77 -77
  2472. package/lib/core/common/EtsConst.js +1016 -1016
  2473. package/lib/core/common/ExprUseReplacer.d.ts +21 -21
  2474. package/lib/core/common/ExprUseReplacer.js +124 -124
  2475. package/lib/core/common/IRInference.d.ts +51 -51
  2476. package/lib/core/common/IRInference.js +994 -994
  2477. package/lib/core/common/IRUtils.d.ts +18 -18
  2478. package/lib/core/common/IRUtils.js +142 -142
  2479. package/lib/core/common/ModelUtils.d.ts +83 -83
  2480. package/lib/core/common/ModelUtils.js +908 -908
  2481. package/lib/core/common/RefUseReplacer.d.ts +13 -13
  2482. package/lib/core/common/RefUseReplacer.js +52 -52
  2483. package/lib/core/common/SdkUtils.d.ts +32 -32
  2484. package/lib/core/common/SdkUtils.js +301 -301
  2485. package/lib/core/common/StmtDefReplacer.d.ts +12 -12
  2486. package/lib/core/common/StmtDefReplacer.js +41 -41
  2487. package/lib/core/common/StmtUseReplacer.d.ts +16 -16
  2488. package/lib/core/common/StmtUseReplacer.js +108 -108
  2489. package/lib/core/common/TSConst.d.ts +23 -23
  2490. package/lib/core/common/TSConst.js +42 -42
  2491. package/lib/core/common/TypeInference.d.ts +122 -122
  2492. package/lib/core/common/TypeInference.d.ts.map +1 -1
  2493. package/lib/core/common/TypeInference.js +1088 -1085
  2494. package/lib/core/common/ValueUtil.d.ts +14 -14
  2495. package/lib/core/common/ValueUtil.js +75 -75
  2496. package/lib/core/common/VisibleValue.d.ts +36 -36
  2497. package/lib/core/common/VisibleValue.js +212 -212
  2498. package/lib/core/dataflow/DataflowProblem.d.ts +20 -20
  2499. package/lib/core/dataflow/DataflowProblem.js +20 -20
  2500. package/lib/core/dataflow/DataflowResult.d.ts +7 -7
  2501. package/lib/core/dataflow/DataflowResult.js +26 -26
  2502. package/lib/core/dataflow/DataflowSolver.d.ts +44 -44
  2503. package/lib/core/dataflow/DataflowSolver.js +314 -314
  2504. package/lib/core/dataflow/Edge.d.ts +11 -11
  2505. package/lib/core/dataflow/Edge.js +31 -31
  2506. package/lib/core/dataflow/Fact.d.ts +6 -6
  2507. package/lib/core/dataflow/Fact.js +24 -24
  2508. package/lib/core/dataflow/GenericDataFlow.d.ts +142 -142
  2509. package/lib/core/dataflow/GenericDataFlow.js +109 -109
  2510. package/lib/core/dataflow/ReachingDef.d.ts +62 -62
  2511. package/lib/core/dataflow/ReachingDef.js +181 -181
  2512. package/lib/core/dataflow/UndefinedVariable.d.ts +45 -45
  2513. package/lib/core/dataflow/UndefinedVariable.js +267 -267
  2514. package/lib/core/dataflow/Util.d.ts +9 -9
  2515. package/lib/core/dataflow/Util.js +62 -62
  2516. package/lib/core/graph/BaseExplicitGraph.d.ts +59 -59
  2517. package/lib/core/graph/BaseExplicitGraph.js +160 -160
  2518. package/lib/core/graph/BaseImplicitGraph.d.ts +78 -78
  2519. package/lib/core/graph/BaseImplicitGraph.js +84 -84
  2520. package/lib/core/graph/BasicBlock.d.ts +107 -107
  2521. package/lib/core/graph/BasicBlock.js +301 -301
  2522. package/lib/core/graph/Cfg.d.ts +67 -67
  2523. package/lib/core/graph/Cfg.js +329 -329
  2524. package/lib/core/graph/DependsGraph.d.ts +35 -35
  2525. package/lib/core/graph/DependsGraph.js +87 -87
  2526. package/lib/core/graph/DominanceFinder.d.ts +15 -15
  2527. package/lib/core/graph/DominanceFinder.js +121 -121
  2528. package/lib/core/graph/DominanceTree.d.ts +12 -12
  2529. package/lib/core/graph/DominanceTree.js +70 -70
  2530. package/lib/core/graph/GraphTraits.d.ts +7 -7
  2531. package/lib/core/graph/GraphTraits.js +16 -16
  2532. package/lib/core/graph/Scc.d.ts +61 -61
  2533. package/lib/core/graph/Scc.js +222 -222
  2534. package/lib/core/graph/ViewTree.d.ts +114 -114
  2535. package/lib/core/graph/ViewTree.js +16 -16
  2536. package/lib/core/graph/builder/CfgBuilder.d.ts +205 -205
  2537. package/lib/core/graph/builder/CfgBuilder.js +1429 -1429
  2538. package/lib/core/graph/builder/ConditionBuilder.d.ts +17 -17
  2539. package/lib/core/graph/builder/ConditionBuilder.js +246 -246
  2540. package/lib/core/graph/builder/LoopBuilder.d.ts +20 -20
  2541. package/lib/core/graph/builder/LoopBuilder.js +256 -256
  2542. package/lib/core/graph/builder/SwitchBuilder.d.ts +11 -11
  2543. package/lib/core/graph/builder/SwitchBuilder.js +145 -145
  2544. package/lib/core/graph/builder/TrapBuilder.d.ts +34 -34
  2545. package/lib/core/graph/builder/TrapBuilder.js +380 -380
  2546. package/lib/core/graph/builder/ViewTreeBuilder.d.ts +255 -255
  2547. package/lib/core/graph/builder/ViewTreeBuilder.js +1265 -1265
  2548. package/lib/core/inference/Inference.d.ts +49 -49
  2549. package/lib/core/inference/Inference.js +71 -71
  2550. package/lib/core/inference/InferenceBuilder.d.ts +11 -11
  2551. package/lib/core/inference/InferenceBuilder.js +38 -38
  2552. package/lib/core/inference/ModelInference.d.ts +191 -191
  2553. package/lib/core/inference/ModelInference.d.ts.map +1 -1
  2554. package/lib/core/inference/ModelInference.js +561 -558
  2555. package/lib/core/inference/ValueInference.d.ts +215 -215
  2556. package/lib/core/inference/ValueInference.js +620 -620
  2557. package/lib/core/inference/abc/AbcInference.d.ts +19 -19
  2558. package/lib/core/inference/abc/AbcInference.d.ts.map +1 -1
  2559. package/lib/core/inference/abc/AbcInference.js +204 -170
  2560. package/lib/core/inference/arkts/ArkTsInference.d.ts +69 -69
  2561. package/lib/core/inference/arkts/ArkTsInference.d.ts.map +1 -1
  2562. package/lib/core/inference/arkts/ArkTsInference.js +346 -352
  2563. package/lib/core/model/ArkBaseModel.d.ts +61 -61
  2564. package/lib/core/model/ArkBaseModel.js +281 -281
  2565. package/lib/core/model/ArkBody.d.ts +25 -25
  2566. package/lib/core/model/ArkBody.js +75 -75
  2567. package/lib/core/model/ArkClass.d.ts +243 -243
  2568. package/lib/core/model/ArkClass.js +553 -553
  2569. package/lib/core/model/ArkExport.d.ts +80 -80
  2570. package/lib/core/model/ArkExport.js +160 -160
  2571. package/lib/core/model/ArkField.d.ts +69 -69
  2572. package/lib/core/model/ArkField.js +131 -131
  2573. package/lib/core/model/ArkFile.d.ts +150 -150
  2574. package/lib/core/model/ArkFile.js +326 -326
  2575. package/lib/core/model/ArkImport.d.ts +50 -50
  2576. package/lib/core/model/ArkImport.js +120 -120
  2577. package/lib/core/model/ArkMetadata.d.ts +37 -37
  2578. package/lib/core/model/ArkMetadata.js +65 -65
  2579. package/lib/core/model/ArkMethod.d.ts +271 -271
  2580. package/lib/core/model/ArkMethod.js +583 -583
  2581. package/lib/core/model/ArkNamespace.d.ts +70 -70
  2582. package/lib/core/model/ArkNamespace.js +230 -230
  2583. package/lib/core/model/ArkSignature.d.ts +169 -169
  2584. package/lib/core/model/ArkSignature.js +394 -394
  2585. package/lib/core/model/builder/ArkClassBuilder.d.ts +12 -12
  2586. package/lib/core/model/builder/ArkClassBuilder.js +524 -524
  2587. package/lib/core/model/builder/ArkExportBuilder.d.ts +25 -25
  2588. package/lib/core/model/builder/ArkExportBuilder.js +223 -223
  2589. package/lib/core/model/builder/ArkFieldBuilder.d.ts +8 -8
  2590. package/lib/core/model/builder/ArkFieldBuilder.js +191 -191
  2591. package/lib/core/model/builder/ArkFileBuilder.d.ts +9 -9
  2592. package/lib/core/model/builder/ArkFileBuilder.js +190 -190
  2593. package/lib/core/model/builder/ArkImportBuilder.d.ts +4 -4
  2594. package/lib/core/model/builder/ArkImportBuilder.js +143 -143
  2595. package/lib/core/model/builder/ArkMethodBuilder.d.ts +64 -64
  2596. package/lib/core/model/builder/ArkMethodBuilder.js +514 -514
  2597. package/lib/core/model/builder/ArkNamespaceBuilder.d.ts +5 -5
  2598. package/lib/core/model/builder/ArkNamespaceBuilder.js +203 -203
  2599. package/lib/core/model/builder/ArkSignatureBuilder.d.ts +8 -8
  2600. package/lib/core/model/builder/ArkSignatureBuilder.js +40 -40
  2601. package/lib/core/model/builder/BodyBuilder.d.ts +59 -59
  2602. package/lib/core/model/builder/BodyBuilder.js +559 -559
  2603. package/lib/core/model/builder/builderUtils.d.ts +19 -19
  2604. package/lib/core/model/builder/builderUtils.js +594 -594
  2605. package/lib/index.d.ts +86 -86
  2606. package/lib/index.js +209 -209
  2607. package/lib/pass/Context.d.ts +46 -46
  2608. package/lib/pass/Context.js +72 -72
  2609. package/lib/pass/Dispatcher.d.ts +101 -101
  2610. package/lib/pass/Dispatcher.js +202 -202
  2611. package/lib/pass/Pass.d.ts +82 -82
  2612. package/lib/pass/Pass.js +95 -95
  2613. package/lib/pass/ScenePassMgr.d.ts +72 -72
  2614. package/lib/pass/ScenePassMgr.js +156 -156
  2615. package/lib/pass/validators/Exprs.d.ts +8 -8
  2616. package/lib/pass/validators/Exprs.js +40 -40
  2617. package/lib/pass/validators/Models.d.ts +13 -13
  2618. package/lib/pass/validators/Models.js +42 -42
  2619. package/lib/pass/validators/SceneValidator.d.ts +18 -18
  2620. package/lib/pass/validators/SceneValidator.js +77 -77
  2621. package/lib/pass/validators/Stmts.d.ts +6 -6
  2622. package/lib/pass/validators/Stmts.js +36 -36
  2623. package/lib/pass/validators/Validator.d.ts +206 -206
  2624. package/lib/pass/validators/Validator.js +343 -343
  2625. package/lib/pass/validators/Values.d.ts +6 -6
  2626. package/lib/pass/validators/Values.js +34 -34
  2627. package/lib/save/ArkStream.d.ts +23 -23
  2628. package/lib/save/ArkStream.js +83 -83
  2629. package/lib/save/DotPrinter.d.ts +43 -43
  2630. package/lib/save/DotPrinter.js +168 -168
  2631. package/lib/save/GraphPrinter.d.ts +16 -16
  2632. package/lib/save/GraphPrinter.js +133 -133
  2633. package/lib/save/Printer.d.ts +12 -12
  2634. package/lib/save/Printer.js +27 -27
  2635. package/lib/save/PrinterBuilder.d.ts +53 -53
  2636. package/lib/save/PrinterBuilder.js +145 -145
  2637. package/lib/save/ViewTreePrinter.d.ts +14 -14
  2638. package/lib/save/ViewTreePrinter.js +127 -127
  2639. package/lib/save/arkir/ArkIRClassPrinter.d.ts +13 -13
  2640. package/lib/save/arkir/ArkIRClassPrinter.js +100 -100
  2641. package/lib/save/arkir/ArkIRFieldPrinter.d.ts +11 -11
  2642. package/lib/save/arkir/ArkIRFieldPrinter.js +64 -64
  2643. package/lib/save/arkir/ArkIRFilePrinter.d.ts +12 -12
  2644. package/lib/save/arkir/ArkIRFilePrinter.js +54 -54
  2645. package/lib/save/arkir/ArkIRMethodPrinter.d.ts +16 -16
  2646. package/lib/save/arkir/ArkIRMethodPrinter.js +152 -152
  2647. package/lib/save/arkir/ArkIRNamespacePrinter.d.ts +11 -11
  2648. package/lib/save/arkir/ArkIRNamespacePrinter.js +65 -65
  2649. package/lib/save/base/BasePrinter.d.ts +23 -23
  2650. package/lib/save/base/BasePrinter.js +71 -71
  2651. package/lib/save/base/ExportPrinter.d.ts +8 -8
  2652. package/lib/save/base/ExportPrinter.js +63 -63
  2653. package/lib/save/base/ImportPrinter.d.ts +9 -9
  2654. package/lib/save/base/ImportPrinter.js +88 -88
  2655. package/lib/save/base/PrinterUtils.d.ts +25 -25
  2656. package/lib/save/base/PrinterUtils.js +210 -210
  2657. package/lib/save/json/JsonDto.d.ts +327 -327
  2658. package/lib/save/json/JsonDto.js +25 -25
  2659. package/lib/save/json/JsonPrinter.d.ts +7 -7
  2660. package/lib/save/json/JsonPrinter.js +30 -30
  2661. package/lib/save/json/JsonSerialization.d.ts +28 -28
  2662. package/lib/save/json/JsonSerialization.js +574 -574
  2663. package/lib/save/json/serializeArkIR.d.ts +8 -8
  2664. package/lib/save/json/serializeArkIR.js +229 -229
  2665. package/lib/save/source/SourceBase.d.ts +22 -22
  2666. package/lib/save/source/SourceBase.js +62 -62
  2667. package/lib/save/source/SourceBody.d.ts +58 -58
  2668. package/lib/save/source/SourceBody.js +293 -293
  2669. package/lib/save/source/SourceClass.d.ts +25 -25
  2670. package/lib/save/source/SourceClass.js +187 -187
  2671. package/lib/save/source/SourceField.d.ts +13 -13
  2672. package/lib/save/source/SourceField.js +73 -73
  2673. package/lib/save/source/SourceFilePrinter.d.ts +13 -13
  2674. package/lib/save/source/SourceFilePrinter.js +72 -72
  2675. package/lib/save/source/SourceMethod.d.ts +22 -22
  2676. package/lib/save/source/SourceMethod.js +195 -195
  2677. package/lib/save/source/SourceNamespace.d.ts +12 -12
  2678. package/lib/save/source/SourceNamespace.js +85 -85
  2679. package/lib/save/source/SourceStmt.d.ts +183 -183
  2680. package/lib/save/source/SourceStmt.js +899 -899
  2681. package/lib/save/source/SourceTransformer.d.ts +48 -48
  2682. package/lib/save/source/SourceTransformer.js +474 -474
  2683. package/lib/transformer/FunctionTransformer.d.ts +2 -2
  2684. package/lib/transformer/FunctionTransformer.js +17 -17
  2685. package/lib/transformer/SceneTransformer.d.ts +2 -2
  2686. package/lib/transformer/SceneTransformer.js +17 -17
  2687. package/lib/transformer/StaticSingleAssignmentFormer.d.ts +17 -17
  2688. package/lib/transformer/StaticSingleAssignmentFormer.js +277 -277
  2689. package/lib/transformer/Transformer.d.ts +6 -6
  2690. package/lib/transformer/Transformer.js +21 -21
  2691. package/lib/utils/AstTreeUtils.d.ts +23 -23
  2692. package/lib/utils/AstTreeUtils.js +94 -94
  2693. package/lib/utils/CfgStructualAnalysis.d.ts +111 -111
  2694. package/lib/utils/CfgStructualAnalysis.js +1269 -1269
  2695. package/lib/utils/FileUtils.d.ts +20 -20
  2696. package/lib/utils/FileUtils.js +162 -162
  2697. package/lib/utils/IntMap.d.ts +47 -47
  2698. package/lib/utils/IntMap.js +134 -134
  2699. package/lib/utils/IntWorkList.d.ts +34 -34
  2700. package/lib/utils/IntWorkList.js +97 -97
  2701. package/lib/utils/PackedSparseMap.d.ts +25 -25
  2702. package/lib/utils/PackedSparseMap.js +140 -140
  2703. package/lib/utils/SparseBitVector.d.ts +100 -100
  2704. package/lib/utils/SparseBitVector.js +445 -445
  2705. package/lib/utils/ValueAsserts.d.ts +8 -8
  2706. package/lib/utils/ValueAsserts.js +89 -89
  2707. package/lib/utils/callGraphUtils.d.ts +30 -30
  2708. package/lib/utils/callGraphUtils.js +210 -210
  2709. package/lib/utils/crypto_utils.d.ts +5 -5
  2710. package/lib/utils/crypto_utils.js +57 -57
  2711. package/lib/utils/entryMethodUtils.d.ts +13 -13
  2712. package/lib/utils/entryMethodUtils.js +122 -122
  2713. package/lib/utils/getAllFiles.d.ts +9 -9
  2714. package/lib/utils/getAllFiles.js +91 -91
  2715. package/lib/utils/json5parser.d.ts +6 -6
  2716. package/lib/utils/json5parser.js +146 -146
  2717. package/lib/utils/logger.d.ts +19 -19
  2718. package/lib/utils/logger.js +98 -98
  2719. package/lib/utils/pathTransfer.d.ts +1 -1
  2720. package/lib/utils/pathTransfer.js +25 -25
  2721. package/node_modules/ohos-typescript/bin/tsc +0 -0
  2722. package/node_modules/ohos-typescript/bin/tsserver +0 -0
  2723. package/node_modules/ohos-typescript/lib/tsc.js +5655 -5724
  2724. package/node_modules/ohos-typescript/lib/tsserver.js +7935 -7957
  2725. package/node_modules/ohos-typescript/lib/tsserverlibrary.d.ts +230 -250
  2726. package/node_modules/ohos-typescript/lib/tsserverlibrary.js +7911 -7933
  2727. package/node_modules/ohos-typescript/lib/typesMap.json +496 -496
  2728. package/node_modules/ohos-typescript/lib/typescript.d.ts +230 -250
  2729. package/node_modules/ohos-typescript/lib/typescript.js +7813 -7834
  2730. package/node_modules/ohos-typescript/lib/typingsInstaller.js +2378 -2579
  2731. package/node_modules/ohos-typescript/package.json +1 -1
  2732. package/package.json +7 -7
@@ -1,1853 +1,1853 @@
1
- "use strict";
2
- /*
3
- * Copyright (c) 2024-2026 Huawei Device Co., Ltd.
4
- * Licensed under the Apache License, Version 2.0 (the "License");
5
- * you may not use this file except in compliance with the License.
6
- * You may obtain a copy of the License at
7
- *
8
- * http://www.apache.org/licenses/LICENSE-2.0
9
- *
10
- * Unless required by applicable law or agreed to in writing, software
11
- * distributed under the License is distributed on an "AS IS" BASIS,
12
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
- * See the License for the specific language governing permissions and
14
- * limitations under the License.
15
- */
16
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
17
- if (k2 === undefined) k2 = k;
18
- var desc = Object.getOwnPropertyDescriptor(m, k);
19
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
20
- desc = { enumerable: true, get: function() { return m[k]; } };
21
- }
22
- Object.defineProperty(o, k2, desc);
23
- }) : (function(o, m, k, k2) {
24
- if (k2 === undefined) k2 = k;
25
- o[k2] = m[k];
26
- }));
27
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
28
- Object.defineProperty(o, "default", { enumerable: true, value: v });
29
- }) : function(o, v) {
30
- o["default"] = v;
31
- });
32
- var __importStar = (this && this.__importStar) || function (mod) {
33
- if (mod && mod.__esModule) return mod;
34
- var result = {};
35
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
36
- __setModuleDefault(result, mod);
37
- return result;
38
- };
39
- Object.defineProperty(exports, "__esModule", { value: true });
40
- exports.ArkValueTransformer = void 0;
41
- const ts = __importStar(require("ohos-typescript"));
42
- const Local_1 = require("../base/Local");
43
- const Position_1 = require("../base/Position");
44
- const Stmt_1 = require("../base/Stmt");
45
- const Expr_1 = require("../base/Expr");
46
- const ArkClass_1 = require("../model/ArkClass");
47
- const ArkClassBuilder_1 = require("../model/builder/ArkClassBuilder");
48
- const Type_1 = require("../base/Type");
49
- const ArkSignatureBuilder_1 = require("../model/builder/ArkSignatureBuilder");
50
- const TSConst_1 = require("./TSConst");
51
- const ArkSignature_1 = require("../model/ArkSignature");
52
- const EtsConst_1 = require("./EtsConst");
53
- const ValueUtil_1 = require("./ValueUtil");
54
- const IRUtils_1 = require("./IRUtils");
55
- const Ref_1 = require("../base/Ref");
56
- const ModelUtils_1 = require("./ModelUtils");
57
- const ArkMethod_1 = require("../model/ArkMethod");
58
- const ArkMethodBuilder_1 = require("../model/builder/ArkMethodBuilder");
59
- const Builtin_1 = require("./Builtin");
60
- const Constant_1 = require("../base/Constant");
61
- const Const_1 = require("./Const");
62
- const ArkIRTransformer_1 = require("./ArkIRTransformer");
63
- const logger_1 = __importStar(require("../../utils/logger"));
64
- const TypeInference_1 = require("./TypeInference");
65
- const TypeExpr_1 = require("../base/TypeExpr");
66
- const logger = logger_1.default.getLogger(logger_1.LOG_MODULE_TYPE.ARKANALYZER, 'ArkValueTransformer');
67
- class ArkValueTransformer {
68
- constructor(arkIRTransformer, sourceFile, declaringMethod) {
69
- this.conditionalOperatorNo = 0;
70
- this.tempLocalNo = 0;
71
- this.locals = new Map();
72
- this.aliasTypeMap = new Map();
73
- this.builderMethodContextFlag = false;
74
- this.arkIRTransformer = arkIRTransformer;
75
- this.sourceFile = sourceFile;
76
- this.thisLocal = new Local_1.Local(TSConst_1.THIS_NAME, declaringMethod.getDeclaringArkClass().getSignature().getType());
77
- this.locals.set(this.thisLocal.getName(), this.thisLocal);
78
- this.declaringMethod = declaringMethod;
79
- }
80
- getLocals() {
81
- return new Set(this.locals.values());
82
- }
83
- getThisLocal() {
84
- return this.thisLocal;
85
- }
86
- getAliasTypeMap() {
87
- return this.aliasTypeMap;
88
- }
89
- addNewLocal(localName, localType = Type_1.UnknownType.getInstance()) {
90
- let local = new Local_1.Local(localName, localType);
91
- this.locals.set(localName, local);
92
- return local;
93
- }
94
- getGlobals() {
95
- var _a;
96
- return (_a = this.globals) !== null && _a !== void 0 ? _a : null;
97
- }
98
- addNewGlobal(name, ref) {
99
- var _a;
100
- let globalRef = new Ref_1.GlobalRef(name, ref);
101
- this.globals = (_a = this.globals) !== null && _a !== void 0 ? _a : new Map();
102
- this.globals.set(name, globalRef);
103
- return globalRef;
104
- }
105
- tsNodeToValueAndStmts(node) {
106
- if (ts.isBinaryExpression(node)) {
107
- return this.binaryExpressionToValueAndStmts(node);
108
- }
109
- else if (ts.isCallExpression(node)) {
110
- return this.callExpressionToValueAndStmts(node);
111
- }
112
- else if (ts.isVariableDeclarationList(node)) {
113
- return this.variableDeclarationListToValueAndStmts(node);
114
- }
115
- else if (ts.isIdentifier(node)) {
116
- return this.identifierToValueAndStmts(node);
117
- }
118
- else if (ts.isPropertyAccessExpression(node)) {
119
- return this.propertyAccessExpressionToValue(node);
120
- }
121
- else if (ts.isPrefixUnaryExpression(node)) {
122
- return this.prefixUnaryExpressionToValueAndStmts(node);
123
- }
124
- else if (ts.isPostfixUnaryExpression(node)) {
125
- return this.postfixUnaryExpressionToValueAndStmts(node);
126
- }
127
- else if (ts.isTemplateExpression(node)) {
128
- return this.templateExpressionToValueAndStmts(node);
129
- }
130
- else if (ts.isTaggedTemplateExpression(node)) {
131
- return this.taggedTemplateExpressionToValueAndStmts(node);
132
- }
133
- else if (ts.isAwaitExpression(node)) {
134
- return this.awaitExpressionToValueAndStmts(node);
135
- }
136
- else if (ts.isYieldExpression(node)) {
137
- return this.yieldExpressionToValueAndStmts(node);
138
- }
139
- else if (ts.isDeleteExpression(node)) {
140
- return this.deleteExpressionToValueAndStmts(node);
141
- }
142
- else if (ts.isVoidExpression(node)) {
143
- return this.voidExpressionToValueAndStmts(node);
144
- }
145
- else if (ts.isElementAccessExpression(node)) {
146
- return this.elementAccessExpressionToValueAndStmts(node);
147
- }
148
- else if (ts.isNewExpression(node)) {
149
- return this.newExpressionToValueAndStmts(node);
150
- }
151
- else if (ts.isParenthesizedExpression(node)) {
152
- return this.parenthesizedExpressionToValueAndStmts(node);
153
- }
154
- else if (ts.isAsExpression(node)) {
155
- return this.asExpressionToValueAndStmts(node);
156
- }
157
- else if (ts.isNonNullExpression(node)) {
158
- return this.nonNullExpressionToValueAndStmts(node);
159
- }
160
- else if (ts.isTypeAssertionExpression(node)) {
161
- return this.typeAssertionToValueAndStmts(node);
162
- }
163
- else if (ts.isTypeOfExpression(node)) {
164
- return this.typeOfExpressionToValueAndStmts(node);
165
- }
166
- else if (ts.isArrayLiteralExpression(node)) {
167
- return this.arrayLiteralExpressionToValueAndStmts(node);
168
- }
169
- else if (this.isLiteralNode(node)) {
170
- return this.literalNodeToValueAndStmts(node);
171
- }
172
- else if (ts.isArrowFunction(node) || ts.isFunctionExpression(node)) {
173
- return this.callableNodeToValueAndStmts(node);
174
- }
175
- else if (ts.isClassExpression(node)) {
176
- return this.classExpressionToValueAndStmts(node);
177
- }
178
- else if (ts.isEtsComponentExpression(node)) {
179
- return this.etsComponentExpressionToValueAndStmts(node);
180
- }
181
- else if (ts.isObjectLiteralExpression(node)) {
182
- return this.objectLiteralExpresionToValueAndStmts(node);
183
- }
184
- else if (node.kind === ts.SyntaxKind.ThisKeyword) {
185
- return this.thisExpressionToValueAndStmts(node);
186
- }
187
- else if (node.kind === ts.SyntaxKind.SuperKeyword) {
188
- return this.superExpressionToValueAndStmts(node);
189
- }
190
- else if (ts.isConditionalExpression(node)) {
191
- return this.conditionalExpressionToValueAndStmts(node);
192
- }
193
- else if (ts.isSpreadElement(node)) {
194
- return this.tsNodeToValueAndStmts(node.expression);
195
- }
196
- return {
197
- value: new Local_1.Local(node.getText(this.sourceFile)),
198
- valueOriginalPositions: [Position_1.FullPosition.buildFromNode(node, this.sourceFile)],
199
- stmts: [],
200
- };
201
- }
202
- tsNodeToSingleAddressValueAndStmts(node) {
203
- const allStmts = [];
204
- let { value, valueOriginalPositions, stmts } = this.tsNodeToValueAndStmts(node);
205
- stmts.forEach(stmt => allStmts.push(stmt));
206
- if (IRUtils_1.IRUtils.moreThanOneAddress(value)) {
207
- ({
208
- value,
209
- valueOriginalPositions,
210
- stmts,
211
- } = this.arkIRTransformer.generateAssignStmtForValue(value, valueOriginalPositions));
212
- stmts.forEach(stmt => allStmts.push(stmt));
213
- }
214
- return { value, valueOriginalPositions, stmts: allStmts };
215
- }
216
- thisExpressionToValueAndStmts(thisExpression) {
217
- return {
218
- value: this.getThisLocal(),
219
- valueOriginalPositions: [Position_1.FullPosition.buildFromNode(thisExpression, this.sourceFile)],
220
- stmts: [],
221
- };
222
- }
223
- superExpressionToValueAndStmts(superExpression) {
224
- return {
225
- value: this.getOrCreateLocal(TSConst_1.SUPER_NAME),
226
- valueOriginalPositions: [Position_1.FullPosition.buildFromNode(superExpression, this.sourceFile)],
227
- stmts: [],
228
- };
229
- }
230
- conditionalExpressionToValueAndStmts(conditionalExpression) {
231
- const stmts = [];
232
- const currConditionalOperatorIndex = this.conditionalOperatorNo++;
233
- const { value: conditionValue, valueOriginalPositions: conditionPositions, stmts: conditionStmts, } = this.conditionToValueAndStmts(conditionalExpression.condition);
234
- conditionStmts.forEach(stmt => stmts.push(stmt));
235
- const ifStmt = new Stmt_1.ArkIfStmt(conditionValue);
236
- ifStmt.setOperandOriginalPositions(conditionPositions);
237
- stmts.push(ifStmt);
238
- stmts.push(new ArkIRTransformer_1.DummyStmt(ArkIRTransformer_1.ArkIRTransformer.DUMMY_CONDITIONAL_OPERATOR_IF_TRUE_STMT + currConditionalOperatorIndex));
239
- const { value: whenTrueValue, valueOriginalPositions: whenTruePositions, stmts: whenTrueStmts, } = this.tsNodeToValueAndStmts(conditionalExpression.whenTrue);
240
- whenTrueStmts.forEach(stmt => stmts.push(stmt));
241
- const resultLocal = this.generateTempLocal();
242
- const assignStmtWhenTrue = new Stmt_1.ArkAssignStmt(resultLocal, whenTrueValue);
243
- const resultLocalPosition = [whenTruePositions[0]];
244
- assignStmtWhenTrue.setOperandOriginalPositions([...resultLocalPosition, ...whenTruePositions]);
245
- stmts.push(assignStmtWhenTrue);
246
- stmts.push(new ArkIRTransformer_1.DummyStmt(ArkIRTransformer_1.ArkIRTransformer.DUMMY_CONDITIONAL_OPERATOR_IF_FALSE_STMT + currConditionalOperatorIndex));
247
- const { value: whenFalseValue, valueOriginalPositions: whenFalsePositions, stmts: whenFalseStmts, } = this.tsNodeToValueAndStmts(conditionalExpression.whenFalse);
248
- whenFalseStmts.forEach(stmt => stmts.push(stmt));
249
- const assignStmt = new Stmt_1.ArkAssignStmt(resultLocal, whenFalseValue);
250
- assignStmt.setOperandOriginalPositions([...resultLocalPosition, ...whenFalsePositions]);
251
- stmts.push(assignStmt);
252
- stmts.push(new ArkIRTransformer_1.DummyStmt(ArkIRTransformer_1.ArkIRTransformer.DUMMY_CONDITIONAL_OPERATOR_END_STMT + currConditionalOperatorIndex));
253
- return {
254
- value: resultLocal,
255
- valueOriginalPositions: resultLocalPosition,
256
- stmts: stmts,
257
- };
258
- }
259
- objectLiteralExpresionToValueAndStmts(objectLiteralExpression) {
260
- const declaringArkClass = this.declaringMethod.getDeclaringArkClass();
261
- const declaringArkNamespace = declaringArkClass.getDeclaringArkNamespace();
262
- const anonymousClass = new ArkClass_1.ArkClass();
263
- if (declaringArkNamespace) {
264
- (0, ArkClassBuilder_1.buildNormalArkClassFromArkNamespace)(objectLiteralExpression, declaringArkNamespace, anonymousClass, this.sourceFile, this.declaringMethod);
265
- }
266
- else {
267
- const declaringArkFile = declaringArkClass.getDeclaringArkFile();
268
- (0, ArkClassBuilder_1.buildNormalArkClassFromArkFile)(objectLiteralExpression, declaringArkFile, anonymousClass, this.sourceFile, this.declaringMethod);
269
- }
270
- const objectLiteralExpressionPosition = Position_1.FullPosition.buildFromNode(objectLiteralExpression, this.sourceFile);
271
- const stmts = [];
272
- const anonymousClassSignature = anonymousClass.getSignature();
273
- const anonymousClassType = new Type_1.ClassType(anonymousClassSignature);
274
- const newExpr = new Expr_1.ArkNewExpr(anonymousClassType);
275
- const { value: newExprLocal, valueOriginalPositions: newExprLocalPositions, stmts: newExprStmts, } = this.arkIRTransformer.generateAssignStmtForValue(newExpr, [objectLiteralExpressionPosition]);
276
- newExprStmts.forEach(stmt => stmts.push(stmt));
277
- const constructorMethodSubSignature = ArkSignatureBuilder_1.ArkSignatureBuilder.buildMethodSubSignatureFromMethodName(TSConst_1.CONSTRUCTOR_NAME);
278
- const constructorMethodSignature = new ArkSignature_1.MethodSignature(anonymousClassSignature, constructorMethodSubSignature);
279
- const constructorInvokeExpr = new Expr_1.ArkInstanceInvokeExpr(newExprLocal, constructorMethodSignature, []);
280
- const assignStmt = new Stmt_1.ArkAssignStmt(newExprLocal, constructorInvokeExpr);
281
- const assignStmtPositions = [newExprLocalPositions[0], newExprLocalPositions[0], ...newExprLocalPositions];
282
- assignStmt.setOperandOriginalPositions(assignStmtPositions);
283
- stmts.push(assignStmt);
284
- return { value: newExprLocal, valueOriginalPositions: assignStmtPositions, stmts: stmts };
285
- }
286
- generateSystemComponentStmt(componentName, args, argPositionsAllFlat, componentExpression, currStmts) {
287
- const stmts = [...currStmts];
288
- const componentExpressionPosition = Position_1.FullPosition.buildFromNode(componentExpression, this.sourceFile);
289
- const { value: componentValue, valueOriginalPositions: componentPositions, stmts: componentStmts, } = this.generateComponentCreationStmts(componentName, args, componentExpressionPosition, argPositionsAllFlat);
290
- componentStmts.forEach(stmt => stmts.push(stmt));
291
- if (ts.isEtsComponentExpression(componentExpression) && componentExpression.body) {
292
- for (const statement of componentExpression.body.statements) {
293
- this.arkIRTransformer.tsNodeToStmts(statement).forEach(stmt => stmts.push(stmt));
294
- }
295
- }
296
- stmts.push(this.generateComponentPopStmts(componentName, componentExpressionPosition));
297
- return {
298
- value: componentValue,
299
- valueOriginalPositions: componentPositions,
300
- stmts: stmts,
301
- };
302
- }
303
- generateCustomViewStmt(componentName, args, argPositionsAllFlat, componentExpression, currStmts) {
304
- const stmts = [...currStmts];
305
- const componentExpressionPosition = Position_1.FullPosition.buildFromNode(componentExpression, this.sourceFile);
306
- const classSignature = ArkSignatureBuilder_1.ArkSignatureBuilder.buildClassSignatureFromClassName(componentName);
307
- const classType = new Type_1.ClassType(classSignature);
308
- const newExpr = new Expr_1.ArkNewExpr(classType);
309
- const { value: newExprLocal, valueOriginalPositions: newExprPositions, stmts: newExprStmts, } = this.arkIRTransformer.generateAssignStmtForValue(newExpr, [componentExpressionPosition]);
310
- newExprStmts.forEach(stmt => stmts.push(stmt));
311
- const constructorMethodSubSignature = ArkSignatureBuilder_1.ArkSignatureBuilder.buildMethodSubSignatureFromMethodName(TSConst_1.CONSTRUCTOR_NAME);
312
- const constructorMethodSignature = new ArkSignature_1.MethodSignature(classSignature, constructorMethodSubSignature);
313
- const instanceInvokeExpr = new Expr_1.ArkInstanceInvokeExpr(newExprLocal, constructorMethodSignature, args);
314
- const assignStmt = new Stmt_1.ArkAssignStmt(newExprLocal, instanceInvokeExpr);
315
- const assignStmtPositions = [componentExpressionPosition, componentExpressionPosition, ...newExprPositions, ...argPositionsAllFlat];
316
- assignStmt.setOperandOriginalPositions(assignStmtPositions);
317
- stmts.push(assignStmt);
318
- const createViewArgs = [newExprLocal];
319
- const createViewArgPositionsAll = [newExprPositions];
320
- if (ts.isEtsComponentExpression(componentExpression) && componentExpression.body) {
321
- const anonymous = ts.factory.createArrowFunction([], [], [], undefined, undefined, componentExpression.body);
322
- // @ts-expect-error: add pos info for the created ArrowFunction
323
- anonymous.pos = componentExpression.body.pos;
324
- // @ts-expect-error: add end info for the created ArrowFunction
325
- anonymous.end = componentExpression.body.end;
326
- const { value: builderMethod, valueOriginalPositions: builderMethodPositions, } = this.callableNodeToValueAndStmts(anonymous);
327
- createViewArgs.push(builderMethod);
328
- createViewArgPositionsAll.push(builderMethodPositions);
329
- }
330
- const { value: componentValue, valueOriginalPositions: componentPositions, stmts: componentStmts, } = this.generateComponentCreationStmts(EtsConst_1.COMPONENT_CUSTOMVIEW, createViewArgs, componentExpressionPosition, createViewArgPositionsAll.flat());
331
- componentStmts.forEach(stmt => stmts.push(stmt));
332
- stmts.push(this.generateComponentPopStmts(EtsConst_1.COMPONENT_CUSTOMVIEW, componentExpressionPosition));
333
- return {
334
- value: componentValue,
335
- valueOriginalPositions: componentPositions,
336
- stmts: stmts,
337
- };
338
- }
339
- generateComponentCreationStmts(componentName, createArgs, componentExpressionPosition, createArgsPositionsAllFlat) {
340
- const createMethodSignature = ArkSignatureBuilder_1.ArkSignatureBuilder.buildMethodSignatureFromClassNameAndMethodName(componentName, EtsConst_1.COMPONENT_CREATE_FUNCTION);
341
- const createInvokeExpr = new Expr_1.ArkStaticInvokeExpr(createMethodSignature, createArgs);
342
- const createInvokeExprPositions = [componentExpressionPosition, ...createArgsPositionsAllFlat];
343
- const { value: componentValue, valueOriginalPositions: componentPositions, stmts: componentStmts, } = this.arkIRTransformer.generateAssignStmtForValue(createInvokeExpr, createInvokeExprPositions);
344
- return {
345
- value: componentValue,
346
- valueOriginalPositions: componentPositions,
347
- stmts: componentStmts,
348
- };
349
- }
350
- generateComponentPopStmts(componentName, componentExpressionPosition) {
351
- var _a;
352
- let popMethodSignature = ModelUtils_1.ModelUtils.popMethodSignatureCache.get(componentName);
353
- if (!popMethodSignature) {
354
- const cls = this.declaringMethod.getDeclaringArkFile().getScene().getSdkGlobal(EtsConst_1.COMMON_METHOD);
355
- if (cls instanceof ArkClass_1.ArkClass) {
356
- const commonSignature = (_a = cls.getMethodWithName(EtsConst_1.COMPONENT_POP_FUNCTION)) === null || _a === void 0 ? void 0 : _a.getSignature();
357
- if (commonSignature) {
358
- const classSignature = new ArkSignature_1.AliasClassSignature(componentName, commonSignature.getDeclaringClassSignature());
359
- popMethodSignature = new ArkSignature_1.MethodSignature(classSignature, commonSignature.getMethodSubSignature());
360
- }
361
- }
362
- popMethodSignature = popMethodSignature !== null && popMethodSignature !== void 0 ? popMethodSignature : ArkSignatureBuilder_1.ArkSignatureBuilder.buildMethodSignatureFromClassNameAndMethodName(componentName, EtsConst_1.COMPONENT_POP_FUNCTION);
363
- ModelUtils_1.ModelUtils.popMethodSignatureCache.set(componentName, popMethodSignature);
364
- }
365
- const popInvokeExpr = new Expr_1.ArkStaticInvokeExpr(popMethodSignature, []);
366
- const popInvokeStmt = new Stmt_1.ArkInvokeStmt(popInvokeExpr);
367
- if (componentExpressionPosition) {
368
- popInvokeStmt.setOperandOriginalPositions([componentExpressionPosition]);
369
- }
370
- return popInvokeStmt;
371
- }
372
- etsComponentExpressionToValueAndStmts(etsComponentExpression) {
373
- const stmts = [];
374
- const componentName = etsComponentExpression.expression.text;
375
- const { argValues: argValues, argPositions: argPositions, } = this.parseArguments(stmts, etsComponentExpression.arguments);
376
- if ((0, EtsConst_1.isEtsSystemComponent)(componentName)) {
377
- return this.generateSystemComponentStmt(componentName, argValues, argPositions, etsComponentExpression, stmts);
378
- }
379
- return this.generateCustomViewStmt(componentName, argValues, argPositions, etsComponentExpression, stmts);
380
- }
381
- classExpressionToValueAndStmts(classExpression) {
382
- const declaringArkClass = this.declaringMethod.getDeclaringArkClass();
383
- const declaringArkNamespace = declaringArkClass.getDeclaringArkNamespace();
384
- const newClass = new ArkClass_1.ArkClass();
385
- if (declaringArkNamespace) {
386
- (0, ArkClassBuilder_1.buildNormalArkClassFromArkNamespace)(classExpression, declaringArkNamespace, newClass, this.sourceFile, this.declaringMethod);
387
- }
388
- else {
389
- const declaringArkFile = declaringArkClass.getDeclaringArkFile();
390
- (0, ArkClassBuilder_1.buildNormalArkClassFromArkFile)(classExpression, declaringArkFile, newClass, this.sourceFile, this.declaringMethod);
391
- }
392
- const classValue = this.addNewLocal(newClass.getName(), new Type_1.ClassType(newClass.getSignature()));
393
- return {
394
- value: classValue,
395
- valueOriginalPositions: [Position_1.FullPosition.buildFromNode(classExpression, this.sourceFile)],
396
- stmts: [],
397
- };
398
- }
399
- templateExpressionToValueAndStmts(templateExpression) {
400
- const { stmts, stringTextValues, placeholderValues, stringTextPositions, placeholderPositions, } = this.collectTemplateValues(templateExpression);
401
- const { placeholderStringLocals, placeholderStringLocalPositions, newStmts } = this.processTemplatePlaceholders(placeholderValues, placeholderPositions, stmts);
402
- return this.combineTemplateParts(stringTextValues, stringTextPositions, placeholderStringLocals, placeholderStringLocalPositions, newStmts);
403
- }
404
- processTemplatePlaceholders(placeholderValues, placeholderPositions, currStmts) {
405
- const placeholderStringLocals = [];
406
- const placeholderStringLocalPositions = [];
407
- const newStmts = [...currStmts];
408
- for (let i = 0; i < placeholderValues.length; i++) {
409
- let placeholderValue = placeholderValues[i];
410
- let placeholderPosition = [placeholderPositions[i]];
411
- let placeholderStmts = [];
412
- if (!(placeholderValue instanceof Local_1.Local)) {
413
- ({
414
- value: placeholderValue,
415
- valueOriginalPositions: placeholderPosition,
416
- stmts: placeholderStmts,
417
- } = this.arkIRTransformer.generateAssignStmtForValue(placeholderValue, placeholderPosition));
418
- }
419
- placeholderStmts.forEach(stmt => newStmts.push(stmt));
420
- const toStringExpr = new Expr_1.ArkInstanceInvokeExpr(placeholderValue, Builtin_1.Builtin.TO_STRING_METHOD_SIGNATURE, []);
421
- const toStringExprPosition = [placeholderPosition[0], placeholderPosition[0]];
422
- const { value: placeholderStringLocal, valueOriginalPositions: placeholderStringPositions, stmts: toStringStmts, } = this.arkIRTransformer.generateAssignStmtForValue(toStringExpr, toStringExprPosition);
423
- placeholderStringLocals.push(placeholderStringLocal);
424
- placeholderStringLocalPositions.push(placeholderStringPositions[0]);
425
- toStringStmts.forEach(stmt => newStmts.push(stmt));
426
- }
427
- return {
428
- placeholderStringLocals,
429
- placeholderStringLocalPositions,
430
- newStmts,
431
- };
432
- }
433
- combineTemplateParts(stringTextValues, stringTextPositions, placeholderStringLocals, placeholderStringLocalPositions, currStmts) {
434
- const templateParts = [];
435
- const templatePartPositions = [];
436
- for (let i = 0; i < placeholderStringLocals.length; i++) {
437
- if (stringTextValues[i] !== ValueUtil_1.ValueUtil.EMPTY_STRING_CONSTANT) {
438
- templateParts.push(stringTextValues[i]);
439
- templatePartPositions.push(stringTextPositions[i]);
440
- }
441
- templateParts.push(placeholderStringLocals[i]);
442
- templatePartPositions.push(placeholderStringLocalPositions[i]);
443
- }
444
- if (stringTextValues[stringTextValues.length - 1] !== ValueUtil_1.ValueUtil.EMPTY_STRING_CONSTANT) {
445
- templateParts.push(stringTextValues[stringTextValues.length - 1]);
446
- templatePartPositions.push(stringTextPositions[stringTextPositions.length - 1]);
447
- }
448
- let currTemplateResult = templateParts[0];
449
- let currTemplateResultPosition = templatePartPositions[0];
450
- const finalStmts = [...currStmts];
451
- for (let i = 1; i < templateParts.length; i++) {
452
- const nextTemplatePartPosition = templatePartPositions[i];
453
- const normalBinopExpr = new Expr_1.ArkNormalBinopExpr(currTemplateResult, templateParts[i], Expr_1.NormalBinaryOperator.Addition);
454
- const normalBinopExprPositions = [
455
- Position_1.FullPosition.merge(currTemplateResultPosition, nextTemplatePartPosition),
456
- currTemplateResultPosition,
457
- nextTemplatePartPosition,
458
- ];
459
- const { value: combinationValue, valueOriginalPositions: combinationValuePositions, stmts: combinationStmts, } = this.arkIRTransformer.generateAssignStmtForValue(normalBinopExpr, normalBinopExprPositions);
460
- combinationStmts.forEach(stmt => finalStmts.push(stmt));
461
- currTemplateResult = combinationValue;
462
- currTemplateResultPosition = combinationValuePositions[0];
463
- }
464
- return {
465
- value: currTemplateResult,
466
- valueOriginalPositions: [currTemplateResultPosition],
467
- stmts: finalStmts,
468
- };
469
- }
470
- taggedTemplateExpressionToValueAndStmts(taggedTemplateExpression) {
471
- const { stmts, stringTextValues, placeholderValues, stringTextPositions, placeholderPositions, } = this.collectTemplateValues(taggedTemplateExpression.template);
472
- const stringTextBaseType = Type_1.StringType.getInstance();
473
- const stringTextArrayLen = stringTextValues.length;
474
- const stringTextArrayLenValue = ValueUtil_1.ValueUtil.getOrCreateNumberConst(stringTextArrayLen);
475
- const stringTextArrayLenPosition = Position_1.FullPosition.DEFAULT;
476
- const { value: templateObjectLocal, valueOriginalPositions: templateObjectLocalPositions, stmts: templateObjectStmts, } = this.generateArrayExprAndStmts(stringTextBaseType, stringTextArrayLenValue, stringTextArrayLenPosition, stringTextArrayLen, stringTextValues, stringTextPositions, stmts, Position_1.FullPosition.DEFAULT, true);
477
- const placeholderBaseType = Type_1.AnyType.getInstance();
478
- const placeholdersArrayLen = placeholderValues.length;
479
- const placeholdersArrayLenValue = ValueUtil_1.ValueUtil.getOrCreateNumberConst(placeholdersArrayLen);
480
- const placeholdersArrayLenPosition = Position_1.FullPosition.DEFAULT;
481
- const { value: placeholdersLocal, valueOriginalPositions: placeholdersLocalPositions, stmts: placeholdersStmts, } = this.generateArrayExprAndStmts(placeholderBaseType, placeholdersArrayLenValue, placeholdersArrayLenPosition, placeholdersArrayLen, placeholderValues, placeholderPositions, templateObjectStmts, Position_1.FullPosition.DEFAULT, true);
482
- const taggedFuncArgus = {
483
- realGenericTypes: undefined, argValues: [templateObjectLocal, placeholdersLocal],
484
- argPositions: [templateObjectLocalPositions[0], placeholdersLocalPositions[0]],
485
- };
486
- return this.generateInvokeValueAndStmts(taggedTemplateExpression.tag, taggedFuncArgus, placeholdersStmts, taggedTemplateExpression);
487
- }
488
- collectTemplateValues(templateLiteral) {
489
- const stmts = [];
490
- if (ts.isNoSubstitutionTemplateLiteral(templateLiteral)) {
491
- const templateLiteralString = templateLiteral.getText(this.sourceFile);
492
- return {
493
- stmts: [],
494
- stringTextValues: [ValueUtil_1.ValueUtil.createStringConst(templateLiteralString)],
495
- placeholderValues: [],
496
- stringTextPositions: [Position_1.FullPosition.buildFromNode(templateLiteral, this.sourceFile)],
497
- placeholderPositions: [],
498
- };
499
- }
500
- const head = templateLiteral.head;
501
- const stringTextValues = [ValueUtil_1.ValueUtil.createStringConst(head.rawText || '')];
502
- const placeholderValues = [];
503
- const stringTextPositions = [Position_1.FullPosition.buildFromNode(head, this.sourceFile)];
504
- const placeholderPositions = [];
505
- for (const templateSpan of templateLiteral.templateSpans) {
506
- let { value: exprValue, valueOriginalPositions: exprPositions, stmts: exprStmts, } = this.tsNodeToValueAndStmts(templateSpan.expression);
507
- exprStmts.forEach(stmt => stmts.push(stmt));
508
- if (IRUtils_1.IRUtils.moreThanOneAddress(exprValue)) {
509
- ({
510
- value: exprValue,
511
- valueOriginalPositions: exprPositions,
512
- stmts: exprStmts,
513
- } = this.arkIRTransformer.generateAssignStmtForValue(exprValue, exprPositions));
514
- exprStmts.forEach(stmt => stmts.push(stmt));
515
- }
516
- placeholderValues.push(exprValue);
517
- placeholderPositions.push(exprPositions[0]);
518
- stringTextPositions.push(Position_1.FullPosition.buildFromNode(templateSpan.literal, this.sourceFile));
519
- stringTextValues.push(ValueUtil_1.ValueUtil.createStringConst(templateSpan.literal.rawText || ''));
520
- }
521
- return {
522
- stmts,
523
- stringTextValues,
524
- placeholderValues,
525
- stringTextPositions,
526
- placeholderPositions,
527
- };
528
- }
529
- identifierToValueAndStmts(identifier, variableDefFlag = false) {
530
- let identifierValue;
531
- let identifierPositions = [Position_1.FullPosition.buildFromNode(identifier, this.sourceFile)];
532
- if (identifier.text === Type_1.UndefinedType.getInstance().getName()) {
533
- identifierValue = ValueUtil_1.ValueUtil.getUndefinedConst();
534
- }
535
- else {
536
- if (variableDefFlag) {
537
- identifierValue = this.addNewLocal(identifier.text);
538
- }
539
- else {
540
- identifierValue = this.getOrCreateLocal(identifier.text);
541
- }
542
- }
543
- return {
544
- value: identifierValue,
545
- valueOriginalPositions: identifierPositions,
546
- stmts: [],
547
- };
548
- }
549
- propertyAccessExpressionToValue(propertyAccessExpression) {
550
- const stmts = [];
551
- let { value: baseValue, valueOriginalPositions: basePositions, stmts: baseStmts, } = this.tsNodeToValueAndStmts(propertyAccessExpression.expression);
552
- baseStmts.forEach(stmt => stmts.push(stmt));
553
- if (IRUtils_1.IRUtils.moreThanOneAddress(baseValue)) {
554
- ({
555
- value: baseValue,
556
- valueOriginalPositions: basePositions,
557
- stmts: baseStmts,
558
- } = this.arkIRTransformer.generateAssignStmtForValue(baseValue, basePositions));
559
- baseStmts.forEach(stmt => stmts.push(stmt));
560
- }
561
- if (!(baseValue instanceof Local_1.Local)) {
562
- ({
563
- value: baseValue,
564
- valueOriginalPositions: basePositions,
565
- stmts: baseStmts,
566
- } = this.arkIRTransformer.generateAssignStmtForValue(baseValue, basePositions));
567
- baseStmts.forEach(stmt => stmts.push(stmt));
568
- }
569
- const fieldRefPositions = [Position_1.FullPosition.buildFromNode(propertyAccessExpression, this.sourceFile), ...basePositions];
570
- // this if for the case: const obj: Object = Object.create(Object.prototype);
571
- if (baseValue instanceof Local_1.Local && baseValue.getName() === Builtin_1.Builtin.OBJECT) {
572
- this.locals.delete(baseValue.getName());
573
- const fieldSignature = new ArkSignature_1.FieldSignature(propertyAccessExpression.name.getText(this.sourceFile), Builtin_1.Builtin.OBJECT_CLASS_SIGNATURE, Type_1.UnknownType.getInstance(), true);
574
- const fieldRef = new Ref_1.ArkStaticFieldRef(fieldSignature);
575
- return {
576
- value: fieldRef,
577
- valueOriginalPositions: fieldRefPositions,
578
- stmts: stmts,
579
- };
580
- }
581
- let fieldSignature;
582
- if (baseValue instanceof Local_1.Local && baseValue.getType() instanceof Type_1.ClassType) {
583
- fieldSignature = new ArkSignature_1.FieldSignature(propertyAccessExpression.name.getText(this.sourceFile), baseValue.getType().getClassSignature(), Type_1.UnknownType.getInstance());
584
- }
585
- else {
586
- fieldSignature = ArkSignatureBuilder_1.ArkSignatureBuilder.buildFieldSignatureFromFieldName(propertyAccessExpression.name.getText(this.sourceFile));
587
- }
588
- const fieldRef = new Ref_1.ArkInstanceFieldRef(baseValue, fieldSignature);
589
- return {
590
- value: fieldRef,
591
- valueOriginalPositions: fieldRefPositions,
592
- stmts: stmts,
593
- };
594
- }
595
- elementAccessExpressionToValueAndStmts(elementAccessExpression) {
596
- const stmts = [];
597
- let { value: baseValue, valueOriginalPositions: basePositions, stmts: baseStmts, } = this.tsNodeToValueAndStmts(elementAccessExpression.expression);
598
- baseStmts.forEach(stmt => stmts.push(stmt));
599
- if (!(baseValue instanceof Local_1.Local)) {
600
- ({
601
- value: baseValue,
602
- valueOriginalPositions: basePositions,
603
- stmts: baseStmts,
604
- } = this.arkIRTransformer.generateAssignStmtForValue(baseValue, basePositions));
605
- baseStmts.forEach(stmt => stmts.push(stmt));
606
- }
607
- let { value: argumentValue, valueOriginalPositions: arguPositions, stmts: argumentStmts, } = this.tsNodeToValueAndStmts(elementAccessExpression.argumentExpression);
608
- argumentStmts.forEach(stmt => stmts.push(stmt));
609
- if (IRUtils_1.IRUtils.moreThanOneAddress(argumentValue)) {
610
- ({
611
- value: argumentValue,
612
- valueOriginalPositions: arguPositions,
613
- stmts: argumentStmts,
614
- } = this.arkIRTransformer.generateAssignStmtForValue(argumentValue, arguPositions));
615
- argumentStmts.forEach(stmt => stmts.push(stmt));
616
- }
617
- let elementAccessExpr;
618
- if (baseValue.getType() instanceof Type_1.ArrayType) {
619
- elementAccessExpr = new Ref_1.ArkArrayRef(baseValue, argumentValue);
620
- }
621
- else {
622
- // TODO: deal with ArkStaticFieldRef
623
- const fieldSignature = ArkSignatureBuilder_1.ArkSignatureBuilder.buildFieldSignatureFromFieldName(argumentValue.toString());
624
- elementAccessExpr = new Ref_1.ArkInstanceFieldRef(baseValue, fieldSignature, true);
625
- }
626
- // reserve positions for field name
627
- const exprPositions = [Position_1.FullPosition.buildFromNode(elementAccessExpression, this.sourceFile), ...basePositions, ...arguPositions];
628
- return {
629
- value: elementAccessExpr,
630
- valueOriginalPositions: exprPositions,
631
- stmts: stmts,
632
- };
633
- }
634
- callExpressionToValueAndStmts(callExpression) {
635
- const stmts = [];
636
- const argus = this.parseArgumentsOfCallExpression(stmts, callExpression);
637
- return this.generateInvokeValueAndStmts(callExpression.expression, argus, stmts, callExpression);
638
- }
639
- generateInvokeValueAndStmts(functionNameNode, args, currStmts, callExpression) {
640
- const stmts = [...currStmts];
641
- const { value: calleeValue, valueOriginalPositions: calleePositions, stmts: calleeStmts } = this.tsNodeToValueAndStmts(functionNameNode);
642
- stmts.push(...calleeStmts);
643
- const invokeExprPosition = Position_1.FullPosition.buildFromNode(callExpression, this.sourceFile);
644
- if (calleeValue instanceof Ref_1.AbstractFieldRef) {
645
- return this.handleFieldRefInvoke(calleeValue, args, invokeExprPosition, calleePositions, stmts);
646
- }
647
- if (calleeValue instanceof Local_1.Local) {
648
- return this.handleLocalInvoke(calleeValue, callExpression, args, invokeExprPosition, calleePositions, stmts);
649
- }
650
- if (calleeValue instanceof Ref_1.ArkArrayRef && ts.isElementAccessExpression(functionNameNode)) {
651
- return this.handleArrayRefInvoke(calleeValue, functionNameNode, args, invokeExprPosition, calleePositions, stmts);
652
- }
653
- return this.handleDefaultInvoke(calleeValue, args, invokeExprPosition, calleePositions, stmts);
654
- }
655
- handleFieldRefInvoke(calleeValue, args, invokeExprPosition, calleePositions, currStmts) {
656
- let methodSignature;
657
- const declareSignature = calleeValue.getFieldSignature().getDeclaringSignature();
658
- if (declareSignature instanceof ArkSignature_1.ClassSignature) {
659
- methodSignature =
660
- new ArkSignature_1.MethodSignature(declareSignature, ArkSignatureBuilder_1.ArkSignatureBuilder.buildMethodSubSignatureFromMethodName(calleeValue.getFieldName()));
661
- }
662
- else {
663
- methodSignature = ArkSignatureBuilder_1.ArkSignatureBuilder.buildMethodSignatureFromMethodName(calleeValue.getFieldName());
664
- }
665
- let invokeExpr;
666
- const invokeExprPositions = [invokeExprPosition];
667
- if (calleeValue instanceof Ref_1.ArkInstanceFieldRef) {
668
- invokeExpr =
669
- new Expr_1.ArkInstanceInvokeExpr(calleeValue.getBase(), methodSignature, args.argValues, args.realGenericTypes, args.spreadFlags);
670
- invokeExprPositions.push(...calleePositions.slice(1));
671
- }
672
- else {
673
- invokeExpr = new Expr_1.ArkStaticInvokeExpr(methodSignature, args.argValues, args.realGenericTypes, args.spreadFlags);
674
- }
675
- invokeExprPositions.push(...args.argPositions);
676
- return {
677
- value: invokeExpr,
678
- valueOriginalPositions: invokeExprPositions,
679
- stmts: currStmts,
680
- };
681
- }
682
- handleLocalInvoke(calleeValue, callExpression, args, invokeExprPosition, calleePositions, currStmts) {
683
- var _a;
684
- let invokeExpr;
685
- const invokeExprPositions = [invokeExprPosition];
686
- const calleeName = calleeValue.getName();
687
- if (this.isCustomViewCall(calleeName, callExpression)) {
688
- return this.generateCustomViewStmt(calleeName, args.argValues, args.argPositions, callExpression, currStmts);
689
- }
690
- else if (this.isSystemComponentCall(calleeName, callExpression)) {
691
- return this.generateSystemComponentStmt(calleeName, args.argValues, args.argPositions, callExpression, currStmts);
692
- }
693
- const methodSignature = ArkSignatureBuilder_1.ArkSignatureBuilder.buildMethodSignatureFromMethodName(calleeName);
694
- if (!((_a = this.getGlobals()) === null || _a === void 0 ? void 0 : _a.has(calleeName)) || calleeValue.getType() instanceof Type_1.FunctionType) {
695
- // the call to the left value or a value of function type should be ptr invoke expr.
696
- invokeExpr = new Expr_1.ArkPtrInvokeExpr(methodSignature, calleeValue, args.argValues, args.realGenericTypes, args.spreadFlags);
697
- invokeExprPositions.push(...calleePositions.slice(1));
698
- }
699
- else {
700
- invokeExpr = new Expr_1.ArkStaticInvokeExpr(methodSignature, args.argValues, args.realGenericTypes, args.spreadFlags);
701
- }
702
- invokeExprPositions.push(...args.argPositions);
703
- return {
704
- value: invokeExpr,
705
- valueOriginalPositions: invokeExprPositions,
706
- stmts: currStmts,
707
- };
708
- }
709
- isCustomViewCall(callerName, callExpression) {
710
- var _a;
711
- if (!ts.isCallExpression(callExpression)) {
712
- return false;
713
- }
714
- const classSignature = ArkSignatureBuilder_1.ArkSignatureBuilder.buildClassSignatureFromClassName(callerName);
715
- const cls = ModelUtils_1.ModelUtils.getClass(this.declaringMethod, classSignature);
716
- return (_a = cls === null || cls === void 0 ? void 0 : cls.hasComponentDecorator()) !== null && _a !== void 0 ? _a : false;
717
- }
718
- isSystemComponentCall(calleeName, callExpression) {
719
- return (calleeName === EtsConst_1.COMPONENT_FOR_EACH || calleeName === EtsConst_1.COMPONENT_LAZY_FOR_EACH) &&
720
- ts.isCallExpression(callExpression);
721
- }
722
- handleArrayRefInvoke(calleeValue, functionNameNode, args, invokeExprPosition, calleePositions, currStmts) {
723
- const stmts = [...currStmts];
724
- const methodSignature = ArkSignatureBuilder_1.ArkSignatureBuilder.buildMethodSignatureFromMethodName(functionNameNode.argumentExpression.getText());
725
- stmts.pop();
726
- const invokeExpr = new Expr_1.ArkInstanceInvokeExpr(calleeValue.getBase(), methodSignature, args.argValues, args.realGenericTypes, args.spreadFlags);
727
- const invokeExprPositions = [invokeExprPosition, calleePositions.slice(1)[0],
728
- ...args.argPositions];
729
- return {
730
- value: invokeExpr,
731
- valueOriginalPositions: invokeExprPositions,
732
- stmts: stmts,
733
- };
734
- }
735
- handleDefaultInvoke(calleeValue, args, invokeExprPosition, calleePositions, currStmts) {
736
- const stmts = [...currStmts];
737
- const { value: newCalleeValue, stmts: newStmts } = this.arkIRTransformer.generateAssignStmtForValue(calleeValue, calleePositions);
738
- stmts.push(...newStmts);
739
- const invokeExpr = new Expr_1.ArkPtrInvokeExpr(ArkSignatureBuilder_1.ArkSignatureBuilder.buildMethodSignatureFromMethodName(newCalleeValue.getName()), newCalleeValue, args.argValues, args.realGenericTypes, args.spreadFlags);
740
- const invokeExprPositions = [invokeExprPosition, calleePositions.slice(1)[0],
741
- ...args.argPositions];
742
- return {
743
- value: invokeExpr,
744
- valueOriginalPositions: invokeExprPositions,
745
- stmts: stmts,
746
- };
747
- }
748
- parseArgumentsOfCallExpression(currStmts, callExpression) {
749
- let realGenericTypes;
750
- if (callExpression.typeArguments) {
751
- realGenericTypes = [];
752
- callExpression.typeArguments.forEach(typeArgument => {
753
- realGenericTypes.push(this.resolveTypeNode(typeArgument));
754
- });
755
- }
756
- let builderMethodIndexes;
757
- if (ts.isIdentifier(callExpression.expression)) {
758
- const callerName = callExpression.expression.text;
759
- if (callerName === EtsConst_1.COMPONENT_FOR_EACH || callerName === EtsConst_1.COMPONENT_LAZY_FOR_EACH) {
760
- builderMethodIndexes = new Set([1]);
761
- }
762
- }
763
- const { argValues, argPositions, spreadFlags, } = this.parseArguments(currStmts, callExpression.arguments, builderMethodIndexes);
764
- return { realGenericTypes, argValues, argPositions, spreadFlags };
765
- }
766
- parseArguments(currStmts, argumentNodes, builderMethodIndexes) {
767
- const argValues = [];
768
- const argPositions = [];
769
- let spreadFlags = [];
770
- if (argumentNodes) {
771
- spreadFlags = new Array(argumentNodes.length).fill(false);
772
- for (let i = 0; i < argumentNodes.length; i++) {
773
- spreadFlags[i] = ts.isSpreadElement(argumentNodes[i]);
774
- const argument = argumentNodes[i];
775
- const prevBuilderMethodContextFlag = this.builderMethodContextFlag;
776
- if (builderMethodIndexes === null || builderMethodIndexes === void 0 ? void 0 : builderMethodIndexes.has(i)) {
777
- this.builderMethodContextFlag = true;
778
- this.arkIRTransformer.setBuilderMethodContextFlag(true);
779
- }
780
- let { value: argValue, valueOriginalPositions: argPositionsSingle, stmts: argStmts, } = this.tsNodeToSingleAddressValueAndStmts(argument);
781
- this.builderMethodContextFlag = prevBuilderMethodContextFlag;
782
- this.arkIRTransformer.setBuilderMethodContextFlag(prevBuilderMethodContextFlag);
783
- argStmts.forEach(s => currStmts.push(s));
784
- argValues.push(argValue);
785
- argPositions.push(argPositionsSingle[0]);
786
- }
787
- }
788
- return {
789
- argValues,
790
- argPositions,
791
- spreadFlags: spreadFlags.every((f) => f === false) ? undefined : spreadFlags,
792
- };
793
- }
794
- callableNodeToValueAndStmts(callableNode) {
795
- const declaringClass = this.declaringMethod.getDeclaringArkClass();
796
- const arrowArkMethod = new ArkMethod_1.ArkMethod();
797
- if (this.builderMethodContextFlag) {
798
- ModelUtils_1.ModelUtils.implicitArkUIBuilderMethods.add(arrowArkMethod);
799
- }
800
- (0, ArkMethodBuilder_1.buildArkMethodFromArkClass)(callableNode, declaringClass, arrowArkMethod, this.sourceFile, this.declaringMethod);
801
- const callableType = new Type_1.FunctionType(arrowArkMethod.getSignature());
802
- const callableValue = this.addNewLocal(arrowArkMethod.getName(), callableType);
803
- return {
804
- value: callableValue,
805
- valueOriginalPositions: [Position_1.FullPosition.buildFromNode(callableNode, this.sourceFile)],
806
- stmts: [],
807
- };
808
- }
809
- newExpressionToValueAndStmts(newExpression) {
810
- let className = '';
811
- if (ts.isClassExpression(newExpression.expression) && newExpression.expression.name) {
812
- className = newExpression.expression.name.text;
813
- }
814
- else {
815
- className = newExpression.expression.getText(this.sourceFile);
816
- }
817
- if (className === Builtin_1.Builtin.ARRAY) {
818
- return this.newArrayExpressionToValueAndStmts(newExpression);
819
- }
820
- const stmts = [];
821
- let realGenericTypes;
822
- if (newExpression.typeArguments) {
823
- realGenericTypes = [];
824
- newExpression.typeArguments.forEach(typeArgument => {
825
- realGenericTypes.push(this.resolveTypeNode(typeArgument));
826
- });
827
- }
828
- let classSignature = ArkSignatureBuilder_1.ArkSignatureBuilder.buildClassSignatureFromClassName(className);
829
- let classType = new Type_1.ClassType(classSignature, realGenericTypes);
830
- if (className === Builtin_1.Builtin.OBJECT) {
831
- classSignature = Builtin_1.Builtin.OBJECT_CLASS_SIGNATURE;
832
- classType = Builtin_1.Builtin.OBJECT_CLASS_TYPE;
833
- }
834
- const newExpr = new Expr_1.ArkNewExpr(classType);
835
- const { value: newLocal, valueOriginalPositions: newLocalPositions, stmts: newExprStmts, } = this.arkIRTransformer.generateAssignStmtForValue(newExpr, [Position_1.FullPosition.buildFromNode(newExpression, this.sourceFile)]);
836
- newExprStmts.forEach(stmt => stmts.push(stmt));
837
- const constructorMethodSubSignature = ArkSignatureBuilder_1.ArkSignatureBuilder.buildMethodSubSignatureFromMethodName(TSConst_1.CONSTRUCTOR_NAME);
838
- const constructorMethodSignature = new ArkSignature_1.MethodSignature(classSignature, constructorMethodSubSignature);
839
- const { argValues: argValues, argPositions: argPositions, } = this.parseArguments(stmts, newExpression.arguments);
840
- const instanceInvokeExpr = new Expr_1.ArkInstanceInvokeExpr(newLocal, constructorMethodSignature, argValues);
841
- const assignStmt = new Stmt_1.ArkAssignStmt(newLocal, instanceInvokeExpr);
842
- const assignStmtPositions = [newLocalPositions[0], newLocalPositions[0], ...newLocalPositions, ...argPositions];
843
- assignStmt.setOperandOriginalPositions(assignStmtPositions);
844
- stmts.push(assignStmt);
845
- return { value: newLocal, valueOriginalPositions: assignStmtPositions, stmts: stmts };
846
- }
847
- newArrayExpressionToValueAndStmts(newArrayExpression) {
848
- let baseType = Type_1.UnknownType.getInstance();
849
- if (newArrayExpression.typeArguments && newArrayExpression.typeArguments.length > 0) {
850
- const argumentType = this.resolveTypeNode(newArrayExpression.typeArguments[0]);
851
- if (!(argumentType instanceof Type_1.AnyType || argumentType instanceof Type_1.UnknownType)) {
852
- baseType = argumentType;
853
- }
854
- }
855
- const stmts = [];
856
- const { argValues, argPositions } = this.parseArguments(stmts, newArrayExpression.arguments);
857
- let argumentsLength = newArrayExpression.arguments ? newArrayExpression.arguments.length : 0;
858
- let arrayLengthValue;
859
- let arrayLength = -1;
860
- let arrayLengthPosition = Position_1.FullPosition.DEFAULT;
861
- if (argumentsLength === 1 && (argValues[0].getType() instanceof Type_1.NumberType || argValues[0].getType() instanceof Type_1.UnknownType)) {
862
- arrayLengthValue = argValues[0];
863
- arrayLengthPosition = argPositions[0];
864
- }
865
- else {
866
- arrayLengthValue = ValueUtil_1.ValueUtil.getOrCreateNumberConst(argumentsLength);
867
- arrayLength = argumentsLength;
868
- }
869
- if (baseType instanceof Type_1.UnknownType) {
870
- if (argumentsLength > 1 && !(argValues[0].getType() instanceof Type_1.UnknownType)) {
871
- baseType = argValues[0].getType();
872
- }
873
- else {
874
- baseType = Type_1.AnyType.getInstance();
875
- }
876
- }
877
- const newArrayExprPosition = Position_1.FullPosition.buildFromNode(newArrayExpression, this.sourceFile);
878
- return this.generateArrayExprAndStmts(baseType, arrayLengthValue, arrayLengthPosition, arrayLength, argValues, argPositions, stmts, newArrayExprPosition, false);
879
- }
880
- arrayLiteralExpressionToValueAndStmts(arrayLiteralExpression) {
881
- const stmts = [];
882
- const elementTypes = [];
883
- const elementValues = [];
884
- const elementPositions = [];
885
- const arrayLength = arrayLiteralExpression.elements.length;
886
- let firstSpreadIdx = -1;
887
- for (let i = 0; i < arrayLength; i++) {
888
- if (ts.isSpreadElement(arrayLiteralExpression.elements[i]) && firstSpreadIdx === -1) {
889
- firstSpreadIdx = i;
890
- }
891
- const { value: elementValue, valueOriginalPositions: elementPosition, stmts: elementStmts } = this.tsNodeToSingleAddressValueAndStmts(arrayLiteralExpression.elements[i]);
892
- elementStmts.forEach(stmt => stmts.push(stmt));
893
- elementValues.push(elementValue);
894
- elementTypes.push(elementValue.getType());
895
- elementPositions.push(elementPosition[0]);
896
- }
897
- const wholePosition = Position_1.FullPosition.buildFromNode(arrayLiteralExpression, this.sourceFile);
898
- if (firstSpreadIdx === -1) { // only literal elements
899
- return this.generateArrayExprFromLiteral(elementValues, elementTypes, elementPositions, wholePosition, 0, arrayLength, stmts);
900
- }
901
- else if (firstSpreadIdx === 0) {
902
- const scene = this.declaringMethod.getDeclaringArkFile().getScene();
903
- if (arrayLength === 1) { // only spread element
904
- const sliceMethodSignature = Builtin_1.Builtin.buildArrayMethodSignature(Builtin_1.Builtin.SLICE, scene);
905
- const sliceInvokeExpr = new Expr_1.ArkInstanceInvokeExpr(elementValues[0], sliceMethodSignature, []);
906
- const sliceInvokeExprPositions = [wholePosition, elementPositions[0]];
907
- return { value: sliceInvokeExpr, valueOriginalPositions: sliceInvokeExprPositions, stmts: stmts };
908
- }
909
- else { // spread element start
910
- const concatMethodSignature = Builtin_1.Builtin.buildArrayMethodSignature(Builtin_1.Builtin.CONCAT, scene);
911
- const concatInvokeExpr = new Expr_1.ArkInstanceInvokeExpr(elementValues[0], concatMethodSignature, elementValues.slice(1));
912
- const concatInvokeExprPositions = [wholePosition, ...elementPositions];
913
- return { value: concatInvokeExpr, valueOriginalPositions: concatInvokeExprPositions, stmts: stmts };
914
- }
915
- }
916
- else { // contains spread elements and begins with literal elements.
917
- const beginLiteralValueAndStmts = this.generateArrayExprFromLiteral(elementValues, elementTypes, elementPositions, wholePosition, 0, firstSpreadIdx, stmts);
918
- const scene = this.declaringMethod.getDeclaringArkFile().getScene();
919
- const concatMethodSignature = Builtin_1.Builtin.buildArrayMethodSignature(Builtin_1.Builtin.CONCAT, scene);
920
- const concatInvokeExpr = new Expr_1.ArkInstanceInvokeExpr(beginLiteralValueAndStmts.value, concatMethodSignature, elementValues.slice(firstSpreadIdx));
921
- const concatInvokeExprPositions = [wholePosition, beginLiteralValueAndStmts.valueOriginalPositions[0],
922
- ...elementPositions.slice(firstSpreadIdx)];
923
- return { value: concatInvokeExpr, valueOriginalPositions: concatInvokeExprPositions, stmts: beginLiteralValueAndStmts.stmts };
924
- }
925
- }
926
- generateArrayExprFromLiteral(elementValues, elementTypes, elementPositions, wholePosition, start, end, currStmts) {
927
- const elementTypesSet = new Set(elementTypes.slice(start, end));
928
- let baseType = Type_1.AnyType.getInstance();
929
- if (elementTypesSet.size === 1) {
930
- baseType = elementTypes[0];
931
- }
932
- else if (elementTypesSet.size > 1) {
933
- baseType = new Type_1.UnionType(Array.from(elementTypesSet));
934
- }
935
- const newArrayExprPosition = (start === end || (end - start) === elementPositions.length)
936
- ? wholePosition : Position_1.FullPosition.merge(elementPositions[0], elementPositions[end - 1]);
937
- return this.generateArrayExprAndStmts(baseType, ValueUtil_1.ValueUtil.getOrCreateNumberConst(end - start), Position_1.FullPosition.DEFAULT, end - start, elementValues.slice(start, end), elementPositions.slice(start, end), currStmts, newArrayExprPosition, true);
938
- }
939
- generateArrayExprAndStmts(baseType, arrayLengthValue, arrayLengthPosition, arrayLength, initializerValues, initializerPositions, currStmts, newArrayExprPosition, fromLiteral) {
940
- const stmts = [...currStmts];
941
- const newArrayExpr = new Expr_1.ArkNewArrayExpr(baseType, arrayLengthValue, fromLiteral);
942
- const newArrayExprPositions = [newArrayExprPosition, arrayLengthPosition];
943
- const { value: arrayLocal, valueOriginalPositions: arrayLocalPositions, stmts: arrayStmts, } = this.arkIRTransformer.generateAssignStmtForValue(newArrayExpr, newArrayExprPositions);
944
- arrayStmts.forEach(stmt => stmts.push(stmt));
945
- for (let i = 0; i < arrayLength; i++) {
946
- const indexValue = ValueUtil_1.ValueUtil.getOrCreateNumberConst(i);
947
- const arrayRef = new Ref_1.ArkArrayRef(arrayLocal, indexValue);
948
- const arrayRefPositions = [arrayLocalPositions[0], ...arrayLocalPositions, Position_1.FullPosition.DEFAULT];
949
- const assignStmt = new Stmt_1.ArkAssignStmt(arrayRef, initializerValues[i]);
950
- assignStmt.setOperandOriginalPositions([...arrayRefPositions, initializerPositions[i]]);
951
- stmts.push(assignStmt);
952
- }
953
- return {
954
- value: arrayLocal,
955
- valueOriginalPositions: arrayLocalPositions,
956
- stmts: stmts,
957
- };
958
- }
959
- prefixUnaryExpressionToValueAndStmts(prefixUnaryExpression) {
960
- const stmts = [];
961
- let { value: originOperandValue, valueOriginalPositions: originOperandPositions, stmts: operandStmts, } = this.tsNodeToValueAndStmts(prefixUnaryExpression.operand);
962
- operandStmts.forEach(stmt => stmts.push(stmt));
963
- let operandValue;
964
- let operandPositions;
965
- if (IRUtils_1.IRUtils.moreThanOneAddress(originOperandValue)) {
966
- ({
967
- value: operandValue,
968
- valueOriginalPositions: operandPositions,
969
- stmts: operandStmts,
970
- } = this.arkIRTransformer.generateAssignStmtForValue(originOperandValue, originOperandPositions));
971
- operandStmts.forEach(stmt => stmts.push(stmt));
972
- }
973
- else {
974
- operandValue = originOperandValue;
975
- operandPositions = originOperandPositions;
976
- }
977
- const operatorToken = prefixUnaryExpression.operator;
978
- let exprPositions = [Position_1.FullPosition.buildFromNode(prefixUnaryExpression, this.sourceFile)];
979
- if (operatorToken === ts.SyntaxKind.PlusPlusToken || operatorToken === ts.SyntaxKind.MinusMinusToken) {
980
- const binaryOperator = operatorToken === ts.SyntaxKind.PlusPlusToken ? Expr_1.NormalBinaryOperator.Addition : Expr_1.NormalBinaryOperator.Subtraction;
981
- const binopExpr = new Expr_1.ArkNormalBinopExpr(operandValue, ValueUtil_1.ValueUtil.getOrCreateNumberConst(1), binaryOperator);
982
- exprPositions.push(...operandPositions, Position_1.FullPosition.DEFAULT);
983
- const assignStmt = new Stmt_1.ArkAssignStmt(operandValue, binopExpr);
984
- assignStmt.setOperandOriginalPositions([...operandPositions, ...exprPositions]);
985
- stmts.push(assignStmt);
986
- if (operandValue !== originOperandValue) {
987
- const lastAssignStmt = new Stmt_1.ArkAssignStmt(originOperandValue, operandValue);
988
- lastAssignStmt.setOperandOriginalPositions([...originOperandPositions, ...operandPositions]);
989
- stmts.push(lastAssignStmt);
990
- }
991
- return { value: originOperandValue, valueOriginalPositions: originOperandPositions, stmts: stmts };
992
- }
993
- else if (operatorToken === ts.SyntaxKind.PlusToken) {
994
- return { value: operandValue, valueOriginalPositions: operandPositions, stmts: stmts };
995
- }
996
- else {
997
- let unopExpr;
998
- const operator = ArkIRTransformer_1.ArkIRTransformer.tokenToUnaryOperator(operatorToken);
999
- if (operator) {
1000
- unopExpr = new Expr_1.ArkUnopExpr(operandValue, operator);
1001
- exprPositions.push(...operandPositions);
1002
- }
1003
- else {
1004
- unopExpr = ValueUtil_1.ValueUtil.getUndefinedConst();
1005
- exprPositions = [Position_1.FullPosition.DEFAULT];
1006
- }
1007
- return { value: unopExpr, valueOriginalPositions: exprPositions, stmts: stmts };
1008
- }
1009
- }
1010
- generateAssignmentForPostfixOperator(operatorToken, postfixUnaryExpression, originOperandValue, originOperandPositions, stmts) {
1011
- let returnValue;
1012
- let parent = postfixUnaryExpression.parent;
1013
- let parentChild = postfixUnaryExpression;
1014
- while (parent && parent.kind === ts.SyntaxKind.ParenthesizedExpression) {
1015
- parentChild = parent;
1016
- parent = parent.parent;
1017
- }
1018
- let shouldSkipAssignment = false;
1019
- if (parent && parent.kind === ts.SyntaxKind.ExpressionStatement) {
1020
- shouldSkipAssignment = true;
1021
- }
1022
- if (parent && parent.kind === ts.SyntaxKind.ForStatement) {
1023
- const forStatement = parent;
1024
- const condition = forStatement.condition;
1025
- if (condition !== parentChild) {
1026
- shouldSkipAssignment = true;
1027
- }
1028
- }
1029
- if (!shouldSkipAssignment) {
1030
- let { value: tempValue, valueOriginalPositions: _, stmts: tempStmt, } = this.arkIRTransformer.generateAssignStmtForValue(originOperandValue, originOperandPositions);
1031
- tempStmt.forEach(stmt => stmts.push(stmt));
1032
- returnValue = tempValue;
1033
- }
1034
- return returnValue;
1035
- }
1036
- postfixUnaryExpressionToValueAndStmts(postfixUnaryExpression) {
1037
- let stmts = [];
1038
- let { value: originOperandValue, valueOriginalPositions: originOperandPositions, stmts: exprStmts, } = this.tsNodeToValueAndStmts(postfixUnaryExpression.operand);
1039
- exprStmts.forEach(stmt => stmts.push(stmt));
1040
- let operandValue;
1041
- let operandPositions;
1042
- if (IRUtils_1.IRUtils.moreThanOneAddress(originOperandValue)) {
1043
- ({
1044
- value: operandValue,
1045
- valueOriginalPositions: operandPositions,
1046
- stmts: exprStmts,
1047
- } = this.arkIRTransformer.generateAssignStmtForValue(originOperandValue, originOperandPositions));
1048
- exprStmts.forEach(stmt => stmts.push(stmt));
1049
- }
1050
- else {
1051
- operandValue = originOperandValue;
1052
- operandPositions = originOperandPositions;
1053
- }
1054
- let exprPositions = [Position_1.FullPosition.buildFromNode(postfixUnaryExpression, this.sourceFile)];
1055
- const operatorToken = postfixUnaryExpression.operator;
1056
- if (operatorToken === ts.SyntaxKind.PlusPlusToken || operatorToken === ts.SyntaxKind.MinusMinusToken) {
1057
- let returnValue = this.generateAssignmentForPostfixOperator(operatorToken, postfixUnaryExpression, originOperandValue, originOperandPositions, stmts);
1058
- const binaryOperator = operatorToken === ts.SyntaxKind.PlusPlusToken ? Expr_1.NormalBinaryOperator.Addition : Expr_1.NormalBinaryOperator.Subtraction;
1059
- const binopExpr = new Expr_1.ArkNormalBinopExpr(operandValue, ValueUtil_1.ValueUtil.getOrCreateNumberConst(1), binaryOperator);
1060
- exprPositions.push(...operandPositions, Position_1.FullPosition.DEFAULT);
1061
- const assignStmt = new Stmt_1.ArkAssignStmt(operandValue, binopExpr);
1062
- assignStmt.setOperandOriginalPositions([...operandPositions, ...exprPositions]);
1063
- stmts.push(assignStmt);
1064
- if (operandValue !== originOperandValue) {
1065
- const lastAssignStmt = new Stmt_1.ArkAssignStmt(originOperandValue, operandValue);
1066
- lastAssignStmt.setOperandOriginalPositions([...originOperandPositions, ...operandPositions]);
1067
- stmts.push(lastAssignStmt);
1068
- }
1069
- if (returnValue === undefined) {
1070
- returnValue = originOperandValue;
1071
- }
1072
- return {
1073
- value: returnValue, valueOriginalPositions: originOperandPositions, stmts: stmts,
1074
- };
1075
- }
1076
- return {
1077
- value: ValueUtil_1.ValueUtil.getUndefinedConst(),
1078
- valueOriginalPositions: [Position_1.FullPosition.DEFAULT],
1079
- stmts: stmts,
1080
- };
1081
- }
1082
- awaitExpressionToValueAndStmts(awaitExpression) {
1083
- const stmts = [];
1084
- let { value: promiseValue, valueOriginalPositions: promisePositions, stmts: promiseStmts, } = this.tsNodeToValueAndStmts(awaitExpression.expression);
1085
- promiseStmts.forEach(stmt => stmts.push(stmt));
1086
- if (IRUtils_1.IRUtils.moreThanOneAddress(promiseValue)) {
1087
- ({
1088
- value: promiseValue,
1089
- valueOriginalPositions: promisePositions,
1090
- stmts: promiseStmts,
1091
- } = this.arkIRTransformer.generateAssignStmtForValue(promiseValue, promisePositions));
1092
- promiseStmts.forEach(stmt => stmts.push(stmt));
1093
- }
1094
- const awaitExpr = new Expr_1.ArkAwaitExpr(promiseValue);
1095
- const awaitExprPositions = [Position_1.FullPosition.buildFromNode(awaitExpression, this.sourceFile), ...promisePositions];
1096
- return {
1097
- value: awaitExpr,
1098
- valueOriginalPositions: awaitExprPositions,
1099
- stmts: stmts,
1100
- };
1101
- }
1102
- yieldExpressionToValueAndStmts(yieldExpression) {
1103
- let yieldValue = ValueUtil_1.ValueUtil.getUndefinedConst();
1104
- let yieldPositions = [Position_1.FullPosition.DEFAULT];
1105
- let stmts = [];
1106
- if (yieldExpression.expression) {
1107
- ({
1108
- value: yieldValue,
1109
- valueOriginalPositions: yieldPositions,
1110
- stmts: stmts,
1111
- } = this.tsNodeToValueAndStmts(yieldExpression.expression));
1112
- }
1113
- const yieldExpr = new Expr_1.ArkYieldExpr(yieldValue);
1114
- const yieldExprPositions = [Position_1.FullPosition.buildFromNode(yieldExpression, this.sourceFile), ...yieldPositions];
1115
- return {
1116
- value: yieldExpr,
1117
- valueOriginalPositions: yieldExprPositions,
1118
- stmts: stmts,
1119
- };
1120
- }
1121
- deleteExpressionToValueAndStmts(deleteExpression) {
1122
- const { value: exprValue, valueOriginalPositions: exprPositions, stmts: stmts, } = this.tsNodeToValueAndStmts(deleteExpression.expression);
1123
- const deleteExpr = new Expr_1.ArkDeleteExpr(exprValue);
1124
- const deleteExprPositions = [Position_1.FullPosition.buildFromNode(deleteExpression, this.sourceFile), ...exprPositions];
1125
- return {
1126
- value: deleteExpr,
1127
- valueOriginalPositions: deleteExprPositions,
1128
- stmts: stmts,
1129
- };
1130
- }
1131
- voidExpressionToValueAndStmts(voidExpression) {
1132
- const { value: exprValue, valueOriginalPositions: exprPositions, stmts: stmts, } = this.tsNodeToValueAndStmts(voidExpression.expression);
1133
- const { stmts: exprStmts } = this.arkIRTransformer.generateAssignStmtForValue(exprValue, exprPositions);
1134
- exprStmts.forEach(stmt => stmts.push(stmt));
1135
- return {
1136
- value: ValueUtil_1.ValueUtil.getUndefinedConst(),
1137
- valueOriginalPositions: [Position_1.FullPosition.DEFAULT],
1138
- stmts: stmts,
1139
- };
1140
- }
1141
- nonNullExpressionToValueAndStmts(nonNullExpression) {
1142
- return this.tsNodeToValueAndStmts(nonNullExpression.expression);
1143
- }
1144
- parenthesizedExpressionToValueAndStmts(parenthesizedExpression) {
1145
- return this.tsNodeToValueAndStmts(parenthesizedExpression.expression);
1146
- }
1147
- typeOfExpressionToValueAndStmts(typeOfExpression) {
1148
- const { value: exprValue, valueOriginalPositions: exprPositions, stmts: exprStmts, } = this.tsNodeToValueAndStmts(typeOfExpression.expression);
1149
- const typeOfExpr = new Expr_1.ArkTypeOfExpr(exprValue);
1150
- const typeOfExprPositions = [Position_1.FullPosition.buildFromNode(typeOfExpression, this.sourceFile), ...exprPositions];
1151
- return {
1152
- value: typeOfExpr,
1153
- valueOriginalPositions: typeOfExprPositions,
1154
- stmts: exprStmts,
1155
- };
1156
- }
1157
- asExpressionToValueAndStmts(asExpression) {
1158
- const stmts = [];
1159
- let { value: exprValue, valueOriginalPositions: exprPositions, stmts: exprStmts, } = this.tsNodeToValueAndStmts(asExpression.expression);
1160
- exprStmts.forEach(stmt => stmts.push(stmt));
1161
- if (IRUtils_1.IRUtils.moreThanOneAddress(exprValue)) {
1162
- ({
1163
- value: exprValue,
1164
- valueOriginalPositions: exprPositions,
1165
- stmts: exprStmts,
1166
- } = this.arkIRTransformer.generateAssignStmtForValue(exprValue, exprPositions));
1167
- exprStmts.forEach(stmt => stmts.push(stmt));
1168
- }
1169
- const castExpr = new Expr_1.ArkCastExpr(exprValue, this.resolveTypeNode(asExpression.type));
1170
- const castExprPositions = [Position_1.FullPosition.buildFromNode(asExpression, this.sourceFile), ...exprPositions];
1171
- return {
1172
- value: castExpr,
1173
- valueOriginalPositions: castExprPositions,
1174
- stmts: stmts,
1175
- };
1176
- }
1177
- typeAssertionToValueAndStmts(typeAssertion) {
1178
- const { value: exprValue, valueOriginalPositions: exprPositions, stmts: exprStmts, } = this.tsNodeToValueAndStmts(typeAssertion.expression);
1179
- const castExpr = new Expr_1.ArkCastExpr(exprValue, this.resolveTypeNode(typeAssertion.type));
1180
- const castExprPositions = [Position_1.FullPosition.buildFromNode(typeAssertion, this.sourceFile), ...exprPositions];
1181
- return {
1182
- value: castExpr,
1183
- valueOriginalPositions: castExprPositions,
1184
- stmts: exprStmts,
1185
- };
1186
- }
1187
- variableDeclarationListToValueAndStmts(variableDeclarationList) {
1188
- const stmts = [];
1189
- const isConst = (variableDeclarationList.flags & ts.NodeFlags.Const) !== 0;
1190
- for (const declaration of variableDeclarationList.declarations) {
1191
- const { stmts: declaredStmts } = this.variableDeclarationToValueAndStmts(declaration, isConst);
1192
- declaredStmts.forEach(s => stmts.push(s));
1193
- }
1194
- return {
1195
- value: ValueUtil_1.ValueUtil.getUndefinedConst(),
1196
- valueOriginalPositions: [Position_1.FullPosition.DEFAULT],
1197
- stmts: stmts,
1198
- };
1199
- }
1200
- variableDeclarationToValueAndStmts(variableDeclaration, isConst, needRightOp = true) {
1201
- const leftOpNode = variableDeclaration.name;
1202
- const rightOpNode = variableDeclaration.initializer;
1203
- const declarationType = variableDeclaration.type ? this.resolveTypeNode(variableDeclaration.type) : Type_1.UnknownType.getInstance();
1204
- return this.assignmentToValueAndStmts(leftOpNode, rightOpNode, true, isConst, declarationType, needRightOp);
1205
- }
1206
- assignmentToValueAndStmts(leftOpNode, rightOpNode, variableDefFlag, isConst, declarationType, needRightOp = true) {
1207
- let leftValueAndStmts;
1208
- if (ts.isIdentifier(leftOpNode)) {
1209
- leftValueAndStmts = this.identifierToValueAndStmts(leftOpNode, variableDefFlag);
1210
- }
1211
- else if (ts.isArrayBindingPattern(leftOpNode) || ts.isArrayLiteralExpression(leftOpNode)) {
1212
- // In declaration, it is ArrayBindingPattern. And in assignment, it is ArrayLiteralExpression.
1213
- leftValueAndStmts = this.arrayDestructuringToValueAndStmts(leftOpNode, isConst);
1214
- }
1215
- else if (ts.isObjectBindingPattern(leftOpNode) || ts.isObjectLiteralExpression(leftOpNode)) {
1216
- // In declaration, it is ObjectBindingPattern. And in assignment, it is ObjectLiteralExpression.
1217
- leftValueAndStmts = this.objectDestructuringToValueAndStmts(leftOpNode, isConst);
1218
- }
1219
- else {
1220
- leftValueAndStmts = this.tsNodeToValueAndStmts(leftOpNode);
1221
- }
1222
- const { value: leftValue, valueOriginalPositions: leftPositions, stmts: leftStmts } = leftValueAndStmts;
1223
- let stmts = [];
1224
- if (needRightOp) {
1225
- const { value: rightValue, valueOriginalPositions: rightPositions, stmts: rightStmts, } = this.assignmentRightOpToValueAndStmts(rightOpNode, leftValue);
1226
- if (leftValue instanceof Local_1.Local) {
1227
- if (variableDefFlag) {
1228
- leftValue.setConstFlag(isConst);
1229
- leftValue.setType(declarationType);
1230
- }
1231
- if (leftValue.getType() instanceof Type_1.UnknownType && !(rightValue.getType() instanceof Type_1.UnknownType) &&
1232
- !(rightValue.getType() instanceof Type_1.UndefinedType)) {
1233
- leftValue.setType(rightValue.getType());
1234
- }
1235
- }
1236
- const assignStmt = new Stmt_1.ArkAssignStmt(leftValue, rightValue);
1237
- assignStmt.setOperandOriginalPositions([...leftPositions, ...rightPositions]);
1238
- if (ts.isArrayBindingPattern(leftOpNode) || ts.isArrayLiteralExpression(leftOpNode) ||
1239
- ts.isObjectBindingPattern(leftOpNode) || ts.isObjectLiteralExpression(leftOpNode)) {
1240
- rightStmts.forEach(stmt => stmts.push(stmt));
1241
- stmts.push(assignStmt);
1242
- leftStmts.forEach(stmt => stmts.push(stmt));
1243
- }
1244
- else {
1245
- rightStmts.forEach(stmt => stmts.push(stmt));
1246
- leftStmts.forEach(stmt => stmts.push(stmt));
1247
- stmts.push(assignStmt);
1248
- }
1249
- }
1250
- else {
1251
- stmts = leftStmts;
1252
- }
1253
- return {
1254
- value: leftValue,
1255
- valueOriginalPositions: leftPositions,
1256
- stmts: stmts,
1257
- };
1258
- }
1259
- assignmentRightOpToValueAndStmts(rightOpNode, leftValue) {
1260
- let rightValue;
1261
- let rightPositions;
1262
- let tempRightStmts = [];
1263
- const rightStmts = [];
1264
- if (rightOpNode) {
1265
- ({
1266
- value: rightValue,
1267
- valueOriginalPositions: rightPositions,
1268
- stmts: tempRightStmts,
1269
- } = this.tsNodeToValueAndStmts(rightOpNode));
1270
- tempRightStmts.forEach(stmt => rightStmts.push(stmt));
1271
- }
1272
- else {
1273
- rightValue = ValueUtil_1.ValueUtil.getUndefinedConst();
1274
- rightPositions = [Position_1.FullPosition.DEFAULT];
1275
- }
1276
- if (IRUtils_1.IRUtils.moreThanOneAddress(leftValue) && IRUtils_1.IRUtils.moreThanOneAddress(rightValue)) {
1277
- ({
1278
- value: rightValue,
1279
- valueOriginalPositions: rightPositions,
1280
- stmts: tempRightStmts,
1281
- } = this.arkIRTransformer.generateAssignStmtForValue(rightValue, rightPositions));
1282
- tempRightStmts.forEach(stmt => rightStmts.push(stmt));
1283
- }
1284
- return {
1285
- value: rightValue,
1286
- valueOriginalPositions: rightPositions,
1287
- stmts: rightStmts,
1288
- };
1289
- }
1290
- // In assignment patterns, the left operand will be an array literal expression
1291
- arrayDestructuringToValueAndStmts(arrayDestructuring, isConst = false) {
1292
- const stmts = [];
1293
- const arrayTempLocal = this.generateTempLocal();
1294
- const wholePosition = Position_1.FullPosition.buildFromNode(arrayDestructuring, this.sourceFile);
1295
- const elements = arrayDestructuring.elements;
1296
- const isArrayBindingPattern = ts.isArrayBindingPattern(arrayDestructuring);
1297
- for (let i = 0; i < elements.length; i++) {
1298
- const element = elements[i];
1299
- if (ts.isOmittedExpression(element)) {
1300
- continue;
1301
- }
1302
- const targetLocalPosition = Position_1.FullPosition.buildFromNode(element, this.sourceFile);
1303
- if (ts.isSpreadElement(element) || (ts.isBindingElement(element) && element.dotDotDotToken)) {
1304
- const nodeInsideRest = ts.isSpreadElement(element) ? element.expression : element.name;
1305
- let targetLocal;
1306
- let stmtsInsideRest = [];
1307
- if (ts.isArrayBindingPattern(nodeInsideRest) || ts.isArrayLiteralExpression(nodeInsideRest)) {
1308
- ({ value: targetLocal, stmts: stmtsInsideRest } = this.arrayDestructuringToValueAndStmts(nodeInsideRest, isConst));
1309
- }
1310
- else {
1311
- const elementName = nodeInsideRest.getText(this.sourceFile);
1312
- targetLocal = ts.isBindingElement(element) ? this.addNewLocal(elementName) : this.getOrCreateLocal(elementName);
1313
- }
1314
- const sliceMethodSubSignature = ArkSignatureBuilder_1.ArkSignatureBuilder.buildMethodSubSignatureFromMethodName(Builtin_1.Builtin.SLICE);
1315
- const sliceMethodSignature = new ArkSignature_1.MethodSignature(Builtin_1.Builtin.ARRAY_CLASS_SIGNATURE, sliceMethodSubSignature);
1316
- const sliceInvokeExpr = new Expr_1.ArkInstanceInvokeExpr(arrayTempLocal, sliceMethodSignature, [ValueUtil_1.ValueUtil.getOrCreateNumberConst(i)]);
1317
- const sliceInvokeExprPositions = [wholePosition, targetLocalPosition];
1318
- const assignStmt = new Stmt_1.ArkAssignStmt(targetLocal, sliceInvokeExpr);
1319
- assignStmt.setOperandOriginalPositions([targetLocalPosition, ...sliceInvokeExprPositions]);
1320
- stmts.push(assignStmt);
1321
- stmtsInsideRest.forEach(stmt => stmts.push(stmt));
1322
- }
1323
- else {
1324
- const arrayRef = new Ref_1.ArkArrayRef(arrayTempLocal, ValueUtil_1.ValueUtil.getOrCreateNumberConst(i));
1325
- const arrayRefPositions = [wholePosition, wholePosition, Position_1.FullPosition.DEFAULT];
1326
- const itemName = element.getText(this.sourceFile);
1327
- const targetLocal = isArrayBindingPattern ? this.addNewLocal(itemName) : this.getOrCreateLocal(itemName);
1328
- isArrayBindingPattern && targetLocal.setConstFlag(isConst);
1329
- const assignStmt = new Stmt_1.ArkAssignStmt(targetLocal, arrayRef);
1330
- assignStmt.setOperandOriginalPositions([targetLocalPosition, ...arrayRefPositions]);
1331
- stmts.push(assignStmt);
1332
- }
1333
- }
1334
- return { value: arrayTempLocal, valueOriginalPositions: [wholePosition], stmts: stmts };
1335
- }
1336
- // In assignment patterns, the left operand will be an object literal expression
1337
- objectDestructuringToValueAndStmts(objectDestructuring, isConst = false) {
1338
- const stmts = [];
1339
- const objectTempLocal = this.generateTempLocal();
1340
- const leftOriginalPosition = Position_1.FullPosition.buildFromNode(objectDestructuring, this.sourceFile);
1341
- const isObjectBindingPattern = ts.isObjectBindingPattern(objectDestructuring);
1342
- const elements = isObjectBindingPattern ? objectDestructuring.elements : objectDestructuring.properties;
1343
- for (const element of elements) {
1344
- let fieldName = '';
1345
- let targetName = '';
1346
- if (ts.isBindingElement(element)) {
1347
- fieldName = element.propertyName ? element.propertyName.getText(this.sourceFile) : element.name.getText(this.sourceFile);
1348
- targetName = element.name.getText(this.sourceFile);
1349
- }
1350
- else if (ts.isPropertyAssignment(element)) {
1351
- fieldName = element.name.getText(this.sourceFile);
1352
- targetName = element.initializer.getText(this.sourceFile);
1353
- }
1354
- else if (ts.isShorthandPropertyAssignment(element)) {
1355
- fieldName = element.name.getText(this.sourceFile);
1356
- targetName = fieldName;
1357
- }
1358
- else {
1359
- continue;
1360
- }
1361
- const fieldSignature = ArkSignatureBuilder_1.ArkSignatureBuilder.buildFieldSignatureFromFieldName(fieldName);
1362
- const fieldRef = new Ref_1.ArkInstanceFieldRef(objectTempLocal, fieldSignature);
1363
- const fieldRefPositions = [leftOriginalPosition, leftOriginalPosition];
1364
- const targetLocal = isObjectBindingPattern ? this.addNewLocal(targetName) : this.getOrCreateLocal(targetName);
1365
- isObjectBindingPattern && targetLocal.setConstFlag(isConst);
1366
- const targetLocalPosition = Position_1.FullPosition.buildFromNode(element, this.sourceFile);
1367
- const assignStmt = new Stmt_1.ArkAssignStmt(targetLocal, fieldRef);
1368
- assignStmt.setOperandOriginalPositions([targetLocalPosition, ...fieldRefPositions]);
1369
- stmts.push(assignStmt);
1370
- }
1371
- return {
1372
- value: objectTempLocal,
1373
- valueOriginalPositions: [leftOriginalPosition],
1374
- stmts: stmts,
1375
- };
1376
- }
1377
- binaryExpressionToValueAndStmts(binaryExpression) {
1378
- const operatorToken = binaryExpression.operatorToken;
1379
- if (operatorToken.kind === ts.SyntaxKind.FirstAssignment) {
1380
- const leftOpNode = binaryExpression.left;
1381
- const rightOpNode = binaryExpression.right;
1382
- const declarationType = Type_1.UnknownType.getInstance();
1383
- return this.assignmentToValueAndStmts(leftOpNode, rightOpNode, false, false, declarationType, true);
1384
- }
1385
- else if (ArkValueTransformer.isCompoundAssignmentOperator(operatorToken.kind)) {
1386
- return this.compoundAssignmentToValueAndStmts(binaryExpression);
1387
- }
1388
- const stmts = [];
1389
- const binaryExpressionPosition = Position_1.FullPosition.buildFromNode(binaryExpression, this.sourceFile);
1390
- const { value: opValue1, valueOriginalPositions: opPositions1, stmts: opStmts1, } = this.tsNodeToSingleAddressValueAndStmts(binaryExpression.left);
1391
- opStmts1.forEach(stmt => stmts.push(stmt));
1392
- if (operatorToken.kind === ts.SyntaxKind.InstanceOfKeyword) {
1393
- const instanceOfExpr = new Expr_1.ArkInstanceOfExpr(opValue1, new Type_1.UnclearReferenceType(binaryExpression.right.getText(this.sourceFile)));
1394
- const instanceOfExprPositions = [binaryExpressionPosition, ...opPositions1];
1395
- const { value: instanceofRes, valueOriginalPositions: instanceofPos, stmts: instanceofStmt, } = this.arkIRTransformer.generateAssignStmtForValue(instanceOfExpr, instanceOfExprPositions);
1396
- instanceofStmt.forEach(stmt => stmts.push(stmt));
1397
- return {
1398
- value: instanceofRes,
1399
- valueOriginalPositions: instanceofPos,
1400
- stmts: stmts,
1401
- };
1402
- }
1403
- const { value: opValue2, valueOriginalPositions: opPositions2, stmts: opStmts2, } = this.tsNodeToSingleAddressValueAndStmts(binaryExpression.right);
1404
- opStmts2.forEach(stmt => stmts.push(stmt));
1405
- let exprValue;
1406
- let exprValuePositions = [binaryExpressionPosition];
1407
- if (operatorToken.kind === ts.SyntaxKind.CommaToken) {
1408
- exprValue = opValue2;
1409
- }
1410
- else {
1411
- const operator = ArkIRTransformer_1.ArkIRTransformer.tokenToBinaryOperator(operatorToken.kind);
1412
- if (operator) {
1413
- if (this.isRelationalOperator(operator)) {
1414
- exprValue = new Expr_1.ArkConditionExpr(opValue1, opValue2, operator);
1415
- }
1416
- else {
1417
- exprValue = new Expr_1.ArkNormalBinopExpr(opValue1, opValue2, operator);
1418
- }
1419
- exprValuePositions.push(...opPositions1, ...opPositions2);
1420
- }
1421
- else {
1422
- exprValue = ValueUtil_1.ValueUtil.getUndefinedConst();
1423
- exprValuePositions.push(binaryExpressionPosition);
1424
- }
1425
- }
1426
- return {
1427
- value: exprValue,
1428
- valueOriginalPositions: exprValuePositions,
1429
- stmts: stmts,
1430
- };
1431
- }
1432
- compoundAssignmentToValueAndStmts(binaryExpression) {
1433
- const stmts = [];
1434
- const { value: leftValueOrig, valueOriginalPositions: leftPositionsOrig, stmts: leftStmts } = this.tsNodeToValueAndStmts(binaryExpression.left);
1435
- leftStmts.forEach(stmt => stmts.push(stmt));
1436
- let leftValue;
1437
- let leftPositions;
1438
- if (leftValueOrig instanceof Ref_1.AbstractFieldRef) {
1439
- const tempLocal = this.generateTempLocal();
1440
- const readRefStmt = new Stmt_1.ArkAssignStmt(tempLocal, leftValueOrig);
1441
- stmts.push(readRefStmt);
1442
- leftValue = tempLocal;
1443
- leftPositions = [leftPositionsOrig[0]];
1444
- }
1445
- else {
1446
- leftValue = leftValueOrig;
1447
- leftPositions = leftPositionsOrig;
1448
- }
1449
- const { value: rightValue, valueOriginalPositions: rightPositions, stmts: rightStmts } = this.tsNodeToSingleAddressValueAndStmts(binaryExpression.right);
1450
- rightStmts.forEach(stmt => stmts.push(stmt));
1451
- const operator = this.compoundAssignmentTokenToBinaryOperator(binaryExpression.operatorToken.kind);
1452
- if (operator) {
1453
- const exprValue = new Expr_1.ArkNormalBinopExpr(leftValue, rightValue, operator);
1454
- const exprValuePosition = Position_1.FullPosition.buildFromNode(binaryExpression, this.sourceFile);
1455
- const assignTarget = leftValueOrig instanceof Ref_1.AbstractFieldRef ? leftValueOrig : leftValue;
1456
- const assignStmt = new Stmt_1.ArkAssignStmt(assignTarget, exprValue);
1457
- assignStmt.setOperandOriginalPositions([
1458
- ...(assignTarget === leftValueOrig ? leftPositionsOrig : leftPositions),
1459
- exprValuePosition,
1460
- ...leftPositions,
1461
- ...rightPositions
1462
- ]);
1463
- stmts.push(assignStmt);
1464
- }
1465
- return {
1466
- value: leftValueOrig,
1467
- valueOriginalPositions: leftPositionsOrig,
1468
- stmts: stmts
1469
- };
1470
- }
1471
- compoundAssignmentTokenToBinaryOperator(token) {
1472
- switch (token) {
1473
- case ts.SyntaxKind.QuestionQuestionEqualsToken:
1474
- return Expr_1.NormalBinaryOperator.NullishCoalescing;
1475
- case ts.SyntaxKind.AsteriskAsteriskEqualsToken:
1476
- return Expr_1.NormalBinaryOperator.Exponentiation;
1477
- case ts.SyntaxKind.SlashEqualsToken:
1478
- return Expr_1.NormalBinaryOperator.Division;
1479
- case ts.SyntaxKind.PlusEqualsToken:
1480
- return Expr_1.NormalBinaryOperator.Addition;
1481
- case ts.SyntaxKind.MinusEqualsToken:
1482
- return Expr_1.NormalBinaryOperator.Subtraction;
1483
- case ts.SyntaxKind.AsteriskEqualsToken:
1484
- return Expr_1.NormalBinaryOperator.Multiplication;
1485
- case ts.SyntaxKind.PercentEqualsToken:
1486
- return Expr_1.NormalBinaryOperator.Remainder;
1487
- case ts.SyntaxKind.LessThanLessThanEqualsToken:
1488
- return Expr_1.NormalBinaryOperator.LeftShift;
1489
- case ts.SyntaxKind.GreaterThanGreaterThanEqualsToken:
1490
- return Expr_1.NormalBinaryOperator.RightShift;
1491
- case ts.SyntaxKind.GreaterThanGreaterThanGreaterThanEqualsToken:
1492
- return Expr_1.NormalBinaryOperator.UnsignedRightShift;
1493
- case ts.SyntaxKind.AmpersandEqualsToken:
1494
- return Expr_1.NormalBinaryOperator.BitwiseAnd;
1495
- case ts.SyntaxKind.BarEqualsToken:
1496
- return Expr_1.NormalBinaryOperator.BitwiseOr;
1497
- case ts.SyntaxKind.CaretEqualsToken:
1498
- return Expr_1.NormalBinaryOperator.BitwiseXor;
1499
- case ts.SyntaxKind.AmpersandAmpersandEqualsToken:
1500
- return Expr_1.NormalBinaryOperator.LogicalAnd;
1501
- case ts.SyntaxKind.BarBarEqualsToken:
1502
- return Expr_1.NormalBinaryOperator.LogicalOr;
1503
- default:
1504
- }
1505
- return null;
1506
- }
1507
- conditionToValueAndStmts(condition) {
1508
- const stmts = [];
1509
- let { value: conditionValue, valueOriginalPositions: conditionPositions, stmts: conditionStmts, } = this.tsNodeToValueAndStmts(condition);
1510
- conditionStmts.forEach(stmt => stmts.push(stmt));
1511
- let conditionExpr;
1512
- if (conditionValue instanceof Expr_1.AbstractBinopExpr && this.isRelationalOperator(conditionValue.getOperator())) {
1513
- const operator = conditionValue.getOperator();
1514
- conditionExpr = new Expr_1.ArkConditionExpr(conditionValue.getOp1(), conditionValue.getOp2(), operator);
1515
- }
1516
- else {
1517
- if (IRUtils_1.IRUtils.moreThanOneAddress(conditionValue)) {
1518
- ({
1519
- value: conditionValue,
1520
- valueOriginalPositions: conditionPositions,
1521
- stmts: conditionStmts,
1522
- } = this.arkIRTransformer.generateAssignStmtForValue(conditionValue, conditionPositions));
1523
- conditionStmts.forEach(stmt => stmts.push(stmt));
1524
- }
1525
- conditionExpr = new Expr_1.ArkConditionExpr(conditionValue, ValueUtil_1.ValueUtil.getOrCreateNumberConst(0), Expr_1.RelationalBinaryOperator.InEquality);
1526
- conditionPositions = [conditionPositions[0], ...conditionPositions, Position_1.FullPosition.DEFAULT];
1527
- }
1528
- return {
1529
- value: conditionExpr,
1530
- valueOriginalPositions: conditionPositions,
1531
- stmts: stmts,
1532
- };
1533
- }
1534
- literalNodeToValueAndStmts(literalNode) {
1535
- const syntaxKind = literalNode.kind;
1536
- let constant = null;
1537
- switch (syntaxKind) {
1538
- case ts.SyntaxKind.NumericLiteral:
1539
- constant = ValueUtil_1.ValueUtil.getOrCreateNumberConst(literalNode.getText(this.sourceFile));
1540
- break;
1541
- case ts.SyntaxKind.BigIntLiteral:
1542
- constant = ValueUtil_1.ValueUtil.createBigIntConst(BigInt(literalNode.text.slice(0, -1)));
1543
- break;
1544
- case ts.SyntaxKind.StringLiteral:
1545
- constant = ValueUtil_1.ValueUtil.createStringConst(literalNode.text);
1546
- break;
1547
- case ts.SyntaxKind.RegularExpressionLiteral:
1548
- constant = new Constant_1.Constant(literalNode.text, Builtin_1.Builtin.REGEXP_CLASS_TYPE);
1549
- break;
1550
- case ts.SyntaxKind.NoSubstitutionTemplateLiteral:
1551
- constant = ValueUtil_1.ValueUtil.createStringConst(literalNode.text);
1552
- break;
1553
- case ts.SyntaxKind.NullKeyword:
1554
- constant = ValueUtil_1.ValueUtil.getNullConstant();
1555
- break;
1556
- case ts.SyntaxKind.UndefinedKeyword:
1557
- constant = ValueUtil_1.ValueUtil.getUndefinedConst();
1558
- break;
1559
- case ts.SyntaxKind.TrueKeyword:
1560
- constant = ValueUtil_1.ValueUtil.getBooleanConstant(true);
1561
- break;
1562
- case ts.SyntaxKind.FalseKeyword:
1563
- constant = ValueUtil_1.ValueUtil.getBooleanConstant(false);
1564
- break;
1565
- default:
1566
- logger.warn(`ast node's syntaxKind is ${ts.SyntaxKind[literalNode.kind]}, not literalNode`);
1567
- }
1568
- if (constant === null) {
1569
- return null;
1570
- }
1571
- return {
1572
- value: constant,
1573
- valueOriginalPositions: [Position_1.FullPosition.buildFromNode(literalNode, this.sourceFile)],
1574
- stmts: [],
1575
- };
1576
- }
1577
- getOrCreateLocal(localName, localType = Type_1.UnknownType.getInstance()) {
1578
- let local = this.locals.get(localName);
1579
- if (local !== undefined) {
1580
- return local;
1581
- }
1582
- local = this.addNewLocal(localName, localType);
1583
- this.addNewGlobal(localName);
1584
- return local;
1585
- }
1586
- generateTempLocal(localType = Type_1.UnknownType.getInstance()) {
1587
- const tempLocalName = Const_1.TEMP_LOCAL_PREFIX + this.tempLocalNo;
1588
- this.tempLocalNo++;
1589
- const tempLocal = new Local_1.Local(tempLocalName, localType);
1590
- this.locals.set(tempLocalName, tempLocal);
1591
- return tempLocal;
1592
- }
1593
- isRelationalOperator(operator) {
1594
- return (operator === Expr_1.RelationalBinaryOperator.LessThan ||
1595
- operator === Expr_1.RelationalBinaryOperator.LessThanOrEqual ||
1596
- operator === Expr_1.RelationalBinaryOperator.GreaterThan ||
1597
- operator === Expr_1.RelationalBinaryOperator.GreaterThanOrEqual ||
1598
- operator === Expr_1.RelationalBinaryOperator.Equality ||
1599
- operator === Expr_1.RelationalBinaryOperator.InEquality ||
1600
- operator === Expr_1.RelationalBinaryOperator.StrictEquality ||
1601
- operator === Expr_1.RelationalBinaryOperator.StrictInequality);
1602
- }
1603
- isLiteralNode(node) {
1604
- if (ts.isStringLiteral(node) ||
1605
- ts.isNumericLiteral(node) ||
1606
- ts.isBigIntLiteral(node) ||
1607
- ts.isRegularExpressionLiteral(node) ||
1608
- ts.isNoSubstitutionTemplateLiteral(node) ||
1609
- node.kind === ts.SyntaxKind.NullKeyword ||
1610
- node.kind === ts.SyntaxKind.TrueKeyword ||
1611
- node.kind === ts.SyntaxKind.FalseKeyword ||
1612
- node.kind === ts.SyntaxKind.UndefinedKeyword) {
1613
- return true;
1614
- }
1615
- return false;
1616
- }
1617
- resolveTypeNode(type) {
1618
- const kind = type.kind;
1619
- switch (kind) {
1620
- case ts.SyntaxKind.BooleanKeyword:
1621
- return Type_1.BooleanType.getInstance();
1622
- case ts.SyntaxKind.NumberKeyword:
1623
- return Type_1.NumberType.getInstance();
1624
- case ts.SyntaxKind.StringKeyword:
1625
- return Type_1.StringType.getInstance();
1626
- case ts.SyntaxKind.UndefinedKeyword:
1627
- return Type_1.UndefinedType.getInstance();
1628
- case ts.SyntaxKind.AnyKeyword:
1629
- return Type_1.AnyType.getInstance();
1630
- case ts.SyntaxKind.VoidKeyword:
1631
- return Type_1.VoidType.getInstance();
1632
- case ts.SyntaxKind.NeverKeyword:
1633
- return Type_1.NeverType.getInstance();
1634
- case ts.SyntaxKind.BigIntKeyword:
1635
- return Type_1.BigIntType.getInstance();
1636
- case ts.SyntaxKind.TypeReference:
1637
- return this.resolveTypeReferenceNode(type);
1638
- case ts.SyntaxKind.ArrayType:
1639
- return new Type_1.ArrayType(this.resolveTypeNode(type.elementType), 1);
1640
- case ts.SyntaxKind.UnionType: {
1641
- const mayTypes = [];
1642
- type.types.forEach(t => mayTypes.push(this.resolveTypeNode(t)));
1643
- return new Type_1.UnionType(mayTypes);
1644
- }
1645
- case ts.SyntaxKind.IntersectionType: {
1646
- const intersectionTypes = [];
1647
- type.types.forEach(t => intersectionTypes.push(this.resolveTypeNode(t)));
1648
- return new Type_1.IntersectionType(intersectionTypes);
1649
- }
1650
- case ts.SyntaxKind.TupleType: {
1651
- const types = [];
1652
- type.elements.forEach(element => {
1653
- types.push(this.resolveTypeNode(element));
1654
- });
1655
- return new Type_1.TupleType(types);
1656
- }
1657
- case ts.SyntaxKind.NamedTupleMember:
1658
- return this.resolveTypeNode(type.type);
1659
- case ts.SyntaxKind.LiteralType:
1660
- return ArkValueTransformer.resolveLiteralTypeNode(type, this.sourceFile);
1661
- case ts.SyntaxKind.TemplateLiteralType:
1662
- return this.resolveTemplateLiteralTypeNode(type);
1663
- case ts.SyntaxKind.TypeLiteral:
1664
- return this.resolveTypeLiteralNode(type);
1665
- case ts.SyntaxKind.FunctionType:
1666
- return this.resolveFunctionTypeNode(type);
1667
- case ts.SyntaxKind.ImportType:
1668
- return Type_1.UnknownType.getInstance();
1669
- case ts.SyntaxKind.TypeQuery:
1670
- return this.resolveTypeQueryNode(type);
1671
- case ts.SyntaxKind.ParenthesizedType:
1672
- return this.resolveTypeNode(type.type);
1673
- case ts.SyntaxKind.TypeOperator:
1674
- return this.resolveTypeOperatorNode(type);
1675
- default:
1676
- return Type_1.UnknownType.getInstance();
1677
- }
1678
- }
1679
- resolveTypeQueryNode(typeQueryNode) {
1680
- var _a, _b, _c, _d, _e, _f;
1681
- const genericTypes = [];
1682
- if (typeQueryNode.typeArguments) {
1683
- for (const typeArgument of typeQueryNode.typeArguments) {
1684
- genericTypes.push(this.resolveTypeNode(typeArgument));
1685
- }
1686
- }
1687
- const exprNameNode = typeQueryNode.exprName;
1688
- let opValue;
1689
- if (ts.isQualifiedName(exprNameNode)) {
1690
- if (exprNameNode.left.getText(this.sourceFile) === TSConst_1.THIS_NAME) {
1691
- const fieldName = exprNameNode.right.getText(this.sourceFile);
1692
- const fieldSignature = (_b = (_a = this.declaringMethod.getDeclaringArkClass().getFieldWithName(fieldName)) === null || _a === void 0 ? void 0 : _a.getSignature()) !== null && _b !== void 0 ? _b : ArkSignatureBuilder_1.ArkSignatureBuilder.buildFieldSignatureFromFieldName(fieldName);
1693
- const baseLocal = (_c = this.locals.get(TSConst_1.THIS_NAME)) !== null && _c !== void 0 ? _c : new Local_1.Local(TSConst_1.THIS_NAME, new Type_1.ClassType(this.declaringMethod.getDeclaringArkClass().getSignature(), genericTypes));
1694
- opValue = new Ref_1.ArkInstanceFieldRef(baseLocal, fieldSignature);
1695
- }
1696
- else {
1697
- const exprName = exprNameNode.getText(this.sourceFile);
1698
- opValue = new Local_1.Local(exprName, Type_1.UnknownType.getInstance());
1699
- }
1700
- }
1701
- else {
1702
- const exprName = exprNameNode.escapedText.toString();
1703
- opValue = (_f = (_d = this.locals.get(exprName)) !== null && _d !== void 0 ? _d : (_e = this.globals) === null || _e === void 0 ? void 0 : _e.get(exprName)) !== null && _f !== void 0 ? _f : new Local_1.Local(exprName, Type_1.UnknownType.getInstance());
1704
- }
1705
- return new TypeExpr_1.TypeQueryExpr(opValue, genericTypes);
1706
- }
1707
- resolveTypeOperatorNode(typeOperatorNode) {
1708
- let type = this.resolveTypeNode(typeOperatorNode.type);
1709
- switch (typeOperatorNode.operator) {
1710
- case ts.SyntaxKind.ReadonlyKeyword: {
1711
- if (type instanceof Type_1.ArrayType || type instanceof Type_1.TupleType) {
1712
- type.setReadonlyFlag(true);
1713
- }
1714
- return type;
1715
- }
1716
- case ts.SyntaxKind.KeyOfKeyword: {
1717
- return new TypeExpr_1.KeyofTypeExpr(type);
1718
- }
1719
- case ts.SyntaxKind.UniqueKeyword: {
1720
- return Type_1.UnknownType.getInstance();
1721
- }
1722
- default:
1723
- return Type_1.UnknownType.getInstance();
1724
- }
1725
- }
1726
- static resolveLiteralTypeNode(literalTypeNode, sourceFile) {
1727
- const literal = literalTypeNode.literal;
1728
- const kind = literal.kind;
1729
- switch (kind) {
1730
- case ts.SyntaxKind.NullKeyword:
1731
- return Type_1.NullType.getInstance();
1732
- case ts.SyntaxKind.TrueKeyword:
1733
- return Type_1.LiteralType.TRUE;
1734
- case ts.SyntaxKind.FalseKeyword:
1735
- return Type_1.LiteralType.FALSE;
1736
- case ts.SyntaxKind.NumericLiteral:
1737
- return new Type_1.LiteralType(parseFloat(literal.text));
1738
- case ts.SyntaxKind.PrefixUnaryExpression:
1739
- return new Type_1.LiteralType(parseFloat(literal.getText(sourceFile)));
1740
- default:
1741
- }
1742
- return new Type_1.LiteralType(literal.getText(sourceFile));
1743
- }
1744
- resolveTemplateLiteralTypeNode(templateLiteralTypeNode) {
1745
- let stringLiterals = [''];
1746
- const headString = templateLiteralTypeNode.head.rawText || '';
1747
- let newStringLiterals = [];
1748
- for (const stringLiteral of stringLiterals) {
1749
- newStringLiterals.push(stringLiteral + headString);
1750
- }
1751
- stringLiterals = newStringLiterals;
1752
- newStringLiterals = [];
1753
- for (const templateSpan of templateLiteralTypeNode.templateSpans) {
1754
- const templateType = this.resolveTypeNode(templateSpan.type);
1755
- const unfoldTemplateTypes = [];
1756
- if (templateType instanceof Type_1.UnionType) {
1757
- unfoldTemplateTypes.push(...templateType.getTypes());
1758
- }
1759
- else {
1760
- unfoldTemplateTypes.push(templateType);
1761
- }
1762
- const unfoldTemplateTypeStrs = [];
1763
- for (const unfoldTemplateType of unfoldTemplateTypes) {
1764
- unfoldTemplateTypeStrs.push(unfoldTemplateType instanceof Type_1.AliasType ? unfoldTemplateType.getOriginalType().toString() : unfoldTemplateType.toString());
1765
- }
1766
- const templateSpanString = templateSpan.literal.rawText || '';
1767
- for (const stringLiteral of stringLiterals) {
1768
- for (const unfoldTemplateTypeStr of unfoldTemplateTypeStrs) {
1769
- newStringLiterals.push(stringLiteral + unfoldTemplateTypeStr + templateSpanString);
1770
- }
1771
- }
1772
- stringLiterals = newStringLiterals;
1773
- newStringLiterals = [];
1774
- }
1775
- const templateTypes = [];
1776
- for (const stringLiteral of stringLiterals) {
1777
- templateTypes.push(new Type_1.LiteralType(stringLiteral));
1778
- }
1779
- if (templateTypes.length > 0) {
1780
- return new Type_1.UnionType(templateTypes);
1781
- }
1782
- return templateTypes[0];
1783
- }
1784
- resolveTypeReferenceNode(typeReferenceNode) {
1785
- const typeReferenceFullName = ts.isIdentifier(typeReferenceNode.typeName) ? typeReferenceNode.typeName.text :
1786
- typeReferenceNode.typeName.getText(this.sourceFile);
1787
- if (typeReferenceFullName === Builtin_1.Builtin.OBJECT) {
1788
- return Builtin_1.Builtin.OBJECT_CLASS_TYPE;
1789
- }
1790
- const aliasTypeAndStmt = this.aliasTypeMap.get(typeReferenceFullName);
1791
- const genericTypes = [];
1792
- if (typeReferenceNode.typeArguments) {
1793
- for (const typeArgument of typeReferenceNode.typeArguments) {
1794
- genericTypes.push(this.resolveTypeNode(typeArgument));
1795
- }
1796
- }
1797
- if (!aliasTypeAndStmt) {
1798
- const local = this.locals.get(typeReferenceFullName);
1799
- if (local !== undefined) {
1800
- return local.getType();
1801
- }
1802
- return new Type_1.UnclearReferenceType(typeReferenceFullName, genericTypes);
1803
- }
1804
- else {
1805
- if (genericTypes.length > 0) {
1806
- const oldAlias = aliasTypeAndStmt[0];
1807
- let alias = new Type_1.AliasType(oldAlias.getName(), TypeInference_1.TypeInference.replaceTypeWithReal(oldAlias.getOriginalType(), genericTypes), oldAlias.getSignature(), oldAlias.getGenericTypes());
1808
- alias.setRealGenericTypes(genericTypes);
1809
- return alias;
1810
- }
1811
- return aliasTypeAndStmt[0];
1812
- }
1813
- }
1814
- resolveTypeLiteralNode(typeLiteralNode) {
1815
- const anonymousClass = new ArkClass_1.ArkClass();
1816
- const declaringClass = this.declaringMethod.getDeclaringArkClass();
1817
- const declaringNamespace = declaringClass.getDeclaringArkNamespace();
1818
- if (declaringNamespace) {
1819
- (0, ArkClassBuilder_1.buildNormalArkClassFromArkNamespace)(typeLiteralNode, declaringNamespace, anonymousClass, this.sourceFile);
1820
- }
1821
- else {
1822
- (0, ArkClassBuilder_1.buildNormalArkClassFromArkFile)(typeLiteralNode, declaringClass.getDeclaringArkFile(), anonymousClass, this.sourceFile);
1823
- }
1824
- return new Type_1.ClassType(anonymousClass.getSignature());
1825
- }
1826
- resolveFunctionTypeNode(functionTypeNode) {
1827
- const anonymousMethod = new ArkMethod_1.ArkMethod();
1828
- const declaringClass = this.declaringMethod.getDeclaringArkClass();
1829
- (0, ArkMethodBuilder_1.buildArkMethodFromArkClass)(functionTypeNode, declaringClass, anonymousMethod, this.sourceFile);
1830
- return new Type_1.FunctionType(anonymousMethod.getSignature());
1831
- }
1832
- static isCompoundAssignmentOperator(operator) {
1833
- const compoundAssignmentOperators = [
1834
- ts.SyntaxKind.PlusEqualsToken,
1835
- ts.SyntaxKind.MinusEqualsToken,
1836
- ts.SyntaxKind.AsteriskAsteriskEqualsToken,
1837
- ts.SyntaxKind.AsteriskEqualsToken,
1838
- ts.SyntaxKind.SlashEqualsToken,
1839
- ts.SyntaxKind.PercentEqualsToken,
1840
- ts.SyntaxKind.AmpersandEqualsToken,
1841
- ts.SyntaxKind.BarEqualsToken,
1842
- ts.SyntaxKind.CaretEqualsToken,
1843
- ts.SyntaxKind.LessThanLessThanEqualsToken,
1844
- ts.SyntaxKind.GreaterThanGreaterThanGreaterThanEqualsToken,
1845
- ts.SyntaxKind.GreaterThanGreaterThanEqualsToken,
1846
- ts.SyntaxKind.BarBarEqualsToken,
1847
- ts.SyntaxKind.AmpersandAmpersandEqualsToken,
1848
- ts.SyntaxKind.QuestionQuestionEqualsToken,
1849
- ];
1850
- return compoundAssignmentOperators.includes(operator);
1851
- }
1852
- }
1853
- exports.ArkValueTransformer = ArkValueTransformer;
1
+ "use strict";
2
+ /*
3
+ * Copyright (c) 2024-2026 Huawei Device Co., Ltd.
4
+ * Licensed under the Apache License, Version 2.0 (the "License");
5
+ * you may not use this file except in compliance with the License.
6
+ * You may obtain a copy of the License at
7
+ *
8
+ * http://www.apache.org/licenses/LICENSE-2.0
9
+ *
10
+ * Unless required by applicable law or agreed to in writing, software
11
+ * distributed under the License is distributed on an "AS IS" BASIS,
12
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
+ * See the License for the specific language governing permissions and
14
+ * limitations under the License.
15
+ */
16
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
17
+ if (k2 === undefined) k2 = k;
18
+ var desc = Object.getOwnPropertyDescriptor(m, k);
19
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
20
+ desc = { enumerable: true, get: function() { return m[k]; } };
21
+ }
22
+ Object.defineProperty(o, k2, desc);
23
+ }) : (function(o, m, k, k2) {
24
+ if (k2 === undefined) k2 = k;
25
+ o[k2] = m[k];
26
+ }));
27
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
28
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
29
+ }) : function(o, v) {
30
+ o["default"] = v;
31
+ });
32
+ var __importStar = (this && this.__importStar) || function (mod) {
33
+ if (mod && mod.__esModule) return mod;
34
+ var result = {};
35
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
36
+ __setModuleDefault(result, mod);
37
+ return result;
38
+ };
39
+ Object.defineProperty(exports, "__esModule", { value: true });
40
+ exports.ArkValueTransformer = void 0;
41
+ const ts = __importStar(require("ohos-typescript"));
42
+ const Local_1 = require("../base/Local");
43
+ const Position_1 = require("../base/Position");
44
+ const Stmt_1 = require("../base/Stmt");
45
+ const Expr_1 = require("../base/Expr");
46
+ const ArkClass_1 = require("../model/ArkClass");
47
+ const ArkClassBuilder_1 = require("../model/builder/ArkClassBuilder");
48
+ const Type_1 = require("../base/Type");
49
+ const ArkSignatureBuilder_1 = require("../model/builder/ArkSignatureBuilder");
50
+ const TSConst_1 = require("./TSConst");
51
+ const ArkSignature_1 = require("../model/ArkSignature");
52
+ const EtsConst_1 = require("./EtsConst");
53
+ const ValueUtil_1 = require("./ValueUtil");
54
+ const IRUtils_1 = require("./IRUtils");
55
+ const Ref_1 = require("../base/Ref");
56
+ const ModelUtils_1 = require("./ModelUtils");
57
+ const ArkMethod_1 = require("../model/ArkMethod");
58
+ const ArkMethodBuilder_1 = require("../model/builder/ArkMethodBuilder");
59
+ const Builtin_1 = require("./Builtin");
60
+ const Constant_1 = require("../base/Constant");
61
+ const Const_1 = require("./Const");
62
+ const ArkIRTransformer_1 = require("./ArkIRTransformer");
63
+ const logger_1 = __importStar(require("../../utils/logger"));
64
+ const TypeInference_1 = require("./TypeInference");
65
+ const TypeExpr_1 = require("../base/TypeExpr");
66
+ const logger = logger_1.default.getLogger(logger_1.LOG_MODULE_TYPE.ARKANALYZER, 'ArkValueTransformer');
67
+ class ArkValueTransformer {
68
+ constructor(arkIRTransformer, sourceFile, declaringMethod) {
69
+ this.conditionalOperatorNo = 0;
70
+ this.tempLocalNo = 0;
71
+ this.locals = new Map();
72
+ this.aliasTypeMap = new Map();
73
+ this.builderMethodContextFlag = false;
74
+ this.arkIRTransformer = arkIRTransformer;
75
+ this.sourceFile = sourceFile;
76
+ this.thisLocal = new Local_1.Local(TSConst_1.THIS_NAME, declaringMethod.getDeclaringArkClass().getSignature().getType());
77
+ this.locals.set(this.thisLocal.getName(), this.thisLocal);
78
+ this.declaringMethod = declaringMethod;
79
+ }
80
+ getLocals() {
81
+ return new Set(this.locals.values());
82
+ }
83
+ getThisLocal() {
84
+ return this.thisLocal;
85
+ }
86
+ getAliasTypeMap() {
87
+ return this.aliasTypeMap;
88
+ }
89
+ addNewLocal(localName, localType = Type_1.UnknownType.getInstance()) {
90
+ let local = new Local_1.Local(localName, localType);
91
+ this.locals.set(localName, local);
92
+ return local;
93
+ }
94
+ getGlobals() {
95
+ var _a;
96
+ return (_a = this.globals) !== null && _a !== void 0 ? _a : null;
97
+ }
98
+ addNewGlobal(name, ref) {
99
+ var _a;
100
+ let globalRef = new Ref_1.GlobalRef(name, ref);
101
+ this.globals = (_a = this.globals) !== null && _a !== void 0 ? _a : new Map();
102
+ this.globals.set(name, globalRef);
103
+ return globalRef;
104
+ }
105
+ tsNodeToValueAndStmts(node) {
106
+ if (ts.isBinaryExpression(node)) {
107
+ return this.binaryExpressionToValueAndStmts(node);
108
+ }
109
+ else if (ts.isCallExpression(node)) {
110
+ return this.callExpressionToValueAndStmts(node);
111
+ }
112
+ else if (ts.isVariableDeclarationList(node)) {
113
+ return this.variableDeclarationListToValueAndStmts(node);
114
+ }
115
+ else if (ts.isIdentifier(node)) {
116
+ return this.identifierToValueAndStmts(node);
117
+ }
118
+ else if (ts.isPropertyAccessExpression(node)) {
119
+ return this.propertyAccessExpressionToValue(node);
120
+ }
121
+ else if (ts.isPrefixUnaryExpression(node)) {
122
+ return this.prefixUnaryExpressionToValueAndStmts(node);
123
+ }
124
+ else if (ts.isPostfixUnaryExpression(node)) {
125
+ return this.postfixUnaryExpressionToValueAndStmts(node);
126
+ }
127
+ else if (ts.isTemplateExpression(node)) {
128
+ return this.templateExpressionToValueAndStmts(node);
129
+ }
130
+ else if (ts.isTaggedTemplateExpression(node)) {
131
+ return this.taggedTemplateExpressionToValueAndStmts(node);
132
+ }
133
+ else if (ts.isAwaitExpression(node)) {
134
+ return this.awaitExpressionToValueAndStmts(node);
135
+ }
136
+ else if (ts.isYieldExpression(node)) {
137
+ return this.yieldExpressionToValueAndStmts(node);
138
+ }
139
+ else if (ts.isDeleteExpression(node)) {
140
+ return this.deleteExpressionToValueAndStmts(node);
141
+ }
142
+ else if (ts.isVoidExpression(node)) {
143
+ return this.voidExpressionToValueAndStmts(node);
144
+ }
145
+ else if (ts.isElementAccessExpression(node)) {
146
+ return this.elementAccessExpressionToValueAndStmts(node);
147
+ }
148
+ else if (ts.isNewExpression(node)) {
149
+ return this.newExpressionToValueAndStmts(node);
150
+ }
151
+ else if (ts.isParenthesizedExpression(node)) {
152
+ return this.parenthesizedExpressionToValueAndStmts(node);
153
+ }
154
+ else if (ts.isAsExpression(node)) {
155
+ return this.asExpressionToValueAndStmts(node);
156
+ }
157
+ else if (ts.isNonNullExpression(node)) {
158
+ return this.nonNullExpressionToValueAndStmts(node);
159
+ }
160
+ else if (ts.isTypeAssertionExpression(node)) {
161
+ return this.typeAssertionToValueAndStmts(node);
162
+ }
163
+ else if (ts.isTypeOfExpression(node)) {
164
+ return this.typeOfExpressionToValueAndStmts(node);
165
+ }
166
+ else if (ts.isArrayLiteralExpression(node)) {
167
+ return this.arrayLiteralExpressionToValueAndStmts(node);
168
+ }
169
+ else if (this.isLiteralNode(node)) {
170
+ return this.literalNodeToValueAndStmts(node);
171
+ }
172
+ else if (ts.isArrowFunction(node) || ts.isFunctionExpression(node)) {
173
+ return this.callableNodeToValueAndStmts(node);
174
+ }
175
+ else if (ts.isClassExpression(node)) {
176
+ return this.classExpressionToValueAndStmts(node);
177
+ }
178
+ else if (ts.isEtsComponentExpression(node)) {
179
+ return this.etsComponentExpressionToValueAndStmts(node);
180
+ }
181
+ else if (ts.isObjectLiteralExpression(node)) {
182
+ return this.objectLiteralExpresionToValueAndStmts(node);
183
+ }
184
+ else if (node.kind === ts.SyntaxKind.ThisKeyword) {
185
+ return this.thisExpressionToValueAndStmts(node);
186
+ }
187
+ else if (node.kind === ts.SyntaxKind.SuperKeyword) {
188
+ return this.superExpressionToValueAndStmts(node);
189
+ }
190
+ else if (ts.isConditionalExpression(node)) {
191
+ return this.conditionalExpressionToValueAndStmts(node);
192
+ }
193
+ else if (ts.isSpreadElement(node)) {
194
+ return this.tsNodeToValueAndStmts(node.expression);
195
+ }
196
+ return {
197
+ value: new Local_1.Local(node.getText(this.sourceFile)),
198
+ valueOriginalPositions: [Position_1.FullPosition.buildFromNode(node, this.sourceFile)],
199
+ stmts: [],
200
+ };
201
+ }
202
+ tsNodeToSingleAddressValueAndStmts(node) {
203
+ const allStmts = [];
204
+ let { value, valueOriginalPositions, stmts } = this.tsNodeToValueAndStmts(node);
205
+ stmts.forEach(stmt => allStmts.push(stmt));
206
+ if (IRUtils_1.IRUtils.moreThanOneAddress(value)) {
207
+ ({
208
+ value,
209
+ valueOriginalPositions,
210
+ stmts,
211
+ } = this.arkIRTransformer.generateAssignStmtForValue(value, valueOriginalPositions));
212
+ stmts.forEach(stmt => allStmts.push(stmt));
213
+ }
214
+ return { value, valueOriginalPositions, stmts: allStmts };
215
+ }
216
+ thisExpressionToValueAndStmts(thisExpression) {
217
+ return {
218
+ value: this.getThisLocal(),
219
+ valueOriginalPositions: [Position_1.FullPosition.buildFromNode(thisExpression, this.sourceFile)],
220
+ stmts: [],
221
+ };
222
+ }
223
+ superExpressionToValueAndStmts(superExpression) {
224
+ return {
225
+ value: this.getOrCreateLocal(TSConst_1.SUPER_NAME),
226
+ valueOriginalPositions: [Position_1.FullPosition.buildFromNode(superExpression, this.sourceFile)],
227
+ stmts: [],
228
+ };
229
+ }
230
+ conditionalExpressionToValueAndStmts(conditionalExpression) {
231
+ const stmts = [];
232
+ const currConditionalOperatorIndex = this.conditionalOperatorNo++;
233
+ const { value: conditionValue, valueOriginalPositions: conditionPositions, stmts: conditionStmts, } = this.conditionToValueAndStmts(conditionalExpression.condition);
234
+ conditionStmts.forEach(stmt => stmts.push(stmt));
235
+ const ifStmt = new Stmt_1.ArkIfStmt(conditionValue);
236
+ ifStmt.setOperandOriginalPositions(conditionPositions);
237
+ stmts.push(ifStmt);
238
+ stmts.push(new ArkIRTransformer_1.DummyStmt(ArkIRTransformer_1.ArkIRTransformer.DUMMY_CONDITIONAL_OPERATOR_IF_TRUE_STMT + currConditionalOperatorIndex));
239
+ const { value: whenTrueValue, valueOriginalPositions: whenTruePositions, stmts: whenTrueStmts, } = this.tsNodeToValueAndStmts(conditionalExpression.whenTrue);
240
+ whenTrueStmts.forEach(stmt => stmts.push(stmt));
241
+ const resultLocal = this.generateTempLocal();
242
+ const assignStmtWhenTrue = new Stmt_1.ArkAssignStmt(resultLocal, whenTrueValue);
243
+ const resultLocalPosition = [whenTruePositions[0]];
244
+ assignStmtWhenTrue.setOperandOriginalPositions([...resultLocalPosition, ...whenTruePositions]);
245
+ stmts.push(assignStmtWhenTrue);
246
+ stmts.push(new ArkIRTransformer_1.DummyStmt(ArkIRTransformer_1.ArkIRTransformer.DUMMY_CONDITIONAL_OPERATOR_IF_FALSE_STMT + currConditionalOperatorIndex));
247
+ const { value: whenFalseValue, valueOriginalPositions: whenFalsePositions, stmts: whenFalseStmts, } = this.tsNodeToValueAndStmts(conditionalExpression.whenFalse);
248
+ whenFalseStmts.forEach(stmt => stmts.push(stmt));
249
+ const assignStmt = new Stmt_1.ArkAssignStmt(resultLocal, whenFalseValue);
250
+ assignStmt.setOperandOriginalPositions([...resultLocalPosition, ...whenFalsePositions]);
251
+ stmts.push(assignStmt);
252
+ stmts.push(new ArkIRTransformer_1.DummyStmt(ArkIRTransformer_1.ArkIRTransformer.DUMMY_CONDITIONAL_OPERATOR_END_STMT + currConditionalOperatorIndex));
253
+ return {
254
+ value: resultLocal,
255
+ valueOriginalPositions: resultLocalPosition,
256
+ stmts: stmts,
257
+ };
258
+ }
259
+ objectLiteralExpresionToValueAndStmts(objectLiteralExpression) {
260
+ const declaringArkClass = this.declaringMethod.getDeclaringArkClass();
261
+ const declaringArkNamespace = declaringArkClass.getDeclaringArkNamespace();
262
+ const anonymousClass = new ArkClass_1.ArkClass();
263
+ if (declaringArkNamespace) {
264
+ (0, ArkClassBuilder_1.buildNormalArkClassFromArkNamespace)(objectLiteralExpression, declaringArkNamespace, anonymousClass, this.sourceFile, this.declaringMethod);
265
+ }
266
+ else {
267
+ const declaringArkFile = declaringArkClass.getDeclaringArkFile();
268
+ (0, ArkClassBuilder_1.buildNormalArkClassFromArkFile)(objectLiteralExpression, declaringArkFile, anonymousClass, this.sourceFile, this.declaringMethod);
269
+ }
270
+ const objectLiteralExpressionPosition = Position_1.FullPosition.buildFromNode(objectLiteralExpression, this.sourceFile);
271
+ const stmts = [];
272
+ const anonymousClassSignature = anonymousClass.getSignature();
273
+ const anonymousClassType = new Type_1.ClassType(anonymousClassSignature);
274
+ const newExpr = new Expr_1.ArkNewExpr(anonymousClassType);
275
+ const { value: newExprLocal, valueOriginalPositions: newExprLocalPositions, stmts: newExprStmts, } = this.arkIRTransformer.generateAssignStmtForValue(newExpr, [objectLiteralExpressionPosition]);
276
+ newExprStmts.forEach(stmt => stmts.push(stmt));
277
+ const constructorMethodSubSignature = ArkSignatureBuilder_1.ArkSignatureBuilder.buildMethodSubSignatureFromMethodName(TSConst_1.CONSTRUCTOR_NAME);
278
+ const constructorMethodSignature = new ArkSignature_1.MethodSignature(anonymousClassSignature, constructorMethodSubSignature);
279
+ const constructorInvokeExpr = new Expr_1.ArkInstanceInvokeExpr(newExprLocal, constructorMethodSignature, []);
280
+ const assignStmt = new Stmt_1.ArkAssignStmt(newExprLocal, constructorInvokeExpr);
281
+ const assignStmtPositions = [newExprLocalPositions[0], newExprLocalPositions[0], ...newExprLocalPositions];
282
+ assignStmt.setOperandOriginalPositions(assignStmtPositions);
283
+ stmts.push(assignStmt);
284
+ return { value: newExprLocal, valueOriginalPositions: assignStmtPositions, stmts: stmts };
285
+ }
286
+ generateSystemComponentStmt(componentName, args, argPositionsAllFlat, componentExpression, currStmts) {
287
+ const stmts = [...currStmts];
288
+ const componentExpressionPosition = Position_1.FullPosition.buildFromNode(componentExpression, this.sourceFile);
289
+ const { value: componentValue, valueOriginalPositions: componentPositions, stmts: componentStmts, } = this.generateComponentCreationStmts(componentName, args, componentExpressionPosition, argPositionsAllFlat);
290
+ componentStmts.forEach(stmt => stmts.push(stmt));
291
+ if (ts.isEtsComponentExpression(componentExpression) && componentExpression.body) {
292
+ for (const statement of componentExpression.body.statements) {
293
+ this.arkIRTransformer.tsNodeToStmts(statement).forEach(stmt => stmts.push(stmt));
294
+ }
295
+ }
296
+ stmts.push(this.generateComponentPopStmts(componentName, componentExpressionPosition));
297
+ return {
298
+ value: componentValue,
299
+ valueOriginalPositions: componentPositions,
300
+ stmts: stmts,
301
+ };
302
+ }
303
+ generateCustomViewStmt(componentName, args, argPositionsAllFlat, componentExpression, currStmts) {
304
+ const stmts = [...currStmts];
305
+ const componentExpressionPosition = Position_1.FullPosition.buildFromNode(componentExpression, this.sourceFile);
306
+ const classSignature = ArkSignatureBuilder_1.ArkSignatureBuilder.buildClassSignatureFromClassName(componentName);
307
+ const classType = new Type_1.ClassType(classSignature);
308
+ const newExpr = new Expr_1.ArkNewExpr(classType);
309
+ const { value: newExprLocal, valueOriginalPositions: newExprPositions, stmts: newExprStmts, } = this.arkIRTransformer.generateAssignStmtForValue(newExpr, [componentExpressionPosition]);
310
+ newExprStmts.forEach(stmt => stmts.push(stmt));
311
+ const constructorMethodSubSignature = ArkSignatureBuilder_1.ArkSignatureBuilder.buildMethodSubSignatureFromMethodName(TSConst_1.CONSTRUCTOR_NAME);
312
+ const constructorMethodSignature = new ArkSignature_1.MethodSignature(classSignature, constructorMethodSubSignature);
313
+ const instanceInvokeExpr = new Expr_1.ArkInstanceInvokeExpr(newExprLocal, constructorMethodSignature, args);
314
+ const assignStmt = new Stmt_1.ArkAssignStmt(newExprLocal, instanceInvokeExpr);
315
+ const assignStmtPositions = [componentExpressionPosition, componentExpressionPosition, ...newExprPositions, ...argPositionsAllFlat];
316
+ assignStmt.setOperandOriginalPositions(assignStmtPositions);
317
+ stmts.push(assignStmt);
318
+ const createViewArgs = [newExprLocal];
319
+ const createViewArgPositionsAll = [newExprPositions];
320
+ if (ts.isEtsComponentExpression(componentExpression) && componentExpression.body) {
321
+ const anonymous = ts.factory.createArrowFunction([], [], [], undefined, undefined, componentExpression.body);
322
+ // @ts-expect-error: add pos info for the created ArrowFunction
323
+ anonymous.pos = componentExpression.body.pos;
324
+ // @ts-expect-error: add end info for the created ArrowFunction
325
+ anonymous.end = componentExpression.body.end;
326
+ const { value: builderMethod, valueOriginalPositions: builderMethodPositions, } = this.callableNodeToValueAndStmts(anonymous);
327
+ createViewArgs.push(builderMethod);
328
+ createViewArgPositionsAll.push(builderMethodPositions);
329
+ }
330
+ const { value: componentValue, valueOriginalPositions: componentPositions, stmts: componentStmts, } = this.generateComponentCreationStmts(EtsConst_1.COMPONENT_CUSTOMVIEW, createViewArgs, componentExpressionPosition, createViewArgPositionsAll.flat());
331
+ componentStmts.forEach(stmt => stmts.push(stmt));
332
+ stmts.push(this.generateComponentPopStmts(EtsConst_1.COMPONENT_CUSTOMVIEW, componentExpressionPosition));
333
+ return {
334
+ value: componentValue,
335
+ valueOriginalPositions: componentPositions,
336
+ stmts: stmts,
337
+ };
338
+ }
339
+ generateComponentCreationStmts(componentName, createArgs, componentExpressionPosition, createArgsPositionsAllFlat) {
340
+ const createMethodSignature = ArkSignatureBuilder_1.ArkSignatureBuilder.buildMethodSignatureFromClassNameAndMethodName(componentName, EtsConst_1.COMPONENT_CREATE_FUNCTION);
341
+ const createInvokeExpr = new Expr_1.ArkStaticInvokeExpr(createMethodSignature, createArgs);
342
+ const createInvokeExprPositions = [componentExpressionPosition, ...createArgsPositionsAllFlat];
343
+ const { value: componentValue, valueOriginalPositions: componentPositions, stmts: componentStmts, } = this.arkIRTransformer.generateAssignStmtForValue(createInvokeExpr, createInvokeExprPositions);
344
+ return {
345
+ value: componentValue,
346
+ valueOriginalPositions: componentPositions,
347
+ stmts: componentStmts,
348
+ };
349
+ }
350
+ generateComponentPopStmts(componentName, componentExpressionPosition) {
351
+ var _a;
352
+ let popMethodSignature = ModelUtils_1.ModelUtils.popMethodSignatureCache.get(componentName);
353
+ if (!popMethodSignature) {
354
+ const cls = this.declaringMethod.getDeclaringArkFile().getScene().getSdkGlobal(EtsConst_1.COMMON_METHOD);
355
+ if (cls instanceof ArkClass_1.ArkClass) {
356
+ const commonSignature = (_a = cls.getMethodWithName(EtsConst_1.COMPONENT_POP_FUNCTION)) === null || _a === void 0 ? void 0 : _a.getSignature();
357
+ if (commonSignature) {
358
+ const classSignature = new ArkSignature_1.AliasClassSignature(componentName, commonSignature.getDeclaringClassSignature());
359
+ popMethodSignature = new ArkSignature_1.MethodSignature(classSignature, commonSignature.getMethodSubSignature());
360
+ }
361
+ }
362
+ popMethodSignature = popMethodSignature !== null && popMethodSignature !== void 0 ? popMethodSignature : ArkSignatureBuilder_1.ArkSignatureBuilder.buildMethodSignatureFromClassNameAndMethodName(componentName, EtsConst_1.COMPONENT_POP_FUNCTION);
363
+ ModelUtils_1.ModelUtils.popMethodSignatureCache.set(componentName, popMethodSignature);
364
+ }
365
+ const popInvokeExpr = new Expr_1.ArkStaticInvokeExpr(popMethodSignature, []);
366
+ const popInvokeStmt = new Stmt_1.ArkInvokeStmt(popInvokeExpr);
367
+ if (componentExpressionPosition) {
368
+ popInvokeStmt.setOperandOriginalPositions([componentExpressionPosition]);
369
+ }
370
+ return popInvokeStmt;
371
+ }
372
+ etsComponentExpressionToValueAndStmts(etsComponentExpression) {
373
+ const stmts = [];
374
+ const componentName = etsComponentExpression.expression.text;
375
+ const { argValues: argValues, argPositions: argPositions, } = this.parseArguments(stmts, etsComponentExpression.arguments);
376
+ if ((0, EtsConst_1.isEtsSystemComponent)(componentName)) {
377
+ return this.generateSystemComponentStmt(componentName, argValues, argPositions, etsComponentExpression, stmts);
378
+ }
379
+ return this.generateCustomViewStmt(componentName, argValues, argPositions, etsComponentExpression, stmts);
380
+ }
381
+ classExpressionToValueAndStmts(classExpression) {
382
+ const declaringArkClass = this.declaringMethod.getDeclaringArkClass();
383
+ const declaringArkNamespace = declaringArkClass.getDeclaringArkNamespace();
384
+ const newClass = new ArkClass_1.ArkClass();
385
+ if (declaringArkNamespace) {
386
+ (0, ArkClassBuilder_1.buildNormalArkClassFromArkNamespace)(classExpression, declaringArkNamespace, newClass, this.sourceFile, this.declaringMethod);
387
+ }
388
+ else {
389
+ const declaringArkFile = declaringArkClass.getDeclaringArkFile();
390
+ (0, ArkClassBuilder_1.buildNormalArkClassFromArkFile)(classExpression, declaringArkFile, newClass, this.sourceFile, this.declaringMethod);
391
+ }
392
+ const classValue = this.addNewLocal(newClass.getName(), new Type_1.ClassType(newClass.getSignature()));
393
+ return {
394
+ value: classValue,
395
+ valueOriginalPositions: [Position_1.FullPosition.buildFromNode(classExpression, this.sourceFile)],
396
+ stmts: [],
397
+ };
398
+ }
399
+ templateExpressionToValueAndStmts(templateExpression) {
400
+ const { stmts, stringTextValues, placeholderValues, stringTextPositions, placeholderPositions, } = this.collectTemplateValues(templateExpression);
401
+ const { placeholderStringLocals, placeholderStringLocalPositions, newStmts } = this.processTemplatePlaceholders(placeholderValues, placeholderPositions, stmts);
402
+ return this.combineTemplateParts(stringTextValues, stringTextPositions, placeholderStringLocals, placeholderStringLocalPositions, newStmts);
403
+ }
404
+ processTemplatePlaceholders(placeholderValues, placeholderPositions, currStmts) {
405
+ const placeholderStringLocals = [];
406
+ const placeholderStringLocalPositions = [];
407
+ const newStmts = [...currStmts];
408
+ for (let i = 0; i < placeholderValues.length; i++) {
409
+ let placeholderValue = placeholderValues[i];
410
+ let placeholderPosition = [placeholderPositions[i]];
411
+ let placeholderStmts = [];
412
+ if (!(placeholderValue instanceof Local_1.Local)) {
413
+ ({
414
+ value: placeholderValue,
415
+ valueOriginalPositions: placeholderPosition,
416
+ stmts: placeholderStmts,
417
+ } = this.arkIRTransformer.generateAssignStmtForValue(placeholderValue, placeholderPosition));
418
+ }
419
+ placeholderStmts.forEach(stmt => newStmts.push(stmt));
420
+ const toStringExpr = new Expr_1.ArkInstanceInvokeExpr(placeholderValue, Builtin_1.Builtin.TO_STRING_METHOD_SIGNATURE, []);
421
+ const toStringExprPosition = [placeholderPosition[0], placeholderPosition[0]];
422
+ const { value: placeholderStringLocal, valueOriginalPositions: placeholderStringPositions, stmts: toStringStmts, } = this.arkIRTransformer.generateAssignStmtForValue(toStringExpr, toStringExprPosition);
423
+ placeholderStringLocals.push(placeholderStringLocal);
424
+ placeholderStringLocalPositions.push(placeholderStringPositions[0]);
425
+ toStringStmts.forEach(stmt => newStmts.push(stmt));
426
+ }
427
+ return {
428
+ placeholderStringLocals,
429
+ placeholderStringLocalPositions,
430
+ newStmts,
431
+ };
432
+ }
433
+ combineTemplateParts(stringTextValues, stringTextPositions, placeholderStringLocals, placeholderStringLocalPositions, currStmts) {
434
+ const templateParts = [];
435
+ const templatePartPositions = [];
436
+ for (let i = 0; i < placeholderStringLocals.length; i++) {
437
+ if (stringTextValues[i] !== ValueUtil_1.ValueUtil.EMPTY_STRING_CONSTANT) {
438
+ templateParts.push(stringTextValues[i]);
439
+ templatePartPositions.push(stringTextPositions[i]);
440
+ }
441
+ templateParts.push(placeholderStringLocals[i]);
442
+ templatePartPositions.push(placeholderStringLocalPositions[i]);
443
+ }
444
+ if (stringTextValues[stringTextValues.length - 1] !== ValueUtil_1.ValueUtil.EMPTY_STRING_CONSTANT) {
445
+ templateParts.push(stringTextValues[stringTextValues.length - 1]);
446
+ templatePartPositions.push(stringTextPositions[stringTextPositions.length - 1]);
447
+ }
448
+ let currTemplateResult = templateParts[0];
449
+ let currTemplateResultPosition = templatePartPositions[0];
450
+ const finalStmts = [...currStmts];
451
+ for (let i = 1; i < templateParts.length; i++) {
452
+ const nextTemplatePartPosition = templatePartPositions[i];
453
+ const normalBinopExpr = new Expr_1.ArkNormalBinopExpr(currTemplateResult, templateParts[i], Expr_1.NormalBinaryOperator.Addition);
454
+ const normalBinopExprPositions = [
455
+ Position_1.FullPosition.merge(currTemplateResultPosition, nextTemplatePartPosition),
456
+ currTemplateResultPosition,
457
+ nextTemplatePartPosition,
458
+ ];
459
+ const { value: combinationValue, valueOriginalPositions: combinationValuePositions, stmts: combinationStmts, } = this.arkIRTransformer.generateAssignStmtForValue(normalBinopExpr, normalBinopExprPositions);
460
+ combinationStmts.forEach(stmt => finalStmts.push(stmt));
461
+ currTemplateResult = combinationValue;
462
+ currTemplateResultPosition = combinationValuePositions[0];
463
+ }
464
+ return {
465
+ value: currTemplateResult,
466
+ valueOriginalPositions: [currTemplateResultPosition],
467
+ stmts: finalStmts,
468
+ };
469
+ }
470
+ taggedTemplateExpressionToValueAndStmts(taggedTemplateExpression) {
471
+ const { stmts, stringTextValues, placeholderValues, stringTextPositions, placeholderPositions, } = this.collectTemplateValues(taggedTemplateExpression.template);
472
+ const stringTextBaseType = Type_1.StringType.getInstance();
473
+ const stringTextArrayLen = stringTextValues.length;
474
+ const stringTextArrayLenValue = ValueUtil_1.ValueUtil.getOrCreateNumberConst(stringTextArrayLen);
475
+ const stringTextArrayLenPosition = Position_1.FullPosition.DEFAULT;
476
+ const { value: templateObjectLocal, valueOriginalPositions: templateObjectLocalPositions, stmts: templateObjectStmts, } = this.generateArrayExprAndStmts(stringTextBaseType, stringTextArrayLenValue, stringTextArrayLenPosition, stringTextArrayLen, stringTextValues, stringTextPositions, stmts, Position_1.FullPosition.DEFAULT, true);
477
+ const placeholderBaseType = Type_1.AnyType.getInstance();
478
+ const placeholdersArrayLen = placeholderValues.length;
479
+ const placeholdersArrayLenValue = ValueUtil_1.ValueUtil.getOrCreateNumberConst(placeholdersArrayLen);
480
+ const placeholdersArrayLenPosition = Position_1.FullPosition.DEFAULT;
481
+ const { value: placeholdersLocal, valueOriginalPositions: placeholdersLocalPositions, stmts: placeholdersStmts, } = this.generateArrayExprAndStmts(placeholderBaseType, placeholdersArrayLenValue, placeholdersArrayLenPosition, placeholdersArrayLen, placeholderValues, placeholderPositions, templateObjectStmts, Position_1.FullPosition.DEFAULT, true);
482
+ const taggedFuncArgus = {
483
+ realGenericTypes: undefined, argValues: [templateObjectLocal, placeholdersLocal],
484
+ argPositions: [templateObjectLocalPositions[0], placeholdersLocalPositions[0]],
485
+ };
486
+ return this.generateInvokeValueAndStmts(taggedTemplateExpression.tag, taggedFuncArgus, placeholdersStmts, taggedTemplateExpression);
487
+ }
488
+ collectTemplateValues(templateLiteral) {
489
+ const stmts = [];
490
+ if (ts.isNoSubstitutionTemplateLiteral(templateLiteral)) {
491
+ const templateLiteralString = templateLiteral.getText(this.sourceFile);
492
+ return {
493
+ stmts: [],
494
+ stringTextValues: [ValueUtil_1.ValueUtil.createStringConst(templateLiteralString)],
495
+ placeholderValues: [],
496
+ stringTextPositions: [Position_1.FullPosition.buildFromNode(templateLiteral, this.sourceFile)],
497
+ placeholderPositions: [],
498
+ };
499
+ }
500
+ const head = templateLiteral.head;
501
+ const stringTextValues = [ValueUtil_1.ValueUtil.createStringConst(head.rawText || '')];
502
+ const placeholderValues = [];
503
+ const stringTextPositions = [Position_1.FullPosition.buildFromNode(head, this.sourceFile)];
504
+ const placeholderPositions = [];
505
+ for (const templateSpan of templateLiteral.templateSpans) {
506
+ let { value: exprValue, valueOriginalPositions: exprPositions, stmts: exprStmts, } = this.tsNodeToValueAndStmts(templateSpan.expression);
507
+ exprStmts.forEach(stmt => stmts.push(stmt));
508
+ if (IRUtils_1.IRUtils.moreThanOneAddress(exprValue)) {
509
+ ({
510
+ value: exprValue,
511
+ valueOriginalPositions: exprPositions,
512
+ stmts: exprStmts,
513
+ } = this.arkIRTransformer.generateAssignStmtForValue(exprValue, exprPositions));
514
+ exprStmts.forEach(stmt => stmts.push(stmt));
515
+ }
516
+ placeholderValues.push(exprValue);
517
+ placeholderPositions.push(exprPositions[0]);
518
+ stringTextPositions.push(Position_1.FullPosition.buildFromNode(templateSpan.literal, this.sourceFile));
519
+ stringTextValues.push(ValueUtil_1.ValueUtil.createStringConst(templateSpan.literal.rawText || ''));
520
+ }
521
+ return {
522
+ stmts,
523
+ stringTextValues,
524
+ placeholderValues,
525
+ stringTextPositions,
526
+ placeholderPositions,
527
+ };
528
+ }
529
+ identifierToValueAndStmts(identifier, variableDefFlag = false) {
530
+ let identifierValue;
531
+ let identifierPositions = [Position_1.FullPosition.buildFromNode(identifier, this.sourceFile)];
532
+ if (identifier.text === Type_1.UndefinedType.getInstance().getName()) {
533
+ identifierValue = ValueUtil_1.ValueUtil.getUndefinedConst();
534
+ }
535
+ else {
536
+ if (variableDefFlag) {
537
+ identifierValue = this.addNewLocal(identifier.text);
538
+ }
539
+ else {
540
+ identifierValue = this.getOrCreateLocal(identifier.text);
541
+ }
542
+ }
543
+ return {
544
+ value: identifierValue,
545
+ valueOriginalPositions: identifierPositions,
546
+ stmts: [],
547
+ };
548
+ }
549
+ propertyAccessExpressionToValue(propertyAccessExpression) {
550
+ const stmts = [];
551
+ let { value: baseValue, valueOriginalPositions: basePositions, stmts: baseStmts, } = this.tsNodeToValueAndStmts(propertyAccessExpression.expression);
552
+ baseStmts.forEach(stmt => stmts.push(stmt));
553
+ if (IRUtils_1.IRUtils.moreThanOneAddress(baseValue)) {
554
+ ({
555
+ value: baseValue,
556
+ valueOriginalPositions: basePositions,
557
+ stmts: baseStmts,
558
+ } = this.arkIRTransformer.generateAssignStmtForValue(baseValue, basePositions));
559
+ baseStmts.forEach(stmt => stmts.push(stmt));
560
+ }
561
+ if (!(baseValue instanceof Local_1.Local)) {
562
+ ({
563
+ value: baseValue,
564
+ valueOriginalPositions: basePositions,
565
+ stmts: baseStmts,
566
+ } = this.arkIRTransformer.generateAssignStmtForValue(baseValue, basePositions));
567
+ baseStmts.forEach(stmt => stmts.push(stmt));
568
+ }
569
+ const fieldRefPositions = [Position_1.FullPosition.buildFromNode(propertyAccessExpression, this.sourceFile), ...basePositions];
570
+ // this if for the case: const obj: Object = Object.create(Object.prototype);
571
+ if (baseValue instanceof Local_1.Local && baseValue.getName() === Builtin_1.Builtin.OBJECT) {
572
+ this.locals.delete(baseValue.getName());
573
+ const fieldSignature = new ArkSignature_1.FieldSignature(propertyAccessExpression.name.getText(this.sourceFile), Builtin_1.Builtin.OBJECT_CLASS_SIGNATURE, Type_1.UnknownType.getInstance(), true);
574
+ const fieldRef = new Ref_1.ArkStaticFieldRef(fieldSignature);
575
+ return {
576
+ value: fieldRef,
577
+ valueOriginalPositions: fieldRefPositions,
578
+ stmts: stmts,
579
+ };
580
+ }
581
+ let fieldSignature;
582
+ if (baseValue instanceof Local_1.Local && baseValue.getType() instanceof Type_1.ClassType) {
583
+ fieldSignature = new ArkSignature_1.FieldSignature(propertyAccessExpression.name.getText(this.sourceFile), baseValue.getType().getClassSignature(), Type_1.UnknownType.getInstance());
584
+ }
585
+ else {
586
+ fieldSignature = ArkSignatureBuilder_1.ArkSignatureBuilder.buildFieldSignatureFromFieldName(propertyAccessExpression.name.getText(this.sourceFile));
587
+ }
588
+ const fieldRef = new Ref_1.ArkInstanceFieldRef(baseValue, fieldSignature);
589
+ return {
590
+ value: fieldRef,
591
+ valueOriginalPositions: fieldRefPositions,
592
+ stmts: stmts,
593
+ };
594
+ }
595
+ elementAccessExpressionToValueAndStmts(elementAccessExpression) {
596
+ const stmts = [];
597
+ let { value: baseValue, valueOriginalPositions: basePositions, stmts: baseStmts, } = this.tsNodeToValueAndStmts(elementAccessExpression.expression);
598
+ baseStmts.forEach(stmt => stmts.push(stmt));
599
+ if (!(baseValue instanceof Local_1.Local)) {
600
+ ({
601
+ value: baseValue,
602
+ valueOriginalPositions: basePositions,
603
+ stmts: baseStmts,
604
+ } = this.arkIRTransformer.generateAssignStmtForValue(baseValue, basePositions));
605
+ baseStmts.forEach(stmt => stmts.push(stmt));
606
+ }
607
+ let { value: argumentValue, valueOriginalPositions: arguPositions, stmts: argumentStmts, } = this.tsNodeToValueAndStmts(elementAccessExpression.argumentExpression);
608
+ argumentStmts.forEach(stmt => stmts.push(stmt));
609
+ if (IRUtils_1.IRUtils.moreThanOneAddress(argumentValue)) {
610
+ ({
611
+ value: argumentValue,
612
+ valueOriginalPositions: arguPositions,
613
+ stmts: argumentStmts,
614
+ } = this.arkIRTransformer.generateAssignStmtForValue(argumentValue, arguPositions));
615
+ argumentStmts.forEach(stmt => stmts.push(stmt));
616
+ }
617
+ let elementAccessExpr;
618
+ if (baseValue.getType() instanceof Type_1.ArrayType) {
619
+ elementAccessExpr = new Ref_1.ArkArrayRef(baseValue, argumentValue);
620
+ }
621
+ else {
622
+ // TODO: deal with ArkStaticFieldRef
623
+ const fieldSignature = ArkSignatureBuilder_1.ArkSignatureBuilder.buildFieldSignatureFromFieldName(argumentValue.toString());
624
+ elementAccessExpr = new Ref_1.ArkInstanceFieldRef(baseValue, fieldSignature, true);
625
+ }
626
+ // reserve positions for field name
627
+ const exprPositions = [Position_1.FullPosition.buildFromNode(elementAccessExpression, this.sourceFile), ...basePositions, ...arguPositions];
628
+ return {
629
+ value: elementAccessExpr,
630
+ valueOriginalPositions: exprPositions,
631
+ stmts: stmts,
632
+ };
633
+ }
634
+ callExpressionToValueAndStmts(callExpression) {
635
+ const stmts = [];
636
+ const argus = this.parseArgumentsOfCallExpression(stmts, callExpression);
637
+ return this.generateInvokeValueAndStmts(callExpression.expression, argus, stmts, callExpression);
638
+ }
639
+ generateInvokeValueAndStmts(functionNameNode, args, currStmts, callExpression) {
640
+ const stmts = [...currStmts];
641
+ const { value: calleeValue, valueOriginalPositions: calleePositions, stmts: calleeStmts } = this.tsNodeToValueAndStmts(functionNameNode);
642
+ stmts.push(...calleeStmts);
643
+ const invokeExprPosition = Position_1.FullPosition.buildFromNode(callExpression, this.sourceFile);
644
+ if (calleeValue instanceof Ref_1.AbstractFieldRef) {
645
+ return this.handleFieldRefInvoke(calleeValue, args, invokeExprPosition, calleePositions, stmts);
646
+ }
647
+ if (calleeValue instanceof Local_1.Local) {
648
+ return this.handleLocalInvoke(calleeValue, callExpression, args, invokeExprPosition, calleePositions, stmts);
649
+ }
650
+ if (calleeValue instanceof Ref_1.ArkArrayRef && ts.isElementAccessExpression(functionNameNode)) {
651
+ return this.handleArrayRefInvoke(calleeValue, functionNameNode, args, invokeExprPosition, calleePositions, stmts);
652
+ }
653
+ return this.handleDefaultInvoke(calleeValue, args, invokeExprPosition, calleePositions, stmts);
654
+ }
655
+ handleFieldRefInvoke(calleeValue, args, invokeExprPosition, calleePositions, currStmts) {
656
+ let methodSignature;
657
+ const declareSignature = calleeValue.getFieldSignature().getDeclaringSignature();
658
+ if (declareSignature instanceof ArkSignature_1.ClassSignature) {
659
+ methodSignature =
660
+ new ArkSignature_1.MethodSignature(declareSignature, ArkSignatureBuilder_1.ArkSignatureBuilder.buildMethodSubSignatureFromMethodName(calleeValue.getFieldName()));
661
+ }
662
+ else {
663
+ methodSignature = ArkSignatureBuilder_1.ArkSignatureBuilder.buildMethodSignatureFromMethodName(calleeValue.getFieldName());
664
+ }
665
+ let invokeExpr;
666
+ const invokeExprPositions = [invokeExprPosition];
667
+ if (calleeValue instanceof Ref_1.ArkInstanceFieldRef) {
668
+ invokeExpr =
669
+ new Expr_1.ArkInstanceInvokeExpr(calleeValue.getBase(), methodSignature, args.argValues, args.realGenericTypes, args.spreadFlags);
670
+ invokeExprPositions.push(...calleePositions.slice(1));
671
+ }
672
+ else {
673
+ invokeExpr = new Expr_1.ArkStaticInvokeExpr(methodSignature, args.argValues, args.realGenericTypes, args.spreadFlags);
674
+ }
675
+ invokeExprPositions.push(...args.argPositions);
676
+ return {
677
+ value: invokeExpr,
678
+ valueOriginalPositions: invokeExprPositions,
679
+ stmts: currStmts,
680
+ };
681
+ }
682
+ handleLocalInvoke(calleeValue, callExpression, args, invokeExprPosition, calleePositions, currStmts) {
683
+ var _a;
684
+ let invokeExpr;
685
+ const invokeExprPositions = [invokeExprPosition];
686
+ const calleeName = calleeValue.getName();
687
+ if (this.isCustomViewCall(calleeName, callExpression)) {
688
+ return this.generateCustomViewStmt(calleeName, args.argValues, args.argPositions, callExpression, currStmts);
689
+ }
690
+ else if (this.isSystemComponentCall(calleeName, callExpression)) {
691
+ return this.generateSystemComponentStmt(calleeName, args.argValues, args.argPositions, callExpression, currStmts);
692
+ }
693
+ const methodSignature = ArkSignatureBuilder_1.ArkSignatureBuilder.buildMethodSignatureFromMethodName(calleeName);
694
+ if (!((_a = this.getGlobals()) === null || _a === void 0 ? void 0 : _a.has(calleeName)) || calleeValue.getType() instanceof Type_1.FunctionType) {
695
+ // the call to the left value or a value of function type should be ptr invoke expr.
696
+ invokeExpr = new Expr_1.ArkPtrInvokeExpr(methodSignature, calleeValue, args.argValues, args.realGenericTypes, args.spreadFlags);
697
+ invokeExprPositions.push(...calleePositions.slice(1));
698
+ }
699
+ else {
700
+ invokeExpr = new Expr_1.ArkStaticInvokeExpr(methodSignature, args.argValues, args.realGenericTypes, args.spreadFlags);
701
+ }
702
+ invokeExprPositions.push(...args.argPositions);
703
+ return {
704
+ value: invokeExpr,
705
+ valueOriginalPositions: invokeExprPositions,
706
+ stmts: currStmts,
707
+ };
708
+ }
709
+ isCustomViewCall(callerName, callExpression) {
710
+ var _a;
711
+ if (!ts.isCallExpression(callExpression)) {
712
+ return false;
713
+ }
714
+ const classSignature = ArkSignatureBuilder_1.ArkSignatureBuilder.buildClassSignatureFromClassName(callerName);
715
+ const cls = ModelUtils_1.ModelUtils.getClass(this.declaringMethod, classSignature);
716
+ return (_a = cls === null || cls === void 0 ? void 0 : cls.hasComponentDecorator()) !== null && _a !== void 0 ? _a : false;
717
+ }
718
+ isSystemComponentCall(calleeName, callExpression) {
719
+ return (calleeName === EtsConst_1.COMPONENT_FOR_EACH || calleeName === EtsConst_1.COMPONENT_LAZY_FOR_EACH) &&
720
+ ts.isCallExpression(callExpression);
721
+ }
722
+ handleArrayRefInvoke(calleeValue, functionNameNode, args, invokeExprPosition, calleePositions, currStmts) {
723
+ const stmts = [...currStmts];
724
+ const methodSignature = ArkSignatureBuilder_1.ArkSignatureBuilder.buildMethodSignatureFromMethodName(functionNameNode.argumentExpression.getText());
725
+ stmts.pop();
726
+ const invokeExpr = new Expr_1.ArkInstanceInvokeExpr(calleeValue.getBase(), methodSignature, args.argValues, args.realGenericTypes, args.spreadFlags);
727
+ const invokeExprPositions = [invokeExprPosition, calleePositions.slice(1)[0],
728
+ ...args.argPositions];
729
+ return {
730
+ value: invokeExpr,
731
+ valueOriginalPositions: invokeExprPositions,
732
+ stmts: stmts,
733
+ };
734
+ }
735
+ handleDefaultInvoke(calleeValue, args, invokeExprPosition, calleePositions, currStmts) {
736
+ const stmts = [...currStmts];
737
+ const { value: newCalleeValue, stmts: newStmts } = this.arkIRTransformer.generateAssignStmtForValue(calleeValue, calleePositions);
738
+ stmts.push(...newStmts);
739
+ const invokeExpr = new Expr_1.ArkPtrInvokeExpr(ArkSignatureBuilder_1.ArkSignatureBuilder.buildMethodSignatureFromMethodName(newCalleeValue.getName()), newCalleeValue, args.argValues, args.realGenericTypes, args.spreadFlags);
740
+ const invokeExprPositions = [invokeExprPosition, calleePositions.slice(1)[0],
741
+ ...args.argPositions];
742
+ return {
743
+ value: invokeExpr,
744
+ valueOriginalPositions: invokeExprPositions,
745
+ stmts: stmts,
746
+ };
747
+ }
748
+ parseArgumentsOfCallExpression(currStmts, callExpression) {
749
+ let realGenericTypes;
750
+ if (callExpression.typeArguments) {
751
+ realGenericTypes = [];
752
+ callExpression.typeArguments.forEach(typeArgument => {
753
+ realGenericTypes.push(this.resolveTypeNode(typeArgument));
754
+ });
755
+ }
756
+ let builderMethodIndexes;
757
+ if (ts.isIdentifier(callExpression.expression)) {
758
+ const callerName = callExpression.expression.text;
759
+ if (callerName === EtsConst_1.COMPONENT_FOR_EACH || callerName === EtsConst_1.COMPONENT_LAZY_FOR_EACH) {
760
+ builderMethodIndexes = new Set([1]);
761
+ }
762
+ }
763
+ const { argValues, argPositions, spreadFlags, } = this.parseArguments(currStmts, callExpression.arguments, builderMethodIndexes);
764
+ return { realGenericTypes, argValues, argPositions, spreadFlags };
765
+ }
766
+ parseArguments(currStmts, argumentNodes, builderMethodIndexes) {
767
+ const argValues = [];
768
+ const argPositions = [];
769
+ let spreadFlags = [];
770
+ if (argumentNodes) {
771
+ spreadFlags = new Array(argumentNodes.length).fill(false);
772
+ for (let i = 0; i < argumentNodes.length; i++) {
773
+ spreadFlags[i] = ts.isSpreadElement(argumentNodes[i]);
774
+ const argument = argumentNodes[i];
775
+ const prevBuilderMethodContextFlag = this.builderMethodContextFlag;
776
+ if (builderMethodIndexes === null || builderMethodIndexes === void 0 ? void 0 : builderMethodIndexes.has(i)) {
777
+ this.builderMethodContextFlag = true;
778
+ this.arkIRTransformer.setBuilderMethodContextFlag(true);
779
+ }
780
+ let { value: argValue, valueOriginalPositions: argPositionsSingle, stmts: argStmts, } = this.tsNodeToSingleAddressValueAndStmts(argument);
781
+ this.builderMethodContextFlag = prevBuilderMethodContextFlag;
782
+ this.arkIRTransformer.setBuilderMethodContextFlag(prevBuilderMethodContextFlag);
783
+ argStmts.forEach(s => currStmts.push(s));
784
+ argValues.push(argValue);
785
+ argPositions.push(argPositionsSingle[0]);
786
+ }
787
+ }
788
+ return {
789
+ argValues,
790
+ argPositions,
791
+ spreadFlags: spreadFlags.every((f) => f === false) ? undefined : spreadFlags,
792
+ };
793
+ }
794
+ callableNodeToValueAndStmts(callableNode) {
795
+ const declaringClass = this.declaringMethod.getDeclaringArkClass();
796
+ const arrowArkMethod = new ArkMethod_1.ArkMethod();
797
+ if (this.builderMethodContextFlag) {
798
+ ModelUtils_1.ModelUtils.implicitArkUIBuilderMethods.add(arrowArkMethod);
799
+ }
800
+ (0, ArkMethodBuilder_1.buildArkMethodFromArkClass)(callableNode, declaringClass, arrowArkMethod, this.sourceFile, this.declaringMethod);
801
+ const callableType = new Type_1.FunctionType(arrowArkMethod.getSignature());
802
+ const callableValue = this.addNewLocal(arrowArkMethod.getName(), callableType);
803
+ return {
804
+ value: callableValue,
805
+ valueOriginalPositions: [Position_1.FullPosition.buildFromNode(callableNode, this.sourceFile)],
806
+ stmts: [],
807
+ };
808
+ }
809
+ newExpressionToValueAndStmts(newExpression) {
810
+ let className = '';
811
+ if (ts.isClassExpression(newExpression.expression) && newExpression.expression.name) {
812
+ className = newExpression.expression.name.text;
813
+ }
814
+ else {
815
+ className = newExpression.expression.getText(this.sourceFile);
816
+ }
817
+ if (className === Builtin_1.Builtin.ARRAY) {
818
+ return this.newArrayExpressionToValueAndStmts(newExpression);
819
+ }
820
+ const stmts = [];
821
+ let realGenericTypes;
822
+ if (newExpression.typeArguments) {
823
+ realGenericTypes = [];
824
+ newExpression.typeArguments.forEach(typeArgument => {
825
+ realGenericTypes.push(this.resolveTypeNode(typeArgument));
826
+ });
827
+ }
828
+ let classSignature = ArkSignatureBuilder_1.ArkSignatureBuilder.buildClassSignatureFromClassName(className);
829
+ let classType = new Type_1.ClassType(classSignature, realGenericTypes);
830
+ if (className === Builtin_1.Builtin.OBJECT) {
831
+ classSignature = Builtin_1.Builtin.OBJECT_CLASS_SIGNATURE;
832
+ classType = Builtin_1.Builtin.OBJECT_CLASS_TYPE;
833
+ }
834
+ const newExpr = new Expr_1.ArkNewExpr(classType);
835
+ const { value: newLocal, valueOriginalPositions: newLocalPositions, stmts: newExprStmts, } = this.arkIRTransformer.generateAssignStmtForValue(newExpr, [Position_1.FullPosition.buildFromNode(newExpression, this.sourceFile)]);
836
+ newExprStmts.forEach(stmt => stmts.push(stmt));
837
+ const constructorMethodSubSignature = ArkSignatureBuilder_1.ArkSignatureBuilder.buildMethodSubSignatureFromMethodName(TSConst_1.CONSTRUCTOR_NAME);
838
+ const constructorMethodSignature = new ArkSignature_1.MethodSignature(classSignature, constructorMethodSubSignature);
839
+ const { argValues: argValues, argPositions: argPositions, } = this.parseArguments(stmts, newExpression.arguments);
840
+ const instanceInvokeExpr = new Expr_1.ArkInstanceInvokeExpr(newLocal, constructorMethodSignature, argValues);
841
+ const assignStmt = new Stmt_1.ArkAssignStmt(newLocal, instanceInvokeExpr);
842
+ const assignStmtPositions = [newLocalPositions[0], newLocalPositions[0], ...newLocalPositions, ...argPositions];
843
+ assignStmt.setOperandOriginalPositions(assignStmtPositions);
844
+ stmts.push(assignStmt);
845
+ return { value: newLocal, valueOriginalPositions: assignStmtPositions, stmts: stmts };
846
+ }
847
+ newArrayExpressionToValueAndStmts(newArrayExpression) {
848
+ let baseType = Type_1.UnknownType.getInstance();
849
+ if (newArrayExpression.typeArguments && newArrayExpression.typeArguments.length > 0) {
850
+ const argumentType = this.resolveTypeNode(newArrayExpression.typeArguments[0]);
851
+ if (!(argumentType instanceof Type_1.AnyType || argumentType instanceof Type_1.UnknownType)) {
852
+ baseType = argumentType;
853
+ }
854
+ }
855
+ const stmts = [];
856
+ const { argValues, argPositions } = this.parseArguments(stmts, newArrayExpression.arguments);
857
+ let argumentsLength = newArrayExpression.arguments ? newArrayExpression.arguments.length : 0;
858
+ let arrayLengthValue;
859
+ let arrayLength = -1;
860
+ let arrayLengthPosition = Position_1.FullPosition.DEFAULT;
861
+ if (argumentsLength === 1 && (argValues[0].getType() instanceof Type_1.NumberType || argValues[0].getType() instanceof Type_1.UnknownType)) {
862
+ arrayLengthValue = argValues[0];
863
+ arrayLengthPosition = argPositions[0];
864
+ }
865
+ else {
866
+ arrayLengthValue = ValueUtil_1.ValueUtil.getOrCreateNumberConst(argumentsLength);
867
+ arrayLength = argumentsLength;
868
+ }
869
+ if (baseType instanceof Type_1.UnknownType) {
870
+ if (argumentsLength > 1 && !(argValues[0].getType() instanceof Type_1.UnknownType)) {
871
+ baseType = argValues[0].getType();
872
+ }
873
+ else {
874
+ baseType = Type_1.AnyType.getInstance();
875
+ }
876
+ }
877
+ const newArrayExprPosition = Position_1.FullPosition.buildFromNode(newArrayExpression, this.sourceFile);
878
+ return this.generateArrayExprAndStmts(baseType, arrayLengthValue, arrayLengthPosition, arrayLength, argValues, argPositions, stmts, newArrayExprPosition, false);
879
+ }
880
+ arrayLiteralExpressionToValueAndStmts(arrayLiteralExpression) {
881
+ const stmts = [];
882
+ const elementTypes = [];
883
+ const elementValues = [];
884
+ const elementPositions = [];
885
+ const arrayLength = arrayLiteralExpression.elements.length;
886
+ let firstSpreadIdx = -1;
887
+ for (let i = 0; i < arrayLength; i++) {
888
+ if (ts.isSpreadElement(arrayLiteralExpression.elements[i]) && firstSpreadIdx === -1) {
889
+ firstSpreadIdx = i;
890
+ }
891
+ const { value: elementValue, valueOriginalPositions: elementPosition, stmts: elementStmts } = this.tsNodeToSingleAddressValueAndStmts(arrayLiteralExpression.elements[i]);
892
+ elementStmts.forEach(stmt => stmts.push(stmt));
893
+ elementValues.push(elementValue);
894
+ elementTypes.push(elementValue.getType());
895
+ elementPositions.push(elementPosition[0]);
896
+ }
897
+ const wholePosition = Position_1.FullPosition.buildFromNode(arrayLiteralExpression, this.sourceFile);
898
+ if (firstSpreadIdx === -1) { // only literal elements
899
+ return this.generateArrayExprFromLiteral(elementValues, elementTypes, elementPositions, wholePosition, 0, arrayLength, stmts);
900
+ }
901
+ else if (firstSpreadIdx === 0) {
902
+ const scene = this.declaringMethod.getDeclaringArkFile().getScene();
903
+ if (arrayLength === 1) { // only spread element
904
+ const sliceMethodSignature = Builtin_1.Builtin.buildArrayMethodSignature(Builtin_1.Builtin.SLICE, scene);
905
+ const sliceInvokeExpr = new Expr_1.ArkInstanceInvokeExpr(elementValues[0], sliceMethodSignature, []);
906
+ const sliceInvokeExprPositions = [wholePosition, elementPositions[0]];
907
+ return { value: sliceInvokeExpr, valueOriginalPositions: sliceInvokeExprPositions, stmts: stmts };
908
+ }
909
+ else { // spread element start
910
+ const concatMethodSignature = Builtin_1.Builtin.buildArrayMethodSignature(Builtin_1.Builtin.CONCAT, scene);
911
+ const concatInvokeExpr = new Expr_1.ArkInstanceInvokeExpr(elementValues[0], concatMethodSignature, elementValues.slice(1));
912
+ const concatInvokeExprPositions = [wholePosition, ...elementPositions];
913
+ return { value: concatInvokeExpr, valueOriginalPositions: concatInvokeExprPositions, stmts: stmts };
914
+ }
915
+ }
916
+ else { // contains spread elements and begins with literal elements.
917
+ const beginLiteralValueAndStmts = this.generateArrayExprFromLiteral(elementValues, elementTypes, elementPositions, wholePosition, 0, firstSpreadIdx, stmts);
918
+ const scene = this.declaringMethod.getDeclaringArkFile().getScene();
919
+ const concatMethodSignature = Builtin_1.Builtin.buildArrayMethodSignature(Builtin_1.Builtin.CONCAT, scene);
920
+ const concatInvokeExpr = new Expr_1.ArkInstanceInvokeExpr(beginLiteralValueAndStmts.value, concatMethodSignature, elementValues.slice(firstSpreadIdx));
921
+ const concatInvokeExprPositions = [wholePosition, beginLiteralValueAndStmts.valueOriginalPositions[0],
922
+ ...elementPositions.slice(firstSpreadIdx)];
923
+ return { value: concatInvokeExpr, valueOriginalPositions: concatInvokeExprPositions, stmts: beginLiteralValueAndStmts.stmts };
924
+ }
925
+ }
926
+ generateArrayExprFromLiteral(elementValues, elementTypes, elementPositions, wholePosition, start, end, currStmts) {
927
+ const elementTypesSet = new Set(elementTypes.slice(start, end));
928
+ let baseType = Type_1.AnyType.getInstance();
929
+ if (elementTypesSet.size === 1) {
930
+ baseType = elementTypes[0];
931
+ }
932
+ else if (elementTypesSet.size > 1) {
933
+ baseType = new Type_1.UnionType(Array.from(elementTypesSet));
934
+ }
935
+ const newArrayExprPosition = (start === end || (end - start) === elementPositions.length)
936
+ ? wholePosition : Position_1.FullPosition.merge(elementPositions[0], elementPositions[end - 1]);
937
+ return this.generateArrayExprAndStmts(baseType, ValueUtil_1.ValueUtil.getOrCreateNumberConst(end - start), Position_1.FullPosition.DEFAULT, end - start, elementValues.slice(start, end), elementPositions.slice(start, end), currStmts, newArrayExprPosition, true);
938
+ }
939
+ generateArrayExprAndStmts(baseType, arrayLengthValue, arrayLengthPosition, arrayLength, initializerValues, initializerPositions, currStmts, newArrayExprPosition, fromLiteral) {
940
+ const stmts = [...currStmts];
941
+ const newArrayExpr = new Expr_1.ArkNewArrayExpr(baseType, arrayLengthValue, fromLiteral);
942
+ const newArrayExprPositions = [newArrayExprPosition, arrayLengthPosition];
943
+ const { value: arrayLocal, valueOriginalPositions: arrayLocalPositions, stmts: arrayStmts, } = this.arkIRTransformer.generateAssignStmtForValue(newArrayExpr, newArrayExprPositions);
944
+ arrayStmts.forEach(stmt => stmts.push(stmt));
945
+ for (let i = 0; i < arrayLength; i++) {
946
+ const indexValue = ValueUtil_1.ValueUtil.getOrCreateNumberConst(i);
947
+ const arrayRef = new Ref_1.ArkArrayRef(arrayLocal, indexValue);
948
+ const arrayRefPositions = [arrayLocalPositions[0], ...arrayLocalPositions, Position_1.FullPosition.DEFAULT];
949
+ const assignStmt = new Stmt_1.ArkAssignStmt(arrayRef, initializerValues[i]);
950
+ assignStmt.setOperandOriginalPositions([...arrayRefPositions, initializerPositions[i]]);
951
+ stmts.push(assignStmt);
952
+ }
953
+ return {
954
+ value: arrayLocal,
955
+ valueOriginalPositions: arrayLocalPositions,
956
+ stmts: stmts,
957
+ };
958
+ }
959
+ prefixUnaryExpressionToValueAndStmts(prefixUnaryExpression) {
960
+ const stmts = [];
961
+ let { value: originOperandValue, valueOriginalPositions: originOperandPositions, stmts: operandStmts, } = this.tsNodeToValueAndStmts(prefixUnaryExpression.operand);
962
+ operandStmts.forEach(stmt => stmts.push(stmt));
963
+ let operandValue;
964
+ let operandPositions;
965
+ if (IRUtils_1.IRUtils.moreThanOneAddress(originOperandValue)) {
966
+ ({
967
+ value: operandValue,
968
+ valueOriginalPositions: operandPositions,
969
+ stmts: operandStmts,
970
+ } = this.arkIRTransformer.generateAssignStmtForValue(originOperandValue, originOperandPositions));
971
+ operandStmts.forEach(stmt => stmts.push(stmt));
972
+ }
973
+ else {
974
+ operandValue = originOperandValue;
975
+ operandPositions = originOperandPositions;
976
+ }
977
+ const operatorToken = prefixUnaryExpression.operator;
978
+ let exprPositions = [Position_1.FullPosition.buildFromNode(prefixUnaryExpression, this.sourceFile)];
979
+ if (operatorToken === ts.SyntaxKind.PlusPlusToken || operatorToken === ts.SyntaxKind.MinusMinusToken) {
980
+ const binaryOperator = operatorToken === ts.SyntaxKind.PlusPlusToken ? Expr_1.NormalBinaryOperator.Addition : Expr_1.NormalBinaryOperator.Subtraction;
981
+ const binopExpr = new Expr_1.ArkNormalBinopExpr(operandValue, ValueUtil_1.ValueUtil.getOrCreateNumberConst(1), binaryOperator);
982
+ exprPositions.push(...operandPositions, Position_1.FullPosition.DEFAULT);
983
+ const assignStmt = new Stmt_1.ArkAssignStmt(operandValue, binopExpr);
984
+ assignStmt.setOperandOriginalPositions([...operandPositions, ...exprPositions]);
985
+ stmts.push(assignStmt);
986
+ if (operandValue !== originOperandValue) {
987
+ const lastAssignStmt = new Stmt_1.ArkAssignStmt(originOperandValue, operandValue);
988
+ lastAssignStmt.setOperandOriginalPositions([...originOperandPositions, ...operandPositions]);
989
+ stmts.push(lastAssignStmt);
990
+ }
991
+ return { value: originOperandValue, valueOriginalPositions: originOperandPositions, stmts: stmts };
992
+ }
993
+ else if (operatorToken === ts.SyntaxKind.PlusToken) {
994
+ return { value: operandValue, valueOriginalPositions: operandPositions, stmts: stmts };
995
+ }
996
+ else {
997
+ let unopExpr;
998
+ const operator = ArkIRTransformer_1.ArkIRTransformer.tokenToUnaryOperator(operatorToken);
999
+ if (operator) {
1000
+ unopExpr = new Expr_1.ArkUnopExpr(operandValue, operator);
1001
+ exprPositions.push(...operandPositions);
1002
+ }
1003
+ else {
1004
+ unopExpr = ValueUtil_1.ValueUtil.getUndefinedConst();
1005
+ exprPositions = [Position_1.FullPosition.DEFAULT];
1006
+ }
1007
+ return { value: unopExpr, valueOriginalPositions: exprPositions, stmts: stmts };
1008
+ }
1009
+ }
1010
+ generateAssignmentForPostfixOperator(operatorToken, postfixUnaryExpression, originOperandValue, originOperandPositions, stmts) {
1011
+ let returnValue;
1012
+ let parent = postfixUnaryExpression.parent;
1013
+ let parentChild = postfixUnaryExpression;
1014
+ while (parent && parent.kind === ts.SyntaxKind.ParenthesizedExpression) {
1015
+ parentChild = parent;
1016
+ parent = parent.parent;
1017
+ }
1018
+ let shouldSkipAssignment = false;
1019
+ if (parent && parent.kind === ts.SyntaxKind.ExpressionStatement) {
1020
+ shouldSkipAssignment = true;
1021
+ }
1022
+ if (parent && parent.kind === ts.SyntaxKind.ForStatement) {
1023
+ const forStatement = parent;
1024
+ const condition = forStatement.condition;
1025
+ if (condition !== parentChild) {
1026
+ shouldSkipAssignment = true;
1027
+ }
1028
+ }
1029
+ if (!shouldSkipAssignment) {
1030
+ let { value: tempValue, valueOriginalPositions: _, stmts: tempStmt, } = this.arkIRTransformer.generateAssignStmtForValue(originOperandValue, originOperandPositions);
1031
+ tempStmt.forEach(stmt => stmts.push(stmt));
1032
+ returnValue = tempValue;
1033
+ }
1034
+ return returnValue;
1035
+ }
1036
+ postfixUnaryExpressionToValueAndStmts(postfixUnaryExpression) {
1037
+ let stmts = [];
1038
+ let { value: originOperandValue, valueOriginalPositions: originOperandPositions, stmts: exprStmts, } = this.tsNodeToValueAndStmts(postfixUnaryExpression.operand);
1039
+ exprStmts.forEach(stmt => stmts.push(stmt));
1040
+ let operandValue;
1041
+ let operandPositions;
1042
+ if (IRUtils_1.IRUtils.moreThanOneAddress(originOperandValue)) {
1043
+ ({
1044
+ value: operandValue,
1045
+ valueOriginalPositions: operandPositions,
1046
+ stmts: exprStmts,
1047
+ } = this.arkIRTransformer.generateAssignStmtForValue(originOperandValue, originOperandPositions));
1048
+ exprStmts.forEach(stmt => stmts.push(stmt));
1049
+ }
1050
+ else {
1051
+ operandValue = originOperandValue;
1052
+ operandPositions = originOperandPositions;
1053
+ }
1054
+ let exprPositions = [Position_1.FullPosition.buildFromNode(postfixUnaryExpression, this.sourceFile)];
1055
+ const operatorToken = postfixUnaryExpression.operator;
1056
+ if (operatorToken === ts.SyntaxKind.PlusPlusToken || operatorToken === ts.SyntaxKind.MinusMinusToken) {
1057
+ let returnValue = this.generateAssignmentForPostfixOperator(operatorToken, postfixUnaryExpression, originOperandValue, originOperandPositions, stmts);
1058
+ const binaryOperator = operatorToken === ts.SyntaxKind.PlusPlusToken ? Expr_1.NormalBinaryOperator.Addition : Expr_1.NormalBinaryOperator.Subtraction;
1059
+ const binopExpr = new Expr_1.ArkNormalBinopExpr(operandValue, ValueUtil_1.ValueUtil.getOrCreateNumberConst(1), binaryOperator);
1060
+ exprPositions.push(...operandPositions, Position_1.FullPosition.DEFAULT);
1061
+ const assignStmt = new Stmt_1.ArkAssignStmt(operandValue, binopExpr);
1062
+ assignStmt.setOperandOriginalPositions([...operandPositions, ...exprPositions]);
1063
+ stmts.push(assignStmt);
1064
+ if (operandValue !== originOperandValue) {
1065
+ const lastAssignStmt = new Stmt_1.ArkAssignStmt(originOperandValue, operandValue);
1066
+ lastAssignStmt.setOperandOriginalPositions([...originOperandPositions, ...operandPositions]);
1067
+ stmts.push(lastAssignStmt);
1068
+ }
1069
+ if (returnValue === undefined) {
1070
+ returnValue = originOperandValue;
1071
+ }
1072
+ return {
1073
+ value: returnValue, valueOriginalPositions: originOperandPositions, stmts: stmts,
1074
+ };
1075
+ }
1076
+ return {
1077
+ value: ValueUtil_1.ValueUtil.getUndefinedConst(),
1078
+ valueOriginalPositions: [Position_1.FullPosition.DEFAULT],
1079
+ stmts: stmts,
1080
+ };
1081
+ }
1082
+ awaitExpressionToValueAndStmts(awaitExpression) {
1083
+ const stmts = [];
1084
+ let { value: promiseValue, valueOriginalPositions: promisePositions, stmts: promiseStmts, } = this.tsNodeToValueAndStmts(awaitExpression.expression);
1085
+ promiseStmts.forEach(stmt => stmts.push(stmt));
1086
+ if (IRUtils_1.IRUtils.moreThanOneAddress(promiseValue)) {
1087
+ ({
1088
+ value: promiseValue,
1089
+ valueOriginalPositions: promisePositions,
1090
+ stmts: promiseStmts,
1091
+ } = this.arkIRTransformer.generateAssignStmtForValue(promiseValue, promisePositions));
1092
+ promiseStmts.forEach(stmt => stmts.push(stmt));
1093
+ }
1094
+ const awaitExpr = new Expr_1.ArkAwaitExpr(promiseValue);
1095
+ const awaitExprPositions = [Position_1.FullPosition.buildFromNode(awaitExpression, this.sourceFile), ...promisePositions];
1096
+ return {
1097
+ value: awaitExpr,
1098
+ valueOriginalPositions: awaitExprPositions,
1099
+ stmts: stmts,
1100
+ };
1101
+ }
1102
+ yieldExpressionToValueAndStmts(yieldExpression) {
1103
+ let yieldValue = ValueUtil_1.ValueUtil.getUndefinedConst();
1104
+ let yieldPositions = [Position_1.FullPosition.DEFAULT];
1105
+ let stmts = [];
1106
+ if (yieldExpression.expression) {
1107
+ ({
1108
+ value: yieldValue,
1109
+ valueOriginalPositions: yieldPositions,
1110
+ stmts: stmts,
1111
+ } = this.tsNodeToValueAndStmts(yieldExpression.expression));
1112
+ }
1113
+ const yieldExpr = new Expr_1.ArkYieldExpr(yieldValue);
1114
+ const yieldExprPositions = [Position_1.FullPosition.buildFromNode(yieldExpression, this.sourceFile), ...yieldPositions];
1115
+ return {
1116
+ value: yieldExpr,
1117
+ valueOriginalPositions: yieldExprPositions,
1118
+ stmts: stmts,
1119
+ };
1120
+ }
1121
+ deleteExpressionToValueAndStmts(deleteExpression) {
1122
+ const { value: exprValue, valueOriginalPositions: exprPositions, stmts: stmts, } = this.tsNodeToValueAndStmts(deleteExpression.expression);
1123
+ const deleteExpr = new Expr_1.ArkDeleteExpr(exprValue);
1124
+ const deleteExprPositions = [Position_1.FullPosition.buildFromNode(deleteExpression, this.sourceFile), ...exprPositions];
1125
+ return {
1126
+ value: deleteExpr,
1127
+ valueOriginalPositions: deleteExprPositions,
1128
+ stmts: stmts,
1129
+ };
1130
+ }
1131
+ voidExpressionToValueAndStmts(voidExpression) {
1132
+ const { value: exprValue, valueOriginalPositions: exprPositions, stmts: stmts, } = this.tsNodeToValueAndStmts(voidExpression.expression);
1133
+ const { stmts: exprStmts } = this.arkIRTransformer.generateAssignStmtForValue(exprValue, exprPositions);
1134
+ exprStmts.forEach(stmt => stmts.push(stmt));
1135
+ return {
1136
+ value: ValueUtil_1.ValueUtil.getUndefinedConst(),
1137
+ valueOriginalPositions: [Position_1.FullPosition.DEFAULT],
1138
+ stmts: stmts,
1139
+ };
1140
+ }
1141
+ nonNullExpressionToValueAndStmts(nonNullExpression) {
1142
+ return this.tsNodeToValueAndStmts(nonNullExpression.expression);
1143
+ }
1144
+ parenthesizedExpressionToValueAndStmts(parenthesizedExpression) {
1145
+ return this.tsNodeToValueAndStmts(parenthesizedExpression.expression);
1146
+ }
1147
+ typeOfExpressionToValueAndStmts(typeOfExpression) {
1148
+ const { value: exprValue, valueOriginalPositions: exprPositions, stmts: exprStmts, } = this.tsNodeToValueAndStmts(typeOfExpression.expression);
1149
+ const typeOfExpr = new Expr_1.ArkTypeOfExpr(exprValue);
1150
+ const typeOfExprPositions = [Position_1.FullPosition.buildFromNode(typeOfExpression, this.sourceFile), ...exprPositions];
1151
+ return {
1152
+ value: typeOfExpr,
1153
+ valueOriginalPositions: typeOfExprPositions,
1154
+ stmts: exprStmts,
1155
+ };
1156
+ }
1157
+ asExpressionToValueAndStmts(asExpression) {
1158
+ const stmts = [];
1159
+ let { value: exprValue, valueOriginalPositions: exprPositions, stmts: exprStmts, } = this.tsNodeToValueAndStmts(asExpression.expression);
1160
+ exprStmts.forEach(stmt => stmts.push(stmt));
1161
+ if (IRUtils_1.IRUtils.moreThanOneAddress(exprValue)) {
1162
+ ({
1163
+ value: exprValue,
1164
+ valueOriginalPositions: exprPositions,
1165
+ stmts: exprStmts,
1166
+ } = this.arkIRTransformer.generateAssignStmtForValue(exprValue, exprPositions));
1167
+ exprStmts.forEach(stmt => stmts.push(stmt));
1168
+ }
1169
+ const castExpr = new Expr_1.ArkCastExpr(exprValue, this.resolveTypeNode(asExpression.type));
1170
+ const castExprPositions = [Position_1.FullPosition.buildFromNode(asExpression, this.sourceFile), ...exprPositions];
1171
+ return {
1172
+ value: castExpr,
1173
+ valueOriginalPositions: castExprPositions,
1174
+ stmts: stmts,
1175
+ };
1176
+ }
1177
+ typeAssertionToValueAndStmts(typeAssertion) {
1178
+ const { value: exprValue, valueOriginalPositions: exprPositions, stmts: exprStmts, } = this.tsNodeToValueAndStmts(typeAssertion.expression);
1179
+ const castExpr = new Expr_1.ArkCastExpr(exprValue, this.resolveTypeNode(typeAssertion.type));
1180
+ const castExprPositions = [Position_1.FullPosition.buildFromNode(typeAssertion, this.sourceFile), ...exprPositions];
1181
+ return {
1182
+ value: castExpr,
1183
+ valueOriginalPositions: castExprPositions,
1184
+ stmts: exprStmts,
1185
+ };
1186
+ }
1187
+ variableDeclarationListToValueAndStmts(variableDeclarationList) {
1188
+ const stmts = [];
1189
+ const isConst = (variableDeclarationList.flags & ts.NodeFlags.Const) !== 0;
1190
+ for (const declaration of variableDeclarationList.declarations) {
1191
+ const { stmts: declaredStmts } = this.variableDeclarationToValueAndStmts(declaration, isConst);
1192
+ declaredStmts.forEach(s => stmts.push(s));
1193
+ }
1194
+ return {
1195
+ value: ValueUtil_1.ValueUtil.getUndefinedConst(),
1196
+ valueOriginalPositions: [Position_1.FullPosition.DEFAULT],
1197
+ stmts: stmts,
1198
+ };
1199
+ }
1200
+ variableDeclarationToValueAndStmts(variableDeclaration, isConst, needRightOp = true) {
1201
+ const leftOpNode = variableDeclaration.name;
1202
+ const rightOpNode = variableDeclaration.initializer;
1203
+ const declarationType = variableDeclaration.type ? this.resolveTypeNode(variableDeclaration.type) : Type_1.UnknownType.getInstance();
1204
+ return this.assignmentToValueAndStmts(leftOpNode, rightOpNode, true, isConst, declarationType, needRightOp);
1205
+ }
1206
+ assignmentToValueAndStmts(leftOpNode, rightOpNode, variableDefFlag, isConst, declarationType, needRightOp = true) {
1207
+ let leftValueAndStmts;
1208
+ if (ts.isIdentifier(leftOpNode)) {
1209
+ leftValueAndStmts = this.identifierToValueAndStmts(leftOpNode, variableDefFlag);
1210
+ }
1211
+ else if (ts.isArrayBindingPattern(leftOpNode) || ts.isArrayLiteralExpression(leftOpNode)) {
1212
+ // In declaration, it is ArrayBindingPattern. And in assignment, it is ArrayLiteralExpression.
1213
+ leftValueAndStmts = this.arrayDestructuringToValueAndStmts(leftOpNode, isConst);
1214
+ }
1215
+ else if (ts.isObjectBindingPattern(leftOpNode) || ts.isObjectLiteralExpression(leftOpNode)) {
1216
+ // In declaration, it is ObjectBindingPattern. And in assignment, it is ObjectLiteralExpression.
1217
+ leftValueAndStmts = this.objectDestructuringToValueAndStmts(leftOpNode, isConst);
1218
+ }
1219
+ else {
1220
+ leftValueAndStmts = this.tsNodeToValueAndStmts(leftOpNode);
1221
+ }
1222
+ const { value: leftValue, valueOriginalPositions: leftPositions, stmts: leftStmts } = leftValueAndStmts;
1223
+ let stmts = [];
1224
+ if (needRightOp) {
1225
+ const { value: rightValue, valueOriginalPositions: rightPositions, stmts: rightStmts, } = this.assignmentRightOpToValueAndStmts(rightOpNode, leftValue);
1226
+ if (leftValue instanceof Local_1.Local) {
1227
+ if (variableDefFlag) {
1228
+ leftValue.setConstFlag(isConst);
1229
+ leftValue.setType(declarationType);
1230
+ }
1231
+ if (leftValue.getType() instanceof Type_1.UnknownType && !(rightValue.getType() instanceof Type_1.UnknownType) &&
1232
+ !(rightValue.getType() instanceof Type_1.UndefinedType)) {
1233
+ leftValue.setType(rightValue.getType());
1234
+ }
1235
+ }
1236
+ const assignStmt = new Stmt_1.ArkAssignStmt(leftValue, rightValue);
1237
+ assignStmt.setOperandOriginalPositions([...leftPositions, ...rightPositions]);
1238
+ if (ts.isArrayBindingPattern(leftOpNode) || ts.isArrayLiteralExpression(leftOpNode) ||
1239
+ ts.isObjectBindingPattern(leftOpNode) || ts.isObjectLiteralExpression(leftOpNode)) {
1240
+ rightStmts.forEach(stmt => stmts.push(stmt));
1241
+ stmts.push(assignStmt);
1242
+ leftStmts.forEach(stmt => stmts.push(stmt));
1243
+ }
1244
+ else {
1245
+ rightStmts.forEach(stmt => stmts.push(stmt));
1246
+ leftStmts.forEach(stmt => stmts.push(stmt));
1247
+ stmts.push(assignStmt);
1248
+ }
1249
+ }
1250
+ else {
1251
+ stmts = leftStmts;
1252
+ }
1253
+ return {
1254
+ value: leftValue,
1255
+ valueOriginalPositions: leftPositions,
1256
+ stmts: stmts,
1257
+ };
1258
+ }
1259
+ assignmentRightOpToValueAndStmts(rightOpNode, leftValue) {
1260
+ let rightValue;
1261
+ let rightPositions;
1262
+ let tempRightStmts = [];
1263
+ const rightStmts = [];
1264
+ if (rightOpNode) {
1265
+ ({
1266
+ value: rightValue,
1267
+ valueOriginalPositions: rightPositions,
1268
+ stmts: tempRightStmts,
1269
+ } = this.tsNodeToValueAndStmts(rightOpNode));
1270
+ tempRightStmts.forEach(stmt => rightStmts.push(stmt));
1271
+ }
1272
+ else {
1273
+ rightValue = ValueUtil_1.ValueUtil.getUndefinedConst();
1274
+ rightPositions = [Position_1.FullPosition.DEFAULT];
1275
+ }
1276
+ if (IRUtils_1.IRUtils.moreThanOneAddress(leftValue) && IRUtils_1.IRUtils.moreThanOneAddress(rightValue)) {
1277
+ ({
1278
+ value: rightValue,
1279
+ valueOriginalPositions: rightPositions,
1280
+ stmts: tempRightStmts,
1281
+ } = this.arkIRTransformer.generateAssignStmtForValue(rightValue, rightPositions));
1282
+ tempRightStmts.forEach(stmt => rightStmts.push(stmt));
1283
+ }
1284
+ return {
1285
+ value: rightValue,
1286
+ valueOriginalPositions: rightPositions,
1287
+ stmts: rightStmts,
1288
+ };
1289
+ }
1290
+ // In assignment patterns, the left operand will be an array literal expression
1291
+ arrayDestructuringToValueAndStmts(arrayDestructuring, isConst = false) {
1292
+ const stmts = [];
1293
+ const arrayTempLocal = this.generateTempLocal();
1294
+ const wholePosition = Position_1.FullPosition.buildFromNode(arrayDestructuring, this.sourceFile);
1295
+ const elements = arrayDestructuring.elements;
1296
+ const isArrayBindingPattern = ts.isArrayBindingPattern(arrayDestructuring);
1297
+ for (let i = 0; i < elements.length; i++) {
1298
+ const element = elements[i];
1299
+ if (ts.isOmittedExpression(element)) {
1300
+ continue;
1301
+ }
1302
+ const targetLocalPosition = Position_1.FullPosition.buildFromNode(element, this.sourceFile);
1303
+ if (ts.isSpreadElement(element) || (ts.isBindingElement(element) && element.dotDotDotToken)) {
1304
+ const nodeInsideRest = ts.isSpreadElement(element) ? element.expression : element.name;
1305
+ let targetLocal;
1306
+ let stmtsInsideRest = [];
1307
+ if (ts.isArrayBindingPattern(nodeInsideRest) || ts.isArrayLiteralExpression(nodeInsideRest)) {
1308
+ ({ value: targetLocal, stmts: stmtsInsideRest } = this.arrayDestructuringToValueAndStmts(nodeInsideRest, isConst));
1309
+ }
1310
+ else {
1311
+ const elementName = nodeInsideRest.getText(this.sourceFile);
1312
+ targetLocal = ts.isBindingElement(element) ? this.addNewLocal(elementName) : this.getOrCreateLocal(elementName);
1313
+ }
1314
+ const sliceMethodSubSignature = ArkSignatureBuilder_1.ArkSignatureBuilder.buildMethodSubSignatureFromMethodName(Builtin_1.Builtin.SLICE);
1315
+ const sliceMethodSignature = new ArkSignature_1.MethodSignature(Builtin_1.Builtin.ARRAY_CLASS_SIGNATURE, sliceMethodSubSignature);
1316
+ const sliceInvokeExpr = new Expr_1.ArkInstanceInvokeExpr(arrayTempLocal, sliceMethodSignature, [ValueUtil_1.ValueUtil.getOrCreateNumberConst(i)]);
1317
+ const sliceInvokeExprPositions = [wholePosition, targetLocalPosition];
1318
+ const assignStmt = new Stmt_1.ArkAssignStmt(targetLocal, sliceInvokeExpr);
1319
+ assignStmt.setOperandOriginalPositions([targetLocalPosition, ...sliceInvokeExprPositions]);
1320
+ stmts.push(assignStmt);
1321
+ stmtsInsideRest.forEach(stmt => stmts.push(stmt));
1322
+ }
1323
+ else {
1324
+ const arrayRef = new Ref_1.ArkArrayRef(arrayTempLocal, ValueUtil_1.ValueUtil.getOrCreateNumberConst(i));
1325
+ const arrayRefPositions = [wholePosition, wholePosition, Position_1.FullPosition.DEFAULT];
1326
+ const itemName = element.getText(this.sourceFile);
1327
+ const targetLocal = isArrayBindingPattern ? this.addNewLocal(itemName) : this.getOrCreateLocal(itemName);
1328
+ isArrayBindingPattern && targetLocal.setConstFlag(isConst);
1329
+ const assignStmt = new Stmt_1.ArkAssignStmt(targetLocal, arrayRef);
1330
+ assignStmt.setOperandOriginalPositions([targetLocalPosition, ...arrayRefPositions]);
1331
+ stmts.push(assignStmt);
1332
+ }
1333
+ }
1334
+ return { value: arrayTempLocal, valueOriginalPositions: [wholePosition], stmts: stmts };
1335
+ }
1336
+ // In assignment patterns, the left operand will be an object literal expression
1337
+ objectDestructuringToValueAndStmts(objectDestructuring, isConst = false) {
1338
+ const stmts = [];
1339
+ const objectTempLocal = this.generateTempLocal();
1340
+ const leftOriginalPosition = Position_1.FullPosition.buildFromNode(objectDestructuring, this.sourceFile);
1341
+ const isObjectBindingPattern = ts.isObjectBindingPattern(objectDestructuring);
1342
+ const elements = isObjectBindingPattern ? objectDestructuring.elements : objectDestructuring.properties;
1343
+ for (const element of elements) {
1344
+ let fieldName = '';
1345
+ let targetName = '';
1346
+ if (ts.isBindingElement(element)) {
1347
+ fieldName = element.propertyName ? element.propertyName.getText(this.sourceFile) : element.name.getText(this.sourceFile);
1348
+ targetName = element.name.getText(this.sourceFile);
1349
+ }
1350
+ else if (ts.isPropertyAssignment(element)) {
1351
+ fieldName = element.name.getText(this.sourceFile);
1352
+ targetName = element.initializer.getText(this.sourceFile);
1353
+ }
1354
+ else if (ts.isShorthandPropertyAssignment(element)) {
1355
+ fieldName = element.name.getText(this.sourceFile);
1356
+ targetName = fieldName;
1357
+ }
1358
+ else {
1359
+ continue;
1360
+ }
1361
+ const fieldSignature = ArkSignatureBuilder_1.ArkSignatureBuilder.buildFieldSignatureFromFieldName(fieldName);
1362
+ const fieldRef = new Ref_1.ArkInstanceFieldRef(objectTempLocal, fieldSignature);
1363
+ const fieldRefPositions = [leftOriginalPosition, leftOriginalPosition];
1364
+ const targetLocal = isObjectBindingPattern ? this.addNewLocal(targetName) : this.getOrCreateLocal(targetName);
1365
+ isObjectBindingPattern && targetLocal.setConstFlag(isConst);
1366
+ const targetLocalPosition = Position_1.FullPosition.buildFromNode(element, this.sourceFile);
1367
+ const assignStmt = new Stmt_1.ArkAssignStmt(targetLocal, fieldRef);
1368
+ assignStmt.setOperandOriginalPositions([targetLocalPosition, ...fieldRefPositions]);
1369
+ stmts.push(assignStmt);
1370
+ }
1371
+ return {
1372
+ value: objectTempLocal,
1373
+ valueOriginalPositions: [leftOriginalPosition],
1374
+ stmts: stmts,
1375
+ };
1376
+ }
1377
+ binaryExpressionToValueAndStmts(binaryExpression) {
1378
+ const operatorToken = binaryExpression.operatorToken;
1379
+ if (operatorToken.kind === ts.SyntaxKind.FirstAssignment) {
1380
+ const leftOpNode = binaryExpression.left;
1381
+ const rightOpNode = binaryExpression.right;
1382
+ const declarationType = Type_1.UnknownType.getInstance();
1383
+ return this.assignmentToValueAndStmts(leftOpNode, rightOpNode, false, false, declarationType, true);
1384
+ }
1385
+ else if (ArkValueTransformer.isCompoundAssignmentOperator(operatorToken.kind)) {
1386
+ return this.compoundAssignmentToValueAndStmts(binaryExpression);
1387
+ }
1388
+ const stmts = [];
1389
+ const binaryExpressionPosition = Position_1.FullPosition.buildFromNode(binaryExpression, this.sourceFile);
1390
+ const { value: opValue1, valueOriginalPositions: opPositions1, stmts: opStmts1, } = this.tsNodeToSingleAddressValueAndStmts(binaryExpression.left);
1391
+ opStmts1.forEach(stmt => stmts.push(stmt));
1392
+ if (operatorToken.kind === ts.SyntaxKind.InstanceOfKeyword) {
1393
+ const instanceOfExpr = new Expr_1.ArkInstanceOfExpr(opValue1, new Type_1.UnclearReferenceType(binaryExpression.right.getText(this.sourceFile)));
1394
+ const instanceOfExprPositions = [binaryExpressionPosition, ...opPositions1];
1395
+ const { value: instanceofRes, valueOriginalPositions: instanceofPos, stmts: instanceofStmt, } = this.arkIRTransformer.generateAssignStmtForValue(instanceOfExpr, instanceOfExprPositions);
1396
+ instanceofStmt.forEach(stmt => stmts.push(stmt));
1397
+ return {
1398
+ value: instanceofRes,
1399
+ valueOriginalPositions: instanceofPos,
1400
+ stmts: stmts,
1401
+ };
1402
+ }
1403
+ const { value: opValue2, valueOriginalPositions: opPositions2, stmts: opStmts2, } = this.tsNodeToSingleAddressValueAndStmts(binaryExpression.right);
1404
+ opStmts2.forEach(stmt => stmts.push(stmt));
1405
+ let exprValue;
1406
+ let exprValuePositions = [binaryExpressionPosition];
1407
+ if (operatorToken.kind === ts.SyntaxKind.CommaToken) {
1408
+ exprValue = opValue2;
1409
+ }
1410
+ else {
1411
+ const operator = ArkIRTransformer_1.ArkIRTransformer.tokenToBinaryOperator(operatorToken.kind);
1412
+ if (operator) {
1413
+ if (this.isRelationalOperator(operator)) {
1414
+ exprValue = new Expr_1.ArkConditionExpr(opValue1, opValue2, operator);
1415
+ }
1416
+ else {
1417
+ exprValue = new Expr_1.ArkNormalBinopExpr(opValue1, opValue2, operator);
1418
+ }
1419
+ exprValuePositions.push(...opPositions1, ...opPositions2);
1420
+ }
1421
+ else {
1422
+ exprValue = ValueUtil_1.ValueUtil.getUndefinedConst();
1423
+ exprValuePositions.push(binaryExpressionPosition);
1424
+ }
1425
+ }
1426
+ return {
1427
+ value: exprValue,
1428
+ valueOriginalPositions: exprValuePositions,
1429
+ stmts: stmts,
1430
+ };
1431
+ }
1432
+ compoundAssignmentToValueAndStmts(binaryExpression) {
1433
+ const stmts = [];
1434
+ const { value: leftValueOrig, valueOriginalPositions: leftPositionsOrig, stmts: leftStmts } = this.tsNodeToValueAndStmts(binaryExpression.left);
1435
+ leftStmts.forEach(stmt => stmts.push(stmt));
1436
+ let leftValue;
1437
+ let leftPositions;
1438
+ if (leftValueOrig instanceof Ref_1.AbstractFieldRef) {
1439
+ const tempLocal = this.generateTempLocal();
1440
+ const readRefStmt = new Stmt_1.ArkAssignStmt(tempLocal, leftValueOrig);
1441
+ stmts.push(readRefStmt);
1442
+ leftValue = tempLocal;
1443
+ leftPositions = [leftPositionsOrig[0]];
1444
+ }
1445
+ else {
1446
+ leftValue = leftValueOrig;
1447
+ leftPositions = leftPositionsOrig;
1448
+ }
1449
+ const { value: rightValue, valueOriginalPositions: rightPositions, stmts: rightStmts } = this.tsNodeToSingleAddressValueAndStmts(binaryExpression.right);
1450
+ rightStmts.forEach(stmt => stmts.push(stmt));
1451
+ const operator = this.compoundAssignmentTokenToBinaryOperator(binaryExpression.operatorToken.kind);
1452
+ if (operator) {
1453
+ const exprValue = new Expr_1.ArkNormalBinopExpr(leftValue, rightValue, operator);
1454
+ const exprValuePosition = Position_1.FullPosition.buildFromNode(binaryExpression, this.sourceFile);
1455
+ const assignTarget = leftValueOrig instanceof Ref_1.AbstractFieldRef ? leftValueOrig : leftValue;
1456
+ const assignStmt = new Stmt_1.ArkAssignStmt(assignTarget, exprValue);
1457
+ assignStmt.setOperandOriginalPositions([
1458
+ ...(assignTarget === leftValueOrig ? leftPositionsOrig : leftPositions),
1459
+ exprValuePosition,
1460
+ ...leftPositions,
1461
+ ...rightPositions
1462
+ ]);
1463
+ stmts.push(assignStmt);
1464
+ }
1465
+ return {
1466
+ value: leftValueOrig,
1467
+ valueOriginalPositions: leftPositionsOrig,
1468
+ stmts: stmts
1469
+ };
1470
+ }
1471
+ compoundAssignmentTokenToBinaryOperator(token) {
1472
+ switch (token) {
1473
+ case ts.SyntaxKind.QuestionQuestionEqualsToken:
1474
+ return Expr_1.NormalBinaryOperator.NullishCoalescing;
1475
+ case ts.SyntaxKind.AsteriskAsteriskEqualsToken:
1476
+ return Expr_1.NormalBinaryOperator.Exponentiation;
1477
+ case ts.SyntaxKind.SlashEqualsToken:
1478
+ return Expr_1.NormalBinaryOperator.Division;
1479
+ case ts.SyntaxKind.PlusEqualsToken:
1480
+ return Expr_1.NormalBinaryOperator.Addition;
1481
+ case ts.SyntaxKind.MinusEqualsToken:
1482
+ return Expr_1.NormalBinaryOperator.Subtraction;
1483
+ case ts.SyntaxKind.AsteriskEqualsToken:
1484
+ return Expr_1.NormalBinaryOperator.Multiplication;
1485
+ case ts.SyntaxKind.PercentEqualsToken:
1486
+ return Expr_1.NormalBinaryOperator.Remainder;
1487
+ case ts.SyntaxKind.LessThanLessThanEqualsToken:
1488
+ return Expr_1.NormalBinaryOperator.LeftShift;
1489
+ case ts.SyntaxKind.GreaterThanGreaterThanEqualsToken:
1490
+ return Expr_1.NormalBinaryOperator.RightShift;
1491
+ case ts.SyntaxKind.GreaterThanGreaterThanGreaterThanEqualsToken:
1492
+ return Expr_1.NormalBinaryOperator.UnsignedRightShift;
1493
+ case ts.SyntaxKind.AmpersandEqualsToken:
1494
+ return Expr_1.NormalBinaryOperator.BitwiseAnd;
1495
+ case ts.SyntaxKind.BarEqualsToken:
1496
+ return Expr_1.NormalBinaryOperator.BitwiseOr;
1497
+ case ts.SyntaxKind.CaretEqualsToken:
1498
+ return Expr_1.NormalBinaryOperator.BitwiseXor;
1499
+ case ts.SyntaxKind.AmpersandAmpersandEqualsToken:
1500
+ return Expr_1.NormalBinaryOperator.LogicalAnd;
1501
+ case ts.SyntaxKind.BarBarEqualsToken:
1502
+ return Expr_1.NormalBinaryOperator.LogicalOr;
1503
+ default:
1504
+ }
1505
+ return null;
1506
+ }
1507
+ conditionToValueAndStmts(condition) {
1508
+ const stmts = [];
1509
+ let { value: conditionValue, valueOriginalPositions: conditionPositions, stmts: conditionStmts, } = this.tsNodeToValueAndStmts(condition);
1510
+ conditionStmts.forEach(stmt => stmts.push(stmt));
1511
+ let conditionExpr;
1512
+ if (conditionValue instanceof Expr_1.AbstractBinopExpr && this.isRelationalOperator(conditionValue.getOperator())) {
1513
+ const operator = conditionValue.getOperator();
1514
+ conditionExpr = new Expr_1.ArkConditionExpr(conditionValue.getOp1(), conditionValue.getOp2(), operator);
1515
+ }
1516
+ else {
1517
+ if (IRUtils_1.IRUtils.moreThanOneAddress(conditionValue)) {
1518
+ ({
1519
+ value: conditionValue,
1520
+ valueOriginalPositions: conditionPositions,
1521
+ stmts: conditionStmts,
1522
+ } = this.arkIRTransformer.generateAssignStmtForValue(conditionValue, conditionPositions));
1523
+ conditionStmts.forEach(stmt => stmts.push(stmt));
1524
+ }
1525
+ conditionExpr = new Expr_1.ArkConditionExpr(conditionValue, ValueUtil_1.ValueUtil.getOrCreateNumberConst(0), Expr_1.RelationalBinaryOperator.InEquality);
1526
+ conditionPositions = [conditionPositions[0], ...conditionPositions, Position_1.FullPosition.DEFAULT];
1527
+ }
1528
+ return {
1529
+ value: conditionExpr,
1530
+ valueOriginalPositions: conditionPositions,
1531
+ stmts: stmts,
1532
+ };
1533
+ }
1534
+ literalNodeToValueAndStmts(literalNode) {
1535
+ const syntaxKind = literalNode.kind;
1536
+ let constant = null;
1537
+ switch (syntaxKind) {
1538
+ case ts.SyntaxKind.NumericLiteral:
1539
+ constant = ValueUtil_1.ValueUtil.getOrCreateNumberConst(literalNode.getText(this.sourceFile));
1540
+ break;
1541
+ case ts.SyntaxKind.BigIntLiteral:
1542
+ constant = ValueUtil_1.ValueUtil.createBigIntConst(BigInt(literalNode.text.slice(0, -1)));
1543
+ break;
1544
+ case ts.SyntaxKind.StringLiteral:
1545
+ constant = ValueUtil_1.ValueUtil.createStringConst(literalNode.text);
1546
+ break;
1547
+ case ts.SyntaxKind.RegularExpressionLiteral:
1548
+ constant = new Constant_1.Constant(literalNode.text, Builtin_1.Builtin.REGEXP_CLASS_TYPE);
1549
+ break;
1550
+ case ts.SyntaxKind.NoSubstitutionTemplateLiteral:
1551
+ constant = ValueUtil_1.ValueUtil.createStringConst(literalNode.text);
1552
+ break;
1553
+ case ts.SyntaxKind.NullKeyword:
1554
+ constant = ValueUtil_1.ValueUtil.getNullConstant();
1555
+ break;
1556
+ case ts.SyntaxKind.UndefinedKeyword:
1557
+ constant = ValueUtil_1.ValueUtil.getUndefinedConst();
1558
+ break;
1559
+ case ts.SyntaxKind.TrueKeyword:
1560
+ constant = ValueUtil_1.ValueUtil.getBooleanConstant(true);
1561
+ break;
1562
+ case ts.SyntaxKind.FalseKeyword:
1563
+ constant = ValueUtil_1.ValueUtil.getBooleanConstant(false);
1564
+ break;
1565
+ default:
1566
+ logger.warn(`ast node's syntaxKind is ${ts.SyntaxKind[literalNode.kind]}, not literalNode`);
1567
+ }
1568
+ if (constant === null) {
1569
+ return null;
1570
+ }
1571
+ return {
1572
+ value: constant,
1573
+ valueOriginalPositions: [Position_1.FullPosition.buildFromNode(literalNode, this.sourceFile)],
1574
+ stmts: [],
1575
+ };
1576
+ }
1577
+ getOrCreateLocal(localName, localType = Type_1.UnknownType.getInstance()) {
1578
+ let local = this.locals.get(localName);
1579
+ if (local !== undefined) {
1580
+ return local;
1581
+ }
1582
+ local = this.addNewLocal(localName, localType);
1583
+ this.addNewGlobal(localName);
1584
+ return local;
1585
+ }
1586
+ generateTempLocal(localType = Type_1.UnknownType.getInstance()) {
1587
+ const tempLocalName = Const_1.TEMP_LOCAL_PREFIX + this.tempLocalNo;
1588
+ this.tempLocalNo++;
1589
+ const tempLocal = new Local_1.Local(tempLocalName, localType);
1590
+ this.locals.set(tempLocalName, tempLocal);
1591
+ return tempLocal;
1592
+ }
1593
+ isRelationalOperator(operator) {
1594
+ return (operator === Expr_1.RelationalBinaryOperator.LessThan ||
1595
+ operator === Expr_1.RelationalBinaryOperator.LessThanOrEqual ||
1596
+ operator === Expr_1.RelationalBinaryOperator.GreaterThan ||
1597
+ operator === Expr_1.RelationalBinaryOperator.GreaterThanOrEqual ||
1598
+ operator === Expr_1.RelationalBinaryOperator.Equality ||
1599
+ operator === Expr_1.RelationalBinaryOperator.InEquality ||
1600
+ operator === Expr_1.RelationalBinaryOperator.StrictEquality ||
1601
+ operator === Expr_1.RelationalBinaryOperator.StrictInequality);
1602
+ }
1603
+ isLiteralNode(node) {
1604
+ if (ts.isStringLiteral(node) ||
1605
+ ts.isNumericLiteral(node) ||
1606
+ ts.isBigIntLiteral(node) ||
1607
+ ts.isRegularExpressionLiteral(node) ||
1608
+ ts.isNoSubstitutionTemplateLiteral(node) ||
1609
+ node.kind === ts.SyntaxKind.NullKeyword ||
1610
+ node.kind === ts.SyntaxKind.TrueKeyword ||
1611
+ node.kind === ts.SyntaxKind.FalseKeyword ||
1612
+ node.kind === ts.SyntaxKind.UndefinedKeyword) {
1613
+ return true;
1614
+ }
1615
+ return false;
1616
+ }
1617
+ resolveTypeNode(type) {
1618
+ const kind = type.kind;
1619
+ switch (kind) {
1620
+ case ts.SyntaxKind.BooleanKeyword:
1621
+ return Type_1.BooleanType.getInstance();
1622
+ case ts.SyntaxKind.NumberKeyword:
1623
+ return Type_1.NumberType.getInstance();
1624
+ case ts.SyntaxKind.StringKeyword:
1625
+ return Type_1.StringType.getInstance();
1626
+ case ts.SyntaxKind.UndefinedKeyword:
1627
+ return Type_1.UndefinedType.getInstance();
1628
+ case ts.SyntaxKind.AnyKeyword:
1629
+ return Type_1.AnyType.getInstance();
1630
+ case ts.SyntaxKind.VoidKeyword:
1631
+ return Type_1.VoidType.getInstance();
1632
+ case ts.SyntaxKind.NeverKeyword:
1633
+ return Type_1.NeverType.getInstance();
1634
+ case ts.SyntaxKind.BigIntKeyword:
1635
+ return Type_1.BigIntType.getInstance();
1636
+ case ts.SyntaxKind.TypeReference:
1637
+ return this.resolveTypeReferenceNode(type);
1638
+ case ts.SyntaxKind.ArrayType:
1639
+ return new Type_1.ArrayType(this.resolveTypeNode(type.elementType), 1);
1640
+ case ts.SyntaxKind.UnionType: {
1641
+ const mayTypes = [];
1642
+ type.types.forEach(t => mayTypes.push(this.resolveTypeNode(t)));
1643
+ return new Type_1.UnionType(mayTypes);
1644
+ }
1645
+ case ts.SyntaxKind.IntersectionType: {
1646
+ const intersectionTypes = [];
1647
+ type.types.forEach(t => intersectionTypes.push(this.resolveTypeNode(t)));
1648
+ return new Type_1.IntersectionType(intersectionTypes);
1649
+ }
1650
+ case ts.SyntaxKind.TupleType: {
1651
+ const types = [];
1652
+ type.elements.forEach(element => {
1653
+ types.push(this.resolveTypeNode(element));
1654
+ });
1655
+ return new Type_1.TupleType(types);
1656
+ }
1657
+ case ts.SyntaxKind.NamedTupleMember:
1658
+ return this.resolveTypeNode(type.type);
1659
+ case ts.SyntaxKind.LiteralType:
1660
+ return ArkValueTransformer.resolveLiteralTypeNode(type, this.sourceFile);
1661
+ case ts.SyntaxKind.TemplateLiteralType:
1662
+ return this.resolveTemplateLiteralTypeNode(type);
1663
+ case ts.SyntaxKind.TypeLiteral:
1664
+ return this.resolveTypeLiteralNode(type);
1665
+ case ts.SyntaxKind.FunctionType:
1666
+ return this.resolveFunctionTypeNode(type);
1667
+ case ts.SyntaxKind.ImportType:
1668
+ return Type_1.UnknownType.getInstance();
1669
+ case ts.SyntaxKind.TypeQuery:
1670
+ return this.resolveTypeQueryNode(type);
1671
+ case ts.SyntaxKind.ParenthesizedType:
1672
+ return this.resolveTypeNode(type.type);
1673
+ case ts.SyntaxKind.TypeOperator:
1674
+ return this.resolveTypeOperatorNode(type);
1675
+ default:
1676
+ return Type_1.UnknownType.getInstance();
1677
+ }
1678
+ }
1679
+ resolveTypeQueryNode(typeQueryNode) {
1680
+ var _a, _b, _c, _d, _e, _f;
1681
+ const genericTypes = [];
1682
+ if (typeQueryNode.typeArguments) {
1683
+ for (const typeArgument of typeQueryNode.typeArguments) {
1684
+ genericTypes.push(this.resolveTypeNode(typeArgument));
1685
+ }
1686
+ }
1687
+ const exprNameNode = typeQueryNode.exprName;
1688
+ let opValue;
1689
+ if (ts.isQualifiedName(exprNameNode)) {
1690
+ if (exprNameNode.left.getText(this.sourceFile) === TSConst_1.THIS_NAME) {
1691
+ const fieldName = exprNameNode.right.getText(this.sourceFile);
1692
+ const fieldSignature = (_b = (_a = this.declaringMethod.getDeclaringArkClass().getFieldWithName(fieldName)) === null || _a === void 0 ? void 0 : _a.getSignature()) !== null && _b !== void 0 ? _b : ArkSignatureBuilder_1.ArkSignatureBuilder.buildFieldSignatureFromFieldName(fieldName);
1693
+ const baseLocal = (_c = this.locals.get(TSConst_1.THIS_NAME)) !== null && _c !== void 0 ? _c : new Local_1.Local(TSConst_1.THIS_NAME, new Type_1.ClassType(this.declaringMethod.getDeclaringArkClass().getSignature(), genericTypes));
1694
+ opValue = new Ref_1.ArkInstanceFieldRef(baseLocal, fieldSignature);
1695
+ }
1696
+ else {
1697
+ const exprName = exprNameNode.getText(this.sourceFile);
1698
+ opValue = new Local_1.Local(exprName, Type_1.UnknownType.getInstance());
1699
+ }
1700
+ }
1701
+ else {
1702
+ const exprName = exprNameNode.escapedText.toString();
1703
+ opValue = (_f = (_d = this.locals.get(exprName)) !== null && _d !== void 0 ? _d : (_e = this.globals) === null || _e === void 0 ? void 0 : _e.get(exprName)) !== null && _f !== void 0 ? _f : new Local_1.Local(exprName, Type_1.UnknownType.getInstance());
1704
+ }
1705
+ return new TypeExpr_1.TypeQueryExpr(opValue, genericTypes);
1706
+ }
1707
+ resolveTypeOperatorNode(typeOperatorNode) {
1708
+ let type = this.resolveTypeNode(typeOperatorNode.type);
1709
+ switch (typeOperatorNode.operator) {
1710
+ case ts.SyntaxKind.ReadonlyKeyword: {
1711
+ if (type instanceof Type_1.ArrayType || type instanceof Type_1.TupleType) {
1712
+ type.setReadonlyFlag(true);
1713
+ }
1714
+ return type;
1715
+ }
1716
+ case ts.SyntaxKind.KeyOfKeyword: {
1717
+ return new TypeExpr_1.KeyofTypeExpr(type);
1718
+ }
1719
+ case ts.SyntaxKind.UniqueKeyword: {
1720
+ return Type_1.UnknownType.getInstance();
1721
+ }
1722
+ default:
1723
+ return Type_1.UnknownType.getInstance();
1724
+ }
1725
+ }
1726
+ static resolveLiteralTypeNode(literalTypeNode, sourceFile) {
1727
+ const literal = literalTypeNode.literal;
1728
+ const kind = literal.kind;
1729
+ switch (kind) {
1730
+ case ts.SyntaxKind.NullKeyword:
1731
+ return Type_1.NullType.getInstance();
1732
+ case ts.SyntaxKind.TrueKeyword:
1733
+ return Type_1.LiteralType.TRUE;
1734
+ case ts.SyntaxKind.FalseKeyword:
1735
+ return Type_1.LiteralType.FALSE;
1736
+ case ts.SyntaxKind.NumericLiteral:
1737
+ return new Type_1.LiteralType(parseFloat(literal.text));
1738
+ case ts.SyntaxKind.PrefixUnaryExpression:
1739
+ return new Type_1.LiteralType(parseFloat(literal.getText(sourceFile)));
1740
+ default:
1741
+ }
1742
+ return new Type_1.LiteralType(literal.getText(sourceFile));
1743
+ }
1744
+ resolveTemplateLiteralTypeNode(templateLiteralTypeNode) {
1745
+ let stringLiterals = [''];
1746
+ const headString = templateLiteralTypeNode.head.rawText || '';
1747
+ let newStringLiterals = [];
1748
+ for (const stringLiteral of stringLiterals) {
1749
+ newStringLiterals.push(stringLiteral + headString);
1750
+ }
1751
+ stringLiterals = newStringLiterals;
1752
+ newStringLiterals = [];
1753
+ for (const templateSpan of templateLiteralTypeNode.templateSpans) {
1754
+ const templateType = this.resolveTypeNode(templateSpan.type);
1755
+ const unfoldTemplateTypes = [];
1756
+ if (templateType instanceof Type_1.UnionType) {
1757
+ unfoldTemplateTypes.push(...templateType.getTypes());
1758
+ }
1759
+ else {
1760
+ unfoldTemplateTypes.push(templateType);
1761
+ }
1762
+ const unfoldTemplateTypeStrs = [];
1763
+ for (const unfoldTemplateType of unfoldTemplateTypes) {
1764
+ unfoldTemplateTypeStrs.push(unfoldTemplateType instanceof Type_1.AliasType ? unfoldTemplateType.getOriginalType().toString() : unfoldTemplateType.toString());
1765
+ }
1766
+ const templateSpanString = templateSpan.literal.rawText || '';
1767
+ for (const stringLiteral of stringLiterals) {
1768
+ for (const unfoldTemplateTypeStr of unfoldTemplateTypeStrs) {
1769
+ newStringLiterals.push(stringLiteral + unfoldTemplateTypeStr + templateSpanString);
1770
+ }
1771
+ }
1772
+ stringLiterals = newStringLiterals;
1773
+ newStringLiterals = [];
1774
+ }
1775
+ const templateTypes = [];
1776
+ for (const stringLiteral of stringLiterals) {
1777
+ templateTypes.push(new Type_1.LiteralType(stringLiteral));
1778
+ }
1779
+ if (templateTypes.length > 0) {
1780
+ return new Type_1.UnionType(templateTypes);
1781
+ }
1782
+ return templateTypes[0];
1783
+ }
1784
+ resolveTypeReferenceNode(typeReferenceNode) {
1785
+ const typeReferenceFullName = ts.isIdentifier(typeReferenceNode.typeName) ? typeReferenceNode.typeName.text :
1786
+ typeReferenceNode.typeName.getText(this.sourceFile);
1787
+ if (typeReferenceFullName === Builtin_1.Builtin.OBJECT) {
1788
+ return Builtin_1.Builtin.OBJECT_CLASS_TYPE;
1789
+ }
1790
+ const aliasTypeAndStmt = this.aliasTypeMap.get(typeReferenceFullName);
1791
+ const genericTypes = [];
1792
+ if (typeReferenceNode.typeArguments) {
1793
+ for (const typeArgument of typeReferenceNode.typeArguments) {
1794
+ genericTypes.push(this.resolveTypeNode(typeArgument));
1795
+ }
1796
+ }
1797
+ if (!aliasTypeAndStmt) {
1798
+ const local = this.locals.get(typeReferenceFullName);
1799
+ if (local !== undefined) {
1800
+ return local.getType();
1801
+ }
1802
+ return new Type_1.UnclearReferenceType(typeReferenceFullName, genericTypes);
1803
+ }
1804
+ else {
1805
+ if (genericTypes.length > 0) {
1806
+ const oldAlias = aliasTypeAndStmt[0];
1807
+ let alias = new Type_1.AliasType(oldAlias.getName(), TypeInference_1.TypeInference.replaceTypeWithReal(oldAlias.getOriginalType(), genericTypes), oldAlias.getSignature(), oldAlias.getGenericTypes());
1808
+ alias.setRealGenericTypes(genericTypes);
1809
+ return alias;
1810
+ }
1811
+ return aliasTypeAndStmt[0];
1812
+ }
1813
+ }
1814
+ resolveTypeLiteralNode(typeLiteralNode) {
1815
+ const anonymousClass = new ArkClass_1.ArkClass();
1816
+ const declaringClass = this.declaringMethod.getDeclaringArkClass();
1817
+ const declaringNamespace = declaringClass.getDeclaringArkNamespace();
1818
+ if (declaringNamespace) {
1819
+ (0, ArkClassBuilder_1.buildNormalArkClassFromArkNamespace)(typeLiteralNode, declaringNamespace, anonymousClass, this.sourceFile);
1820
+ }
1821
+ else {
1822
+ (0, ArkClassBuilder_1.buildNormalArkClassFromArkFile)(typeLiteralNode, declaringClass.getDeclaringArkFile(), anonymousClass, this.sourceFile);
1823
+ }
1824
+ return new Type_1.ClassType(anonymousClass.getSignature());
1825
+ }
1826
+ resolveFunctionTypeNode(functionTypeNode) {
1827
+ const anonymousMethod = new ArkMethod_1.ArkMethod();
1828
+ const declaringClass = this.declaringMethod.getDeclaringArkClass();
1829
+ (0, ArkMethodBuilder_1.buildArkMethodFromArkClass)(functionTypeNode, declaringClass, anonymousMethod, this.sourceFile);
1830
+ return new Type_1.FunctionType(anonymousMethod.getSignature());
1831
+ }
1832
+ static isCompoundAssignmentOperator(operator) {
1833
+ const compoundAssignmentOperators = [
1834
+ ts.SyntaxKind.PlusEqualsToken,
1835
+ ts.SyntaxKind.MinusEqualsToken,
1836
+ ts.SyntaxKind.AsteriskAsteriskEqualsToken,
1837
+ ts.SyntaxKind.AsteriskEqualsToken,
1838
+ ts.SyntaxKind.SlashEqualsToken,
1839
+ ts.SyntaxKind.PercentEqualsToken,
1840
+ ts.SyntaxKind.AmpersandEqualsToken,
1841
+ ts.SyntaxKind.BarEqualsToken,
1842
+ ts.SyntaxKind.CaretEqualsToken,
1843
+ ts.SyntaxKind.LessThanLessThanEqualsToken,
1844
+ ts.SyntaxKind.GreaterThanGreaterThanGreaterThanEqualsToken,
1845
+ ts.SyntaxKind.GreaterThanGreaterThanEqualsToken,
1846
+ ts.SyntaxKind.BarBarEqualsToken,
1847
+ ts.SyntaxKind.AmpersandAmpersandEqualsToken,
1848
+ ts.SyntaxKind.QuestionQuestionEqualsToken,
1849
+ ];
1850
+ return compoundAssignmentOperators.includes(operator);
1851
+ }
1852
+ }
1853
+ exports.ArkValueTransformer = ArkValueTransformer;