@lcap/nasl-language-server-core 4.1.0-rc.3 → 4.1.0-rc.4

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 (135) hide show
  1. package/out/checker.d.ts.map +1 -1
  2. package/out/checker.js +6 -4
  3. package/out/checker.js.map +1 -1
  4. package/out/index.d.ts +3 -0
  5. package/out/index.d.ts.map +1 -1
  6. package/out/index.js +5 -1
  7. package/out/index.js.map +1 -1
  8. package/out/reference-manager/build-q-name-def.d.ts +10 -0
  9. package/out/reference-manager/build-q-name-def.d.ts.map +1 -0
  10. package/out/reference-manager/build-q-name-def.js +66 -0
  11. package/out/reference-manager/build-q-name-def.js.map +1 -0
  12. package/out/reference-manager/builtin-q-name.js +6 -6
  13. package/out/reference-manager/builtin-q-name.js.map +1 -1
  14. package/out/reference-manager/get-q-name.d.ts.map +1 -1
  15. package/out/reference-manager/get-q-name.js +11 -7
  16. package/out/reference-manager/get-q-name.js.map +1 -1
  17. package/out/reference-manager/helper.d.ts +21 -0
  18. package/out/reference-manager/helper.d.ts.map +1 -0
  19. package/out/reference-manager/helper.js +92 -0
  20. package/out/reference-manager/helper.js.map +1 -0
  21. package/out/reference-manager/reference-manager.d.ts +39 -132
  22. package/out/reference-manager/reference-manager.d.ts.map +1 -1
  23. package/out/reference-manager/reference-manager.js +200 -481
  24. package/out/reference-manager/reference-manager.js.map +1 -1
  25. package/out/reference-manager/special-string-ref.d.ts +7 -0
  26. package/out/reference-manager/special-string-ref.d.ts.map +1 -0
  27. package/out/reference-manager/special-string-ref.js +34 -0
  28. package/out/reference-manager/special-string-ref.js.map +1 -0
  29. package/out/reference-manager/symbol-type.d.ts +5 -2
  30. package/out/reference-manager/symbol-type.d.ts.map +1 -1
  31. package/out/reference-manager/symbol-type.js +22 -2
  32. package/out/reference-manager/symbol-type.js.map +1 -1
  33. package/out/reference-manager/update-nasl-fragment.d.ts +1 -4
  34. package/out/reference-manager/update-nasl-fragment.d.ts.map +1 -1
  35. package/out/reference-manager/update-nasl-fragment.js +22 -37
  36. package/out/reference-manager/update-nasl-fragment.js.map +1 -1
  37. package/out/reference-manager/view-elem-logic.d.ts +44 -0
  38. package/out/reference-manager/view-elem-logic.d.ts.map +1 -0
  39. package/out/reference-manager/view-elem-logic.js +164 -0
  40. package/out/reference-manager/view-elem-logic.js.map +1 -0
  41. package/out/services/bindable-logic-service.d.ts +64 -0
  42. package/out/services/bindable-logic-service.d.ts.map +1 -0
  43. package/out/services/bindable-logic-service.js +186 -0
  44. package/out/services/bindable-logic-service.js.map +1 -0
  45. package/out/services/client.d.ts +10 -0
  46. package/out/services/client.d.ts.map +1 -0
  47. package/out/services/client.js +21 -0
  48. package/out/services/client.js.map +1 -0
  49. package/out/services/contextual-variables-service.d.ts +14 -0
  50. package/out/services/contextual-variables-service.d.ts.map +1 -0
  51. package/out/services/contextual-variables-service.js +17 -0
  52. package/out/services/contextual-variables-service.js.map +1 -0
  53. package/out/services/event-handler-type-service.d.ts +16 -0
  54. package/out/services/event-handler-type-service.d.ts.map +1 -0
  55. package/out/services/event-handler-type-service.js +57 -0
  56. package/out/services/event-handler-type-service.js.map +1 -0
  57. package/out/services/index.d.ts +2 -0
  58. package/out/services/index.d.ts.map +1 -0
  59. package/out/services/index.js +18 -0
  60. package/out/services/index.js.map +1 -0
  61. package/out/services/types/type.d.ts +13 -0
  62. package/out/services/types/type.d.ts.map +1 -0
  63. package/out/services/types/type.js +3 -0
  64. package/out/services/types/type.js.map +1 -0
  65. package/out/symbol/traverse/concepts/frontend/bind-event.d.ts.map +1 -1
  66. package/out/symbol/traverse/concepts/frontend/bind-event.js +3 -0
  67. package/out/symbol/traverse/concepts/frontend/bind-event.js.map +1 -1
  68. package/out/symbol/traverse/concepts/index.d.ts +1 -1
  69. package/out/symbol/traverse/concepts/index.d.ts.map +1 -1
  70. package/out/typer/collectGlobalDefs.js +1 -1
  71. package/out/typer/collectGlobalDefs.js.map +1 -1
  72. package/out/typer/dispatch-all.d.ts +1 -1
  73. package/out/typer/dispatch-all.d.ts.map +1 -1
  74. package/out/typer/dispatch-all.js +1 -1
  75. package/out/typer/dispatch-all.js.map +1 -1
  76. package/out/typer/dispatch-def.d.ts +2 -2
  77. package/out/typer/dispatch-def.d.ts.map +1 -1
  78. package/out/typer/dispatch-def.js +11 -16
  79. package/out/typer/dispatch-def.js.map +1 -1
  80. package/out/typer/dispatch-expr.js +11 -11
  81. package/out/typer/dispatch-expr.js.map +1 -1
  82. package/out/typer/dispatch-process.d.ts.map +1 -1
  83. package/out/typer/dispatch-process.js +7 -3
  84. package/out/typer/dispatch-process.js.map +1 -1
  85. package/out/typer/dispatch-view.d.ts.map +1 -1
  86. package/out/typer/dispatch-view.js +125 -62
  87. package/out/typer/dispatch-view.js.map +1 -1
  88. package/out/typer/helper.d.ts +0 -5
  89. package/out/typer/helper.d.ts.map +1 -1
  90. package/out/typer/helper.js +1 -21
  91. package/out/typer/helper.js.map +1 -1
  92. package/out/typer/incremental-update.d.ts.map +1 -1
  93. package/out/typer/incremental-update.js +127 -44
  94. package/out/typer/incremental-update.js.map +1 -1
  95. package/out/typer/index.d.ts +3 -3
  96. package/out/typer/index.d.ts.map +1 -1
  97. package/out/typer/index.js +3 -4
  98. package/out/typer/index.js.map +1 -1
  99. package/out/typer/nasl-predicate.d.ts +3 -5
  100. package/out/typer/nasl-predicate.d.ts.map +1 -1
  101. package/out/typer/nasl-predicate.js +10 -7
  102. package/out/typer/nasl-predicate.js.map +1 -1
  103. package/out/typer/solver.d.ts.map +1 -1
  104. package/out/typer/solver.js +4 -0
  105. package/out/typer/solver.js.map +1 -1
  106. package/out/typer/subster.js +4 -4
  107. package/out/typer/subster.js.map +1 -1
  108. package/out/typer/topo-sort.d.ts +1 -1
  109. package/out/typer/topo-sort.d.ts.map +1 -1
  110. package/out/typer/topo-sort.js +2 -2
  111. package/out/typer/topo-sort.js.map +1 -1
  112. package/out/typer/type-manager.d.ts +1 -1
  113. package/out/typer/type-manager.d.ts.map +1 -1
  114. package/out/typer/type-manager.js +5 -7
  115. package/out/typer/type-manager.js.map +1 -1
  116. package/out/typer/type-predicate.d.ts.map +1 -1
  117. package/out/typer/type-predicate.js +21 -7
  118. package/out/typer/type-predicate.js.map +1 -1
  119. package/out/typer/typer.d.ts +42 -6
  120. package/out/typer/typer.d.ts.map +1 -1
  121. package/out/typer/typer.js +127 -17
  122. package/out/typer/typer.js.map +1 -1
  123. package/out/typer/unifier.d.ts +0 -1
  124. package/out/typer/unifier.d.ts.map +1 -1
  125. package/out/typer/unifier.js +17 -12
  126. package/out/typer/unifier.js.map +1 -1
  127. package/out/utils/misc.d.ts +11 -0
  128. package/out/utils/misc.d.ts.map +1 -0
  129. package/out/utils/misc.js +29 -0
  130. package/out/utils/misc.js.map +1 -0
  131. package/out/utils/traverse-util.d.ts +5 -0
  132. package/out/utils/traverse-util.d.ts.map +1 -0
  133. package/out/utils/traverse-util.js +69 -0
  134. package/out/utils/traverse-util.js.map +1 -0
  135. package/package.json +5 -5
