@lcap/nasl-language-server-core 3.9.0-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 (262) hide show
  1. package/README.md +3 -0
  2. package/out/index.d.ts +3 -0
  3. package/out/index.d.ts.map +1 -0
  4. package/out/index.js +19 -0
  5. package/out/index.js.map +1 -0
  6. package/out/module/dependency.d.ts +9 -0
  7. package/out/module/dependency.d.ts.map +1 -0
  8. package/out/module/dependency.js +17 -0
  9. package/out/module/dependency.js.map +1 -0
  10. package/out/module/graph.d.ts +19 -0
  11. package/out/module/graph.d.ts.map +1 -0
  12. package/out/module/graph.js +99 -0
  13. package/out/module/graph.js.map +1 -0
  14. package/out/module/index.d.ts +4 -0
  15. package/out/module/index.d.ts.map +1 -0
  16. package/out/module/index.js +20 -0
  17. package/out/module/index.js.map +1 -0
  18. package/out/module/module.d.ts +18 -0
  19. package/out/module/module.d.ts.map +1 -0
  20. package/out/module/module.js +41 -0
  21. package/out/module/module.js.map +1 -0
  22. package/out/symbol/graph.d.ts +18 -0
  23. package/out/symbol/graph.d.ts.map +1 -0
  24. package/out/symbol/graph.js +67 -0
  25. package/out/symbol/graph.js.map +1 -0
  26. package/out/symbol/index.d.ts +4 -0
  27. package/out/symbol/index.d.ts.map +1 -0
  28. package/out/symbol/index.js +20 -0
  29. package/out/symbol/index.js.map +1 -0
  30. package/out/symbol/namespace.d.ts +30 -0
  31. package/out/symbol/namespace.d.ts.map +1 -0
  32. package/out/symbol/namespace.js +134 -0
  33. package/out/symbol/namespace.js.map +1 -0
  34. package/out/symbol/symbol.d.ts +18 -0
  35. package/out/symbol/symbol.d.ts.map +1 -0
  36. package/out/symbol/symbol.js +26 -0
  37. package/out/symbol/symbol.js.map +1 -0
  38. package/out/symbol/traverse/concepts/anchor.d.ts +7 -0
  39. package/out/symbol/traverse/concepts/anchor.d.ts.map +1 -0
  40. package/out/symbol/traverse/concepts/anchor.js +14 -0
  41. package/out/symbol/traverse/concepts/anchor.js.map +1 -0
  42. package/out/symbol/traverse/concepts/anonymous-function.d.ts +7 -0
  43. package/out/symbol/traverse/concepts/anonymous-function.d.ts.map +1 -0
  44. package/out/symbol/traverse/concepts/anonymous-function.js +19 -0
  45. package/out/symbol/traverse/concepts/anonymous-function.js.map +1 -0
  46. package/out/symbol/traverse/concepts/app.d.ts +11 -0
  47. package/out/symbol/traverse/concepts/app.d.ts.map +1 -0
  48. package/out/symbol/traverse/concepts/app.js +115 -0
  49. package/out/symbol/traverse/concepts/app.js.map +1 -0
  50. package/out/symbol/traverse/concepts/argument.d.ts +7 -0
  51. package/out/symbol/traverse/concepts/argument.d.ts.map +1 -0
  52. package/out/symbol/traverse/concepts/argument.js +14 -0
  53. package/out/symbol/traverse/concepts/argument.js.map +1 -0
  54. package/out/symbol/traverse/concepts/assignment.d.ts +7 -0
  55. package/out/symbol/traverse/concepts/assignment.d.ts.map +1 -0
  56. package/out/symbol/traverse/concepts/assignment.js +42 -0
  57. package/out/symbol/traverse/concepts/assignment.js.map +1 -0
  58. package/out/symbol/traverse/concepts/auth-logic.d.ts +11 -0
  59. package/out/symbol/traverse/concepts/auth-logic.d.ts.map +1 -0
  60. package/out/symbol/traverse/concepts/auth-logic.js +17 -0
  61. package/out/symbol/traverse/concepts/auth-logic.js.map +1 -0
  62. package/out/symbol/traverse/concepts/backend.d.ts +15 -0
  63. package/out/symbol/traverse/concepts/backend.d.ts.map +1 -0
  64. package/out/symbol/traverse/concepts/backend.js +46 -0
  65. package/out/symbol/traverse/concepts/backend.js.map +1 -0
  66. package/out/symbol/traverse/concepts/batch-assignment.d.ts +7 -0
  67. package/out/symbol/traverse/concepts/batch-assignment.d.ts.map +1 -0
  68. package/out/symbol/traverse/concepts/batch-assignment.js +15 -0
  69. package/out/symbol/traverse/concepts/batch-assignment.js.map +1 -0
  70. package/out/symbol/traverse/concepts/binary-expression.d.ts +7 -0
  71. package/out/symbol/traverse/concepts/binary-expression.d.ts.map +1 -0
  72. package/out/symbol/traverse/concepts/binary-expression.js +13 -0
  73. package/out/symbol/traverse/concepts/binary-expression.js.map +1 -0
  74. package/out/symbol/traverse/concepts/bind-attr.d.ts +7 -0
  75. package/out/symbol/traverse/concepts/bind-attr.d.ts.map +1 -0
  76. package/out/symbol/traverse/concepts/bind-attr.js +26 -0
  77. package/out/symbol/traverse/concepts/bind-attr.js.map +1 -0
  78. package/out/symbol/traverse/concepts/bind-directive.d.ts +7 -0
  79. package/out/symbol/traverse/concepts/bind-directive.d.ts.map +1 -0
  80. package/out/symbol/traverse/concepts/bind-directive.js +14 -0
  81. package/out/symbol/traverse/concepts/bind-directive.js.map +1 -0
  82. package/out/symbol/traverse/concepts/bind-event.d.ts +7 -0
  83. package/out/symbol/traverse/concepts/bind-event.d.ts.map +1 -0
  84. package/out/symbol/traverse/concepts/bind-event.js +14 -0
  85. package/out/symbol/traverse/concepts/bind-event.js.map +1 -0
  86. package/out/symbol/traverse/concepts/bind-style.d.ts +7 -0
  87. package/out/symbol/traverse/concepts/bind-style.d.ts.map +1 -0
  88. package/out/symbol/traverse/concepts/bind-style.js +14 -0
  89. package/out/symbol/traverse/concepts/bind-style.js.map +1 -0
  90. package/out/symbol/traverse/concepts/block.d.ts +7 -0
  91. package/out/symbol/traverse/concepts/block.d.ts.map +1 -0
  92. package/out/symbol/traverse/concepts/block.js +16 -0
  93. package/out/symbol/traverse/concepts/block.js.map +1 -0
  94. package/out/symbol/traverse/concepts/call-connector.d.ts +7 -0
  95. package/out/symbol/traverse/concepts/call-connector.d.ts.map +1 -0
  96. package/out/symbol/traverse/concepts/call-connector.js +11 -0
  97. package/out/symbol/traverse/concepts/call-connector.js.map +1 -0
  98. package/out/symbol/traverse/concepts/call-function.d.ts +7 -0
  99. package/out/symbol/traverse/concepts/call-function.d.ts.map +1 -0
  100. package/out/symbol/traverse/concepts/call-function.js +11 -0
  101. package/out/symbol/traverse/concepts/call-function.js.map +1 -0
  102. package/out/symbol/traverse/concepts/call-interface.d.ts +7 -0
  103. package/out/symbol/traverse/concepts/call-interface.d.ts.map +1 -0
  104. package/out/symbol/traverse/concepts/call-interface.js +13 -0
  105. package/out/symbol/traverse/concepts/call-interface.js.map +1 -0
  106. package/out/symbol/traverse/concepts/call-logic.d.ts +7 -0
  107. package/out/symbol/traverse/concepts/call-logic.d.ts.map +1 -0
  108. package/out/symbol/traverse/concepts/call-logic.js +30 -0
  109. package/out/symbol/traverse/concepts/call-logic.js.map +1 -0
  110. package/out/symbol/traverse/concepts/call-query-component.d.ts +11 -0
  111. package/out/symbol/traverse/concepts/call-query-component.d.ts.map +1 -0
  112. package/out/symbol/traverse/concepts/call-query-component.js +19 -0
  113. package/out/symbol/traverse/concepts/call-query-component.js.map +1 -0
  114. package/out/symbol/traverse/concepts/default-value.d.ts +7 -0
  115. package/out/symbol/traverse/concepts/default-value.d.ts.map +1 -0
  116. package/out/symbol/traverse/concepts/default-value.js +14 -0
  117. package/out/symbol/traverse/concepts/default-value.js.map +1 -0
  118. package/out/symbol/traverse/concepts/destination.d.ts +7 -0
  119. package/out/symbol/traverse/concepts/destination.d.ts.map +1 -0
  120. package/out/symbol/traverse/concepts/destination.js +13 -0
  121. package/out/symbol/traverse/concepts/destination.js.map +1 -0
  122. package/out/symbol/traverse/concepts/entity.d.ts +11 -0
  123. package/out/symbol/traverse/concepts/entity.d.ts.map +1 -0
  124. package/out/symbol/traverse/concepts/entity.js +38 -0
  125. package/out/symbol/traverse/concepts/entity.js.map +1 -0
  126. package/out/symbol/traverse/concepts/enum.d.ts +11 -0
  127. package/out/symbol/traverse/concepts/enum.d.ts.map +1 -0
  128. package/out/symbol/traverse/concepts/enum.js +25 -0
  129. package/out/symbol/traverse/concepts/enum.js.map +1 -0
  130. package/out/symbol/traverse/concepts/expression.d.ts +7 -0
  131. package/out/symbol/traverse/concepts/expression.d.ts.map +1 -0
  132. package/out/symbol/traverse/concepts/expression.js +126 -0
  133. package/out/symbol/traverse/concepts/expression.js.map +1 -0
  134. package/out/symbol/traverse/concepts/external-destination.d.ts +7 -0
  135. package/out/symbol/traverse/concepts/external-destination.d.ts.map +1 -0
  136. package/out/symbol/traverse/concepts/external-destination.js +18 -0
  137. package/out/symbol/traverse/concepts/external-destination.js.map +1 -0
  138. package/out/symbol/traverse/concepts/for-each-statement.d.ts +7 -0
  139. package/out/symbol/traverse/concepts/for-each-statement.d.ts.map +1 -0
  140. package/out/symbol/traverse/concepts/for-each-statement.js +31 -0
  141. package/out/symbol/traverse/concepts/for-each-statement.js.map +1 -0
  142. package/out/symbol/traverse/concepts/frontend-type.d.ts +7 -0
  143. package/out/symbol/traverse/concepts/frontend-type.d.ts.map +1 -0
  144. package/out/symbol/traverse/concepts/frontend-type.js +32 -0
  145. package/out/symbol/traverse/concepts/frontend-type.js.map +1 -0
  146. package/out/symbol/traverse/concepts/frontend.d.ts +7 -0
  147. package/out/symbol/traverse/concepts/frontend.d.ts.map +1 -0
  148. package/out/symbol/traverse/concepts/frontend.js +40 -0
  149. package/out/symbol/traverse/concepts/frontend.js.map +1 -0
  150. package/out/symbol/traverse/concepts/function.d.ts +7 -0
  151. package/out/symbol/traverse/concepts/function.d.ts.map +1 -0
  152. package/out/symbol/traverse/concepts/function.js +29 -0
  153. package/out/symbol/traverse/concepts/function.js.map +1 -0
  154. package/out/symbol/traverse/concepts/identifier.d.ts +7 -0
  155. package/out/symbol/traverse/concepts/identifier.d.ts.map +1 -0
  156. package/out/symbol/traverse/concepts/identifier.js +12 -0
  157. package/out/symbol/traverse/concepts/identifier.js.map +1 -0
  158. package/out/symbol/traverse/concepts/if-statement.d.ts +7 -0
  159. package/out/symbol/traverse/concepts/if-statement.d.ts.map +1 -0
  160. package/out/symbol/traverse/concepts/if-statement.js +19 -0
  161. package/out/symbol/traverse/concepts/if-statement.js.map +1 -0
  162. package/out/symbol/traverse/concepts/index.d.ts +2 -0
  163. package/out/symbol/traverse/concepts/index.d.ts.map +1 -0
  164. package/out/symbol/traverse/concepts/index.js +10 -0
  165. package/out/symbol/traverse/concepts/index.js.map +1 -0
  166. package/out/symbol/traverse/concepts/interface.d.ts +7 -0
  167. package/out/symbol/traverse/concepts/interface.d.ts.map +1 -0
  168. package/out/symbol/traverse/concepts/interface.js +18 -0
  169. package/out/symbol/traverse/concepts/interface.js.map +1 -0
  170. package/out/symbol/traverse/concepts/logic.d.ts +7 -0
  171. package/out/symbol/traverse/concepts/logic.d.ts.map +1 -0
  172. package/out/symbol/traverse/concepts/logic.js +29 -0
  173. package/out/symbol/traverse/concepts/logic.js.map +1 -0
  174. package/out/symbol/traverse/concepts/match-statement.d.ts +7 -0
  175. package/out/symbol/traverse/concepts/match-statement.d.ts.map +1 -0
  176. package/out/symbol/traverse/concepts/match-statement.js +28 -0
  177. package/out/symbol/traverse/concepts/match-statement.js.map +1 -0
  178. package/out/symbol/traverse/concepts/member-expression.d.ts +7 -0
  179. package/out/symbol/traverse/concepts/member-expression.d.ts.map +1 -0
  180. package/out/symbol/traverse/concepts/member-expression.js +12 -0
  181. package/out/symbol/traverse/concepts/member-expression.js.map +1 -0
  182. package/out/symbol/traverse/concepts/module.d.ts +15 -0
  183. package/out/symbol/traverse/concepts/module.d.ts.map +1 -0
  184. package/out/symbol/traverse/concepts/module.js +32 -0
  185. package/out/symbol/traverse/concepts/module.js.map +1 -0
  186. package/out/symbol/traverse/concepts/namespace.d.ts +9 -0
  187. package/out/symbol/traverse/concepts/namespace.d.ts.map +1 -0
  188. package/out/symbol/traverse/concepts/namespace.js +48 -0
  189. package/out/symbol/traverse/concepts/namespace.js.map +1 -0
  190. package/out/symbol/traverse/concepts/new-list.d.ts +7 -0
  191. package/out/symbol/traverse/concepts/new-list.d.ts.map +1 -0
  192. package/out/symbol/traverse/concepts/new-list.js +18 -0
  193. package/out/symbol/traverse/concepts/new-list.js.map +1 -0
  194. package/out/symbol/traverse/concepts/oql-query-component.d.ts +7 -0
  195. package/out/symbol/traverse/concepts/oql-query-component.d.ts.map +1 -0
  196. package/out/symbol/traverse/concepts/oql-query-component.js +33 -0
  197. package/out/symbol/traverse/concepts/oql-query-component.js.map +1 -0
  198. package/out/symbol/traverse/concepts/paginate.d.ts +7 -0
  199. package/out/symbol/traverse/concepts/paginate.d.ts.map +1 -0
  200. package/out/symbol/traverse/concepts/paginate.js +14 -0
  201. package/out/symbol/traverse/concepts/paginate.js.map +1 -0
  202. package/out/symbol/traverse/concepts/select-members.d.ts +7 -0
  203. package/out/symbol/traverse/concepts/select-members.d.ts.map +1 -0
  204. package/out/symbol/traverse/concepts/select-members.js +16 -0
  205. package/out/symbol/traverse/concepts/select-members.js.map +1 -0
  206. package/out/symbol/traverse/concepts/statement.d.ts +7 -0
  207. package/out/symbol/traverse/concepts/statement.d.ts.map +1 -0
  208. package/out/symbol/traverse/concepts/statement.js +66 -0
  209. package/out/symbol/traverse/concepts/statement.js.map +1 -0
  210. package/out/symbol/traverse/concepts/string-interpolation.d.ts +7 -0
  211. package/out/symbol/traverse/concepts/string-interpolation.d.ts.map +1 -0
  212. package/out/symbol/traverse/concepts/string-interpolation.js +14 -0
  213. package/out/symbol/traverse/concepts/string-interpolation.js.map +1 -0
  214. package/out/symbol/traverse/concepts/structure.d.ts +11 -0
  215. package/out/symbol/traverse/concepts/structure.d.ts.map +1 -0
  216. package/out/symbol/traverse/concepts/structure.js +34 -0
  217. package/out/symbol/traverse/concepts/structure.js.map +1 -0
  218. package/out/symbol/traverse/concepts/switch-statement.d.ts +7 -0
  219. package/out/symbol/traverse/concepts/switch-statement.d.ts.map +1 -0
  220. package/out/symbol/traverse/concepts/switch-statement.js +20 -0
  221. package/out/symbol/traverse/concepts/switch-statement.js.map +1 -0
  222. package/out/symbol/traverse/concepts/type-annotation.d.ts +7 -0
  223. package/out/symbol/traverse/concepts/type-annotation.d.ts.map +1 -0
  224. package/out/symbol/traverse/concepts/type-annotation.js +65 -0
  225. package/out/symbol/traverse/concepts/type-annotation.js.map +1 -0
  226. package/out/symbol/traverse/concepts/unary-expression.d.ts +7 -0
  227. package/out/symbol/traverse/concepts/unary-expression.d.ts.map +1 -0
  228. package/out/symbol/traverse/concepts/unary-expression.js +12 -0
  229. package/out/symbol/traverse/concepts/unary-expression.js.map +1 -0
  230. package/out/symbol/traverse/concepts/utils.d.ts +16 -0
  231. package/out/symbol/traverse/concepts/utils.d.ts.map +1 -0
  232. package/out/symbol/traverse/concepts/utils.js +33 -0
  233. package/out/symbol/traverse/concepts/utils.js.map +1 -0
  234. package/out/symbol/traverse/concepts/variable.d.ts +9 -0
  235. package/out/symbol/traverse/concepts/variable.d.ts.map +1 -0
  236. package/out/symbol/traverse/concepts/variable.js +27 -0
  237. package/out/symbol/traverse/concepts/variable.js.map +1 -0
  238. package/out/symbol/traverse/concepts/view-element.d.ts +7 -0
  239. package/out/symbol/traverse/concepts/view-element.d.ts.map +1 -0
  240. package/out/symbol/traverse/concepts/view-element.js +45 -0
  241. package/out/symbol/traverse/concepts/view-element.js.map +1 -0
  242. package/out/symbol/traverse/concepts/view.d.ts +7 -0
  243. package/out/symbol/traverse/concepts/view.d.ts.map +1 -0
  244. package/out/symbol/traverse/concepts/view.js +45 -0
  245. package/out/symbol/traverse/concepts/view.js.map +1 -0
  246. package/out/symbol/traverse/concepts/while-statement.d.ts +7 -0
  247. package/out/symbol/traverse/concepts/while-statement.d.ts.map +1 -0
  248. package/out/symbol/traverse/concepts/while-statement.js +16 -0
  249. package/out/symbol/traverse/concepts/while-statement.js.map +1 -0
  250. package/out/symbol/traverse/index.d.ts +2 -0
  251. package/out/symbol/traverse/index.d.ts.map +1 -0
  252. package/out/symbol/traverse/index.js +6 -0
  253. package/out/symbol/traverse/index.js.map +1 -0
  254. package/out/symbol/traverse/traverse.d.ts +4 -0
  255. package/out/symbol/traverse/traverse.d.ts.map +1 -0
  256. package/out/symbol/traverse/traverse.js +70 -0
  257. package/out/symbol/traverse/traverse.js.map +1 -0
  258. package/out/symbol/traverse/types.d.ts +30 -0
  259. package/out/symbol/traverse/types.d.ts.map +1 -0
  260. package/out/symbol/traverse/types.js +3 -0
  261. package/out/symbol/traverse/types.js.map +1 -0
  262. package/package.json +39 -0
