@lcap/nasl 3.3.3-beta.8 → 3.3.6-beta.1

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 (436) hide show
  1. package/.nyc_output/{78804420-ead6-486f-b682-ab54ccd95dc9.json → d58d92d8-c0d6-479b-9f82-1f4da8e73ff3.json} +1 -1
  2. package/.nyc_output/processinfo/d58d92d8-c0d6-479b-9f82-1f4da8e73ff3.json +1 -0
  3. package/.nyc_output/processinfo/index.json +1 -1
  4. package/coverage/index.html +126 -141
  5. package/coverage/src/automate/engine/index.html +1 -1
  6. package/coverage/src/automate/engine/utils.js.html +36 -36
  7. package/coverage/src/bak/index.html +14 -14
  8. package/coverage/src/bak/translator.js.html +57 -393
  9. package/coverage/src/breakpoint/generator/AfterStartNode.ts.html +1 -1
  10. package/coverage/src/breakpoint/generator/BeforeEndNode.ts.html +1 -1
  11. package/coverage/src/breakpoint/generator/BreakpointNode.ts.html +1 -1
  12. package/coverage/src/breakpoint/generator/CallbackNode.ts.html +1 -1
  13. package/coverage/src/breakpoint/generator/index.html +1 -1
  14. package/coverage/src/breakpoint/generator/index.ts.html +1 -1
  15. package/coverage/src/breakpoint/index.html +1 -1
  16. package/coverage/src/breakpoint/index.ts.html +1 -1
  17. package/coverage/src/breakpoint/shared/constants.ts.html +1 -1
  18. package/coverage/src/breakpoint/shared/index.html +1 -1
  19. package/coverage/src/breakpoint/shared/index.ts.html +1 -1
  20. package/coverage/src/breakpoint/shared/operations.ts.html +2 -2
  21. package/coverage/src/breakpoint/shared/socket.ts.html +1 -1
  22. package/coverage/src/breakpoint/shared/utils.ts.html +1 -1
  23. package/coverage/src/breakpoint/store/core.ts.html +3 -3
  24. package/coverage/src/breakpoint/store/dock.ts.html +1 -1
  25. package/coverage/src/breakpoint/store/index.html +1 -1
  26. package/coverage/src/breakpoint/store/index.ts.html +1 -1
  27. package/coverage/src/common/BaseNode.ts.html +164 -593
  28. package/coverage/src/common/Command.ts.html +1 -1
  29. package/coverage/src/common/EventEmitter.ts.html +31 -31
  30. package/coverage/src/common/Messager.ts.html +1 -1
  31. package/coverage/src/common/asyncFuncMap.ts.html +1 -1
  32. package/coverage/src/common/index.html +23 -38
  33. package/coverage/src/common/index.ts.html +4 -7
  34. package/coverage/src/concepts/Abort__.ts.html +9 -39
  35. package/coverage/src/concepts/Anchor__.ts.html +29 -86
  36. package/coverage/src/concepts/AnonymousFunction__.ts.html +169 -262
  37. package/coverage/src/concepts/App__.ts.html +152 -1205
  38. package/coverage/src/concepts/Argument__.ts.html +53 -137
  39. package/coverage/src/concepts/Assignee__.ts.html +34 -124
  40. package/coverage/src/concepts/AssignmentLine__.ts.html +15 -48
  41. package/coverage/src/concepts/Assignment__.ts.html +81 -213
  42. package/coverage/src/concepts/Attribute__.ts.html +14 -41
  43. package/coverage/src/concepts/AuthInterface__.ts.html +6 -9
  44. package/coverage/src/concepts/AuthLogicForCallInterface__.ts.html +144 -108
  45. package/coverage/src/concepts/AuthLogic__.ts.html +6 -18
  46. package/coverage/src/concepts/BackendVariable__.ts.html +48 -168
  47. package/coverage/src/concepts/Backend__.ts.html +28 -106
  48. package/coverage/src/concepts/BatchAssignment__.ts.html +169 -274
  49. package/coverage/src/concepts/BinaryExpression__.ts.html +129 -285
  50. package/coverage/src/concepts/BindAttribute__.ts.html +111 -522
  51. package/coverage/src/concepts/BindDirective__.ts.html +26 -131
  52. package/coverage/src/concepts/BindEvent__.ts.html +64 -160
  53. package/coverage/src/concepts/BindStyle__.ts.html +21 -78
  54. package/coverage/src/concepts/BooleanLiteral__.ts.html +20 -47
  55. package/coverage/src/concepts/CallAuthInterface__.ts.html +48 -105
  56. package/coverage/src/concepts/CallConnector__.ts.html +35 -62
  57. package/coverage/src/concepts/CallFunction__.ts.html +144 -288
  58. package/coverage/src/concepts/CallInterface__.ts.html +60 -93
  59. package/coverage/src/concepts/CallLogic__.ts.html +343 -292
  60. package/coverage/src/concepts/CallQueryComponent__.ts.html +93 -126
  61. package/coverage/src/concepts/Comment__.ts.html +10 -43
  62. package/coverage/src/concepts/CompletionProperty__.ts.html +13 -40
  63. package/coverage/src/concepts/ConfigGroup__.ts.html +20 -47
  64. package/coverage/src/concepts/ConfigPropertyValue__.ts.html +19 -22
  65. package/coverage/src/concepts/ConfigProperty__.ts.html +40 -97
  66. package/coverage/src/concepts/Configuration__.ts.html +21 -48
  67. package/coverage/src/concepts/Connection__.ts.html +22 -97
  68. package/coverage/src/concepts/ConnectorTrigger__.ts.html +6 -9
  69. package/coverage/src/concepts/Connector__.ts.html +38 -161
  70. package/coverage/src/concepts/Constant__.ts.html +24 -84
  71. package/coverage/src/concepts/DataSource__.ts.html +57 -111
  72. package/coverage/src/concepts/DatabaseTypeAnnotation__.ts.html +6 -9
  73. package/coverage/src/concepts/Destination__.ts.html +55 -97
  74. package/coverage/src/concepts/End__.ts.html +21 -51
  75. package/coverage/src/concepts/EntityIndex__.ts.html +10 -40
  76. package/coverage/src/concepts/EntityProperty__.ts.html +56 -164
  77. package/coverage/src/concepts/Entity__.ts.html +89 -167
  78. package/coverage/src/concepts/EnumItem__.ts.html +10 -40
  79. package/coverage/src/concepts/Enum__.ts.html +24 -84
  80. package/coverage/src/concepts/Event__.ts.html +14 -41
  81. package/coverage/src/concepts/ExternalDestination__.ts.html +21 -75
  82. package/coverage/src/concepts/ForEachStatement__.ts.html +64 -139
  83. package/coverage/src/concepts/FrontendLibrary__.ts.html +20 -71
  84. package/coverage/src/concepts/FrontendVariable__.ts.html +1 -1
  85. package/coverage/src/concepts/Frontend__.ts.html +57 -213
  86. package/coverage/src/concepts/Function__.ts.html +86 -239
  87. package/coverage/src/concepts/Identifier__.ts.html +72 -111
  88. package/coverage/src/concepts/IfStatement__.ts.html +75 -138
  89. package/coverage/src/concepts/Integration__.ts.html +19 -70
  90. package/coverage/src/concepts/InterfaceParam__.ts.html +21 -78
  91. package/coverage/src/concepts/Interface__.ts.html +60 -162
  92. package/coverage/src/concepts/JSBlock__.ts.html +11 -215
  93. package/coverage/src/concepts/JavaLogic__.ts.html +9 -42
  94. package/coverage/src/concepts/LogicItem__.ts.html +21 -51
  95. package/coverage/src/concepts/Logic__.ts.html +321 -405
  96. package/coverage/src/concepts/MatchCase__.ts.html +97 -181
  97. package/coverage/src/concepts/Match__.ts.html +59 -116
  98. package/coverage/src/concepts/MemberExpression__.ts.html +128 -182
  99. package/coverage/src/concepts/MicroApp__.ts.html +6 -9
  100. package/coverage/src/concepts/Module__.ts.html +18 -672
  101. package/coverage/src/concepts/MsgTriggerEvent__.ts.html +14 -41
  102. package/coverage/src/concepts/MsgTriggerLauncher__.ts.html +14 -41
  103. package/coverage/src/concepts/Namespace__.ts.html +91 -358
  104. package/coverage/src/concepts/NewComposite__.ts.html +125 -278
  105. package/coverage/src/concepts/NewList__.ts.html +57 -195
  106. package/coverage/src/concepts/NewMap__.ts.html +63 -168
  107. package/coverage/src/concepts/New__.ts.html +9 -39
  108. package/coverage/src/concepts/NullLiteral__.ts.html +9 -36
  109. package/coverage/src/concepts/NumericLiteral__.ts.html +33 -90
  110. package/coverage/src/concepts/OqlQueryComponent__.ts.html +35 -161
  111. package/coverage/src/concepts/OverriddenLogic__.ts.html +201 -324
  112. package/coverage/src/concepts/Param__.ts.html +75 -189
  113. package/coverage/src/concepts/Point__.ts.html +6 -9
  114. package/coverage/src/concepts/ProcessComponent__.ts.html +21 -72
  115. package/coverage/src/concepts/ProcessElement__.ts.html +115 -316
  116. package/coverage/src/concepts/ProcessOutcome__.ts.html +13 -85
  117. package/coverage/src/concepts/ProcessOutcomes__.ts.html +13 -85
  118. package/coverage/src/concepts/Process__.ts.html +70 -211
  119. package/coverage/src/concepts/QueryAggregateExpression__.ts.html +16 -67
  120. package/coverage/src/concepts/QueryFieldExpression__.ts.html +11 -41
  121. package/coverage/src/concepts/QueryFromExpression__.ts.html +21 -81
  122. package/coverage/src/concepts/QueryGroupByExpression__.ts.html +19 -70
  123. package/coverage/src/concepts/QueryJoinExpression__.ts.html +25 -85
  124. package/coverage/src/concepts/QueryLimitExpression__.ts.html +20 -77
  125. package/coverage/src/concepts/QueryOrderByExpression__.ts.html +20 -80
  126. package/coverage/src/concepts/QuerySelectExpression__.ts.html +15 -42
  127. package/coverage/src/concepts/Rect__.ts.html +6 -9
  128. package/coverage/src/concepts/Return__.ts.html +44 -164
  129. package/coverage/src/concepts/Role__.ts.html +15 -45
  130. package/coverage/src/concepts/SelectMembers__.ts.html +24 -81
  131. package/coverage/src/concepts/Slot__.ts.html +13 -40
  132. package/coverage/src/concepts/SqlQueryComponent__.ts.html +24 -84
  133. package/coverage/src/concepts/Start__.ts.html +9 -36
  134. package/coverage/src/concepts/StringInterpolation__.ts.html +29 -104
  135. package/coverage/src/concepts/StringLiteral__.ts.html +32 -62
  136. package/coverage/src/concepts/StructureProperty__.ts.html +23 -80
  137. package/coverage/src/concepts/Structure__.ts.html +32 -116
  138. package/coverage/src/concepts/SwitchCase__.ts.html +36 -87
  139. package/coverage/src/concepts/SwitchStatement__.ts.html +33 -90
  140. package/coverage/src/concepts/Theme__.ts.html +12 -15
  141. package/coverage/src/concepts/Transactional__.ts.html +6 -9
  142. package/coverage/src/concepts/TriggerEvent__.ts.html +14 -41
  143. package/coverage/src/concepts/TriggerLauncher__.ts.html +13 -46
  144. package/coverage/src/concepts/TypeAnnotation__.ts.html +116 -347
  145. package/coverage/src/concepts/TypeParam__.ts.html +12 -42
  146. package/coverage/src/concepts/UnaryExpression__.ts.html +27 -105
  147. package/coverage/src/concepts/Unparsed__.ts.html +12 -36
  148. package/coverage/src/concepts/UseComponent__.ts.html +6 -9
  149. package/coverage/src/concepts/ValidationRule__.ts.html +40 -79
  150. package/coverage/src/concepts/Variable__.ts.html +37 -157
  151. package/coverage/src/concepts/ViewBlock__.ts.html +6 -9
  152. package/coverage/src/concepts/ViewComponent__.ts.html +24 -99
  153. package/coverage/src/concepts/ViewElement__.ts.html +278 -692
  154. package/coverage/src/concepts/View__.ts.html +163 -517
  155. package/coverage/src/concepts/WhileStatement__.ts.html +55 -118
  156. package/coverage/src/concepts/basics/stdlib/index.html +1 -1
  157. package/coverage/src/concepts/basics/stdlib/index.ts.html +1 -1
  158. package/coverage/src/concepts/basics/stdlib/nasl.auth.ts.html +1 -1
  159. package/coverage/src/concepts/basics/stdlib/nasl.browser.ts.html +1 -1
  160. package/coverage/src/concepts/basics/stdlib/nasl.collection.ts.html +1 -1
  161. package/coverage/src/concepts/basics/stdlib/nasl.configuration.ts.html +1 -1
  162. package/coverage/src/concepts/basics/stdlib/nasl.core.ts.html +1 -1
  163. package/coverage/src/concepts/basics/stdlib/nasl.event.ts.html +1 -1
  164. package/coverage/src/concepts/basics/stdlib/nasl.http.ts.html +1 -1
  165. package/coverage/src/concepts/basics/stdlib/nasl.interface.ts.html +1 -1
  166. package/coverage/src/concepts/basics/stdlib/nasl.io.ts.html +1 -1
  167. package/coverage/src/concepts/basics/stdlib/nasl.logging.ts.html +1 -1
  168. package/coverage/src/concepts/basics/stdlib/nasl.process.ts.html +1 -1
  169. package/coverage/src/concepts/basics/stdlib/nasl.ui.ts.html +1 -1
  170. package/coverage/src/concepts/basics/stdlib/nasl.util.ts.html +3 -3
  171. package/coverage/src/concepts/basics/stdlib/nasl.validation.ts.html +1 -1
  172. package/coverage/src/concepts/basics/stdlib/reference2TypeAnnotationList.ts.html +1 -1
  173. package/coverage/src/concepts/basics/stdlib/timeZone.ts.html +1 -1
  174. package/coverage/src/concepts/basics/types/coreTypeList.ts.html +1 -1
  175. package/coverage/src/concepts/basics/types/index.html +1 -1
  176. package/coverage/src/concepts/basics/types/index.ts.html +1 -1
  177. package/coverage/src/concepts/index.html +965 -980
  178. package/coverage/src/concepts/index.ts.html +1 -1
  179. package/coverage/src/concepts/index__.ts.html +4 -7
  180. package/coverage/src/config.ts.html +1 -1
  181. package/coverage/src/decorators/index.html +5 -5
  182. package/coverage/src/decorators/index.ts.html +32 -32
  183. package/coverage/src/decorators/promise.ts.html +10 -10
  184. package/coverage/src/eventBus.ts.html +1 -1
  185. package/coverage/src/generator/compileComponent.ts.html +4 -4
  186. package/coverage/src/generator/genBundleFiles.ts.html +23 -17
  187. package/coverage/src/generator/genHash.ts.html +3 -3
  188. package/coverage/src/generator/genMetaData.ts.html +16 -103
  189. package/coverage/src/generator/genReleaseBody.ts.html +3 -3
  190. package/coverage/src/generator/icestark.ts.html +4 -10
  191. package/coverage/src/generator/index.html +21 -21
  192. package/coverage/src/generator/index.ts.html +1 -1
  193. package/coverage/src/generator/microApp.ts.html +1 -1
  194. package/coverage/src/generator/permission.ts.html +20 -92
  195. package/coverage/src/generator/qiankun.ts.html +3 -9
  196. package/coverage/src/generator/styleReplacer.ts.html +1 -1
  197. package/coverage/src/index.html +7 -7
  198. package/coverage/src/index.ts.html +4 -4
  199. package/coverage/src/manager/diagnostic.ts.html +14 -11
  200. package/coverage/src/manager/index.html +13 -13
  201. package/coverage/src/manager/stepRecorder.ts.html +1 -1
  202. package/coverage/src/natural/genNaturalTS.ts.html +1 -1
  203. package/coverage/src/natural/index.html +15 -15
  204. package/coverage/src/natural/index.ts.html +1 -1
  205. package/coverage/src/natural/naslStdlibMap.ts.html +1 -1
  206. package/coverage/src/natural/transformTSCode.ts.html +18 -78
  207. package/coverage/src/sentry/index.html +14 -14
  208. package/coverage/src/sentry/index.ts.html +32 -38
  209. package/coverage/src/server/createUiTs.ts.html +6 -15
  210. package/coverage/src/server/entity2LogicNamespace.ts.html +9 -9
  211. package/coverage/src/server/event.js.html +1 -1
  212. package/coverage/src/server/extendBaseNode.ts.html +4 -7
  213. package/coverage/src/server/formatTsUtils.ts.html +9 -9
  214. package/coverage/src/server/getConnector.ts.html +1 -1
  215. package/coverage/src/server/getExtensionModules.ts.html +1 -1
  216. package/coverage/src/server/getFunctions.ts.html +4 -4
  217. package/coverage/src/server/getInterfaces.ts.html +1 -1
  218. package/coverage/src/server/getLogging.ts.html +2 -2
  219. package/coverage/src/server/getLogics.ts.html +1 -1
  220. package/coverage/src/server/getMemberIdentifier.ts.html +119 -167
  221. package/coverage/src/server/getProcessComponents.ts.html +3 -3
  222. package/coverage/src/server/getProcesses.ts.html +1 -1
  223. package/coverage/src/server/getValidates.ts.html +4 -4
  224. package/coverage/src/server/index.html +34 -34
  225. package/coverage/src/server/index.ts.html +1 -1
  226. package/coverage/src/server/naslServer.ts.html +943 -1195
  227. package/coverage/src/server/naslStdlibMap.ts.html +1 -1
  228. package/coverage/src/server/process2LogicNamespace.ts.html +52 -52
  229. package/coverage/src/server/translator.ts.html +14 -50
  230. package/coverage/src/service/creator/add.configs.js.html +9 -27
  231. package/coverage/src/service/creator/errHandles.js.html +37 -19
  232. package/coverage/src/service/creator/index.html +22 -22
  233. package/coverage/src/service/creator/index.js.html +1 -1
  234. package/coverage/src/service/datasource/api.js.html +1 -1
  235. package/coverage/src/service/datasource/index.html +1 -1
  236. package/coverage/src/service/datasource/index.js.html +1 -1
  237. package/coverage/src/service/logic/api.js.html +1 -1
  238. package/coverage/src/service/logic/index.html +1 -1
  239. package/coverage/src/service/logic/index.js.html +1 -1
  240. package/coverage/src/service/storage/api.js.html +1 -1
  241. package/coverage/src/service/storage/index.html +29 -29
  242. package/coverage/src/service/storage/index.ts.html +1 -1
  243. package/coverage/src/service/storage/init.ts.html +601 -1534
  244. package/coverage/src/service/storage/jsoner.ts.html +13 -76
  245. package/coverage/src/service/storage/map.ts.html +3 -3
  246. package/coverage/src/service/storage/service.ts.html +1 -1
  247. package/coverage/src/service/storage/storagePoint.ts.html +1 -1
  248. package/coverage/src/templator/genCallComponentLogic.ts.html +1 -1
  249. package/coverage/src/templator/genCreateBlock.ts.html +56 -47
  250. package/coverage/src/templator/genCurdEditMultipleKeyBlock.ts.html +31 -49
  251. package/coverage/src/templator/genCurdMultipleKeyBlock.ts.html +89 -80
  252. package/coverage/src/templator/genEditTableBlock.ts.html +11 -80
  253. package/coverage/src/templator/genEnumSelectBlock.ts.html +1 -1
  254. package/coverage/src/templator/genGetBlock.ts.html +1 -1
  255. package/coverage/src/templator/genGridViewBlock.ts.html +1 -1
  256. package/coverage/src/templator/genListViewBlock.ts.html +1 -1
  257. package/coverage/src/templator/genQueryComponent.ts.html +1 -1
  258. package/coverage/src/templator/genSelectBlock.ts.html +1 -1
  259. package/coverage/src/templator/genTableBlock.ts.html +3 -66
  260. package/coverage/src/templator/genUpdateBlock.ts.html +36 -48
  261. package/coverage/src/templator/index.html +39 -39
  262. package/coverage/src/templator/index.ts.html +1 -1
  263. package/coverage/src/templator/utils.ts.html +11 -77
  264. package/coverage/src/translator/constant.ts.html +1 -1
  265. package/coverage/src/translator/index.html +21 -21
  266. package/coverage/src/translator/index.ts.html +1 -1
  267. package/coverage/src/translator/utils.ts.html +68 -389
  268. package/coverage/src/utils/cookie.ts.html +4 -4
  269. package/coverage/src/utils/env.ts.html +1 -1
  270. package/coverage/src/utils/index.html +51 -36
  271. package/coverage/src/utils/index.ts.html +22 -115
  272. package/coverage/src/utils/logger.ts.html +13 -13
  273. package/coverage/src/utils/sortTsString.ts.html +10 -25
  274. package/coverage/src/utils/string.ts.html +8 -110
  275. package/coverage/src/utils/time-slicing.ts.html +1 -1
  276. package/coverage/src/utils/traverse.ts.html +1 -1
  277. package/coverage/src/utils/window.ts.html +1 -1
  278. package/out/bak/translator.js.map +1 -1
  279. package/out/common/Command.js +1 -1
  280. package/out/common/Command.js.map +1 -1
  281. package/out/concepts/Argument__.js +7 -2
  282. package/out/concepts/Argument__.js.map +1 -1
  283. package/out/concepts/Assignment__.js +20 -3
  284. package/out/concepts/Assignment__.js.map +1 -1
  285. package/out/concepts/BackendVariable__.js +24 -2
  286. package/out/concepts/BackendVariable__.js.map +1 -1
  287. package/out/concepts/BinaryExpression__.js +40 -13
  288. package/out/concepts/BinaryExpression__.js.map +1 -1
  289. package/out/concepts/CallLogic__.js +7 -12
  290. package/out/concepts/CallLogic__.js.map +1 -1
  291. package/out/concepts/CountersignPolicy__.d.ts +26 -0
  292. package/out/concepts/CountersignPolicy__.js +73 -0
  293. package/out/concepts/CountersignPolicy__.js.map +1 -0
  294. package/out/concepts/ForEachStatement__.js +12 -26
  295. package/out/concepts/ForEachStatement__.js.map +1 -1
  296. package/out/concepts/Identifier__.js +3 -0
  297. package/out/concepts/Identifier__.js.map +1 -1
  298. package/out/concepts/JSBlock__.js +56 -0
  299. package/out/concepts/JSBlock__.js.map +1 -1
  300. package/out/concepts/LogicItem__.js +2 -1
  301. package/out/concepts/LogicItem__.js.map +1 -1
  302. package/out/concepts/Logic__.js +2 -0
  303. package/out/concepts/Logic__.js.map +1 -1
  304. package/out/concepts/Match__.js +1 -1
  305. package/out/concepts/Match__.js.map +1 -1
  306. package/out/concepts/MultiApprovalPolicy__.d.ts +24 -0
  307. package/out/concepts/MultiApprovalPolicy__.js +65 -0
  308. package/out/concepts/MultiApprovalPolicy__.js.map +1 -0
  309. package/out/concepts/NewComposite__.js +18 -10
  310. package/out/concepts/NewComposite__.js.map +1 -1
  311. package/out/concepts/NumericLiteral__.js +1 -1
  312. package/out/concepts/NumericLiteral__.js.map +1 -1
  313. package/out/concepts/Param__.js +24 -2
  314. package/out/concepts/Param__.js.map +1 -1
  315. package/out/concepts/ProcessElement__.d.ts +16 -0
  316. package/out/concepts/ProcessElement__.js +56 -1
  317. package/out/concepts/ProcessElement__.js.map +1 -1
  318. package/out/concepts/Return__.js +24 -2
  319. package/out/concepts/Return__.js.map +1 -1
  320. package/out/concepts/SequentialPolicy__.d.ts +18 -0
  321. package/out/concepts/SequentialPolicy__.js +54 -0
  322. package/out/concepts/SequentialPolicy__.js.map +1 -0
  323. package/out/concepts/Variable__.js +24 -2
  324. package/out/concepts/Variable__.js.map +1 -1
  325. package/out/concepts/ViewElement__.js.map +1 -1
  326. package/out/concepts/View__.js +2 -2
  327. package/out/concepts/View__.js.map +1 -1
  328. package/out/concepts/index__.d.ts +3 -0
  329. package/out/concepts/index__.js +3 -0
  330. package/out/concepts/index__.js.map +1 -1
  331. package/out/concepts/types__.d.ts +4 -1
  332. package/out/generator/genReleaseBody.js +2 -2
  333. package/out/generator/genReleaseBody.js.map +1 -1
  334. package/out/server/extendBaseNode.js +32 -1
  335. package/out/server/extendBaseNode.js.map +1 -1
  336. package/out/server/getLogics.d.ts +1 -0
  337. package/out/server/getLogics.js +6 -2
  338. package/out/server/getLogics.js.map +1 -1
  339. package/out/server/getProcesses.js +66 -6
  340. package/out/server/getProcesses.js.map +1 -1
  341. package/out/server/index.js +1 -0
  342. package/out/server/index.js.map +1 -1
  343. package/out/server/naslServer.js +2 -2
  344. package/out/server/naslServer.js.map +1 -1
  345. package/out/server/translator.js +3 -0
  346. package/out/server/translator.js.map +1 -1
  347. package/out/service/creator/errHandles.js +6 -3
  348. package/out/service/creator/errHandles.js.map +1 -1
  349. package/out/service/storage/init.js +2 -2
  350. package/out/service/storage/init.js.map +1 -1
  351. package/out/templator/genCreateBlock.js +9 -5
  352. package/out/templator/genCreateBlock.js.map +1 -1
  353. package/out/templator/genCurdEditMultipleKeyBlock.js +18 -12
  354. package/out/templator/genCurdEditMultipleKeyBlock.js.map +1 -1
  355. package/out/templator/genCurdMultipleKeyBlock.js +10 -8
  356. package/out/templator/genCurdMultipleKeyBlock.js.map +1 -1
  357. package/out/templator/genEditTableBlock.js +3 -2
  358. package/out/templator/genEditTableBlock.js.map +1 -1
  359. package/out/templator/genUpdateBlock.js +12 -9
  360. package/out/templator/genUpdateBlock.js.map +1 -1
  361. package/out/templator/utils.js.map +1 -1
  362. package/package.json +2 -2
  363. package/sandbox/stdlib/nasl.core.ts +2 -0
  364. package/sandbox/stdlib/nasl.util.ts +3 -3
  365. package/src/bak/translator.js +0 -1
  366. package/src/common/Command.ts +1 -1
  367. package/src/concepts/Argument__.ts +7 -2
  368. package/src/concepts/Assignment__.ts +31 -13
  369. package/src/concepts/BackendVariable__.ts +22 -3
  370. package/src/concepts/BinaryExpression__.ts +39 -13
  371. package/src/concepts/CallLogic__.ts +13 -23
  372. package/src/concepts/CountersignPolicy__.ts +77 -0
  373. package/src/concepts/ForEachStatement__.ts +17 -26
  374. package/src/concepts/Identifier__.ts +4 -1
  375. package/src/concepts/JSBlock__.ts +58 -0
  376. package/src/concepts/LogicItem__.ts +2 -2
  377. package/src/concepts/Logic__.ts +1 -0
  378. package/src/concepts/Match__.ts +1 -1
  379. package/src/concepts/MultiApprovalPolicy__.ts +69 -0
  380. package/src/concepts/NewComposite__.ts +18 -9
  381. package/src/concepts/NumericLiteral__.ts +1 -1
  382. package/src/concepts/Param__.ts +24 -2
  383. package/src/concepts/ProcessElement__.ts +70 -1
  384. package/src/concepts/Return__.ts +23 -3
  385. package/src/concepts/SequentialPolicy__.ts +58 -0
  386. package/src/concepts/Variable__.ts +23 -3
  387. package/src/concepts/ViewElement__.ts +6 -4
  388. package/src/concepts/View__.ts +5 -5
  389. package/src/concepts/index__.ts +3 -0
  390. package/src/concepts/types__.ts +6 -0
  391. package/src/generator/genReleaseBody.ts +40 -40
  392. package/src/server/extendBaseNode.ts +30 -2
  393. package/src/server/getLogics.ts +4 -0
  394. package/src/server/getProcesses.ts +66 -6
  395. package/src/server/index.ts +2 -1
  396. package/src/server/naslServer.ts +2 -2
  397. package/src/server/translator.ts +3 -0
  398. package/src/service/creator/errHandles.js +7 -4
  399. package/src/service/storage/init.ts +2 -2
  400. package/src/templator/genCreateBlock.ts +9 -5
  401. package/src/templator/genCurdEditMultipleKeyBlock.ts +19 -13
  402. package/src/templator/genCurdMultipleKeyBlock.ts +14 -11
  403. package/src/templator/genEditTableBlock.ts +4 -2
  404. package/src/templator/genUpdateBlock.ts +15 -12
  405. package/src/templator/utils.ts +8 -7
  406. package/test/concepts/anonymous-function/__snapshots__/toJS.spec.ts.snap +1 -1
  407. package/test/concepts/assignment/__snapshots__/toJS.spec.ts.snap +1 -1
  408. package/test/concepts/batch-assignment/__snapshots__/toJS.spec.ts.snap +2 -2
  409. package/test/concepts/binary-expression/__snapshots__/toJS.spec.ts.snap +3 -2
  410. package/test/concepts/call-interface/__snapshots__/toJS.spec.ts.snap +2 -2
  411. package/test/concepts/call-logic/__snapshots__/toJS.spec.ts.snap +3 -3
  412. package/test/concepts/match/__snapshots__/toJS.spec.ts.snap +1 -1
  413. package/test/concepts/numeric-literal/__snapshots__/toJS.spec.ts.snap +1 -1
  414. package/test/concepts/validation-rule/__snapshots__/toJS.spec.ts.snap +3 -3
  415. package/.nyc_output/processinfo/78804420-ead6-486f-b682-ab54ccd95dc9.json +0 -1
  416. package/coverage/cobertura-coverage.xml +0 -71878
  417. package/coverage/src/automate/engine/index.js.html +0 -1471
  418. package/coverage/src/automate/engine/operators.js.html +0 -862
  419. package/coverage/src/automate/engine/uniqueName.js.html +0 -412
  420. package/coverage/src/automate/engine/viewCache.js.html +0 -214
  421. package/coverage/src/automate/template/index.html +0 -116
  422. package/coverage/src/automate/template/myProcess.js.html +0 -34645
  423. package/coverage/src/common/utils.ts.html +0 -136
  424. package/coverage/src/concepts/DataElement__.ts.html +0 -118
  425. package/coverage/src/concepts/MetadataType__.ts.html +0 -2053
  426. package/coverage/src/utils/time-slicing/constant.ts.html +0 -196
  427. package/coverage/src/utils/time-slicing/controller.ts.html +0 -1111
  428. package/coverage/src/utils/time-slicing/index.html +0 -236
  429. package/coverage/src/utils/time-slicing/index.ts.html +0 -103
  430. package/coverage/src/utils/time-slicing/page-state.ts.html +0 -121
  431. package/coverage/src/utils/time-slicing/performance.ts.html +0 -253
  432. package/coverage/src/utils/time-slicing/runner.ts.html +0 -247
  433. package/coverage/src/utils/time-slicing/tool.ts.html +0 -220
  434. package/coverage/src/utils/time-slicing/utils.ts.html +0 -355
  435. package/coverage/src/utils/time-slicing/wrapper.ts.html +0 -259
  436. package/coverage/src/utils/time.ts.html +0 -118