@@ -7,18 +7,19 @@ const nasl_concepts_1 = require("@lcap/nasl-concepts");
7
7
  const file_node_cache_1 = require("../utils/file-node-cache");
8
8
  const service_1 = require("@lcap/nasl-concepts/service");
9
9
  const type_predicate_1 = require("./type-predicate");
10
- const helper_1 = require("./helper");
11
10
  const dispatch_all_1 = require("./dispatch-all");
12
11
  const checker_1 = require("../checker");
13
- const nasl_predicate_1 = require("./nasl-predicate");
14
- const reference_manager_1 = require("../reference-manager/reference-manager");
12
+ const service_2 = require("@lcap/nasl-concepts/service");
15
13
  const get_q_name_1 = require("../reference-manager/get-q-name");
16
- const reference_manager_2 = require("../reference-manager/reference-manager");
14
+ const reference_manager_1 = require("../reference-manager/reference-manager");
17
15
  const collect_q_name_1 = require("../reference-manager/collect-q-name");
18
16
  const remove_q_name_1 = require("../reference-manager/remove-q-name");
19
17
  const rename_q_name_1 = require("../reference-manager/rename-q-name");
20
18
  const dispatch_def_1 = require("./dispatch-def");
21
19
  const type_manager_1 = require("./type-manager");
20
+ const helper_1 = require("./helper");
21
+ const helper_2 = require("../reference-manager/helper");
22
+ const misc_1 = require("../utils/misc");
22
23
  /**
23
24
  * @warning 改动这个文件中的逻辑时很容易引发增量检查问题、查找引用问题、内存泄漏,请谨慎;如单元测试 UT 发生错误,更要谨慎
24
25
  * 为了增加效率,直接往 params 的 Set 里加东西
@@ -26,7 +27,7 @@ const type_manager_1 = require("./type-manager");
26
27
  const preProcessOther = (env, nd, typerCheckFiles) => {
27
28
  const fileNode = (0, service_1.getFileNode)(nd);
28
29
  // 一定不能真的去检查实体自动生成(更新)的实体逻辑
29
- if (fileNode && !(0, reference_manager_1.isEntityLogic)(fileNode)) {
30
+ if (fileNode && !(0, helper_2.isEntityLogic)(fileNode)) {
30
31
  typerCheckFiles.add(fileNode);
31
32
  }
32
33
  return true;
@@ -47,10 +48,10 @@ exports.preProcessOther = preProcessOther;
47
48
  */