@@ -0,0 +1,26 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Symbol = void 0;
4
+ class Symbol {
5
+ constructor(graph, name, namespace, declaration, isVirtual = false, isExport = true) {
6
+ this.graph = graph;
7
+ this.name = name;
8
+ this.namespace = namespace;
9
+ this.declaration = declaration;
10
+ this.isVirtual = isVirtual;
11
+ this.isExport = isExport;
12
+ this.references = [];
13
+ if (declaration) {
14
+ this.naslName = declaration.nodePath;
15
+ if (isExport) {
16
+ this.semanticName = declaration.getTokenKeyWithNamespace();
17
+ }
18
+ }
19
+ namespace.addSymbol(this);
20
+ }
21
+ get isUsed() {
22
+ return this.references.length > 0;
23
+ }
24
+ }
25
+ exports.Symbol = Symbol;
26
+ //# sourceMappingURL=symbol.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"symbol.js","sourceRoot":"","sources":["../../src/symbol/symbol.ts"],"names":[],"mappings":";;;AAKA,MAAa,MAAM;IAKjB,YACkB,KAAkB,EAClB,IAAY,EACZ,SAAoB,EACpB,WAAwB,EACxB,YAAY,KAAK,EACjB,WAAW,IAAI;QALf,UAAK,GAAL,KAAK,CAAa;QAClB,SAAI,GAAJ,IAAI,CAAQ;QACZ,cAAS,GAAT,SAAS,CAAW;QACpB,gBAAW,GAAX,WAAW,CAAa;QACxB,cAAS,GAAT,SAAS,CAAQ;QACjB,aAAQ,GAAR,QAAQ,CAAO;QAVxB,eAAU,GAAiB,EAAE,CAAC;QAYrC,IAAI,WAAW,EAAE,CAAC;YAChB,IAAI,CAAC,QAAQ,GAAG,WAAW,CAAC,QAAQ,CAAC;YAErC,IAAI,QAAQ,EAAE,CAAC;gBACb,IAAI,CAAC,YAAY,GAAG,WAAW,CAAC,wBAAwB,EAAE,CAAC;YAC7D,CAAC;QACH,CAAC;QAED,SAAS,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;IAC5B,CAAC;IAED,IAAI,MAAM;QACR,OAAO,IAAI,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,CAAC;IACpC,CAAC;CACF;AA3BD,wBA2BC"}
@@ -0,0 +1,7 @@
1
+ import type { Anchor } from '@lcap/nasl-concepts';
2
+ import type { Traverse } from '../types';
3
+ /**
4
+ * Anchor 节点迭代
5
+ */
6
+ export declare const traverse: Traverse<Anchor>;
7
+ //# sourceMappingURL=anchor.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"anchor.d.ts","sourceRoot":"","sources":["../../../../src/symbol/traverse/concepts/anchor.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAClD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AAGzC;;GAEG;AACH,eAAO,MAAM,QAAQ,EAAE,QAAQ,CAAC,MAAM,CAIrC,CAAC"}
@@ -0,0 +1,14 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.traverse = void 0;
4
+ const expression_1 = require("./expression");
5
+ /**
6
+ * Anchor 节点迭代
7
+ */
8
+ const traverse = (node, context) => {
9
+ if (node.expression) {
10
+ (0, expression_1.traverse)(node.expression, context);
11
+ }
12
+ };
13
+ exports.traverse = traverse;
14
+ //# sourceMappingURL=anchor.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"anchor.js","sourceRoot":"","sources":["../../../../src/symbol/traverse/concepts/anchor.ts"],"names":[],"mappings":";;;AAEA,6CAA8D;AAE9D;;GAEG;AACI,MAAM,QAAQ,GAAqB,CAAC,IAAI,EAAE,OAAO,EAAE,EAAE;IAC1D,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;QACpB,IAAA,qBAAkB,EAAC,IAAI,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;IAC/C,CAAC;AACH,CAAC,CAAC;AAJW,QAAA,QAAQ,YAInB"}
@@ -0,0 +1,7 @@
1
+ import type { AnonymousFunction } from '@lcap/nasl-concepts';
2
+ import type { Traverse } from '../types';
3
+ /**
4
+ * AnonymousFunction 节点迭代
5
+ */
6
+ export declare const traverse: Traverse<AnonymousFunction>;
7
+ //# sourceMappingURL=anonymous-function.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"anonymous-function.d.ts","sourceRoot":"","sources":["../../../../src/symbol/traverse/concepts/anonymous-function.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAC7D,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AAGzC;;GAEG;AACH,eAAO,MAAM,QAAQ,EAAE,QAAQ,CAAC,iBAAiB,CAYhD,CAAC"}
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.traverse = void 0;
4
+ const expression_1 = require("./expression");
5
+ /**
6
+ * AnonymousFunction 节点迭代
7
+ */
8
+ const traverse = (node, context) => {
9
+ context.pushNamespace(node, false);
10
+ for (const param of node.params) {
11
+ context.addSymbol(param.name, context.namespace, param, false);
12
+ }
13
+ if (node.body) {
14
+ (0, expression_1.traverse)(node.body, context);
15
+ }
16
+ context.popNamespace();
17
+ };
18
+ exports.traverse = traverse;
19
+ //# sourceMappingURL=anonymous-function.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"anonymous-function.js","sourceRoot":"","sources":["../../../../src/symbol/traverse/concepts/anonymous-function.ts"],"names":[],"mappings":";;;AAEA,6CAA8D;AAE9D;;GAEG;AACI,MAAM,QAAQ,GAAgC,CAAC,IAAI,EAAE,OAAO,EAAE,EAAE;IACrE,OAAO,CAAC,aAAa,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;IAEnC,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;QAChC,OAAO,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,EAAE,OAAO,CAAC,SAAS,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;IACjE,CAAC;IAED,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;QACd,IAAA,qBAAkB,EAAC,IAAI,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IACzC,CAAC;IAED,OAAO,CAAC,YAAY,EAAE,CAAC;AACzB,CAAC,CAAC;AAZW,QAAA,QAAQ,YAYnB"}
@@ -0,0 +1,11 @@
1
+ import { type App, type Module } from '@lcap/nasl-concepts';
2
+ import type { Traverse } from '../types';
3
+ export declare const addSymbol: Traverse<App | Module>;
4
+ export declare const recursion: Traverse<App | Module>;
5
+ /**
6
+ * App 节点迭代
7
+ *
8
+ * @description 根节点即为全局作用域
9
+ */
10
+ export declare const traverse: Traverse<App | Module>;
11
+ //# sourceMappingURL=app.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"app.d.ts","sourceRoot":"","sources":["../../../../src/symbol/traverse/concepts/app.ts"],"names":[],"mappings":"AAAA,OAAO,EAAW,KAAK,GAAG,EAAE,KAAK,MAAM,EAAE,MAAM,qBAAqB,CAAC;AACrE,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AAqBzC,eAAO,MAAM,SAAS,EAAE,QAAQ,CAAC,GAAG,GAAG,MAAM,CAqD5C,CAAA;AAED,eAAO,MAAM,SAAS,EAAE,QAAQ,CAAC,GAAG,GAAG,MAAM,CAoD5C,CAAA;AAED;;;;GAIG;AACH,eAAO,MAAM,QAAQ,EAAE,QAAQ,CAAC,GAAG,GAAG,MAAM,CAG3C,CAAC"}
@@ -0,0 +1,115 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.traverse = exports.recursion = exports.addSymbol = void 0;
4
+ const nasl_concepts_1 = require("@lcap/nasl-concepts");
5
+ const frontend_type_1 = require("./frontend-type");
6
+ const structure_1 = require("./structure");
7
+ const entity_1 = require("./entity");
8
+ const logic_1 = require("./logic");
9
+ const enum_1 = require("./enum");
10
+ const interface_1 = require("./interface");
11
+ const auth_logic_1 = require("./auth-logic");
12
+ const backend_1 = require("./backend");
13
+ const module_1 = require("./module");
14
+ const addSymbol = (node, context) => {
15
+ const { namespace, addSymbolWithScope } = context;
16
+ // 数据源加入作用域
17
+ for (const source of node.dataSources) {
18
+ for (const entity of source.entities) {
19
+ addSymbolWithScope(entity.name, namespace, entity);
20
+ }
21
+ }
22
+ // 结构加入作用域
23
+ for (const structure of node.structures) {
24
+ addSymbolWithScope(structure.name, namespace, structure);
25
+ }
26
+ // 枚举
27
+ for (const enumNode of node.enums) {
28
+ addSymbolWithScope(enumNode.name, namespace, enumNode);
29
+ }
30
+ // 接口
31
+ for (const interfaceItem of node.interfaces) {
32
+ if (interfaceItem.name) {
33
+ context.addSymbol(interfaceItem.name, namespace, interfaceItem);
34
+ }
35
+ }
36
+ // 根节点
37
+ if (nasl_concepts_1.asserts.isStrictApp(node)) {
38
+ for (const dep of node.dependencies) {
39
+ (0, module_1.addSymbol)(dep, context);
40
+ }
41
+ for (const dep of node.interfaceDependencies) {
42
+ (0, module_1.addSymbol)(dep, context);
43
+ }
44
+ for (const authLogic of node.authLogics) {
45
+ context.addSymbolWithScope((0, auth_logic_1.getAuthLogicName)(authLogic.name), context.namespace, authLogic);
46
+ }
47
+ for (const authLogic of node.authLogicsForCallInterface) {
48
+ context.addSymbolWithScope((0, auth_logic_1.getAuthLogicForInterfaceName)(authLogic.name), context.namespace, authLogic);
49
+ }
50
+ (0, backend_1.addSymbol)(node.backend, context);
51
+ }
52
+ // 外部依赖直接递归逻辑
53
+ else {
54
+ for (const logic of node.logics) {
55
+ context.addSymbolWithScope(logic.name, context.namespace, logic);
56
+ }
57
+ }
58
+ };
59
+ exports.addSymbol = addSymbol;
60
+ const recursion = (node, context) => {
61
+ // 递归数据源
62
+ for (const source of node.dataSources) {
63
+ for (const entity of source.entities) {
64
+ (0, entity_1.traverse)(entity, context);
65
+ }
66
+ }
67
+ // 递归结构
68
+ for (const structure of node.structures) {
69
+ (0, structure_1.traverse)(structure, context);
70
+ }
71
+ // 递归枚举
72
+ for (const enumNode of node.enums) {
73
+ (0, enum_1.traverse)(enumNode, context);
74
+ }
75
+ // 递归接口
76
+ for (const interfaceItem of node.interfaces) {
77
+ (0, interface_1.traverse)(interfaceItem, context);
78
+ }
79
+ // 递归前端类型
80
+ if (nasl_concepts_1.asserts.isApp(node)) {
81
+ for (const dep of node.dependencies) {
82
+ (0, module_1.recursion)(dep, context);
83
+ }
84
+ for (const dep of node.interfaceDependencies) {
85
+ (0, module_1.recursion)(dep, context);
86
+ }
87
+ for (const authLogic of node.authLogics) {
88
+ (0, auth_logic_1.traverse)(authLogic, context);
89
+ }
90
+ for (const authLogic of node.authLogicsForCallInterface) {
91
+ (0, auth_logic_1.traverse)(authLogic, context);
92
+ }
93
+ for (const frontendType of node.frontendTypes) {
94
+ (0, frontend_type_1.traverse)(frontendType, context);
95
+ }
96
+ (0, backend_1.recursion)(node.backend, context);
97
+ }
98
+ else {
99
+ for (const logic of node.logics) {
100
+ (0, logic_1.traverse)(logic, context);
101
+ }
102
+ }
103
+ };
104
+ exports.recursion = recursion;
105
+ /**
106
+ * App 节点迭代
107
+ *
108
+ * @description 根节点即为全局作用域
109
+ */
110
+ const traverse = (node, context) => {
111
+ (0, exports.addSymbol)(node, context);
112
+ (0, exports.recursion)(node, context);
113
+ };
114
+ exports.traverse = traverse;
115
+ //# sourceMappingURL=app.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"app.js","sourceRoot":"","sources":["../../../../src/symbol/traverse/concepts/app.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,7 @@
1
+ import type { Argument } from '@lcap/nasl-concepts';
2
+ import type { Traverse } from '../types';
3
+ /**
4
+ * Argument 节点迭代
5
+ */
6
+ export declare const traverse: Traverse<Argument>;
7
+ //# sourceMappingURL=argument.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"argument.d.ts","sourceRoot":"","sources":["../../../../src/symbol/traverse/concepts/argument.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AACpD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AAGzC;;GAEG;AACH,eAAO,MAAM,QAAQ,EAAE,QAAQ,CAAC,QAAQ,CAIvC,CAAC"}
@@ -0,0 +1,14 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.traverse = void 0;
4
+ const expression_1 = require("./expression");
5
+ /**
6
+ * Argument 节点迭代
7
+ */
8
+ const traverse = (node, context) => {
9
+ if (node.expression) {
10
+ (0, expression_1.traverse)(node.expression, context);
11
+ }
12
+ };
13
+ exports.traverse = traverse;
14
+ //# sourceMappingURL=argument.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"argument.js","sourceRoot":"","sources":["../../../../src/symbol/traverse/concepts/argument.ts"],"names":[],"mappings":";;;AAEA,6CAA8D;AAE9D;;GAEG;AACI,MAAM,QAAQ,GAAuB,CAAC,IAAI,EAAE,OAAO,EAAE,EAAE;IAC5D,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;QACpB,IAAA,qBAAkB,EAAC,IAAI,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;IAC/C,CAAC;AACH,CAAC,CAAC;AAJW,QAAA,QAAQ,YAInB"}
@@ -0,0 +1,7 @@
1
+ import type { Assignment } from '@lcap/nasl-concepts';
2
+ import type { Traverse } from '../types';
3
+ /**
4
+ * Assignment 节点迭代
5
+ */
6
+ export declare const traverse: Traverse<Assignment>;
7
+ //# sourceMappingURL=assignment.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"assignment.d.ts","sourceRoot":"","sources":["../../../../src/symbol/traverse/concepts/assignment.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAA4C,MAAM,qBAAqB,CAAC;AAChG,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AAoCzC;;GAEG;AACH,eAAO,MAAM,QAAQ,EAAE,QAAQ,CAAC,UAAU,CAGzC,CAAC"}
@@ -0,0 +1,42 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.traverse = void 0;
4
+ const expression_1 = require("./expression");
5
+ const identifier_1 = require("./identifier");
6
+ const member_expression_1 = require("./member-expression");
7
+ const traverseLeft = (node, context) => {
8
+ if (!node) {
9
+ // TODO: 赋值运算左值不能为空
10
+ return;
11
+ }
12
+ switch (node.concept) {
13
+ case 'MemberExpression': {
14
+ (0, member_expression_1.traverse)(node, context);
15
+ break;
16
+ }
17
+ case 'Identifier': {
18
+ (0, identifier_1.traverse)(node, context);
19
+ break;
20
+ }
21
+ default: {
22
+ // TODO: 非法的语法结构
23
+ break;
24
+ }
25
+ }
26
+ };
27
+ const traverseRight = (node, context) => {
28
+ if (!node) {
29
+ // TODO: 赋值运算右值不能为空
30
+ return;
31
+ }
32
+ (0, expression_1.traverse)(node, context);
33
+ };
34
+ /**
35
+ * Assignment 节点迭代
36
+ */
37
+ const traverse = (node, context) => {
38
+ traverseLeft(node.left, context);
39
+ traverseRight(node.right, context);
40
+ };
41
+ exports.traverse = traverse;
42
+ //# sourceMappingURL=assignment.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"assignment.js","sourceRoot":"","sources":["../../../../src/symbol/traverse/concepts/assignment.ts"],"names":[],"mappings":";;;AAEA,6CAA8D;AAC9D,6CAA8D;AAC9D,2DAA2E;AAE3E,MAAM,YAAY,GAAyB,CAAC,IAAI,EAAE,OAAO,EAAE,EAAE;IAC3D,IAAI,CAAC,IAAI,EAAE,CAAC;QACV,mBAAmB;QACnB,OAAO;IACT,CAAC;IAED,QAAQ,IAAI,CAAC,OAAO,EAAE,CAAC;QACrB,KAAK,kBAAkB,CAAC,CAAC,CAAC;YACxB,IAAA,4BAAwB,EAAC,IAAwB,EAAE,OAAO,CAAC,CAAC;YAC5D,MAAM;QACR,CAAC;QACD,KAAK,YAAY,CAAC,CAAC,CAAC;YAClB,IAAA,qBAAkB,EAAC,IAAkB,EAAE,OAAO,CAAC,CAAC;YAChD,MAAM;QACR,CAAC;QACD,OAAO,CAAC,CAAC,CAAC;YACR,gBAAgB;YAChB,MAAM;QACR,CAAC;IACH,CAAC;AACH,CAAC,CAAC;AAEF,MAAM,aAAa,GAAyB,CAAC,IAAI,EAAE,OAAO,EAAE,EAAE;IAC5D,IAAI,CAAC,IAAI,EAAE,CAAC;QACV,mBAAmB;QACnB,OAAO;IACT,CAAC;IAED,IAAA,qBAAkB,EAAC,IAAI,EAAE,OAAO,CAAC,CAAA;AACnC,CAAC,CAAC;AAEF;;GAEG;AACI,MAAM,QAAQ,GAAyB,CAAC,IAAI,EAAE,OAAO,EAAE,EAAE;IAC9D,YAAY,CAAC,IAAI,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IACjC,aAAa,CAAC,IAAI,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;AACrC,CAAC,CAAC;AAHW,QAAA,QAAQ,YAGnB"}
@@ -0,0 +1,11 @@
1
+ import type { AuthLogic, AuthLogicForCallInterface } from '@lcap/nasl-concepts';
2
+ import type { Traverse } from '../types';
3
+ /** 开放鉴权逻辑名称转换 */
4
+ export declare const getAuthLogicName: (name: string) => string;
5
+ /** 开放鉴权逻辑名称转换 */
6
+ export declare const getAuthLogicForInterfaceName: (name: string) => string;
7
+ /**
8
+ * AuthLogic 节点迭代
9
+ */
10
+ export declare const traverse: Traverse<AuthLogic | AuthLogicForCallInterface>;
11
+ //# sourceMappingURL=auth-logic.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"auth-logic.d.ts","sourceRoot":"","sources":["../../../../src/symbol/traverse/concepts/auth-logic.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,yBAAyB,EAAE,MAAM,qBAAqB,CAAC;AAChF,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AAIzC,iBAAiB;AACjB,eAAO,MAAM,gBAAgB,SAAU,MAAM,WAA2B,CAAC;AAEzE,iBAAiB;AACjB,eAAO,MAAM,4BAA4B,SAAU,MAAM,WAAqC,CAAC;AAG/F;;GAEG;AACH,eAAO,MAAM,QAAQ,EAAE,QAAQ,CAAC,SAAS,GAAG,yBAAyB,CAEpE,CAAC"}
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.traverse = exports.getAuthLogicForInterfaceName = exports.getAuthLogicName = void 0;
4
+ /** 开放鉴权逻辑名称转换 */
5
+ const getAuthLogicName = (name) => `$$auth_logic_${name}`;
6
+ exports.getAuthLogicName = getAuthLogicName;
7
+ /** 开放鉴权逻辑名称转换 */
8
+ const getAuthLogicForInterfaceName = (name) => `$$auth_logic_interface_${name}`;
9
+ exports.getAuthLogicForInterfaceName = getAuthLogicForInterfaceName;
10
+ /**
11
+ * AuthLogic 节点迭代
12
+ */
13
+ const traverse = (node, context) => {
14
+ // ..
15
+ };
16
+ exports.traverse = traverse;
17
+ //# sourceMappingURL=auth-logic.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"auth-logic.js","sourceRoot":"","sources":["../../../../src/symbol/traverse/concepts/auth-logic.ts"],"names":[],"mappings":";;;AAKA,iBAAiB;AACV,MAAM,gBAAgB,GAAG,CAAC,IAAY,EAAE,EAAE,CAAC,gBAAgB,IAAI,EAAE,CAAC;AAA5D,QAAA,gBAAgB,oBAA4C;AAEzE,iBAAiB;AACV,MAAM,4BAA4B,GAAG,CAAC,IAAY,EAAE,EAAE,CAAC,0BAA0B,IAAI,EAAE,CAAC;AAAlF,QAAA,4BAA4B,gCAAsD;AAG/F;;GAEG;AACI,MAAM,QAAQ,GAAoD,CAAC,IAAI,EAAE,OAAO,EAAE,EAAE;IACzF,KAAK;AACP,CAAC,CAAC;AAFW,QAAA,QAAQ,YAEnB"}
@@ -0,0 +1,15 @@
1
+ import { type Backend } from '@lcap/nasl-concepts';
2
+ import type { Traverse } from '../types';
3
+ /**
4
+ * Backend 节点符号
5
+ */
6
+ export declare const addSymbol: Traverse<Backend>;
7
+ /**
8
+ * Module 节点递归
9
+ */
10
+ export declare const recursion: Traverse<Backend>;
11
+ /**
12
+ * Module 节点迭代
13
+ */
14
+ export declare const traverse: Traverse<Backend>;
15
+ //# sourceMappingURL=backend.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"backend.d.ts","sourceRoot":"","sources":["../../../../src/symbol/traverse/concepts/backend.ts"],"names":[],"mappings":"AAAA,OAAO,EAAW,KAAK,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAC5D,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AAIzC;;GAEG;AACH,eAAO,MAAM,SAAS,EAAE,QAAQ,CAAC,OAAO,CAcvC,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,SAAS,EAAE,QAAQ,CAAC,OAAO,CAUvC,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,QAAQ,EAAE,QAAQ,CAAC,OAAO,CAKtC,CAAC"}
@@ -0,0 +1,46 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.traverse = exports.recursion = exports.addSymbol = void 0;
4
+ const nasl_concepts_1 = require("@lcap/nasl-concepts");
5
+ const logic_1 = require("./logic");
6
+ const variable_1 = require("./variable");
7
+ /**
8
+ * Backend 节点符号
9
+ */
10
+ const addSymbol = (node, context) => {
11
+ context.pushNamespace(node);
12
+ for (const variable of node.variables) {
13
+ (0, variable_1.traverse)(variable, context);
14
+ }
15
+ if (nasl_concepts_1.asserts.isStrictApp(node.parentNode)) {
16
+ for (const logic of node.parentNode.logics) {
17
+ context.addSymbolWithScope(logic.name, context.namespace, logic);
18
+ }
19
+ }
20
+ context.popNamespace();
21
+ };
22
+ exports.addSymbol = addSymbol;
23
+ /**
24
+ * Module 节点递归
25
+ */
26
+ const recursion = (node, context) => {
27
+ context.pushNamespace(node);
28
+ if (nasl_concepts_1.asserts.isStrictApp(node.parentNode)) {
29
+ for (const logic of node.parentNode.logics) {
30
+ (0, logic_1.traverse)(logic, context);
31
+ }
32
+ }
33
+ context.popNamespace();
34
+ };
35
+ exports.recursion = recursion;
36
+ /**
37
+ * Module 节点迭代
38
+ */
39
+ const traverse = (node, context) => {
40
+ context.pushNamespace(node);
41
+ (0, exports.addSymbol)(node, context);
42
+ (0, exports.recursion)(node, context);
43
+ context.popNamespace();
44
+ };
45
+ exports.traverse = traverse;
46
+ //# sourceMappingURL=backend.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"backend.js","sourceRoot":"","sources":["../../../../src/symbol/traverse/concepts/backend.ts"],"names":[],"mappings":";;;AAAA,uDAA4D;AAE5D,mCAAoD;AACpD,yCAA0D;AAE1D;;GAEG;AACI,MAAM,SAAS,GAAsB,CAAC,IAAI,EAAE,OAAO,EAAE,EAAE;IAC5D,OAAO,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;IAE5B,KAAK,MAAM,QAAQ,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;QACtC,IAAA,mBAAgB,EAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;IACtC,CAAC;IAED,IAAI,uBAAO,CAAC,WAAW,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC;QACzC,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC;YAC3C,OAAO,CAAC,kBAAkB,CAAC,KAAK,CAAC,IAAI,EAAE,OAAO,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;QACnE,CAAC;IACH,CAAC;IAED,OAAO,CAAC,YAAY,EAAE,CAAC;AACzB,CAAC,CAAC;AAdW,QAAA,SAAS,aAcpB;AAEF;;GAEG;AACI,MAAM,SAAS,GAAsB,CAAC,IAAI,EAAE,OAAO,EAAE,EAAE;IAC5D,OAAO,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;IAE5B,IAAI,uBAAO,CAAC,WAAW,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC;QACzC,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC;YAC3C,IAAA,gBAAa,EAAC,KAAK,EAAE,OAAO,CAAC,CAAC;QAChC,CAAC;IACH,CAAC;IAED,OAAO,CAAC,YAAY,EAAE,CAAC;AACzB,CAAC,CAAC;AAVW,QAAA,SAAS,aAUpB;AAEF;;GAEG;AACI,MAAM,QAAQ,GAAsB,CAAC,IAAI,EAAE,OAAO,EAAE,EAAE;IAC3D,OAAO,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;IAC5B,IAAA,iBAAS,EAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IACzB,IAAA,iBAAS,EAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IACzB,OAAO,CAAC,YAAY,EAAE,CAAC;AACzB,CAAC,CAAC;AALW,QAAA,QAAQ,YAKnB"}
@@ -0,0 +1,7 @@
1
+ import type { BatchAssignment } from '@lcap/nasl-concepts';
2
+ import type { Traverse } from '../types';
3
+ /**
4
+ * BatchAssignment 节点迭代
5
+ */
6
+ export declare const traverse: Traverse<BatchAssignment>;
7
+ //# sourceMappingURL=batch-assignment.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"batch-assignment.d.ts","sourceRoot":"","sources":["../../../../src/symbol/traverse/concepts/batch-assignment.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAC3D,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AAGzC;;GAEG;AACH,eAAO,MAAM,QAAQ,EAAE,QAAQ,CAAC,eAAe,CAM9C,CAAC"}
@@ -0,0 +1,15 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.traverse = void 0;
4
+ const select_members_1 = require("./select-members");
5
+ /**
6
+ * BatchAssignment 节点迭代
7
+ */
8
+ const traverse = (node, context) => {
9
+ (0, select_members_1.traverse)(node.left, context);
10
+ for (const item of node.rights) {
11
+ (0, select_members_1.traverse)(item, context);
12
+ }
13
+ };
14
+ exports.traverse = traverse;
15
+ //# sourceMappingURL=batch-assignment.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"batch-assignment.js","sourceRoot":"","sources":["../../../../src/symbol/traverse/concepts/batch-assignment.ts"],"names":[],"mappings":";;;AAEA,qDAAkE;AAElE;;GAEG;AACI,MAAM,QAAQ,GAA8B,CAAC,IAAI,EAAE,OAAO,EAAE,EAAE;IACnE,IAAA,yBAAkB,EAAC,IAAI,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IAEvC,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;QAC/B,IAAA,yBAAkB,EAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IACpC,CAAC;AACH,CAAC,CAAC;AANW,QAAA,QAAQ,YAMnB"}
@@ -0,0 +1,7 @@
1
+ import type { BinaryExpression } from '@lcap/nasl-concepts';
2
+ import type { Traverse } from '../types';
3
+ /**
4
+ * BinaryExpression 节点迭代
5
+ */
6
+ export declare const traverse: Traverse<BinaryExpression>;
7
+ //# sourceMappingURL=binary-expression.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"binary-expression.d.ts","sourceRoot":"","sources":["../../../../src/symbol/traverse/concepts/binary-expression.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAC5D,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AAGzC;;GAEG;AACH,eAAO,MAAM,QAAQ,EAAE,QAAQ,CAAC,gBAAgB,CAG/C,CAAC"}
@@ -0,0 +1,13 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.traverse = void 0;
4
+ const expression_1 = require("./expression");
5
+ /**
6
+ * BinaryExpression 节点迭代
7
+ */
8
+ const traverse = (node, context) => {
9
+ (0, expression_1.traverse)(node.left, context);
10
+ (0, expression_1.traverse)(node.right, context);
11
+ };
12
+ exports.traverse = traverse;
13
+ //# sourceMappingURL=binary-expression.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"binary-expression.js","sourceRoot":"","sources":["../../../../src/symbol/traverse/concepts/binary-expression.ts"],"names":[],"mappings":";;;AAEA,6CAA8D;AAE9D;;GAEG;AACI,MAAM,QAAQ,GAA+B,CAAC,IAAI,EAAE,OAAO,EAAE,EAAE;IACpE,IAAA,qBAAkB,EAAC,IAAI,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IACvC,IAAA,qBAAkB,EAAC,IAAI,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;AAC1C,CAAC,CAAC;AAHW,QAAA,QAAQ,YAGnB"}
@@ -0,0 +1,7 @@
1
+ import type { BindAttribute } from '@lcap/nasl-concepts';
2
+ import type { Traverse } from '../types';
3
+ /**
4
+ * BindAttribute 节点迭代
5
+ */
6
+ export declare const traverse: Traverse<BindAttribute>;
7
+ //# sourceMappingURL=bind-attr.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bind-attr.d.ts","sourceRoot":"","sources":["../../../../src/symbol/traverse/concepts/bind-attr.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACzD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AAKzC;;GAEG;AACH,eAAO,MAAM,QAAQ,EAAE,QAAQ,CAAC,aAAa,CAe5C,CAAC"}
@@ -0,0 +1,26 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.traverse = void 0;
4
+ const expression_1 = require("./expression");
5
+ const destination_1 = require("./destination");
6
+ const external_destination_1 = require("./external-destination");
7
+ /**
8
+ * BindAttribute 节点迭代
9
+ */
10
+ const traverse = (node, context) => {
11
+ // 跳过非动态属性
12
+ if (node.type !== 'dynamic') {
13
+ return;
14
+ }
15
+ if (node.expression) {
16
+ (0, expression_1.traverse)(node.expression, context);
17
+ }
18
+ else if (node.destination) {
19
+ (0, destination_1.traverse)(node.destination, context);
20
+ }
21
+ else if (node.externalDestination) {
22
+ (0, external_destination_1.traverse)(node.externalDestination, context);
23
+ }
24
+ };
25
+ exports.traverse = traverse;
26
+ //# sourceMappingURL=bind-attr.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bind-attr.js","sourceRoot":"","sources":["../../../../src/symbol/traverse/concepts/bind-attr.ts"],"names":[],"mappings":";;;AAEA,6CAA8D;AAC9D,+CAAgE;AAChE,iEAAiF;AAEjF;;GAEG;AACI,MAAM,QAAQ,GAA4B,CAAC,IAAI,EAAE,OAAO,EAAE,EAAE;IACjE,UAAU;IACV,IAAI,IAAI,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;QAC5B,OAAO;IACT,CAAC;IAED,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;QACpB,IAAA,qBAAkB,EAAC,IAAI,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;IAC/C,CAAC;SACI,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;QAC1B,IAAA,sBAAmB,EAAC,IAAI,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;IACjD,CAAC;SACI,IAAI,IAAI,CAAC,mBAAmB,EAAE,CAAC;QAClC,IAAA,+BAA2B,EAAC,IAAI,CAAC,mBAAmB,EAAE,OAAO,CAAC,CAAC;IACjE,CAAC;AACH,CAAC,CAAC;AAfW,QAAA,QAAQ,YAenB"}
@@ -0,0 +1,7 @@
1
+ import type { BindDirective } from '@lcap/nasl-concepts';
2
+ import type { Traverse } from '../types';
3
+ /**
4
+ * BindDirective 节点迭代
5
+ */
6
+ export declare const traverse: Traverse<BindDirective>;
7
+ //# sourceMappingURL=bind-directive.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bind-directive.d.ts","sourceRoot":"","sources":["../../../../src/symbol/traverse/concepts/bind-directive.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACzD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AAGzC;;GAEG;AACH,eAAO,MAAM,QAAQ,EAAE,QAAQ,CAAC,aAAa,CAI5C,CAAC"}
@@ -0,0 +1,14 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.traverse = void 0;
4
+ const expression_1 = require("./expression");
5
+ /**
6
+ * BindDirective 节点迭代
7
+ */
8
+ const traverse = (node, context) => {
9
+ if (node.type === 'dynamic' && node.expression) {
10
+ (0, expression_1.traverse)(node.expression, context);
11
+ }
12
+ };
13
+ exports.traverse = traverse;
14
+ //# sourceMappingURL=bind-directive.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bind-directive.js","sourceRoot":"","sources":["../../../../src/symbol/traverse/concepts/bind-directive.ts"],"names":[],"mappings":";;;AAEA,6CAA8D;AAE9D;;GAEG;AACI,MAAM,QAAQ,GAA4B,CAAC,IAAI,EAAE,OAAO,EAAE,EAAE;IACjE,IAAI,IAAI,CAAC,IAAI,KAAK,SAAS,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;QAC/C,IAAA,qBAAkB,EAAC,IAAI,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;IAC/C,CAAC;AACH,CAAC,CAAC;AAJW,QAAA,QAAQ,YAInB"}
@@ -0,0 +1,7 @@
1
+ import type { BindEvent } from '@lcap/nasl-concepts';
2
+ import type { Traverse } from '../types';
3
+ /**
4
+ * BindEvent 节点迭代
5
+ */
6
+ export declare const traverse: Traverse<BindEvent>;
7
+ //# sourceMappingURL=bind-event.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bind-event.d.ts","sourceRoot":"","sources":["../../../../src/symbol/traverse/concepts/bind-event.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AAGzC;;GAEG;AACH,eAAO,MAAM,QAAQ,EAAE,QAAQ,CAAC,SAAS,CAIxC,CAAC"}
@@ -0,0 +1,14 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.traverse = void 0;
4
+ const logic_1 = require("./logic");
5
+ /**
6
+ * BindEvent 节点迭代
7
+ */
8
+ const traverse = (node, context) => {
9
+ for (const logic of node.logics) {
10
+ (0, logic_1.traverse)(logic, context);
11
+ }
12
+ };
13
+ exports.traverse = traverse;
14
+ //# sourceMappingURL=bind-event.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bind-event.js","sourceRoot":"","sources":["../../../../src/symbol/traverse/concepts/bind-event.ts"],"names":[],"mappings":";;;AAEA,mCAAoD;AAEpD;;GAEG;AACI,MAAM,QAAQ,GAAwB,CAAC,IAAI,EAAE,OAAO,EAAE,EAAE;IAC7D,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;QAChC,IAAA,gBAAa,EAAC,KAAK,EAAE,OAAO,CAAC,CAAC;IAChC,CAAC;AACH,CAAC,CAAC;AAJW,QAAA,QAAQ,YAInB"}
@@ -0,0 +1,7 @@
1
+ import type { BindStyle } from '@lcap/nasl-concepts';
2
+ import type { Traverse } from '../types';
3
+ /**
4
+ * BindStyle 节点迭代
5
+ */
6
+ export declare const traverse: Traverse<BindStyle>;
7
+ //# sourceMappingURL=bind-style.d.ts.map