@@ -23,30 +23,30 @@
23
23
  <div class='clearfix'>
24
24
 
25
25
  <div class='fl pad1y space-right2'>
26
- <span class="strong">31.73% </span>
26
+ <span class="strong">24.64% </span>
27
27
  <span class="quiet">Statements</span>
28
- <span class='fraction'>99/312</span>
28
+ <span class='fraction'>70/284</span>
29
29
  </div>
30
30
 
31
31
 
32
32
  <div class='fl pad1y space-right2'>
33
- <span class="strong">28.2% </span>
33
+ <span class="strong">21.87% </span>
34
34
  <span class="quiet">Branches</span>
35
- <span class='fraction'>55/195</span>
35
+ <span class='fraction'>35/160</span>
36
36
  </div>
37
37
 
38
38
 
39
39
  <div class='fl pad1y space-right2'>
40
- <span class="strong">19.56% </span>
40
+ <span class="strong">15.9% </span>
41
41
  <span class="quiet">Functions</span>
42
- <span class='fraction'>9/46</span>
42
+ <span class='fraction'>7/44</span>
43
43
  </div>
44
44
 
45
45
 
46
46
  <div class='fl pad1y space-right2'>
47
- <span class="strong">31.72% </span>
47
+ <span class="strong">24.43% </span>
48
48
  <span class="quiet">Lines</span>