48
49
  const preProcessDefRename = (env, nd, typerCheckFiles, oldName, mode, oqlRemoveNodesTsPath) => {
49
50
  const fileNode = (0, service_1.getFileNode)(nd);
50
- fileNode && !(0, reference_manager_1.isEntityLogic)(fileNode) && typerCheckFiles.add(fileNode);
51
+ fileNode && !(0, helper_2.isEntityLogic)(fileNode) && typerCheckFiles.add(fileNode);
51
52
  // 不处理逻辑内的局部符号
52
- if (reference_manager_2.ReferenceManager.localDefConcept.includes(nd.concept)) {
53
- env.refMgr.isLocalCacheValid = false;
53
+ if (reference_manager_1.ReferenceManager.localDefConcept.includes(nd.concept)) {
54
+ env.refMgr.invalidateLocalSymCache();
54
55
  return true;
55
56
  }
56
57
  const qName = (0, get_q_name_1.getTokenQualifiedName)(nd);
@@ -65,14 +66,14 @@ const preProcessDefRename = (env, nd, typerCheckFiles, oldName, mode, oqlRemoveN
65
66
  catch {
66
67
  console.error(`Failed to get embedded file path for ${nd.name} in ${nd.nodePath}`);
67
68
  }
68
- const oldQNameDef = env.refMgr.qNameDefs.get(oldQName);
69
+ const oldQNameDef = env.refMgr.gQNameDefs.get(oldQName);
69
70
  if (oldQNameDef) {
70
71
  getDirectRefFileNodes(env, oldQNameDef).forEach((refFileNode) => {
71
72
  typerCheckFiles.add(refFileNode);
72
73
  });
73
74
  }
74
75
  // 3. Get new qNames2 to add
75
- const nsp = (0, reference_manager_1.getNamespaceWithoutLast)(nd);
76
+ const nsp = (0, helper_2.getNamespaceWithoutLast)(nd);
76
77
  const qNamesToRename = (0, rename_q_name_1.getQNamesOfRenameAction)(oldName, nsp, nd);
77
78
  // 4. Transfer references: add qNames2 to qNameDefs, transfer symbolRefs from qNames1 to qNames2, remove qNames1 from qNameDefs
78
79
  // transferQNameDef already handles qNameDefs deletion and addition
@@ -95,8 +96,8 @@ exports.preProcessDefRename = preProcessDefRename;
95
96
  const pushRefFilesToChkFiles = (env, chkFiles, qNames) => {
96
97
  const processedFileNodes = new Set();
97
98
  for (const qName of qNames) {
98
- const def = env.refMgr.qNameDefs.get(qName);
99
- if (!reference_manager_2.ReferenceManager.globalDefConcept.includes(def?.concept)) {
99
+ const def = env.refMgr.gQNameDefs.get(qName);
100
+ if (!reference_manager_1.ReferenceManager.globalDefConcept.includes(def?.concept)) {
100
101
  continue;
101
102
  }
102
103
  for (const ref of getDirectRefFileNodes(env, def)) {
@@ -126,13 +127,13 @@ const batchPreProcessAllRemoveNodes = (env, removeNodes, chkFiles, removedFiles)
126
127
  * 因为要么 fileNode 不存在了,要么 fileNode 下已经没有了被删除的节点
127
128
  * 符号类型:一律删除
128
129
  **/
129
- if (reference_manager_2.ReferenceManager.localDefConcept.includes(rmNd.concept)) {
130
+ if (reference_manager_1.ReferenceManager.localDefConcept.includes(rmNd.concept)) {
130
131
  env.refMgr.invalidateLocalSymCache();
131
132
  }
132
- if (!reference_manager_2.ReferenceManager.globalDefConcept.includes(rmNd.concept)) {
133
+ if (!reference_manager_1.ReferenceManager.globalDefConcept.includes(rmNd.concept)) {
133
134
  env.removeTypes(rmNd);
134
135
  }
135
- const nsp = (0, reference_manager_1.getNamespaceWithoutLast)(rmNd) ?? '';
136
+ const nsp = (0, helper_2.getNamespaceWithoutLast)(rmNd) ?? '';
136
137
  // Including entity logics if nd.concept === 'Entity'
137
138
  const qNames = (0, remove_q_name_1.getQNamesOfRemoveAction)(nsp, rmNd);
138
139
  for (const [qName, def] of qNames) {
@@ -144,7 +145,7 @@ const batchPreProcessAllRemoveNodes = (env, removeNodes, chkFiles, removedFiles)
144
145
  pushRefFilesToChkFiles(env, chkFiles, Array.from(allQNameDefs).map(([qName]) => qName));
145
146
  // 第二个循环里处理全局符号
146
147
  for (const [qName, rmNd0] of allQNameDefs) {
147
- const rmNd = env.refMgr.qNameDefs.get(qName); // normalized rmNd,如实体逻辑、连接器啥的
148
+ const rmNd = env.refMgr.gQNameDefs.get(qName); // normalized rmNd,如实体逻辑、连接器啥的
148
149
  if (!rmNd) {
149
150
  if (rmNd0) {
150
151
  removeNodes.add(rmNd0);
@@ -154,7 +155,7 @@ const batchPreProcessAllRemoveNodes = (env, removeNodes, chkFiles, removedFiles)
154
155
  continue;
155
156
  }
156
157
  // 全局符号引用:缓存。局部符号引用:删除。
157
- if (reference_manager_2.ReferenceManager.globalDefConcept.includes(rmNd.concept)) {
158
+ if (reference_manager_1.ReferenceManager.globalDefConcept.includes(rmNd.concept)) {
158
159
  if (rmNd.concept === 'Logic') {
159
160
  const ovLgc = env.overriddenLogic.get(rmNd);
160
161
  if (ovLgc) {
@@ -166,7 +167,7 @@ const batchPreProcessAllRemoveNodes = (env, removeNodes, chkFiles, removedFiles)
166
167
  removedFiles.add(rmNd);
167
168
  removedFiles.add(rmNd0);
168
169
  // 下面 getDirectRefFileNodes 是不是会给子页面加进去,那这里 removedFiles 也给子页面加进去吧,保险一点……
169
- for (const subView of (0, reference_manager_1.getSubViews)(rmNd)) {
170
+ for (const subView of (0, misc_1.getSubViews)(rmNd)) {
170
171
  removedFiles.add(subView); // view 没有这种 rmNd !== rmNd0 的情况
171
172
  }
172
173
  }
@@ -190,10 +191,10 @@ const batchPreProcessAllCreateNodes = (env, createNodes, chkFiles) => {
190
191
  // 新创建的节点,从 preProcessDefCreation 搬过来的
191
192
  // TODO:之后再整理代码
192
193
  for (const nd of createNodes) {
193
- if (reference_manager_2.ReferenceManager.localDefConcept.includes(nd.concept)) {
194
+ if (reference_manager_1.ReferenceManager.localDefConcept.includes(nd.concept)) {
194
195
  continue;
195
196
  }
196
- const nsp = (0, reference_manager_1.getNamespaceWithoutLast)(nd);
197
+ const nsp = (0, helper_2.getNamespaceWithoutLast)(nd);
197
198
  const createdQNames = (0, collect_q_name_1.getQNamesOfCreateAction)(nsp, nd);
198
199
  // Try to 'relink' to old defs,仅 relink refs,和建立 QNames,新的 refs 需要检查后再收集
199
200
  for (const [qName, def] of createdQNames) {
@@ -207,6 +208,42 @@ const batchPreProcessAllCreateNodes = (env, createNodes, chkFiles) => {
207
208
  pushRefFilesToChkFiles(env, chkFiles, createdQNames.map(([qName]) => qName));
208
209
  }
209
210
  };
211
+ const computeNextChkFiles = (p) => {
212
+ const { env, removeNodes, createNodes, checkedFiles, logicTasks, oldLogicRetTys, oldLogicParamTys, viewNodes, bsNodes, oldViewParamTys } = p;
213
+ if (removeNodes.size || createNodes.size) {
214
+ const ownerConcepts = new Set([
215
+ 'Logic', 'BusinessLogic', 'OverriddenLogic', 'AuthLogic', 'AuthLogicForCallInterface', 'ConnectorLogic', 'View', 'BusinessComponent'
216
+ ]);
217
+ const collectOwner = (nd) => {
218
+ let q = nd?.parentNode;
219
+ while (q) {
220
+ if (ownerConcepts.has(q.concept)) {
221
+ return (0, misc_1.toRaw)(q);
222
+ }
223
+ q = q.parentNode;
224
+ }
225
+ return undefined;
226
+ };
227
+ const owners = new Set();
228
+ const tryCollect = (nodes) => {
229
+ for (const n of nodes) {
230
+ const owner = collectOwner(n) || (ownerConcepts.has(n.concept) ? n : undefined);
231
+ owner && owners.add(owner);
232
+ }
233
+ };
234
+ tryCollect(removeNodes);
235
+ tryCollect(createNodes);
236
+ const directRefFiles = new Set();
237
+ owners.forEach(o => {
238
+ for (const ref of getDirectRefFileNodes(env, o)) {
239
+ directRefFiles.add(ref);
240
+ }
241
+ });
242
+ return mnemonist_1.set.difference(directRefFiles, checkedFiles);
243
+ }
244
+ // 纯更新:使用签名变化判断(paramCountChangedDefs 已在增删分支处理,这里传空集)
245
+ return mnemonist_1.set.difference(determineNextCheck(env, logicTasks, oldLogicRetTys, oldLogicParamTys, [...viewNodes, ...bsNodes], oldViewParamTys, new Set()), checkedFiles);
246
+ };
210
247
  /**
211
248
  * 增量更新诊断信息
212
249
  * @param params 包含所有参数的对象
@@ -235,8 +272,8 @@ async function checkUpdateRefsDiag(params) {
235
272
  }
236
273
  chkFiles = filteredChkFiles;
237
274
  // 全局逻辑先拓扑排序
238
- const [itfcNodes, __otherNodes] = (0, helper_1.divideBy)(Array.from(chkFiles), nasl_predicate_1.isCallableNaslInterface);
239
- const [logicNodes, otherNodes] = (0, helper_1.divideBy)(Array.from(__otherNodes), nasl_predicate_1.isCallableNaslLogic);
275
+ const [itfcNodes, __otherNodes] = (0, helper_1.divideBy)(Array.from(chkFiles), service_2.isCallableNaslInterface);
276
+ const [logicNodes, otherNodes] = (0, helper_1.divideBy)(Array.from(__otherNodes), service_2.isCallableNaslLogic);
240
277
  const processRelatedConcepts = ['ProcessDefinitionV2', 'ProcessElement', 'ProcessElementV2', 'ProcessV2'];
241
278
  // 必须先检查流程,再检查流程关联页面
242
279
  const [processNodes, otherNodes2] = (0, helper_1.divideBy)(otherNodes, (v) => {
@@ -251,12 +288,15 @@ async function checkUpdateRefsDiag(params) {
251
288
  * 收集对外暴露的层层传递的类型,例如全局逻辑的返回类型、前端全局变量、服务端全局变量、页面变量的类型
252
289
  */
253
290
  const [oldLogicRetTys, oldLogicParamTys] = getLogicSigs(env, logicNodes);
291
+ // 收集页面和业务组件的参数类型(它们没有返回值)
292
+ const oldViewParamTys = getViewComponentSigs(env, [...viewNodes, ...bsNodes]);
254
293
  (0, dispatch_def_1.setParamOptionalFlags)([...itfcNodes, ...logicNodes]);
255
294
  const logicTasks = (0, dispatch_all_1.topoSortLogicAndSetTypes)(env, logicNodes);
256
295
  // 处理类型检查 - 改为顺序处理,确保正确的等待异步操作
257
296
  nasl_utils_1.isDebugMode && console.time('\x1b[44m\x1b[97m 2: 类型检查 \x1b[0m');
258
297
  // 先处理 BusinessComponent,再处理 View
259
298
  const sortedFiles = [...defNodes, ...itfcNodes, ...logicTasks, ...processNodes, ...bsNodes, ...viewNodes];
299
+ // sortedFiles.length > 0 && env.refMgr.invalidateLocalSymCache();
260
300
  for (const file of sortedFiles) {
261
301
  env.refMgr.removeRefsForGlobalSym(env, file);
262
302
  clearSemInfoDiags(env, diagnosticManager, file);
@@ -266,7 +306,7 @@ async function checkUpdateRefsDiag(params) {
266
306
  // 按新类型添加符号
267
307
  nasl_utils_1.isDebugMode && console.time('\x1b[44m\x1b[97m 3: 按新类型添加符号 \x1b[0m');
268
308
  for (const file of sortedFiles) {
269
- if (reference_manager_2.ReferenceManager.defConcept.includes(file.concept)) {
309
+ if (reference_manager_1.ReferenceManager.defConcept.includes(file.concept)) {
270
310
  env.refMgr.addRefsForGlobalSym(env, file);
271
311
  }
272
312
  }
@@ -294,8 +334,19 @@ async function checkUpdateRefsDiag(params) {
294
334
  chkFiles.forEach((x) => {
295
335
  checkedFiles.add(x);
296
336
  });
297
- // 使用新函数收集类型并确定是否需要下一轮检查。.difference(checkedFiles),不找不动点。
298
- const nextChkFiles = mnemonist_1.set.difference(determineNextCheck(env, logicTasks, oldLogicRetTys, oldLogicParamTys), checkedFiles);
337
+ // 使用抽取的全局函数计算下一轮检查文件
338
+ const nextChkFiles = computeNextChkFiles({
339
+ env,
340
+ removeNodes,
341
+ createNodes,
342
+ checkedFiles,
343
+ logicTasks: logicTasks,
344
+ oldLogicRetTys,
345
+ oldLogicParamTys,
346
+ viewNodes: [...viewNodes],
347
+ bsNodes: [...bsNodes],
348
+ oldViewParamTys,
349
+ });
299
350
  if (nextChkFiles.size) {
300
351
  nasl_utils_1.isDebugMode && console.log('\x1b[44m\x1b[97m 5: 还需运行新一轮语言服务 \x1b[0m');
301
352
  diagRecs.push(...await checkUpdateRefsDiag({
@@ -346,6 +397,23 @@ const getLogicSigs = (env, logics) => {
346
397
  }
347
398
  return [retTypes, paramTypes];
348
399
  };
400
+ /**
401
+ * 收集页面和业务组件的参数类型(它们没有返回值)
402
+ * @param env 语义环境
403
+ * @param viewComponents 页面和业务组件节点列表
404
+ * @returns 参数类型映射
405
+ */
406
+ const getViewComponentSigs = (env, viewComponents) => {
407
+ const paramTypes = new Map();
408
+ for (const vc of viewComponents) {
409
+ // 只处理有 params 属性的节点
410
+ const params = vc?.params;
411
+ if (Array.isArray(params)) {
412
+ paramTypes.set(vc, params.map((param) => normalizeToUserTy(env.getType(param))));
413
+ }
414
+ }
415
+ return paramTypes;
416
+ };
349
417
  const normalizeToUserTy = (ty) => {
350
418
  if ((0, type_predicate_1.isResolvedUserTy)(ty)) {
351
419
  return ty;
@@ -371,7 +439,7 @@ const clearSemInfoDiags = (env, diagnosticManager, file, skipSubView = true) =>
371
439
  removeNodeDiagnostics(env.errorDiagnoser, diagnosticManager, file);
372
440
  file.traverseStrictChildrenWithPruning((nd) => {
373
441
  env.typeBindings.delete(nd);
374
- (0, nasl_predicate_1.isNaslCallExpr)(nd) && env.resolvedCallInfo.delete(nd);
442
+ (0, service_2.isNaslCallExpr)(nd) && env.resolvedCallInfo.delete(nd);
375
443
  return skipSubView && nd !== file && nd.concept === 'View'; // 不能排除自身
376
444
  });
377
445
  env.allocatedVirtualNodes.get(file)?.forEach(virtualNd => {
@@ -388,34 +456,49 @@ const clearSemInfoDiags = (env, diagnosticManager, file, skipSubView = true) =>
388
456
  env.localVars.delete(file);
389
457
  };
390
458
  /**
391
- * 收集新一轮类型检查后的全局逻辑的参数类型和返回类型,并确定是否需要下一轮检查
459
+ * 收集新一轮类型检查后的全局逻辑、页面和业务组件的参数类型和返回类型,并确定是否需要下一轮检查
392
460
  * @param env 语义环境
393
461
  * @param logicTasks 逻辑节点列表
394
462
  * @param oldLogicRetTys 旧的返回类型映射
395
463
  * @param oldLogicParamTys 旧的参数类型映射
464
+ * @param viewComponents 页面和业务组件节点列表
465
+ * @param oldViewParamTys 旧的页面/业务组件参数类型映射
396
466
  * @returns 需要下一轮检查的文件集合
397
467
  */
398
- const determineNextCheck = (env, logicTasks, oldLogicRetTys, oldLogicParamTys) => {
399
- // 收集新一轮类型检查后的全局逻辑的参数类型和返回类型
468
+ const determineNextCheck = (env, logicTasks, oldLogicRetTys, oldLogicParamTys, viewComponents, oldViewParamTys, paramCountChangedDefs) => {
400
469
  const [newLogicRetTys, newLogicParamTys] = getLogicSigs(env, logicTasks);
470
+ const newViewParamTys = getViewComponentSigs(env, viewComponents);
401
471
  const chkFiles = new Set();
402
- // 如果返回类型或参数类型不一样,则再次查找引用,并运行整个符号删除——检查——符号添加过程
472
+ const haveParamTypesChanged = (oldParams, newParams) => oldParams.length !== newParams.length ||
473
+ oldParams.some((oldType, index) => !(0, type_predicate_1.isEqualTy)(env, oldType, newParams[index]));
474
+ const addRefFileNodes = (def) => {
475
+ for (const ref of getDirectRefFileNodes(env, def)) {
476
+ chkFiles.add(ref);
477
+ }
478
+ };
479
+ // 逻辑:检查返回类型或参数类型变化
403
480
  for (const l of logicTasks) {
404
481
  const oldRetType = oldLogicRetTys.get(l);
405
482
  const newRetType = newLogicRetTys.get(l);
406
483
  const oldParamTypes = oldLogicParamTys.get(l) || [];
407
484
  const newParamTypes = newLogicParamTys.get(l) || [];
408
- // Check if return type has changed
409
485
  const retTypeChanged = !(0, type_predicate_1.isEqualTy)(env, oldRetType, newRetType);
410
- // Check if parameter types have changed
411
- const paramTypesChanged = oldParamTypes.length !== newParamTypes.length ||
412
- oldParamTypes.some((oldType, index) => !(0, type_predicate_1.isEqualTy)(env, oldType, newParamTypes[index]));
413
- if (retTypeChanged || paramTypesChanged) {
414
- for (const ref of getDirectRefFileNodes(env, l)) {
415
- chkFiles.add(ref);
416
- }
486
+ if (retTypeChanged || haveParamTypesChanged(oldParamTypes, newParamTypes)) {
487
+ addRefFileNodes(l);
417
488
  }
418
489
  }
490
+ // 页面与业务组件:仅检查参数类型变化
491
+ for (const vc of viewComponents) {
492
+ const oldParamTypes = oldViewParamTys.get(vc) || [];
493
+ const newParamTypes = newViewParamTys.get(vc) || [];
494
+ if (haveParamTypesChanged(oldParamTypes, newParamTypes)) {
495
+ addRefFileNodes(vc);
496
+ }
497
+ }
498
+ // 形参个数变化(新增 / 删除 Param / ParamWithGroup)强制加入引用文件
499
+ for (const def of paramCountChangedDefs) {
500
+ addRefFileNodes(def);
501
+ }
419
502
  return chkFiles;
420
503
  };
421
504
  // Helper function to get the file nodes of direct references. Will never check Entity logics.
@@ -431,7 +514,7 @@ const getDirectRefFileNodes = (env, def) => {
431
514
  refs.forEach((ref) => {
432
515
  // Type assertion here avoids runtime checks while satisfying type system
433
516
  const fileNode = (0, service_1.getFileNode)(ref);
434
- if (fileNode && !(0, reference_manager_1.isEntityLogic)(fileNode)) {
517
+ if (fileNode && !(0, helper_2.isEntityLogic)(fileNode)) {
435
518
  fileNodes.add(fileNode);
436
519
  }
437
520
  });
@@ -469,7 +552,7 @@ const getOqlFiles = (env, __chkFiles, removedNodes) => {
469
552
  res.add(nd);
470
553
  }
471
554
  // 如果是可调用的 NASL 逻辑,检查是否包含 OqlQueryComponent
472
- if ((0, nasl_predicate_1.isCallableNaslLogic)(nd)) {
555
+ if ((0, service_2.isCallableNaslLogic)(nd)) {
473
556
  let hasOql = false;
474
557
  nd.traverseStrictChildrenStopWhen?.((child) => {
475
558
  if (child.concept === 'OqlQueryComponent') {
@@ -482,11 +565,11 @@ const getOqlFiles = (env, __chkFiles, removedNodes) => {
482
565
  }
483
566
  }
484
567
  // 查找直接引用
485
- const nsp = (0, reference_manager_1.getNamespaceWithoutLast)(nd);
568
+ const nsp = (0, helper_2.getNamespaceWithoutLast)(nd);
486
569
  const qNames = (0, collect_q_name_1.getQNamesOfCreateAction)(nsp, nd);
487
570
  for (const qName of qNames) {
488
571
  // 检查缓存的引用
489
- const cachedRefs = env.refMgr.cachedQNameSymbolRefs.get(qName[0]) ?? new Set();
572
+ const cachedRefs = env.refMgr.gCachedQNameSymbolRefs.get(qName[0]) ?? new Set();
490
573
  for (const ref of cachedRefs) {
491
574
  const fNode = (0, service_1.getFileNode)(ref);
492
575
  if (fNode && !removedNodes.has(fNode)) {
@@ -494,7 +577,7 @@ const getOqlFiles = (env, __chkFiles, removedNodes) => {
494
577
  }
495
578
  }
496
579
  // 检查当前引用
497
- const def = env.refMgr.qNameDefs.get(qName[0]);
580
+ const def = env.refMgr.gQNameDefs.get(qName[0]);
498
581
  if (def) {
499
582
  const refs = env.refMgr.getSymbolRefs(def) ?? new Set();
500
583
  for (const ref of refs) {
@@ -536,7 +619,7 @@ const getOqlFiles = (env, __chkFiles, removedNodes) => {
536
619
  };
537
620
  // 检查节点是否包含 OqlQueryComponent
538
621
  const hasOqlQueryComponent = (node) => {
539
- if (!(0, nasl_predicate_1.isCallableNaslLogic)(node)) {
622
+ if (!(0, service_2.isCallableNaslLogic)(node)) {
540
623
  return false;
541
624
  }
542
625
  let result = false;
@@ -1 +1 @@
1
- {"version":3,"file":"incremental-update.js","sourceRoot":"","sources":["../../src/typer/incremental-update.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"incremental-update.js","sourceRoot":"","sources":["../../src/typer/incremental-update.ts"],"names":[],"mappings":"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"}
@@ -3,7 +3,7 @@ import { mkSyntaxErr, mkIncompatibleTyErr } from './sem-diag';
3
3
  import { isSubTy, isEqualTy, isNumericImplicitCast, isUnResolvedTy, isResolvedUserTy } from './type-predicate';
4
4
  import { naslBooleanTy, naslStringTy, naslDecimalTy, naslLongTy, naslDateTy, naslTimeTy, naslDateTimeTy, createFnTyFromTyAnns, createListTyAnn, createTyParam, completeNaslGenericTyArgs, createTyParamAnn, tyParamAnn2TyParam, tyParam2TyAnn, createMapTyAnn, showType, printType, naslVoidTy, isBlockStatement, createRefTyAnn, createRefTyAnnFromDef, createUnionTyAnn, createUnionTyAnnIfNecessary, literalTypeToStringType, TypingEnv, extractTyParamAnns, Constraints, Bounds, OrderedConstraints, BindingEnv, isStatement, naslNumTy, naslNullTy, naslAnyTy, createFunctionDef, ResolvedCall } from './type-manager';
5
5
  import { isTyAnnTyParam, isFuncTy, isNaslGenericTy, isListTy, isUnionTy, isAnonymousTy, isPrimitiveTy, isRefTy, isAnyTy } from './type-predicate';
6
- import { createOnPush, removeLastOne, getLastOne, isInteger, isFloat, zipWith_, printTySubst, printConstraints, eraseAllTypeAnnotation, divideBy, getType, copyMap, zipWith, findIndexBy, getListLast, removeDupBy } from './helper';
6
+ import { createOnPush, removeLastOne, getLastOne, isInteger, isFloat, zipWith_, printTySubst, printConstraints, eraseAllTypeAnnotation, divideBy, copyMap, zipWith, findIndexBy, getListLast, removeDupBy } from './helper';
7
7
  import { Unifier } from './unifier';
8
8
  import { Solver } from './solver';
9
9
  import { traverseAndSubst, substTyAnn, inPlaceSubstTyAnn, simplifyUnionTyRecursively } from './subster';
@@ -14,6 +14,6 @@ import { dispatchDef } from './dispatch-def';
14
14
  import { createProcessVariable } from './dispatch-process';
15
15
  import { topoSortLogicAndSetTypes } from './dispatch-all';
16
16
  import { findErrMutRecFns } from './topo-sort';
17
- import { isCallableNaslLogic } from './nasl-predicate';
18
- export { Solver, createOnPush, isSubTy, createTyParam, showType, printType, printTySubst, removeLastOne, mkIncompatibleTyErr, isTyAnnTyParam, mkSyntaxErr, naslBooleanTy, naslStringTy, getLastOne, isEqualTy, naslDecimalTy, naslLongTy, SemEnv, TypingEnv, completeNaslGenericTyArgs, createFnTyFromTyAnns, createListTyAnn, isInteger, isFloat, tyParamAnn2TyParam, tyParam2TyAnn, isFuncTy, zipWith_, printConstraints, Unifier, isNaslGenericTy, createMapTyAnn, createTyParamAnn, naslVoidTy, traverseAndSubst, substTyAnn, isBlockStatement, naslDateTy, naslTimeTy, naslDateTimeTy, naslAnyTy, createRefTyAnn, createRefTyAnnFromDef, isNumericImplicitCast, isListTy, createUnionTyAnn, createUnionTyAnnIfNecessary, isUnionTy, isAnonymousTy, literalTypeToStringType, eraseAllTypeAnnotation, tpSolvingStmts, tpSolvingPlayground, dispatchDef, dispatchExpr, divideBy, getType, tpCallAuthInterface, tpCallConnector, tpCallFunction, tpCallInterface, tpCallLogic, tpMatch, extractTyParamAnns, Constraints, Bounds, OrderedConstraints, copyMap, zipWith, GlobalLogicRevDep, BindingEnv, isPrimitiveTy, isRefTy, findIndexBy, isStatement, getListLast, removeDupBy, isAnyTy, createProcessVariable, inPlaceSubstTyAnn, simplifyUnionTyRecursively, naslNumTy, naslNullTy, parseTsFnToNaslQNameRefMaps, topoSortLogicAndSetTypes, findErrMutRecFns, createFunctionDef, ResolvedCall, isUnResolvedTy, isResolvedUserTy, isCallableNaslLogic };
17
+ import { isCallableNaslLogic } from '@lcap/nasl-concepts/service';
18
+ export { Solver, createOnPush, isSubTy, createTyParam, showType, printType, printTySubst, removeLastOne, mkIncompatibleTyErr, isTyAnnTyParam, mkSyntaxErr, naslBooleanTy, naslStringTy, getLastOne, isEqualTy, naslDecimalTy, naslLongTy, SemEnv, TypingEnv, completeNaslGenericTyArgs, createFnTyFromTyAnns, createListTyAnn, isInteger, isFloat, tyParamAnn2TyParam, tyParam2TyAnn, isFuncTy, zipWith_, printConstraints, Unifier, isNaslGenericTy, createMapTyAnn, createTyParamAnn, naslVoidTy, traverseAndSubst, substTyAnn, isBlockStatement, naslDateTy, naslTimeTy, naslDateTimeTy, naslAnyTy, createRefTyAnn, createRefTyAnnFromDef, isNumericImplicitCast, isListTy, createUnionTyAnn, createUnionTyAnnIfNecessary, isUnionTy, isAnonymousTy, literalTypeToStringType, eraseAllTypeAnnotation, tpSolvingStmts, tpSolvingPlayground, dispatchDef, dispatchExpr, divideBy, tpCallAuthInterface, tpCallConnector, tpCallFunction, tpCallInterface, tpCallLogic, tpMatch, extractTyParamAnns, Constraints, Bounds, OrderedConstraints, copyMap, zipWith, GlobalLogicRevDep, BindingEnv, isPrimitiveTy, isRefTy, findIndexBy, isStatement, getListLast, removeDupBy, isAnyTy, createProcessVariable, inPlaceSubstTyAnn, simplifyUnionTyRecursively, naslNumTy, naslNullTy, parseTsFnToNaslQNameRefMaps, topoSortLogicAndSetTypes, findErrMutRecFns, createFunctionDef, ResolvedCall, isUnResolvedTy, isResolvedUserTy, isCallableNaslLogic };
19
19
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/typer/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/typer/index.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.eraseAllTypeAnnotation = exports.literalTypeToStringType = exports.isAnonymousTy = exports.isUnionTy = exports.createUnionTyAnnIfNecessary = exports.createUnionTyAnn = exports.isListTy = exports.isNumericImplicitCast = exports.createRefTyAnnFromDef = exports.createRefTyAnn = exports.naslAnyTy = exports.naslDateTimeTy = exports.naslTimeTy = exports.naslDateTy = exports.isBlockStatement = exports.substTyAnn = exports.traverseAndSubst = exports.naslVoidTy = exports.createTyParamAnn = exports.createMapTyAnn = exports.isNaslGenericTy = exports.Unifier = exports.printConstraints = exports.zipWith_ = exports.isFuncTy = exports.tyParam2TyAnn = exports.tyParamAnn2TyParam = exports.isFloat = exports.isInteger = exports.createListTyAnn = exports.createFnTyFromTyAnns = exports.completeNaslGenericTyArgs = exports.SemEnv = exports.naslLongTy = exports.naslDecimalTy = exports.isEqualTy = exports.getLastOne = exports.naslStringTy = exports.naslBooleanTy = exports.mkSyntaxErr = exports.isTyAnnTyParam = exports.mkIncompatibleTyErr = exports.removeLastOne = exports.printTySubst = exports.printType = exports.showType = exports.createTyParam = exports.isSubTy = exports.createOnPush = exports.Solver = void 0;
4
- exports.isCallableNaslLogic = exports.isResolvedUserTy = exports.isUnResolvedTy = exports.createFunctionDef = exports.findErrMutRecFns = exports.topoSortLogicAndSetTypes = exports.parseTsFnToNaslQNameRefMaps = exports.naslNullTy = exports.naslNumTy = exports.simplifyUnionTyRecursively = exports.inPlaceSubstTyAnn = exports.createProcessVariable = exports.isAnyTy = exports.removeDupBy = exports.getListLast = exports.isStatement = exports.findIndexBy = exports.isRefTy = exports.isPrimitiveTy = exports.zipWith = exports.copyMap = exports.Bounds = exports.extractTyParamAnns = exports.tpMatch = exports.tpCallLogic = exports.tpCallInterface = exports.tpCallFunction = exports.tpCallConnector = exports.tpCallAuthInterface = exports.getType = exports.divideBy = exports.dispatchExpr = exports.dispatchDef = exports.tpSolvingPlayground = exports.tpSolvingStmts = void 0;
4
+ exports.isCallableNaslLogic = exports.isResolvedUserTy = exports.isUnResolvedTy = exports.createFunctionDef = exports.findErrMutRecFns = exports.topoSortLogicAndSetTypes = exports.parseTsFnToNaslQNameRefMaps = exports.naslNullTy = exports.naslNumTy = exports.simplifyUnionTyRecursively = exports.inPlaceSubstTyAnn = exports.createProcessVariable = exports.isAnyTy = exports.removeDupBy = exports.getListLast = exports.isStatement = exports.findIndexBy = exports.isRefTy = exports.isPrimitiveTy = exports.zipWith = exports.copyMap = exports.Bounds = exports.extractTyParamAnns = exports.tpMatch = exports.tpCallLogic = exports.tpCallInterface = exports.tpCallFunction = exports.tpCallConnector = exports.tpCallAuthInterface = exports.divideBy = exports.dispatchExpr = exports.dispatchDef = exports.tpSolvingPlayground = exports.tpSolvingStmts = void 0;
5
5
  const typer_1 = require("./typer");
6
6
  Object.defineProperty(exports, "SemEnv", { enumerable: true, get: function () { return typer_1.SemEnv; } });
7
7
  const sem_diag_1 = require("./sem-diag");
@@ -66,7 +66,6 @@ Object.defineProperty(exports, "printTySubst", { enumerable: true, get: function
66
66
  Object.defineProperty(exports, "printConstraints", { enumerable: true, get: function () { return helper_1.printConstraints; } });
67
67
  Object.defineProperty(exports, "eraseAllTypeAnnotation", { enumerable: true, get: function () { return helper_1.eraseAllTypeAnnotation; } });
68
68
  Object.defineProperty(exports, "divideBy", { enumerable: true, get: function () { return helper_1.divideBy; } });
69
- Object.defineProperty(exports, "getType", { enumerable: true, get: function () { return helper_1.getType; } });
70
69
  Object.defineProperty(exports, "copyMap", { enumerable: true, get: function () { return helper_1.copyMap; } });
71
70
  Object.defineProperty(exports, "zipWith", { enumerable: true, get: function () { return helper_1.zipWith; } });
72
71
  Object.defineProperty(exports, "findIndexBy", { enumerable: true, get: function () { return helper_1.findIndexBy; } });
@@ -102,6 +101,6 @@ const dispatch_all_1 = require("./dispatch-all");
102
101
  Object.defineProperty(exports, "topoSortLogicAndSetTypes", { enumerable: true, get: function () { return dispatch_all_1.topoSortLogicAndSetTypes; } });
103
102
  const topo_sort_1 = require("./topo-sort");
104
103
  Object.defineProperty(exports, "findErrMutRecFns", { enumerable: true, get: function () { return topo_sort_1.findErrMutRecFns; } });
105
- const nasl_predicate_1 = require("./nasl-predicate");
106
- Object.defineProperty(exports, "isCallableNaslLogic", { enumerable: true, get: function () { return nasl_predicate_1.isCallableNaslLogic; } });
104
+ const service_1 = require("@lcap/nasl-concepts/service");
105
+ Object.defineProperty(exports, "isCallableNaslLogic", { enumerable: true, get: function () { return service_1.isCallableNaslLogic; } });
107
106
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/typer/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/typer/index.ts"],"names":[],"mappings":"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"}
@@ -1,10 +1,8 @@
1
- import { AuthLogic, AuthLogicForCallInterface, ConnectorLogic, Logic, OverriddenLogic, SyntaxNode, Variable, Return, Param, BaseNode, BusinessLogic, Interface, AuthInterface } from '@lcap/nasl-concepts';
2
- import { type DefConcept } from '../reference-manager/symbol-type';
1
+ import { AuthLogic, AuthLogicForCallInterface, ConnectorLogic, Logic, OverriddenLogic, SyntaxNode, Variable, Return, Param, BaseNode, BusinessLogic, Interface, AuthInterface, MicroserviceInterface, GatewayInterface } from '@lcap/nasl-concepts';
3
2
  export type TypeInferConcept = Variable | Return | Param;
4
- export declare const isTypeInferConcept: (def: DefConcept) => def is TypeInferConcept;
3
+ export declare const isTypeInferConcept: (def: SyntaxNode) => def is TypeInferConcept;
5
4
  export type CallableNaslLogic = Logic | OverriddenLogic | AuthLogic | AuthLogicForCallInterface | ConnectorLogic | BusinessLogic;
6
- export declare const isCallableNaslLogic: (nd: BaseNode) => nd is CallableNaslLogic;
7
- export type CallableNaslInterface = Interface | AuthInterface;
5
+ export type CallableNaslInterface = Interface | AuthInterface | MicroserviceInterface | GatewayInterface;
8
6
  export declare const isCallableNaslInterface: (nd: BaseNode) => nd is CallableNaslInterface;
9
7
  export declare const isNaslCallExpr: (node: SyntaxNode) => boolean;
10
8
  //# sourceMappingURL=nasl-predicate.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"nasl-predicate.d.ts","sourceRoot":"","sources":["../../src/typer/nasl-predicate.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,SAAS,EACT,yBAAyB,EACzB,cAAc,EACd,KAAK,EACL,eAAe,EACf,UAAU,EACV,QAAQ,EACR,MAAM,EACN,KAAK,EACL,QAAQ,EACR,aAAa,EACb,SAAS,EACT,aAAa,EAChB,MAAM,qBAAqB,CAAC;AAE7B,OAAO,EAAE,KAAK,UAAU,EAAE,MAAM,kCAAkC,CAAC;AAEnE,MAAM,MAAM,gBAAgB,GAAG,QAAQ,GAAG,MAAM,GAAG,KAAK,CAAC;AACzD,eAAO,MAAM,kBAAkB,QAAS,UAAU,4BAA+G,CAAC;AAElK,MAAM,MAAM,iBAAiB,GAAG,KAAK,GAAG,eAAe,GAAG,SAAS,GAAG,yBAAyB,GAAG,cAAc,GAAG,aAAa,CAAC;AACjI,eAAO,MAAM,mBAAmB,OAAQ,QAAQ,4BAA4J,CAAC;AAE7M,MAAM,MAAM,qBAAqB,GAAG,SAAS,GAAG,aAAa,CAAC;AAC9D,eAAO,MAAM,uBAAuB,OAAQ,QAAQ,gCAAqF,CAAC;AAa1I,eAAO,MAAM,cAAc,SAAU,UAAU,YACkG,CAAC"}
1
+ {"version":3,"file":"nasl-predicate.d.ts","sourceRoot":"","sources":["../../src/typer/nasl-predicate.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,SAAS,EACT,yBAAyB,EACzB,cAAc,EACd,KAAK,EACL,eAAe,EACf,UAAU,EACV,QAAQ,EACR,MAAM,EACN,KAAK,EACL,QAAQ,EACR,aAAa,EACb,SAAS,EACT,aAAa,EACb,qBAAqB,EACrB,gBAAgB,EACnB,MAAM,qBAAqB,CAAC;AAE7B,MAAM,MAAM,gBAAgB,GAAG,QAAQ,GAAG,MAAM,GAAG,KAAK,CAAC;AACzD,eAAO,MAAM,kBAAkB,QAAS,UAAU,4BAId,CAAC;AAErC,MAAM,MAAM,iBAAiB,GACzB,KAAK,GAAG,eAAe,GAAG,SAAS,GAAG,yBAAyB,GAAG,cAAc,GAAG,aAAa,CAAC;AAErG,MAAM,MAAM,qBAAqB,GAC7B,SAAS,GAAG,aAAa,GAAG,qBAAqB,GAAG,gBAAgB,CAAC;AAEzE,eAAO,MAAM,uBAAuB,OAC3B,QAAQ,gCAAkI,CAAC;AAgBpJ,eAAO,MAAM,cAAc,SAAU,UAAU,YACkG,CAAC"}
@@ -1,18 +1,21 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.isNaslCallExpr = exports.isCallableNaslInterface = exports.isCallableNaslLogic = exports.isTypeInferConcept = void 0;
4
- const isTypeInferConcept = (def) => def.concept === 'Variable' || def.concept === 'Return' || def.concept === 'Param';
3
+ exports.isNaslCallExpr = exports.isCallableNaslInterface = exports.isTypeInferConcept = void 0;
4
+ const isTypeInferConcept = (def) => def.concept === 'Variable' ||
5
+ def.concept === 'Return' ||
6
+ def.concept === 'Param' ||
7
+ def.concept === 'ParamWithGroup';
5
8
  exports.isTypeInferConcept = isTypeInferConcept;
6
- const isCallableNaslLogic = (nd) => ['Logic', 'BusinessLogic', 'OverriddenLogic', 'AuthLogic', 'AuthLogicForCallInterface', 'ConnectorLogic'].includes(nd.concept);
7
- exports.isCallableNaslLogic = isCallableNaslLogic;
8
- const isCallableNaslInterface = (nd) => ['Interface', 'AuthInterface'].includes(nd.concept);
9
+ const isCallableNaslInterface = (nd) => ['Interface', 'AuthInterface', 'MicroServiceInterface', 'GatewayInterface'].includes(nd.concept);
9
10
  exports.isCallableNaslInterface = isCallableNaslInterface;
10
- // Logic | AuthLogic | OverriddenLogic | Interface | AuthInterface | AuthLogicForCallInterface | ConnectorLogic
11
11
  // fast cheap unsafe checks
12
12
  // 不判断空指针让它更快
13
13
  const isCallFunction = (node) => node.concept === 'CallFunction';
14
14
  const isCallLogic = (node) => node.concept === 'CallLogic' || node.concept === 'CallConnector';
15
- const isCallInterface = (node) => node.concept === 'CallInterface' || node.concept === 'CallMicroserviceInterface' || node.concept === 'CallAuthInterface';
15
+ const isCallInterface = (node) => node.concept === 'CallInterface' ||
16
+ node.concept === 'CallAuthInterface' ||
17
+ node.concept === 'CallMicroserviceInterface' ||
18
+ node.concept === 'CallGatewayInterface';
16
19
  const isCallAuthInterface = (node) => node.concept === 'CallAuthInterface';
17
20
  const isCallConnector = (node) => node.concept === 'CallConnector';
18
21
  const isCallEvent = (node) => node.concept === 'CallEvent';
@@ -1 +1 @@
1
- {"version":3,"file":"nasl-predicate.js","sourceRoot":"","sources":["../../src/typer/nasl-predicate.ts"],"names":[],"mappings":";;;AAmBO,MAAM,kBAAkB,GAAG,CAAC,GAAe,EAA2B,EAAE,CAAC,GAAG,CAAC,OAAO,KAAK,UAAU,IAAI,GAAG,CAAC,OAAO,KAAK,QAAQ,IAAI,GAAG,CAAC,OAAO,KAAK,OAAO,CAAC;AAArJ,QAAA,kBAAkB,sBAAmI;AAG3J,MAAM,mBAAmB,GAAG,CAAC,EAAY,EAA2B,EAAE,CAAC,CAAC,OAAO,EAAE,eAAe,EAAE,iBAAiB,EAAE,WAAW,EAAE,2BAA2B,EAAE,gBAAgB,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC;AAAhM,QAAA,mBAAmB,uBAA6K;AAGtM,MAAM,uBAAuB,GAAG,CAAC,EAAY,EAA+B,EAAE,CAAC,CAAC,WAAW,EAAE,eAAe,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC;AAA7H,QAAA,uBAAuB,2BAAsG;AAG1I,+GAA+G;AAC/G,2BAA2B;AAC3B,aAAa;AACb,MAAM,cAAc,GAAG,CAAC,IAAgB,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,KAAK,cAAc,CAAC;AAC7E,MAAM,WAAW,GAAG,CAAC,IAAgB,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,KAAK,WAAW,IAAI,IAAI,CAAC,OAAO,KAAK,eAAe,CAAC;AAC3G,MAAM,eAAe,GAAG,CAAC,IAAgB,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,KAAK,eAAe,IAAI,IAAI,CAAC,OAAO,KAAK,2BAA2B,IAAI,IAAI,CAAC,OAAO,KAAK,mBAAmB,CAAC;AACvK,MAAM,mBAAmB,GAAG,CAAC,IAAgB,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,KAAK,mBAAmB,CAAC;AACvF,MAAM,eAAe,GAAG,CAAC,IAAgB,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,KAAK,eAAe,CAAC;AAC/E,MAAM,WAAW,GAAG,CAAC,IAAgB,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,KAAK,WAAW,CAAC;AACvE,6BAA6B;AACtB,MAAM,cAAc,GAAG,CAAC,IAAgB,EAAE,EAAE,CAC/C,WAAW,CAAC,IAAI,CAAC,IAAI,cAAc,CAAC,IAAI,CAAC,IAAI,WAAW,CAAC,IAAI,CAAC,IAAI,eAAe,CAAC,IAAI,CAAC,IAAI,mBAAmB,CAAC,IAAI,CAAC,IAAI,eAAe,CAAC,IAAI,CAAC,CAAC;AADrI,QAAA,cAAc,kBACuH"}
1
+ {"version":3,"file":"nasl-predicate.js","sourceRoot":"","sources":["../../src/typer/nasl-predicate.ts"],"names":[],"mappings":";;;AAmBO,MAAM,kBAAkB,GAAG,CAAC,GAAe,EAA2B,EAAE,CAC3E,GAAG,CAAC,OAAO,KAAK,UAAU;IAC1B,GAAG,CAAC,OAAO,KAAK,QAAQ;IACxB,GAAG,CAAC,OAAO,KAAK,OAAO;IACvB,GAAG,CAAC,OAAO,KAAK,gBAAgB,CAAC;AAJxB,QAAA,kBAAkB,sBAIM;AAQ9B,MAAM,uBAAuB,GAChC,CAAC,EAAY,EAA+B,EAAE,CAAC,CAAC,WAAW,EAAE,eAAe,EAAE,uBAAuB,EAAE,kBAAkB,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC;AADvI,QAAA,uBAAuB,2BACgH;AAGpJ,2BAA2B;AAC3B,aAAa;AACb,MAAM,cAAc,GAAG,CAAC,IAAgB,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,KAAK,cAAc,CAAC;AAC7E,MAAM,WAAW,GAAG,CAAC,IAAgB,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,KAAK,WAAW,IAAI,IAAI,CAAC,OAAO,KAAK,eAAe,CAAC;AAC3G,MAAM,eAAe,GAAG,CAAC,IAAgB,EAAE,EAAE,CACzC,IAAI,CAAC,OAAO,KAAK,eAAe;IAChC,IAAI,CAAC,OAAO,KAAK,mBAAmB;IACpC,IAAI,CAAC,OAAO,KAAK,2BAA2B;IAC5C,IAAI,CAAC,OAAO,KAAK,sBAAsB,CAAC;AAC5C,MAAM,mBAAmB,GAAG,CAAC,IAAgB,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,KAAK,mBAAmB,CAAC;AACvF,MAAM,eAAe,GAAG,CAAC,IAAgB,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,KAAK,eAAe,CAAC;AAC/E,MAAM,WAAW,GAAG,CAAC,IAAgB,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,KAAK,WAAW,CAAC;AACvE,6BAA6B;AACtB,MAAM,cAAc,GAAG,CAAC,IAAgB,EAAE,EAAE,CAC/C,WAAW,CAAC,IAAI,CAAC,IAAI,cAAc,CAAC,IAAI,CAAC,IAAI,WAAW,CAAC,IAAI,CAAC,IAAI,eAAe,CAAC,IAAI,CAAC,IAAI,mBAAmB,CAAC,IAAI,CAAC,IAAI,eAAe,CAAC,IAAI,CAAC,CAAC;AADrI,QAAA,cAAc,kBACuH"}