49
- <span class='fraction'>92/290</span>
49
+ <span class='fraction'>65/266</span>
50
50
  </div>
51
51
 
52
52
 
@@ -742,67 +742,7 @@
742
742
  <a name='L677'></a><a href='#L677'>677</a>
743
743
  <a name='L678'></a><a href='#L678'>678</a>
744
744
  <a name='L679'></a><a href='#L679'>679</a>
745
- <a name='L680'></a><a href='#L680'>680</a>
746
- <a name='L681'></a><a href='#L681'>681</a>
747
- <a name='L682'></a><a href='#L682'>682</a>
748
- <a name='L683'></a><a href='#L683'>683</a>
749
- <a name='L684'></a><a href='#L684'>684</a>
750
- <a name='L685'></a><a href='#L685'>685</a>
751
- <a name='L686'></a><a href='#L686'>686</a>
752
- <a name='L687'></a><a href='#L687'>687</a>
753
- <a name='L688'></a><a href='#L688'>688</a>
754
- <a name='L689'></a><a href='#L689'>689</a>
755
- <a name='L690'></a><a href='#L690'>690</a>
756
- <a name='L691'></a><a href='#L691'>691</a>
757
- <a name='L692'></a><a href='#L692'>692</a>
758
- <a name='L693'></a><a href='#L693'>693</a>
759
- <a name='L694'></a><a href='#L694'>694</a>
760
- <a name='L695'></a><a href='#L695'>695</a>
761
- <a name='L696'></a><a href='#L696'>696</a>
762
- <a name='L697'></a><a href='#L697'>697</a>
763
- <a name='L698'></a><a href='#L698'>698</a>
764
- <a name='L699'></a><a href='#L699'>699</a>
765
- <a name='L700'></a><a href='#L700'>700</a>
766
- <a name='L701'></a><a href='#L701'>701</a>
767
- <a name='L702'></a><a href='#L702'>702</a>
768
- <a name='L703'></a><a href='#L703'>703</a>
769
- <a name='L704'></a><a href='#L704'>704</a>
770
- <a name='L705'></a><a href='#L705'>705</a>
771
- <a name='L706'></a><a href='#L706'>706</a>
772
- <a name='L707'></a><a href='#L707'>707</a>
773
- <a name='L708'></a><a href='#L708'>708</a>
774
- <a name='L709'></a><a href='#L709'>709</a>
775
- <a name='L710'></a><a href='#L710'>710</a>
776
- <a name='L711'></a><a href='#L711'>711</a>
777
- <a name='L712'></a><a href='#L712'>712</a>
778
- <a name='L713'></a><a href='#L713'>713</a>
779
- <a name='L714'></a><a href='#L714'>714</a>
780
- <a name='L715'></a><a href='#L715'>715</a>
781
- <a name='L716'></a><a href='#L716'>716</a>
782
- <a name='L717'></a><a href='#L717'>717</a>
783
- <a name='L718'></a><a href='#L718'>718</a>
784
- <a name='L719'></a><a href='#L719'>719</a>
785
- <a name='L720'></a><a href='#L720'>720</a>
786
- <a name='L721'></a><a href='#L721'>721</a>
787
- <a name='L722'></a><a href='#L722'>722</a>
788
- <a name='L723'></a><a href='#L723'>723</a>
789
- <a name='L724'></a><a href='#L724'>724</a>
790
- <a name='L725'></a><a href='#L725'>725</a>
791
- <a name='L726'></a><a href='#L726'>726</a>
792
- <a name='L727'></a><a href='#L727'>727</a>
793
- <a name='L728'></a><a href='#L728'>728</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">1x</span>
794
- <span class="cline-any cline-yes">1x</span>
795
- <span class="cline-any cline-neutral">&nbsp;</span>
796
- <span class="cline-any cline-neutral">&nbsp;</span>
797
- <span class="cline-any cline-neutral">&nbsp;</span>
798
- <span class="cline-any cline-neutral">&nbsp;</span>
799
- <span class="cline-any cline-neutral">&nbsp;</span>
800
- <span class="cline-any cline-neutral">&nbsp;</span>
801
- <span class="cline-any cline-neutral">&nbsp;</span>
802
- <span class="cline-any cline-neutral">&nbsp;</span>
803
- <span class="cline-any cline-neutral">&nbsp;</span>
804
- <span class="cline-any cline-neutral">&nbsp;</span>
805
- <span class="cline-any cline-neutral">&nbsp;</span>
745
+ <a name='L680'></a><a href='#L680'>680</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">1x</span>
806
746
  <span class="cline-any cline-yes">1x</span>
807
747
  <span class="cline-any cline-neutral">&nbsp;</span>
808
748
  <span class="cline-any cline-yes">1x</span>
@@ -831,6 +771,7 @@
831
771
  <span class="cline-any cline-neutral">&nbsp;</span>
832
772
  <span class="cline-any cline-neutral">&nbsp;</span>
833
773
  <span class="cline-any cline-neutral">&nbsp;</span>
774
+ <span class="cline-any cline-neutral">&nbsp;</span>
834
775
  <span class="cline-any cline-yes">1x</span>
835
776
  <span class="cline-any cline-neutral">&nbsp;</span>
836
777
  <span class="cline-any cline-yes">1x</span>
@@ -840,13 +781,12 @@
840
781
  <span class="cline-any cline-neutral">&nbsp;</span>
841
782
  <span class="cline-any cline-neutral">&nbsp;</span>
842
783
  <span class="cline-any cline-neutral">&nbsp;</span>
843
- <span class="cline-any cline-yes">1x</span>
844
784
  <span class="cline-any cline-neutral">&nbsp;</span>
845
785
  <span class="cline-any cline-neutral">&nbsp;</span>
846
786
  <span class="cline-any cline-neutral">&nbsp;</span>
847
787
  <span class="cline-any cline-neutral">&nbsp;</span>
848
788
  <span class="cline-any cline-neutral">&nbsp;</span>
849
- <span class="cline-any cline-yes">28x</span>
789
+ <span class="cline-any cline-yes">9x</span>
850
790
  <span class="cline-any cline-neutral">&nbsp;</span>
851
791
  <span class="cline-any cline-neutral">&nbsp;</span>
852
792
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -873,25 +813,25 @@
873
813
  <span class="cline-any cline-neutral">&nbsp;</span>
874
814
  <span class="cline-any cline-neutral">&nbsp;</span>
875
815
  <span class="cline-any cline-neutral">&nbsp;</span>
876
- <span class="cline-any cline-yes">28x</span>
816
+ <span class="cline-any cline-yes">9x</span>
877
817
  <span class="cline-any cline-neutral">&nbsp;</span>
878
818
  <span class="cline-any cline-neutral">&nbsp;</span>
879
819
  <span class="cline-any cline-neutral">&nbsp;</span>
880
820
  <span class="cline-any cline-neutral">&nbsp;</span>
881
821
  <span class="cline-any cline-neutral">&nbsp;</span>
882
- <span class="cline-any cline-yes">28x</span>
822
+ <span class="cline-any cline-yes">9x</span>
883
823
  <span class="cline-any cline-neutral">&nbsp;</span>
884
824
  <span class="cline-any cline-neutral">&nbsp;</span>
885
825
  <span class="cline-any cline-neutral">&nbsp;</span>
886
826
  <span class="cline-any cline-neutral">&nbsp;</span>
887
827
  <span class="cline-any cline-neutral">&nbsp;</span>
888
- <span class="cline-any cline-yes">28x</span>
889
- <span class="cline-any cline-yes">28x</span>
890
- <span class="cline-any cline-yes">28x</span>
828
+ <span class="cline-any cline-yes">9x</span>
829
+ <span class="cline-any cline-yes">9x</span>
830
+ <span class="cline-any cline-yes">9x</span>
891
831
  <span class="cline-any cline-neutral">&nbsp;</span>
892
832
  <span class="cline-any cline-neutral">&nbsp;</span>
893
833
  <span class="cline-any cline-neutral">&nbsp;</span>
894
- <span class="cline-any cline-yes">25x</span>
834
+ <span class="cline-any cline-yes">9x</span>
895
835
  <span class="cline-any cline-neutral">&nbsp;</span>
896
836
  <span class="cline-any cline-neutral">&nbsp;</span>
897
837
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -1116,23 +1056,15 @@
1116
1056
  <span class="cline-any cline-neutral">&nbsp;</span>
1117
1057
  <span class="cline-any cline-no">&nbsp;</span>
1118
1058
  <span class="cline-any cline-no">&nbsp;</span>
1119
- <span class="cline-any cline-neutral">&nbsp;</span>
1120
- <span class="cline-any cline-no">&nbsp;</span>
1121
- <span class="cline-any cline-neutral">&nbsp;</span>
1122
- <span class="cline-any cline-no">&nbsp;</span>
1123
- <span class="cline-any cline-no">&nbsp;</span>
1124
- <span class="cline-any cline-neutral">&nbsp;</span>
1125
1059
  <span class="cline-any cline-no">&nbsp;</span>
1126
1060
  <span class="cline-any cline-no">&nbsp;</span>
1127
1061
  <span class="cline-any cline-no">&nbsp;</span>
1128
- <span class="cline-any cline-neutral">&nbsp;</span>
1129
1062
  <span class="cline-any cline-no">&nbsp;</span>
1130
1063
  <span class="cline-any cline-no">&nbsp;</span>
1131
1064
  <span class="cline-any cline-no">&nbsp;</span>
1132
1065
  <span class="cline-any cline-no">&nbsp;</span>
1133
1066
  <span class="cline-any cline-neutral">&nbsp;</span>
1134
1067
  <span class="cline-any cline-neutral">&nbsp;</span>
1135
- <span class="cline-any cline-neutral">&nbsp;</span>
1136
1068
  <span class="cline-any cline-no">&nbsp;</span>
1137
1069
  <span class="cline-any cline-neutral">&nbsp;</span>
1138
1070
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -1158,23 +1090,15 @@
1158
1090
  <span class="cline-any cline-neutral">&nbsp;</span>
1159
1091
  <span class="cline-any cline-no">&nbsp;</span>
1160
1092
  <span class="cline-any cline-no">&nbsp;</span>
1161
- <span class="cline-any cline-neutral">&nbsp;</span>
1162
- <span class="cline-any cline-no">&nbsp;</span>
1163
- <span class="cline-any cline-neutral">&nbsp;</span>
1164
- <span class="cline-any cline-no">&nbsp;</span>
1165
- <span class="cline-any cline-no">&nbsp;</span>
1166
- <span class="cline-any cline-neutral">&nbsp;</span>
1167
1093
  <span class="cline-any cline-no">&nbsp;</span>
1168
1094
  <span class="cline-any cline-no">&nbsp;</span>
1169
1095
  <span class="cline-any cline-no">&nbsp;</span>
1170
- <span class="cline-any cline-neutral">&nbsp;</span>
1171
1096
  <span class="cline-any cline-no">&nbsp;</span>
1172
1097
  <span class="cline-any cline-no">&nbsp;</span>
1173
1098
  <span class="cline-any cline-no">&nbsp;</span>
1174
1099
  <span class="cline-any cline-no">&nbsp;</span>
1175
1100
  <span class="cline-any cline-neutral">&nbsp;</span>
1176
1101
  <span class="cline-any cline-neutral">&nbsp;</span>
1177
- <span class="cline-any cline-neutral">&nbsp;</span>
1178
1102
  <span class="cline-any cline-no">&nbsp;</span>
1179
1103
  <span class="cline-any cline-neutral">&nbsp;</span>
1180
1104
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -1188,36 +1112,14 @@
1188
1112
  <span class="cline-any cline-neutral">&nbsp;</span>
1189
1113
  <span class="cline-any cline-no">&nbsp;</span>
1190
1114
  <span class="cline-any cline-no">&nbsp;</span>
1191
- <span class="cline-any cline-neutral">&nbsp;</span>
1192
1115
  <span class="cline-any cline-no">&nbsp;</span>
1193
1116
  <span class="cline-any cline-no">&nbsp;</span>
1194
1117
  <span class="cline-any cline-no">&nbsp;</span>
1195
1118
  <span class="cline-any cline-no">&nbsp;</span>
1196
1119
  <span class="cline-any cline-no">&nbsp;</span>
1197
- <span class="cline-any cline-neutral">&nbsp;</span>
1198
- <span class="cline-any cline-neutral">&nbsp;</span>
1199
- <span class="cline-any cline-neutral">&nbsp;</span>
1200
- <span class="cline-any cline-neutral">&nbsp;</span>
1201
1120
  <span class="cline-any cline-no">&nbsp;</span>
1202
1121
  <span class="cline-any cline-no">&nbsp;</span>
1203
1122
  <span class="cline-any cline-neutral">&nbsp;</span>
1204
- <span class="cline-any cline-neutral">&nbsp;</span>
1205
- <span class="cline-any cline-no">&nbsp;</span>
1206
- <span class="cline-any cline-no">&nbsp;</span>
1207
- <span class="cline-any cline-no">&nbsp;</span>
1208
- <span class="cline-any cline-no">&nbsp;</span>
1209
- <span class="cline-any cline-no">&nbsp;</span>
1210
- <span class="cline-any cline-no">&nbsp;</span>
1211
- <span class="cline-any cline-no">&nbsp;</span>
1212
- <span class="cline-any cline-no">&nbsp;</span>
1213
- <span class="cline-any cline-no">&nbsp;</span>
1214
- <span class="cline-any cline-no">&nbsp;</span>
1215
- <span class="cline-any cline-no">&nbsp;</span>
1216
- <span class="cline-any cline-neutral">&nbsp;</span>
1217
- <span class="cline-any cline-no">&nbsp;</span>
1218
- <span class="cline-any cline-no">&nbsp;</span>
1219
- <span class="cline-any cline-neutral">&nbsp;</span>
1220
- <span class="cline-any cline-neutral">&nbsp;</span>
1221
1123
  <span class="cline-any cline-no">&nbsp;</span>
1222
1124
  <span class="cline-any cline-no">&nbsp;</span>
1223
1125
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -1227,7 +1129,6 @@
1227
1129
  <span class="cline-any cline-no">&nbsp;</span>
1228
1130
  <span class="cline-any cline-no">&nbsp;</span>
1229
1131
  <span class="cline-any cline-no">&nbsp;</span>
1230
- <span class="cline-any cline-no">&nbsp;</span>
1231
1132
  <span class="cline-any cline-neutral">&nbsp;</span>
1232
1133
  <span class="cline-any cline-neutral">&nbsp;</span>
1233
1134
  <span class="cline-any cline-no">&nbsp;</span>
@@ -1253,57 +1154,58 @@
1253
1154
  <span class="cline-any cline-neutral">&nbsp;</span>
1254
1155
  <span class="cline-any cline-neutral">&nbsp;</span>
1255
1156
  <span class="cline-any cline-neutral">&nbsp;</span>
1256
- <span class="cline-any cline-yes">6x</span>
1257
- <span class="cline-any cline-yes">6x</span>
1258
- <span class="cline-any cline-yes">6x</span>
1259
- <span class="cline-any cline-yes">6x</span>
1157
+ <span class="cline-any cline-yes">1x</span>
1158
+ <span class="cline-any cline-yes">1x</span>
1159
+ <span class="cline-any cline-yes">1x</span>
1160
+ <span class="cline-any cline-yes">1x</span>
1260
1161
  <span class="cline-any cline-yes">1x</span>
1261
1162
  <span class="cline-any cline-yes">1x</span>
1262
1163
  <span class="cline-any cline-neutral">&nbsp;</span>
1263
1164
  <span class="cline-any cline-no">&nbsp;</span>
1264
1165
  <span class="cline-any cline-neutral">&nbsp;</span>
1265
1166
  <span class="cline-any cline-neutral">&nbsp;</span>
1266
- <span class="cline-any cline-yes">6x</span>
1267
- <span class="cline-any cline-yes">6x</span>
1167
+ <span class="cline-any cline-yes">1x</span>
1168
+ <span class="cline-any cline-yes">1x</span>
1169
+ <span class="cline-any cline-neutral">&nbsp;</span>
1268
1170
  <span class="cline-any cline-neutral">&nbsp;</span>
1269
1171
  <span class="cline-any cline-neutral">&nbsp;</span>
1270
- <span class="cline-any cline-yes">6x</span>
1271
- <span class="cline-any cline-yes">4x</span>
1272
- <span class="cline-any cline-yes">4x</span>
1273
- <span class="cline-any cline-yes">2x</span>
1274
1172
  <span class="cline-any cline-yes">1x</span>
1173
+ <span class="cline-any cline-no">&nbsp;</span>
1174
+ <span class="cline-any cline-no">&nbsp;</span>
1175
+ <span class="cline-any cline-yes">1x</span>
1176
+ <span class="cline-any cline-no">&nbsp;</span>
1177
+ <span class="cline-any cline-neutral">&nbsp;</span>
1275
1178
  <span class="cline-any cline-neutral">&nbsp;</span>
1276
1179
  <span class="cline-any cline-neutral">&nbsp;</span>
1277
1180
  <span class="cline-any cline-neutral">&nbsp;</span>
1278
1181
  <span class="cline-any cline-neutral">&nbsp;</span>
1279
- <span class="cline-any cline-yes">6x</span>
1182
+ <span class="cline-any cline-yes">1x</span>
1280
1183
  <span class="cline-any cline-no">&nbsp;</span>
1281
1184
  <span class="cline-any cline-neutral">&nbsp;</span>
1282
1185
  <span class="cline-any cline-neutral">&nbsp;</span>
1283
- <span class="cline-any cline-yes">6x</span>
1284
- <span class="cline-any cline-yes">5x</span>
1186
+ <span class="cline-any cline-yes">1x</span>
1187
+ <span class="cline-any cline-no">&nbsp;</span>
1285
1188
  <span class="cline-any cline-neutral">&nbsp;</span>
1286
- <span class="cline-any cline-yes">5x</span>
1287
- <span class="cline-any cline-yes">8x</span>
1288
- <span class="cline-any cline-yes">8x</span>
1289
- <span class="cline-any cline-yes">8x</span>
1290
- <span class="cline-any cline-yes">8x</span>
1291
- <span class="cline-any cline-yes">8x</span>
1292
1189
  <span class="cline-any cline-no">&nbsp;</span>
1293
- <span class="cline-any cline-yes">8x</span>
1190
+ <span class="cline-any cline-no">&nbsp;</span>
1294
1191
  <span class="cline-any cline-no">&nbsp;</span>
1295
1192
  <span class="cline-any cline-neutral">&nbsp;</span>
1296
- <span class="cline-any cline-yes">8x</span>
1297
- <span class="cline-any cline-yes">8x</span>
1193
+ <span class="cline-any cline-no">&nbsp;</span>
1194
+ <span class="cline-any cline-no">&nbsp;</span>
1195
+ <span class="cline-any cline-no">&nbsp;</span>
1196
+ <span class="cline-any cline-no">&nbsp;</span>
1197
+ <span class="cline-any cline-neutral">&nbsp;</span>
1198
+ <span class="cline-any cline-no">&nbsp;</span>
1199
+ <span class="cline-any cline-no">&nbsp;</span>
1298
1200
  <span class="cline-any cline-neutral">&nbsp;</span>
1299
1201
  <span class="cline-any cline-neutral">&nbsp;</span>
1300
1202
  <span class="cline-any cline-neutral">&nbsp;</span>
1301
- <span class="cline-any cline-yes">6x</span>
1302
1203
  <span class="cline-any cline-yes">1x</span>
1204
+ <span class="cline-any cline-no">&nbsp;</span>
1303
1205
  <span class="cline-any cline-neutral">&nbsp;</span>
1304
1206
  <span class="cline-any cline-neutral">&nbsp;</span>
1305
- <span class="cline-any cline-yes">6x</span>
1306
- <span class="cline-any cline-yes">6x</span>
1207
+ <span class="cline-any cline-yes">1x</span>
1208
+ <span class="cline-any cline-yes">1x</span>
1307
1209
  <span class="cline-any cline-yes">1x</span>
1308
1210
  <span class="cline-any cline-neutral">&nbsp;</span>
1309
1211
  <span class="cline-any cline-yes">1x</span>
@@ -1312,14 +1214,15 @@
1312
1214
  <span class="cline-any cline-neutral">&nbsp;</span>
1313
1215
  <span class="cline-any cline-neutral">&nbsp;</span>
1314
1216
  <span class="cline-any cline-neutral">&nbsp;</span>
1315
- <span class="cline-any cline-yes">6x</span>
1316
- <span class="cline-any cline-yes">6x</span>
1217
+ <span class="cline-any cline-yes">1x</span>
1218
+ <span class="cline-any cline-yes">1x</span>
1219
+ <span class="cline-any cline-neutral">&nbsp;</span>
1220
+ <span class="cline-any cline-yes">1x</span>
1317
1221
  <span class="cline-any cline-neutral">&nbsp;</span>
1318
- <span class="cline-any cline-yes">6x</span>
1319
- <span class="cline-any cline-yes">6x</span>
1222
+ <span class="cline-any cline-yes">1x</span>
1320
1223
  <span class="cline-any cline-no">&nbsp;</span>
1321
1224
  <span class="cline-any cline-neutral">&nbsp;</span>
1322
- <span class="cline-any cline-yes">6x</span>
1225
+ <span class="cline-any cline-yes">1x</span>
1323
1226
  <span class="cline-any cline-neutral">&nbsp;</span>
1324
1227
  <span class="cline-any cline-neutral">&nbsp;</span>
1325
1228
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -1327,7 +1230,7 @@
1327
1230
  <span class="cline-any cline-neutral">&nbsp;</span>
1328
1231
  <span class="cline-any cline-neutral">&nbsp;</span>
1329
1232
  <span class="cline-any cline-neutral">&nbsp;</span>
1330
- <span class="cline-any cline-yes">17x</span>
1233
+ <span class="cline-any cline-yes">8x</span>
1331
1234
  <span class="cline-any cline-neutral">&nbsp;</span>
1332
1235
  <span class="cline-any cline-neutral">&nbsp;</span>
1333
1236
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -1422,41 +1325,40 @@
1422
1325
  <span class="cline-any cline-neutral">&nbsp;</span>
1423
1326
  <span class="cline-any cline-neutral">&nbsp;</span>
1424
1327
  <span class="cline-any cline-yes">1x</span>
1425
- <span class="cline-any cline-yes">9x</span>
1426
- <span class="cline-any cline-yes">9x</span>
1427
- <span class="cline-any cline-yes">9x</span>
1428
- <span class="cline-any cline-yes">9x</span>
1328
+ <span class="cline-any cline-yes">4x</span>
1329
+ <span class="cline-any cline-yes">4x</span>
1330
+ <span class="cline-any cline-yes">4x</span>
1429
1331
  <span class="cline-any cline-neutral">&nbsp;</span>
1430
1332
  <span class="cline-any cline-neutral">&nbsp;</span>
1431
- <span class="cline-any cline-yes">1x</span>
1432
- <span class="cline-any cline-yes">1x</span>
1433
- <span class="cline-any cline-yes">1x</span>
1434
- <span class="cline-any cline-yes">1x</span>
1435
- <span class="cline-any cline-yes">1x</span>
1436
1333
  <span class="cline-any cline-neutral">&nbsp;</span>
1437
- <span class="cline-any cline-yes">1x</span>
1334
+ <span class="cline-any cline-no">&nbsp;</span>
1335
+ <span class="cline-any cline-no">&nbsp;</span>
1336
+ <span class="cline-any cline-no">&nbsp;</span>
1337
+ <span class="cline-any cline-no">&nbsp;</span>
1338
+ <span class="cline-any cline-no">&nbsp;</span>
1438
1339
  <span class="cline-any cline-neutral">&nbsp;</span>
1439
- <span class="cline-any cline-yes">1x</span>
1440
- <span class="cline-any cline-yes">1x</span>
1441
- <span class="cline-any cline-yes">1x</span>
1340
+ <span class="cline-any cline-no">&nbsp;</span>
1442
1341
  <span class="cline-any cline-neutral">&nbsp;</span>
1443
- <span class="cline-any cline-yes">8x</span>
1444
- <span class="cline-any cline-yes">8x</span>
1342
+ <span class="cline-any cline-no">&nbsp;</span>
1343
+ <span class="cline-any cline-no">&nbsp;</span>
1344
+ <span class="cline-any cline-no">&nbsp;</span>
1345
+ <span class="cline-any cline-neutral">&nbsp;</span>
1346
+ <span class="cline-any cline-yes">4x</span>
1347
+ <span class="cline-any cline-yes">4x</span>
1445
1348
  <span class="cline-any cline-neutral">&nbsp;</span>
1446
1349
  <span class="cline-any cline-yes">2x</span>
1447
1350
  <span class="cline-any cline-yes">2x</span>
1448
1351
  <span class="cline-any cline-yes">2x</span>
1449
1352
  <span class="cline-any cline-neutral">&nbsp;</span>
1450
- <span class="cline-any cline-yes">8x</span>
1451
- <span class="cline-any cline-yes">8x</span>
1452
- <span class="cline-any cline-yes">8x</span>
1453
- <span class="cline-any cline-yes">9x</span>
1454
- <span class="cline-any cline-yes">9x</span>
1353
+ <span class="cline-any cline-yes">4x</span>
1354
+ <span class="cline-any cline-yes">4x</span>
1455
1355
  <span class="cline-any cline-neutral">&nbsp;</span>
1356
+ <span class="cline-any cline-yes">2x</span>
1357
+ <span class="cline-any cline-yes">2x</span>
1456
1358
  <span class="cline-any cline-neutral">&nbsp;</span>
1457
- <span class="cline-any cline-yes">8x</span>
1359
+ <span class="cline-any cline-yes">4x</span>
1458
1360
  <span class="cline-any cline-neutral">&nbsp;</span>
1459
- <span class="cline-any cline-yes">9x</span>
1361
+ <span class="cline-any cline-yes">4x</span>
1460
1362
  <span class="cline-any cline-neutral">&nbsp;</span>
1461
1363
  <span class="cline-any cline-neutral">&nbsp;</span>
1462
1364
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -1474,10 +1376,12 @@
1474
1376
  <span class="cline-any cline-no">&nbsp;</span>
1475
1377
  <span class="cline-any cline-no">&nbsp;</span>
1476
1378
  <span class="cline-any cline-no">&nbsp;</span>
1379
+ <span class="cline-any cline-no">&nbsp;</span>
1477
1380
  <span class="cline-any cline-neutral">&nbsp;</span>
1478
1381
  <span class="cline-any cline-no">&nbsp;</span>
1479
1382
  <span class="cline-any cline-no">&nbsp;</span>
1480
1383
  <span class="cline-any cline-no">&nbsp;</span>
1384
+ <span class="cline-any cline-no">&nbsp;</span>
1481
1385
  <span class="cline-any cline-neutral">&nbsp;</span>
1482
1386
  <span class="cline-any cline-no">&nbsp;</span>
1483
1387
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -1517,19 +1421,7 @@
1517
1421
  <span class="cline-any cline-neutral">&nbsp;</span>
1518
1422
  <span class="cline-any cline-neutral">&nbsp;</span>
1519
1423
  <span class="cline-any cline-neutral">&nbsp;</span>
1520
- <span class="cline-any cline-neutral">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js">import { wrapForEachToGenerator as wrapForEach } from '../utils/time-slicing';
1521
- import {
1522
- TranslatorState,
1523
- shiftState,
1524
- withSourceMap,
1525
- indent,
1526
- createCompilerState,
1527
- transfromMetadataType,
1528
- transfromUnionTypeAnnotation,
1529
- withSourceMapGenerator,
1530
- withGenerator,
1531
- TranslatorGenerator,
1532
- } from '../translator';
1424
+ <span class="cline-any cline-neutral">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js">import { TranslatorState, shiftState, withSourceMap, indent, createCompilerState } from '../translator';
1533
1425
  import Function from './Function__';
1534
1426
  import { ElementToVueOptions } from './ViewElement__';
1535
1427
  import Identifier from './Identifier__';
@@ -1551,6 +1443,7 @@ import BaseNode from '../common/BaseNode';
1551
1443
  import TypeAnnotation from './TypeAnnotation__';
1552
1444
  import Argument from './Argument__';
1553
1445
  import LogicItem from './LogicItem__';
1446
+ import StringLiteral from './StringLiteral__';
1554
1447
  &nbsp;
1555
1448
  /**
1556
1449
  * 调用函数
@@ -1565,7 +1458,6 @@ export class CallFunction extends LogicItem {
1565
1458
  /**
1566
1459
  * 产品概念
1567
1460
  */
1568
- @property('concept')
1569
1461
  // @ts-ignore
1570
1462
  readonly concept!: 'CallFunction';
1571
1463
  &nbsp;
@@ -1843,21 +1735,13 @@ export class CallFunction extends LogicItem {
1843
1735
  };
1844
1736
  <span class="cstat-no" title="statement not covered" > if (parentKey) {</span>
1845
1737
  <span class="cstat-no" title="statement not covered" > params.parentKey = parentKey;</span>
1846
- // @ts-ignore
1847
- const t = <span class="cstat-no" title="statement not covered" >this.__v_raw || this;</span>
1848
- // @ts-ignore
1849
- const n = <span class="cstat-no" title="statement not covered" >typeAnnotation.__v_raw || typeAnnotation;</span>
1850
- <span class="cstat-no" title="statement not covered" > if (Array.isArray((t as any)[parentKey])) {</span>
1851
- // @ts-ignore
1852
- const index = (<span class="cstat-no" title="statement not covered" >t as any)[parentKey].findIndex(<span class="fstat-no" title="function not covered" >(e</span>l) =&gt; <span class="cstat-no" title="statement not covered" >(el.__v_raw || el) === n)</span>;</span>
1738
+ <span class="cstat-no" title="statement not covered" > if (Array.isArray((this as any)[parentKey])) {</span>
1739
+ const index = (<span class="cstat-no" title="statement not covered" >this as any)[parentKey].indexOf(typeAnnotation);</span>
1853
1740
  <span class="cstat-no" title="statement not covered" > ~index &amp;&amp; (this as any)[parentKey].splice(index, 1);</span>
1854
1741
  <span class="cstat-no" title="statement not covered" > params.index = index;</span>
1855
- } else {
1856
- const q = (<span class="cstat-no" title="statement not covered" >t as any)[parentKey];</span>
1857
- <span class="cstat-no" title="statement not covered" > if ((q.__v_raw || q) === n) {</span>
1858
- <span class="cstat-no" title="statement not covered" > params.index = 0;</span>
1859
- (<span class="cstat-no" title="statement not covered" >this as any)[parentKey] = undefined;</span>
1860
- }
1742
+ } else <span class="cstat-no" title="statement not covered" >if ((this as any)[parentKey] === typeAnnotation) {</span>
1743
+ <span class="cstat-no" title="statement not covered" > params.index = 0;</span>
1744
+ (<span class="cstat-no" title="statement not covered" >this as any)[parentKey] = undefined;</span>
1861
1745
  }
1862
1746
  }
1863
1747
  <span class="cstat-no" title="statement not covered" > return params;</span>
@@ -1885,21 +1769,13 @@ export class CallFunction extends LogicItem {
1885
1769
  };
1886
1770
  <span class="cstat-no" title="statement not covered" > if (parentKey) {</span>
1887
1771
  <span class="cstat-no" title="statement not covered" > params.parentKey = parentKey;</span>
1888
- // @ts-ignore
1889
- const t = <span class="cstat-no" title="statement not covered" >this.__v_raw || this;</span>
1890
- // @ts-ignore
1891
- const n = <span class="cstat-no" title="statement not covered" >logicItem.__v_raw || logicItem;</span>
1892
- <span class="cstat-no" title="statement not covered" > if (Array.isArray((t as any)[parentKey])) {</span>
1893
- // @ts-ignore
1894
- const index = (<span class="cstat-no" title="statement not covered" >t as any)[parentKey].findIndex(<span class="fstat-no" title="function not covered" >(e</span>l) =&gt; <span class="cstat-no" title="statement not covered" >(el.__v_raw || el) === n)</span>;</span>
1772
+ <span class="cstat-no" title="statement not covered" > if (Array.isArray((this as any)[parentKey])) {</span>
1773
+ const index = (<span class="cstat-no" title="statement not covered" >this as any)[parentKey].indexOf(logicItem);</span>
1895
1774
  <span class="cstat-no" title="statement not covered" > ~index &amp;&amp; (this as any)[parentKey].splice(index, 1);</span>
1896
1775
  <span class="cstat-no" title="statement not covered" > params.index = index;</span>
1897
- } else {
1898
- const q = (<span class="cstat-no" title="statement not covered" >t as any)[parentKey];</span>
1899
- <span class="cstat-no" title="statement not covered" > if ((q.__v_raw || q) === n) {</span>
1900
- <span class="cstat-no" title="statement not covered" > params.index = 0;</span>
1901
- (<span class="cstat-no" title="statement not covered" >this as any)[parentKey] = undefined;</span>
1902
- }
1776
+ } else <span class="cstat-no" title="statement not covered" >if ((this as any)[parentKey] === logicItem) {</span>
1777
+ <span class="cstat-no" title="statement not covered" > params.index = 0;</span>
1778
+ (<span class="cstat-no" title="statement not covered" >this as any)[parentKey] = undefined;</span>
1903
1779
  }
1904
1780
  }
1905
1781
  <span class="cstat-no" title="statement not covered" > return params;</span>
@@ -1915,42 +1791,19 @@ export class CallFunction extends LogicItem {
1915
1791
  }
1916
1792
  let code = <span class="cstat-no" title="statement not covered" >`$utils['${this.calleeName}']`;</span>
1917
1793
  <span class="cstat-no" title="statement not covered" > code += '(';</span>
1918
- let argTyAnno;
1919
- <span class="cstat-no" title="statement not covered" > if (this.calleeName === 'ToString') {</span>
1920
- const arg0 = <span class="cstat-no" title="statement not covered" >this.arguments[0];</span>
1921
- <span class="cstat-no" title="statement not covered" > argTyAnno = (arg0 as any).typeAnnotation || arg0.__TypeAnnotation;</span>
1922
- } else <span class="cstat-no" title="statement not covered" >if (this.calleeName === 'FromString') {</span>
1923
- <span class="cstat-no" title="statement not covered" > argTyAnno = this.typeArguments?.[0];</span>
1924
- }
1925
- &nbsp;
1926
- // 调整 ToString 的 typeKey 到第一个参数,剩下的以后重构。
1927
- // 事实上,大部分编译器都会选择把 type tag 放到前端来做运行时匹配,而非末位。
1928
- <span class="cstat-no" title="statement not covered" > if (this.calleeName === 'ToString' &amp;&amp; argTyAnno) {</span>
1929
- <span class="cstat-no" title="statement not covered" > code += `'${argTyAnno?.sortedTypeKey}', `;</span>
1930
- }
1931
- &nbsp;
1932
1794
  <span class="cstat-no" title="statement not covered" > if (Array.isArray(this.arguments) &amp;&amp; this.arguments.length) {</span>
1933
1795
  const needToString = <span class="cstat-no" title="statement not covered" >['Concat'].includes(this.calleeName);</span>
1934
1796
  <span class="cstat-no" title="statement not covered" > this.arguments?.forEach(<span class="fstat-no" title="function not covered" >(a</span>rg: any, index) =&gt; {</span>
1935
1797
  let argStr = <span class="cstat-no" title="statement not covered" >arg?.toVue(options);</span>
1936
- const argTypeAnnotation = <span class="cstat-no" title="statement not covered" >arg.typeAnnotation || arg.__TypeAnnotation;</span>
1937
- <span class="cstat-no" title="statement not covered" > transfromUnionTypeAnnotation(argTypeAnnotation, this.app);</span>
1938
- const { sortedTypeKey } = <span class="cstat-no" title="statement not covered" >transfromMetadataType(argTypeAnnotation, this.app);</span>
1939
1798
  <span class="cstat-no" title="statement not covered" > if (needToString) {</span>
1940
- <span class="cstat-no" title="statement not covered" > argStr = `$utils['ToString']('${sortedTypeKey}', ${argStr})`;</span>
1941
- } else <span class="cstat-no" title="statement not covered" >if (['HasValue'].includes(this.calleeName)) {</span>
1942
- <span class="cstat-no" title="statement not covered" > argStr = `{ type: '${sortedTypeKey}', value: ${argStr} }`;</span>
1799
+ const argTypeAnnotation = <span class="cstat-no" title="statement not covered" >arg.typeAnnotation || arg.__TypeAnnotation;</span>
1800
+ <span class="cstat-no" title="statement not covered" > argStr = `$utils['ToString']('${argTypeAnnotation?.sortedTypeKey}', ${argStr})`;</span>
1943
1801
  }
1944
1802
  <span class="cstat-no" title="statement not covered" > code += argStr;</span>
1945
1803
  <span class="cstat-no" title="statement not covered" > if (index !== this.arguments?.length - 1) <span class="cstat-no" title="statement not covered" >code += ', ';</span></span>
1946
1804
  });
1947
1805
  }
1948
- <span class="cstat-no" title="statement not covered" > if (this.calleeName === 'FromString' &amp;&amp; argTyAnno) {</span>
1949
- <span class="cstat-no" title="statement not covered" > code += `, '${argTyAnno?.sortedTypeKey}'`;</span>
1950
- }
1951
- // 用作做语义控制。后面这段代码没完全理解,需要保持进入条件不变。
1952
- const flagControl = <span class="cstat-no" title="statement not covered" >['ToString', 'FromString'].includes(this.calleeName) &amp;&amp; argTyAnno;</span>
1953
- <span class="cstat-no" title="statement not covered" > if (!flagControl &amp;&amp; Array.isArray(this.typeArguments) &amp;&amp; this.typeArguments.length) {</span>
1806
+ <span class="cstat-no" title="statement not covered" > if (this.typeArguments &amp;&amp; this.typeArguments.length) {</span>
1954
1807
  <span class="cstat-no" title="statement not covered" > if (this.arguments?.length) <span class="cstat-no" title="statement not covered" >code += ', ';</span></span>
1955
1808
  <span class="cstat-no" title="statement not covered" > this.typeArguments?.forEach(<span class="fstat-no" title="function not covered" >(a</span>rg, index) =&gt; {</span>
1956
1809
  <span class="cstat-no" title="statement not covered" > code += arg?.toJS().replace(/"/g, "'");</span>
@@ -1983,7 +1836,7 @@ export class CallFunction extends LogicItem {
1983
1836
  let calleeName = `${this.calleeName}`;
1984
1837
  let code = '';
1985
1838
  const ancestorLogic = this.getAncestor('Logic');
1986
- if (this.view &amp;&amp; ancestorLogic) {
1839
+ <span class="missing-if-branch" title="else path not taken" >E</span>if (this.view &amp;&amp; ancestorLogic) {
1987
1840
  calleeName = asyncFuncMap[this.calleeName] ? <span class="branch-0 cbranch-no" title="branch not covered" >asyncFuncMap[this.calleeName] </span>: calleeName;
1988
1841
  <span class="missing-if-branch" title="if path not taken" >I</span>if (asyncFuncMap[this.calleeName]) {
1989
1842
  // 注意有个空格
@@ -1992,45 +1845,46 @@ export class CallFunction extends LogicItem {
1992
1845
  }
1993
1846
  code += `this.$utils['${calleeName}']`;
1994
1847
  code += '(';
1848
+ &nbsp;
1995
1849
  &nbsp;
1996
1850
  let argTyAnno;
1997
- if (this.calleeName === 'ToString') {
1998
- const arg0 = this.arguments[0];
1999
- argTyAnno = (arg0 as any).typeAnnotation || arg0.__TypeAnnotation;
2000
- } else if (this.calleeName === 'FromString') {
2001
- argTyAnno = this.typeArguments?.[0];
1851
+ <span class="missing-if-branch" title="if path not taken" >I</span>if (this.calleeName === 'ToString') {
1852
+ const arg0 = <span class="cstat-no" title="statement not covered" >this.arguments[0];</span>
1853
+ <span class="cstat-no" title="statement not covered" > argTyAnno = (arg0 as any).typeAnnotation || arg0.__TypeAnnotation;</span>
1854
+ } else <span class="missing-if-branch" title="if path not taken" >I</span>if (this.calleeName === 'FromString') {
1855
+ <span class="cstat-no" title="statement not covered" > argTyAnno = this.typeArguments?.[0];</span>
2002
1856
  }
1857
+ &nbsp;
2003
1858
  &nbsp;
2004
1859
  // 调整 ToString 的 typeKey 到第一个参数,剩下的以后重构。
2005
1860
  // 事实上,大部分编译器都会选择把 type tag 放到前端来做运行时匹配,而非末位。
2006
- <span class="missing-if-branch" title="if path not taken" >I</span>if (this.calleeName === 'ToString' &amp;&amp; argTyAnno) {
2007
- <span class="cstat-no" title="statement not covered" > code += `'${argTyAnno?.sortedTypeKey}', `;</span>
1861
+ <span class="missing-if-branch" title="if path not taken" >I</span>if (this.calleeName === 'ToString' &amp;&amp; <span class="branch-1 cbranch-no" title="branch not covered" >argTyAnno)</span> {
1862
+ <span class="cstat-no" title="statement not covered" > code += `'${argTyAnno?.sortedTypeKey}', `</span>
2008
1863
  }
2009
1864
  &nbsp;
2010
- if (Array.isArray(this.arguments) &amp;&amp; this.arguments.length) {
2011
- const needToString = ['Concat'].includes(this.calleeName);
2012
- &nbsp;
2013
- this.arguments.forEach((arg: any, index) =&gt; {
2014
- let argStr = arg?.toJS(shiftState(state, code));
2015
- const argTypeAnnotation = arg.typeAnnotation || arg.__TypeAnnotation;
2016
- transfromUnionTypeAnnotation(argTypeAnnotation, this.app);
2017
- const { sortedTypeKey } = transfromMetadataType(argTypeAnnotation, this.app);
2018
- <span class="missing-if-branch" title="if path not taken" >I</span>if (needToString) {
2019
- <span class="cstat-no" title="statement not covered" > argStr = `this.$utils['ToString']('${sortedTypeKey}', ${argStr})`;</span>
2020
- } else <span class="missing-if-branch" title="if path not taken" >I</span>if (['HasValue'].includes(this.calleeName)) {
2021
- <span class="cstat-no" title="statement not covered" > argStr = `{ type: '${sortedTypeKey}', value: ${argStr} }`;</span>
1865
+ <span class="missing-if-branch" title="if path not taken" >I</span>if (Array.isArray(this.arguments) &amp;&amp; this.arguments.length) {
1866
+ const needToString = <span class="cstat-no" title="statement not covered" >['Concat'].includes(this.calleeName);</span>
1867
+ &nbsp;
1868
+ <span class="cstat-no" title="statement not covered" > this.arguments.forEach(<span class="fstat-no" title="function not covered" >(a</span>rg: any, index) =&gt; {</span>
1869
+ let argStr = <span class="cstat-no" title="statement not covered" >arg?.toJS(shiftState(state, code));</span>
1870
+ const argTypeAnnotation = <span class="cstat-no" title="statement not covered" >arg.typeAnnotation || arg.__TypeAnnotation;</span>
1871
+ &nbsp;
1872
+ <span class="cstat-no" title="statement not covered" > if (needToString) {</span>
1873
+ <span class="cstat-no" title="statement not covered" > argStr = `this.$utils['ToString']('${argTypeAnnotation?.sortedTypeKey}', ${argStr})`;</span>
1874
+ } else <span class="cstat-no" title="statement not covered" >if (['HasValue'].includes(this.calleeName)) {</span>
1875
+ <span class="cstat-no" title="statement not covered" > argStr = `{ type: '${argTypeAnnotation?.sortedTypeKey}', value: ${argStr} }`;</span>
2022
1876
  }
2023
- code += argStr;
2024
- if (index !== this.arguments?.length - 1) code += ', ';
1877
+ <span class="cstat-no" title="statement not covered" > code += argStr;</span>
1878
+ <span class="cstat-no" title="statement not covered" > if (index !== this.arguments?.length - 1) <span class="cstat-no" title="statement not covered" >code += ', ';</span></span>
2025
1879
  });
2026
1880
  }
2027
1881
  &nbsp;
2028
- if (this.calleeName === 'FromString' &amp;&amp; argTyAnno) {
2029
- code += `, '${argTyAnno?.sortedTypeKey}'`;
1882
+ <span class="missing-if-branch" title="if path not taken" >I</span>if (this.calleeName === 'fromString' &amp;&amp; <span class="branch-1 cbranch-no" title="branch not covered" >argTyAnno)</span> {
1883
+ <span class="cstat-no" title="statement not covered" > code += `, '${argTyAnno?.sortedTypeKey}'`</span>
2030
1884
  }
2031
1885
  // 用作做语义控制。后面这段代码没完全理解,需要保持进入条件不变。
2032
- const flagControl = ['ToString', 'FromString'].includes(this.calleeName) &amp;&amp; argTyAnno;
2033
- if (!flagControl &amp;&amp; Array.isArray(this.typeArguments) &amp;&amp; this.typeArguments.length) {
1886
+ const flagControl = ['ToString', 'fromString'].includes(this.calleeName) &amp;&amp; <span class="branch-1 cbranch-no" title="branch not covered" >argTyAnno;</span>
1887
+ <span class="missing-if-branch" title="else path not taken" >E</span>if (!flagControl &amp;&amp; Array.isArray(this.typeArguments) &amp;&amp; this.typeArguments.length) {
2034
1888
  <span class="missing-if-branch" title="if path not taken" >I</span>if (this.arguments?.length) <span class="cstat-no" title="statement not covered" >code += ', ';</span>
2035
1889
  &nbsp;
2036
1890
  this.typeArguments?.forEach((tyArg, index) =&gt; {
@@ -2042,7 +1896,8 @@ export class CallFunction extends LogicItem {
2042
1896
  code += ')';
2043
1897
  const tyAnno = (this as any).typeAnnotation || this.__TypeAnnotation;
2044
1898
  const needGenInitFromSchema =
2045
- tyAnno &amp;&amp; (<span class="branch-1 cbranch-no" title="branch not covered" >!['primitive', 'union'].includes(tyAnno.typeKind) </span>|| <span class="branch-2 cbranch-no" title="branch not covered" >tyAnno.typeName === 'DateTime')</span>;
1899
+ tyAnno &amp;&amp;
1900
+ (<span class="branch-1 cbranch-no" title="branch not covered" >!['primitive', 'union'].includes(tyAnno.typeKind) </span>|| <span class="branch-2 cbranch-no" title="branch not covered" >tyAnno.typeName === 'DateTime')</span>;
2046
1901
  <span class="missing-if-branch" title="if path not taken" >I</span>if (needGenInitFromSchema) {
2047
1902
  <span class="cstat-no" title="statement not covered" > code = `this.$genInitFromSchema('${tyAnno?.sortedTypeKey}', ${code})`;</span>
2048
1903
  }
@@ -2147,40 +2002,39 @@ export class CallFunction extends LogicItem {
2147
2002
  }
2148
2003
  }
2149
2004
  &nbsp;
2150
- @withSourceMapGenerator
2151
- *toEmbeddedTS(state = createCompilerState()): TranslatorGenerator {
2152
- const self = this;
2005
+ @withSourceMap()
2006
+ toEmbeddedTS(state = <span class="branch-0 cbranch-no" title="branch not covered" >createCompilerState())</span>: string {
2153
2007
  let code = '';
2154
- const { calleeKey } = self;
2155
- if (['nasl.util.Convert', 'nasl.util.FromString'].includes(calleeKey)) {
2008
+ const { calleeKey } = this;
2009
+ <span class="missing-if-branch" title="if path not taken" >I</span>if (['nasl.util.Convert', 'nasl.util.FromString'].includes(calleeKey)) {
2156
2010
  // nasl.util.Convert(variable1)&lt;nasl.core.String&gt;();
2157
2011
  // 单独处理
2158
- code = calleeKey;
2159
- code += '(';
2160
- yield* wrapForEach(self.arguments, function* warpForEachGenerator(arg, index) {
2161
- code += yield* arg.toEmbeddedTS(shiftState(state, code, { tabSize: 0 }));
2162
- <span class="missing-if-branch" title="if path not taken" >I</span>if (index !== self.arguments.length - 1) <span class="cstat-no" title="statement not covered" >code += ', ';</span>
2012
+ &nbsp;
2013
+ <span class="cstat-no" title="statement not covered" > code = calleeKey;</span>
2014
+ <span class="cstat-no" title="statement not covered" > code += '(';</span>
2015
+ <span class="cstat-no" title="statement not covered" > this.arguments.forEach(<span class="fstat-no" title="function not covered" >(a</span>rg, index) =&gt; {</span>
2016
+ <span class="cstat-no" title="statement not covered" > code += arg.toEmbeddedTS(shiftState(state, code, { tabSize: 0 }));</span>
2017
+ <span class="cstat-no" title="statement not covered" > if (index !== this.arguments.length - 1) <span class="cstat-no" title="statement not covered" >code += ', ';</span></span>
2163
2018
  });
2164
- code += ')';
2019
+ <span class="cstat-no" title="statement not covered" > code += ')';</span>
2165
2020
  // 如果有内容
2166
- const typeAnnotation = self.typeArguments[0];
2167
- code += `&lt;`;
2168
- code += `${yield* typeAnnotation.toEmbeddedTS(shiftState(state, code, { tabSize: 0 }))}&gt;()`;
2021
+ const typeAnnotation = <span class="cstat-no" title="statement not covered" >this.typeArguments[0];</span>
2022
+ <span class="cstat-no" title="statement not covered" > code += `&lt;`;</span>
2023
+ <span class="cstat-no" title="statement not covered" > code += `${typeAnnotation.toEmbeddedTS(shiftState(state, code, { tabSize: 0 }))}&gt;()`;</span>
2169
2024
  } else {
2170
- code = self.calleeKey;
2171
- if (Array.isArray(self.typeArguments) &amp;&amp; self.typeArguments.length) {
2025
+ code = this.calleeKey;
2026
+ if (Array.isArray(this.typeArguments) &amp;&amp; this.typeArguments.length) {
2172
2027
  // 如果有内容
2173
- const typeAnnotation = self.typeArguments[0];
2028
+ const typeAnnotation = this.typeArguments[0];
2174
2029
  code += `&lt;`;
2175
- code += `${yield* typeAnnotation.toEmbeddedTS(shiftState(state, code, { tabSize: 0 }))}&gt;`;
2030
+ code += `${typeAnnotation.toEmbeddedTS(shiftState(state, code, { tabSize: 0 }))}&gt;`;
2176
2031
  }
2177
2032
  code += '(';
2178
- <span class="missing-if-branch" title="else path not taken" >E</span>if (Array.isArray(self.arguments)) {
2179
- yield* wrapForEach(self.arguments, function* wrapForEach(arg, index) {
2180
- code += yield* arg.toEmbeddedTS(shiftState(state, code, { tabSize: 0 }));
2181
- if (index !== self.arguments.length - 1) code += ', ';
2033
+ Array.isArray(this.arguments) &amp;&amp;
2034
+ this.arguments.forEach((arg, index) =&gt; {
2035
+ code += arg.toEmbeddedTS(shiftState(state, code, { tabSize: 0 }));
2036
+ <span class="missing-if-branch" title="if path not taken" >I</span>if (index !== this.arguments.length - 1) <span class="cstat-no" title="statement not covered" >code += ', ';</span>
2182
2037
  });
2183
- }
2184
2038
  code += ')';
2185
2039
  }
2186
2040
  return code;
@@ -2200,10 +2054,12 @@ export class CallFunction extends LogicItem {
2200
2054
  <span class="cstat-no" title="statement not covered" > code += '(';</span>
2201
2055
  <span class="cstat-no" title="statement not covered" > this.arguments.forEach(<span class="fstat-no" title="function not covered" >(a</span>rg, index) =&gt; {</span>
2202
2056
  <span class="cstat-no" title="statement not covered" > code += arg.toNaturalTS(shiftState(state, code, { tabSize: 0 }));</span>
2203
- <span class="cstat-no" title="statement not covered" > if (index !== this.arguments.length - 1) <span class="cstat-no" title="statement not covered" >code += ', ';</span></span>
2057
+ <span class="cstat-no" title="statement not covered" > if (index !== this.arguments.length - 1)</span>
2058
+ <span class="cstat-no" title="statement not covered" > code += ', ';</span>
2204
2059
  });
2205
2060
  <span class="cstat-no" title="statement not covered" > if (this?.typeArguments?.[0]?.typeKind === 'reference') {</span>
2206
- <span class="cstat-no" title="statement not covered" > if (this.arguments?.length &gt; 0) <span class="cstat-no" title="statement not covered" >code += ', ';</span></span>
2061
+ <span class="cstat-no" title="statement not covered" > if (this.arguments?.length &gt; 0)</span>
2062
+ <span class="cstat-no" title="statement not covered" > code += ', ';</span>
2207
2063
  <span class="cstat-no" title="statement not covered" > code += `{ typeNamespace: '${this.typeArguments[0].typeNamespace}' }`;</span>
2208
2064
  }
2209
2065
  <span class="cstat-no" title="statement not covered" > code += `)`;</span>
@@ -2251,7 +2107,7 @@ export default CallFunction;
2251
2107
  <div class='footer quiet pad2 space-top1 center small'>
2252
2108
  Code coverage generated by
2253
2109
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
2254
- at 2023-11-18T16:22:11.588Z
2110
+ at 2023-10-18T11:36:07.885Z
2255
2111
  </div>
2256
2112
  <script src="../../prettify.js"></script>
2257
2113
  <script>