@lcap/nasl-language-server-core 4.4.0-rc.2 → 4.4.1-rc.2

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 (114) hide show
  1. package/out/checker.d.ts.map +1 -1
  2. package/out/checker.js +241 -111
  3. package/out/checker.js.map +1 -1
  4. package/out/index.d.ts +1 -1
  5. package/out/index.d.ts.map +1 -1
  6. package/out/index.js +5 -3
  7. package/out/index.js.map +1 -1
  8. package/out/reference-manager/build-q-name-def.d.ts.map +1 -1
  9. package/out/reference-manager/build-q-name-def.js +11 -0
  10. package/out/reference-manager/build-q-name-def.js.map +1 -1
  11. package/out/reference-manager/builtin-q-name.js +2 -2
  12. package/out/reference-manager/builtin-q-name.js.map +1 -1
  13. package/out/reference-manager/collect-q-name.d.ts +1 -1
  14. package/out/reference-manager/collect-q-name.d.ts.map +1 -1
  15. package/out/reference-manager/collect-q-name.js +58 -24
  16. package/out/reference-manager/collect-q-name.js.map +1 -1
  17. package/out/reference-manager/def-key-helpers.d.ts +38 -0
  18. package/out/reference-manager/def-key-helpers.d.ts.map +1 -0
  19. package/out/reference-manager/{get-q-name.js → def-key-helpers.js} +183 -19
  20. package/out/reference-manager/def-key-helpers.js.map +1 -0
  21. package/out/reference-manager/helper.js +2 -2
  22. package/out/reference-manager/helper.js.map +1 -1
  23. package/out/reference-manager/reference-manager.d.ts +60 -43
  24. package/out/reference-manager/reference-manager.d.ts.map +1 -1
  25. package/out/reference-manager/reference-manager.js +381 -146
  26. package/out/reference-manager/reference-manager.js.map +1 -1
  27. package/out/reference-manager/remove-q-name.d.ts +1 -1
  28. package/out/reference-manager/remove-q-name.d.ts.map +1 -1
  29. package/out/reference-manager/remove-q-name.js +7 -10
  30. package/out/reference-manager/remove-q-name.js.map +1 -1
  31. package/out/reference-manager/rename-q-name.d.ts +26 -26
  32. package/out/reference-manager/rename-q-name.d.ts.map +1 -1
  33. package/out/reference-manager/rename-q-name.js +48 -167
  34. package/out/reference-manager/rename-q-name.js.map +1 -1
  35. package/out/reference-manager/symbol-type.d.ts +8 -3
  36. package/out/reference-manager/symbol-type.d.ts.map +1 -1
  37. package/out/reference-manager/symbol-type.js +8 -2
  38. package/out/reference-manager/symbol-type.js.map +1 -1
  39. package/out/reference-manager/update-nasl-fragment.js +4 -4
  40. package/out/reference-manager/update-nasl-fragment.js.map +1 -1
  41. package/out/typer/collectGlobalDefs.js +3 -3
  42. package/out/typer/collectGlobalDefs.js.map +1 -1
  43. package/out/typer/component-def-manager/component-def-manager.d.ts +16 -0
  44. package/out/typer/component-def-manager/component-def-manager.d.ts.map +1 -1
  45. package/out/typer/component-def-manager/component-def-manager.js +63 -2
  46. package/out/typer/component-def-manager/component-def-manager.js.map +1 -1
  47. package/out/typer/component-def-manager/utils.d.ts.map +1 -1
  48. package/out/typer/component-def-manager/utils.js +26 -0
  49. package/out/typer/component-def-manager/utils.js.map +1 -1
  50. package/out/typer/dispatch-all.d.ts +3 -1
  51. package/out/typer/dispatch-all.d.ts.map +1 -1
  52. package/out/typer/dispatch-all.js +48 -5
  53. package/out/typer/dispatch-all.js.map +1 -1
  54. package/out/typer/dispatch-call.d.ts +27 -1
  55. package/out/typer/dispatch-call.d.ts.map +1 -1
  56. package/out/typer/dispatch-call.js +141 -107
  57. package/out/typer/dispatch-call.js.map +1 -1
  58. package/out/typer/dispatch-def.d.ts.map +1 -1
  59. package/out/typer/dispatch-def.js +3 -3
  60. package/out/typer/dispatch-def.js.map +1 -1
  61. package/out/typer/dispatch-expr.d.ts.map +1 -1
  62. package/out/typer/dispatch-expr.js +32 -73
  63. package/out/typer/dispatch-expr.js.map +1 -1
  64. package/out/typer/dispatch-process.js +3 -3
  65. package/out/typer/dispatch-process.js.map +1 -1
  66. package/out/typer/dispatch-stmt.d.ts.map +1 -1
  67. package/out/typer/dispatch-stmt.js +9 -11
  68. package/out/typer/dispatch-stmt.js.map +1 -1
  69. package/out/typer/dispatch-view.d.ts +1 -1
  70. package/out/typer/dispatch-view.d.ts.map +1 -1
  71. package/out/typer/dispatch-view.js +33 -26
  72. package/out/typer/dispatch-view.js.map +1 -1
  73. package/out/typer/get-oql-files.js +1 -1
  74. package/out/typer/get-oql-files.js.map +1 -1
  75. package/out/typer/incremental-update.d.ts +2 -2
  76. package/out/typer/incremental-update.d.ts.map +1 -1
  77. package/out/typer/incremental-update.js +142 -30
  78. package/out/typer/incremental-update.js.map +1 -1
  79. package/out/typer/overload-helper.js +2 -2
  80. package/out/typer/overload-helper.js.map +1 -1
  81. package/out/typer/solver.d.ts +8 -9
  82. package/out/typer/solver.d.ts.map +1 -1
  83. package/out/typer/solver.js +43 -32
  84. package/out/typer/solver.js.map +1 -1
  85. package/out/typer/subster.d.ts.map +1 -1
  86. package/out/typer/subster.js +101 -20
  87. package/out/typer/subster.js.map +1 -1
  88. package/out/typer/topo-sort.d.ts +37 -0
  89. package/out/typer/topo-sort.d.ts.map +1 -1
  90. package/out/typer/topo-sort.js +264 -5
  91. package/out/typer/topo-sort.js.map +1 -1
  92. package/out/typer/type-manager.d.ts +1 -0
  93. package/out/typer/type-manager.d.ts.map +1 -1
  94. package/out/typer/type-manager.js +14 -11
  95. package/out/typer/type-manager.js.map +1 -1
  96. package/out/typer/type-predicate.d.ts.map +1 -1
  97. package/out/typer/type-predicate.js +38 -16
  98. package/out/typer/type-predicate.js.map +1 -1
  99. package/out/typer/typer.d.ts +19 -3
  100. package/out/typer/typer.d.ts.map +1 -1
  101. package/out/typer/typer.js +60 -27
  102. package/out/typer/typer.js.map +1 -1
  103. package/out/typer/unifier.d.ts +2 -0
  104. package/out/typer/unifier.d.ts.map +1 -1
  105. package/out/typer/unifier.js +52 -27
  106. package/out/typer/unifier.js.map +1 -1
  107. package/package.json +5 -5
  108. package/out/reference-manager/get-q-name.d.ts +0 -9
  109. package/out/reference-manager/get-q-name.d.ts.map +0 -1
  110. package/out/reference-manager/get-q-name.js.map +0 -1
  111. package/out/reference-manager/view-elem-logic.d.ts +0 -44
  112. package/out/reference-manager/view-elem-logic.d.ts.map +0 -1
  113. package/out/reference-manager/view-elem-logic.js +0 -181
  114. package/out/reference-manager/view-elem-logic.js.map +0 -1
@@ -10,7 +10,8 @@ const type_predicate_1 = require("./type-predicate");
10
10
  const dispatch_all_1 = require("./dispatch-all");
11
11
  const checker_1 = require("../checker");
12
12
  const service_2 = require("@lcap/nasl-concepts/service");
13
- const get_q_name_1 = require("../reference-manager/get-q-name");
13
+ const symbol_type_1 = require("../reference-manager/symbol-type");
14
+ const def_key_helpers_1 = require("../reference-manager/def-key-helpers");
14
15
  const reference_manager_1 = require("../reference-manager/reference-manager");
15
16
  const collect_q_name_1 = require("../reference-manager/collect-q-name");
16
17
  const remove_q_name_1 = require("../reference-manager/remove-q-name");
@@ -18,6 +19,7 @@ const rename_q_name_1 = require("../reference-manager/rename-q-name");
18
19
  const dispatch_def_1 = require("./dispatch-def");
19
20
  const type_manager_1 = require("./type-manager");
20
21
  const helper_1 = require("./helper");
22
+ const topo_sort_1 = require("./topo-sort");
21
23
  const helper_2 = require("../reference-manager/helper");
22
24
  const misc_1 = require("../utils/misc");
23
25
  const get_oql_files_1 = require("./get-oql-files");
@@ -145,7 +147,7 @@ const preProcessDefRename = (env, nd, typerCheckFiles, oldName, mode, oqlRemoveN
145
147
  env.refMgr.invalidateLocalSymCache();
146
148
  return true;
147
149
  }
148
- const qName = (0, get_q_name_1.getTokenQualifiedName)(nd);
150
+ const qName = (0, def_key_helpers_1.getGlobalDefKey)(nd);
149
151
  // 2. 获取引用旧的 qNames1 的待检查项
150
152
  const oldQName = easyGetOldQName(qName, oldName);
151
153
  try {
@@ -165,7 +167,7 @@ const preProcessDefRename = (env, nd, typerCheckFiles, oldName, mode, oqlRemoveN
165
167
  }
166
168
  // 3. 获取要增加的新的 qNames2
167
169
  const nsp = (0, helper_2.getNamespaceWithoutLast)(nd);
168
- const qNamesToRename = (0, rename_q_name_1.getQNamesOfRenameAction)(oldName, nsp, nd);
170
+ const qNamesToRename = (0, rename_q_name_1.getDefKeysForRename)(oldName, nsp, nd);
169
171
  // 4. 删除旧的 qNames1 并清空旧引用
170
172
  // 注意:新的 qNames2 会在 batchPreProcessAllCreateNodes 阶段统一设置(通过 typerCreateNodes.add 调用)
171
173
  // 这确保了统一性:所有新的 qName 都通过相同的代码路径设置
@@ -227,7 +229,7 @@ const clearRefsFromNode = (env, sourceNode, targetNode, errorContext) => {
227
229
  if (sourceNode.traverseStrictChildren) {
228
230
  sourceNode.traverseStrictChildren((nd) => {
229
231
  if (reference_manager_1.ReferenceManager.refConcept.includes(nd.concept)) {
230
- const qName = (0, get_q_name_1.getTokenQualifiedName)(nd);
232
+ const qName = (0, def_key_helpers_1.getGlobalDefKey)(nd);
231
233
  if (qName) {
232
234
  refQNames.add(qName);
233
235
  }
@@ -291,7 +293,7 @@ const batchPreProcessAllRemoveNodes = (env, removeNodes, chkFiles, removedFiles)
291
293
  clearRefsFromNode(env, rawNode, rawNode, 'removed node');
292
294
  const nsp = (0, helper_2.getNamespaceWithoutLast)(rmNd) ?? '';
293
295
  // Including entity logics if nd.concept === 'Entity'
294
- const qNames = (0, remove_q_name_1.getQNamesOfRemoveAction)(nsp, rmNd);
296
+ const qNames = (0, remove_q_name_1.getDefKeysForRemove)(nsp, rmNd);
295
297
  for (const [qName, def] of qNames) {
296
298
  allQNameDefs.add([qName, def]);
297
299
  }
@@ -347,10 +349,18 @@ const batchPreProcessAllCreateNodes = (env, createNodes, chkFiles) => {
347
349
  // TODO:之后再整理代码
348
350
  for (const nd of createNodes) {
349
351
  if (reference_manager_1.ReferenceManager.localDefConcept.includes(nd.concept)) {
352
+ // 新增的 Logic/View 参数:注册到 gQNameDefs 并对调用处重新收集参数引用,否则「查找引用」查不到
353
+ const raw = (0, misc_1.toRaw)(nd);
354
+ if ((raw.concept === 'Param' || raw.concept === 'ParamWithGroup') && raw.parentNode) {
355
+ const parent = (0, misc_1.toRaw)(raw.parentNode);
356
+ if ((0, symbol_type_1.isLogicViewLike)(parent)) {
357
+ env.refMgr.registerNewParamAndRecollectRefs(env, raw);
358
+ }
359
+ }
350
360
  continue;
351
361
  }
352
362
  const nsp = (0, helper_2.getNamespaceWithoutLast)(nd);
353
- const createdQNames = (0, collect_q_name_1.getQNamesOfCreateAction)(nsp, nd);
363
+ const createdQNames = (0, collect_q_name_1.getDefKeysForCreate)(nsp, nd);
354
364
  // Try to 'relink' to old defs,仅 relink refs,和建立 QNames,新的 refs 需要检查后再收集
355
365
  for (const [qName, def] of createdQNames) {
356
366
  env.refMgr.handleDefOp("create" /* Operation.Create */, def, qName);
@@ -363,10 +373,16 @@ const batchPreProcessAllCreateNodes = (env, createNodes, chkFiles) => {
363
373
  pushRefFilesToChkFiles(env, chkFiles, createdQNames.map(([qName]) => qName));
364
374
  }
365
375
  };
366
- const batchPreProcessAllUpdatedNodes = (env, updatedNodes) => {
367
- // 基于 oldObject 清理旧的引用关系
376
+ const batchPreProcessAllUpdatedNodes = (env, updatedNodes, chkFiles) => {
377
+ const updatedQNames = [];
378
+ // 基于 oldObject 清理旧的引用关系;所有改动都需将所在文件加入 chkFiles,使关联节点重新计算类型
368
379
  for (const [updatedNode, { oldObject }] of updatedNodes.entries()) {
369
380
  const rawNode = (0, misc_1.toRaw)(updatedNode);
381
+ // 任一更新节点所在文件都加入 chkFiles,保证该文件被重新类型检查
382
+ const fileNode = (0, service_1.getFileNode)(rawNode);
383
+ if (fileNode) {
384
+ chkFiles.add(fileNode);
385
+ }
370
386
  try {
371
387
  const restoredJSON = {
372
388
  ...oldObject,
@@ -375,11 +391,26 @@ const batchPreProcessAllUpdatedNodes = (env, updatedNodes) => {
375
391
  // 基于 oldObject 创建临时节点(只包含 oldObject 中的字段)
376
392
  const tempNode = nasl_concepts_1.BaseNode.from(restoredJSON);
377
393
  clearRefsFromNode(env, tempNode, rawNode, 'oldObject');
394
+ // 逻辑/页面参数变更时同步 gQNameDefs,新加参数才能被「查找引用」查到
395
+ if ((0, symbol_type_1.isLogicViewLike)(rawNode)) {
396
+ env.refMgr.syncParamsOfLogicOrView(env, rawNode, tempNode);
397
+ }
378
398
  }
379
399
  catch (err) {
380
400
  // 如果处理失败,记录错误但继续处理
381
401
  nasl_utils_1.isDebugMode && console.warn('Failed to clear old refs from oldObject:', rawNode.nodePath, err);
382
402
  }
403
+ // 收集更新节点对应的 qNames,用于将引用这些定义的文件加入 chkFiles,使关联节点重新计算类型
404
+ if (!reference_manager_1.ReferenceManager.localDefConcept.includes(rawNode.concept)) {
405
+ const nsp = (0, helper_2.getNamespaceWithoutLast)(rawNode) ?? '';
406
+ const qNames = (0, collect_q_name_1.getDefKeysForCreate)(nsp, rawNode);
407
+ for (const [qName] of qNames) {
408
+ updatedQNames.push(qName);
409
+ }
410
+ }
411
+ }
412
+ if (updatedQNames.length > 0) {
413
+ pushRefFilesToChkFiles(env, chkFiles, updatedQNames);
383
414
  }
384
415
  };
385
416
  /**
@@ -400,9 +431,9 @@ async function checkUpdateRefsDiag(params) {
400
431
  nasl_utils_1.isDebugMode && console.time('\x1b[44m\x1b[97m 1: 按原有类型删除符号引用和类型 \x1b[0m');
401
432
  batchPreProcessAllRemoveNodes(env, removeNodes, chkFiles, removedFiles);
402
433
  batchPreProcessAllCreateNodes(env, createNodes, chkFiles);
403
- batchPreProcessAllUpdatedNodes(env, updatedNodes);
434
+ batchPreProcessAllUpdatedNodes(env, updatedNodes, chkFiles);
404
435
  for (const file of removedFiles) {
405
- clearSemInfoDiags(env, diagnosticManager, file);
436
+ clearSemInfoDiags(env, diagnosticManager, file, false); // 删除的整棵子树都清(含 localSymBindings)
406
437
  }
407
438
  nasl_utils_1.isDebugMode && console.timeEnd('\x1b[44m\x1b[97m 1: 按原有类型删除符号引用和类型 \x1b[0m');
408
439
  // 合并两段过滤:先排除已删除文件和不合法路径(包含 '[-1]'),
@@ -435,8 +466,58 @@ async function checkUpdateRefsDiag(params) {
435
466
  return processRelatedConcepts.includes(v?.concept);
436
467
  });
437
468
  // 拆分 BusinessComponent 和 View,先处理 BusinessComponent
438
- const [bsNodes, otherNodes3] = (0, helper_1.divideBy)(otherNodes2, (v) => v?.concept === 'BusinessComponent');
439
- const [viewNodes, defNodes] = (0, helper_1.divideBy)(otherNodes3, (v) => v?.concept === 'View');
469
+ const [bsNodesRaw, otherNodes3] = (0, helper_1.divideBy)(otherNodes2, (v) => v?.concept === 'BusinessComponent');
470
+ const [viewNodes, otherNodes4] = (0, helper_1.divideBy)(otherNodes3, (v) => v?.concept === 'View');
471
+ const [frontendNodes, defNodes] = (0, helper_1.divideBy)(otherNodes4, (v) => ['FrontendType', 'Frontend'].includes(v?.concept));
472
+ // 对 BusinessComponent 做局部拓扑排序:
473
+ // 若同一个 FrontendType 下的业务组件 A 模板中引用了业务组件 B(通过 bs-XXX 实例),
474
+ // 则 B 需要先于 A 处理。
475
+ //
476
+ // 环的处理:
477
+ // topoSortBusinessComponentsByAst 会对环内节点做"展开"处理,
478
+ // 例如 A↔B 时返回 [A, B, A],使 A 在 B 定型后获得第二次类型检查。
479
+ //
480
+ // 因此这里构造两个列表:
481
+ // - bsNodesForTyping:保留环展开的重复节点,用于 dispatchAsyncDef 类型检查阶段。
482
+ // 环内首节点会被多次 dispatchAsyncDef,第二次时其依赖已就绪,可正确解析。
483
+ // - bsNodesUnique:去重版本,用于 removeRefs / addRefs / 签名比较等,
484
+ // 这些操作具有幂等性或不应重复执行,每个组件只需跑一遍。
485
+ const bsNodesForTyping = (() => {
486
+ if (!bsNodesRaw.length)
487
+ return bsNodesRaw;
488
+ // 分组:按 FrontendType 归类业务组件,仅在同一 FrontendType 内部建图并排序
489
+ const groupByFrontend = new Map();
490
+ for (const nd of bsNodesRaw) {
491
+ const bc = nd;
492
+ const fe = bc.frontendType;
493
+ if (!groupByFrontend.has(fe)) {
494
+ groupByFrontend.set(fe, []);
495
+ }
496
+ groupByFrontend.get(fe).push(bc);
497
+ }
498
+ const result = [];
499
+ for (const [, list] of groupByFrontend) {
500
+ const ordered = (0, topo_sort_1.topoSortBusinessComponentsByAst)(list);
501
+ // 不去重,保留环展开产生的重复节点(例如 [A, B, A])
502
+ ordered.forEach(bc => {
503
+ result.push(bc);
504
+ });
505
+ }
506
+ return result;
507
+ })();
508
+ // 去重版本:用于 removeRefs / addRefs / 参数签名比较等,只需要每个 BusinessComponent 跑一遍完整管线
509
+ const bsNodesUnique = (() => {
510
+ const seen = new Set();
511
+ const res = [];
512
+ for (const nd of bsNodesForTyping) {
513
+ const bc = nd;
514
+ if (seen.has(bc))
515
+ continue;
516
+ seen.add(bc);
517
+ res.push(nd);
518
+ }
519
+ return res;
520
+ })();
440
521
  /**
441
522
  * @warning 这个需要先做,因为下面的 topoSortLogicAndSetTypes 会根据逻辑的最新 NASL 更新逻辑的类型
442
523
  * 找到页面变量,集合,判断类型有无变化
@@ -444,26 +525,45 @@ async function checkUpdateRefsDiag(params) {
444
525
  */
445
526
  const [oldLogicRetTys, oldLogicParamTys] = getLogicSigs(env, logicNodes);
446
527
  // 收集页面和业务组件的参数类型(它们没有返回值)
447
- const oldViewParamTys = getViewComponentSigs(env, [...viewNodes, ...bsNodes]);
528
+ const oldViewParamTys = getViewComponentSigs(env, [...viewNodes, ...bsNodesUnique]);
448
529
  (0, dispatch_def_1.setParamOptionalFlags)([...itfcNodes, ...logicNodes]);
449
530
  const logicTasks = (0, dispatch_all_1.topoSortLogicAndSetTypes)(env, logicNodes);
450
531
  // 处理类型检查 - 改为顺序处理,确保正确的等待异步操作
451
532
  nasl_utils_1.isDebugMode && console.time('\x1b[44m\x1b[97m 2: 类型检查 \x1b[0m');
452
533
  // 先处理 BusinessComponent,再处理 View
453
- const sortedFiles = [...defNodes, ...itfcNodes, ...logicTasks, ...processNodes, ...bsNodes, ...viewNodes];
454
- for (const file of sortedFiles) {
534
+ const filesForRefs = [...defNodes, ...itfcNodes, ...logicTasks, ...processNodes, ...bsNodesUnique, ...viewNodes, ...frontendNodes];
535
+ const filesForTyping = [...defNodes, ...itfcNodes, ...logicTasks, ...processNodes, ...bsNodesForTyping, ...viewNodes, ...frontendNodes];
536
+ // 1) 先按「唯一集合」移除引用 & 旧诊断
537
+ for (const file of filesForRefs) {
455
538
  env.refMgr.removeRefsForGlobalSym(env, file);
456
539
  clearSemInfoDiags(env, diagnosticManager, file);
457
- await (0, dispatch_all_1.dispatchAsyncDef)(env, file, true);
540
+ }
541
+ // 2) 再按「拓扑 + 环展开」的顺序跑类型检查(每个 BusinessComponent 可能多次出现,如 A,B,A)
542
+ // 重复出现的节点(环展开重启节点)非最后一次时抑制报错,避免依赖未就绪时产生不准确的诊断
543
+ const errorGuard = env.createDuplicateErrorGuard(filesForTyping);
544
+ for (const file of filesForTyping) {
545
+ errorGuard.before(file);
546
+ try {
547
+ await (0, dispatch_all_1.dispatchAsyncDef)(env, file, true);
548
+ }
549
+ finally {
550
+ errorGuard.after(file);
551
+ }
458
552
  }
459
553
  nasl_utils_1.isDebugMode && console.timeEnd('\x1b[44m\x1b[97m 2: 类型检查 \x1b[0m');
460
554
  // 按新类型添加符号
461
555
  nasl_utils_1.isDebugMode && console.time('\x1b[44m\x1b[97m 3: 按新类型添加符号 \x1b[0m');
462
- for (const file of sortedFiles) {
556
+ for (const file of filesForRefs) {
463
557
  if (reference_manager_1.ReferenceManager.defConcept.includes(file.concept)) {
464
558
  env.refMgr.addRefsForGlobalSym(env, file);
465
559
  }
466
560
  }
561
+ // View/Logic 的 callers(Destination/CallLogic)已就绪,再对每个 View/Logic 重收参数引用,页面参数才能对应到页面跳转
562
+ for (const file of filesForRefs) {
563
+ if ((0, symbol_type_1.isLogicViewLike)(file)) {
564
+ env.refMgr.recollectParamRefsForDef(env, file);
565
+ }
566
+ }
467
567
  nasl_utils_1.isDebugMode && console.timeEnd('\x1b[44m\x1b[97m 3: 按新类型添加符号 \x1b[0m');
468
568
  nasl_utils_1.isDebugMode && console.time('\x1b[44m\x1b[97m 4: 错误诊断 \x1b[0m');
469
569
  // 对OQL节点加载来自TS的错误
@@ -489,7 +589,7 @@ async function checkUpdateRefsDiag(params) {
489
589
  // 对每个匹配的祖先节点执行重新验证
490
590
  for (const ancestorNode of matchingAncestors) {
491
591
  // 如果祖先节点已经在已排序的文件列表中,则跳过(会在后续统一处理)
492
- if (sortedFiles.includes(ancestorNode)) {
592
+ if (filesForRefs.includes(ancestorNode)) {
493
593
  continue;
494
594
  }
495
595
  // 调用 checker 的重新验证方法
@@ -547,8 +647,8 @@ async function checkUpdateRefsDiag(params) {
547
647
  }
548
648
  }
549
649
  }
550
- // 处理错误诊断
551
- for (const file of sortedFiles) {
650
+ // 处理错误诊断:仅对每个文件节点执行一次
651
+ for (const file of filesForRefs) {
552
652
  await (0, nasl_utils_1.timeSlicingWithGenerator)(env.errorDiagnoser.checkNode(file));
553
653
  const nodeDiagnosticsMap = env.errorDiagnoser.getDiagnostics(file);
554
654
  nodeDiagnosticsMap && diagRecs.push(...(0, checker_1.transformDiagnosticsToRecords)(file, nodeDiagnosticsMap));
@@ -582,7 +682,7 @@ async function checkUpdateRefsDiag(params) {
582
682
  oldLogicRetTys,
583
683
  oldLogicParamTys,
584
684
  viewNodes: [...viewNodes],
585
- bsNodes: [...bsNodes],
685
+ bsNodes: [...bsNodesUnique],
586
686
  oldViewParamTys,
587
687
  });
588
688
  if (nextChkFiles.size) {
@@ -708,17 +808,22 @@ const removeNodeDiagnostics = (errorDiagnoser, diagnosticManager, file) => {
708
808
  diagnosticManager && diagnosticManager.deleteOwn(file.id);
709
809
  };
710
810
  /**
711
- * @warning 增量处理都默认不处理子页面
811
+ * 清除节点的语义信息和诊断,为重新类型检查做准备
812
+ * @param skipSubView true 时遇到子 View 剪枝,并顺带清除 start 的 localSymBindings(不深入子文件,子 View 等保留供 checker 使用);false 时整棵子树都清(含 localSymBindings)
712
813
  */
713
814
  const clearSemInfoDiags = (env, diagnosticManager, start, skipSubView = true) => {
714
815
  const fileNodes = new Array;
715
- // 遍历包含自身
816
+ // 遍历包含自身;skipSubView 时遇到子 View 剪枝且不收集、不删该节点,避免误清子 View 的 typeBindings/allocatedVirtualNodes 等
716
817
  start.traverseStrictChildrenWithPruning((nd) => {
717
- (0, file_node_cache_1.checkNodeIsFileModuleInIdeWithCache)(nd) && fileNodes.push(nd);
718
- env.typeBindings.delete(nd);
719
- (0, service_2.isNaslCallExpr)(nd) && env.resolvedCallInfo.delete(nd);
720
- return skipSubView && nd !== start && nd.concept === 'View'; // 不能排除自身
818
+ const prune = skipSubView && nd !== start && nd.concept === 'View';
819
+ if (!prune) {
820
+ (0, file_node_cache_1.checkNodeIsFileModuleInIdeWithCache)(nd) && fileNodes.push(nd);
821
+ env.typeBindings.delete(nd);
822
+ (0, service_2.isNaslCallExpr)(nd) && env.resolvedCallInfo.delete(nd);
823
+ }
824
+ return prune;
721
825
  });
826
+ // fileNodes 在 skipSubView 时已排除子 View,故以下均不会碰到子 View
722
827
  for (const fileNode of fileNodes) {
723
828
  removeNodeDiagnostics(env.errorDiagnoser, diagnosticManager, fileNode);
724
829
  env.allocatedVirtualNodes.get(fileNode)?.forEach(virtualNd => {
@@ -727,13 +832,20 @@ const clearSemInfoDiags = (env, diagnosticManager, start, skipSubView = true) =>
727
832
  });
728
833
  env.allocatedVirtualNodes.delete(fileNode);
729
834
  if (fileNode.concept === 'MetadataType') {
730
- env.typeAlias.delete((0, get_q_name_1.getTokenQualifiedName)(fileNode));
835
+ env.typeAlias.delete((0, def_key_helpers_1.getGlobalDefKey)(fileNode));
731
836
  }
732
837
  else if (fileNode.concept === 'BusinessComponent') {
733
838
  env.refMgr.compDefMgr.removeBusinessComponentDef(fileNode);
734
839
  }
735
- // Clear recorded local scope bindings for this file; localVars removed
736
- env.refMgr.clearLocalSymBindingsForFile(fileNode);
840
+ }
841
+ if (skipSubView) {
842
+ env.refMgr.clearLocalSymBindingsForFile(start, {
843
+ skipDescendantFileNodes: true,
844
+ isFileNode: file_node_cache_1.checkNodeIsFileModuleInIdeWithCache,
845
+ });
846
+ }
847
+ else {
848
+ env.refMgr.clearLocalSymBindingsForFile(start);
737
849
  }
738
850
  };
739
851
  /**
@@ -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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"}
@@ -7,7 +7,7 @@ const subster_1 = require("./subster");
7
7
  const type_manager_1 = require("./type-manager");
8
8
  const type_predicate_1 = require("./type-predicate");
9
9
  const type_manager_2 = require("./type-manager");
10
- const get_q_name_1 = require("../reference-manager/get-q-name");
10
+ const def_key_helpers_1 = require("../reference-manager/def-key-helpers");
11
11
  // ---- General overload registry and resolution ----
12
12
  // Penalty constants for overload resolution
13
13
  const UNION_PENALTY = 0.1; // Penalty for matching union types (both param and arg unions)
@@ -256,7 +256,7 @@ const matchArgToParamInternal = (env, sig, arg, param, visitedEnums = new Set())
256
256
  const enumDef = env.resolveRef(arg);
257
257
  if (enumDef?.concept === 'Enum') {
258
258
  // 获取当前 enum 的限定名,用于循环检测
259
- const enumQName = (0, get_q_name_1.getTokenQualifiedName)(arg);
259
+ const enumQName = (0, def_key_helpers_1.getGlobalDefKey)(arg);
260
260
  // 如果当前 enum 已经在访问路径中,说明存在循环,跳过以避免无限递归
261
261
  if (enumQName && visitedEnums.has(enumQName)) {
262
262
  return { ok: false, exact: false, penalty: 0 };
@@ -1 +1 @@
1
- {"version":3,"file":"overload-helper.js","sourceRoot":"","sources":["../../src/typer/overload-helper.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"overload-helper.js","sourceRoot":"","sources":["../../src/typer/overload-helper.ts"],"names":[],"mappings":"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"}
@@ -25,15 +25,14 @@ export declare class Solver {
25
25
  */
26
26
  private getConcreteTys;
27
27
  /**
28
- * 处理特定边界(下界或上界)的类型:@warning decimal 和 long 的处理被 AI 破坏,现在是只处理单个 lb 或 ub,之后修复 Zirun
29
- * 1. 下界含有 union:选择 union 类型(但纯数值 Union 类型需要特殊处理,数值类型优先级:Decimal > Long/Number)
30
- * 2. 下界含有 Decimal:选择 Decimal
31
- * 3. 下界只有 Number,上界含有 Decimal:选择 Decimal
32
- * 4. 下界只有 Number,上界没有 Decimal:选择 Long (2、3 合并:下界 Number 上界任意数值类型)
33
- * 5. 下界含有 Long 且上界有 Decimal:选择 Long
34
- * 6. 下界含有 Long 且上界没有 Decimal:选择 Long (1、2、4、5合并后:下界没有 Decimal,有 Long,而是上界任意数值类型)
35
- * 7. 下界和上界都只有 Number:选择 Long
36
- * 8. 下界和上界都只有 Number:选择 Long
28
+ * 处理特定边界(下界或上界)的类型
29
+ *
30
+ * 策略(按优先级):
31
+ * 1. preferUnion 且存在非纯数值 union:优先返回 union 类型
32
+ * 2. preferUnion 且仅存在纯数值 union:返回该 union
33
+ * 3. 全为数值(Decimal/Long/Number):Decimal > Long > Number(精度优先)
34
+ * 4. 混合(含非数值):按 boundEntries 顺序取第一个有效 bound,Null 视为无约束跳过
35
+ * 5. Null:返回 Null
37
36
  */
38
37
  private processSingleBounds;
39
38
  private topoSortTyVars;
@@ -1 +1 @@
1
- {"version":3,"file":"solver.d.ts","sourceRoot":"","sources":["../../src/typer/solver.ts"],"names":[],"mappings":"AAAA,OAAO,EAEH,UAAU,EACV,cAAc,EACjB,MAAM,qBAAqB,CAAC;AAE7B,OAAO,EAAa,KAAK,MAAM,EAAE,MAAM,SAAS,CAAC;AAMjD,OAAO,EACH,aAAa,EAKZ,WAAW,EACZ,MAAM,EACN,kBAAkB,EACrB,MAAM,gBAAgB,CAAC;AAmBxB,qBAAa,MAAM;IACf,EAAE,EAAE,WAAW,CAAC;IAChB,KAAK,EAAE,aAAa,CAAC;IACrB,GAAG,EAAE,MAAM,CAAC;gBAEA,GAAG,EAAE,MAAM;IAOvB,sBAAsB,uCA6FpB;IAIF;;;;;OAKG;IACH,kBAAkB,UAAW,MAAM,YAAa,cAAc,mCAsB7D;IAGD,8BAA8B,kEAS5B;IAEF,uBAAuB,kDAUrB;IAGF,2BAA2B,4BASzB;IAEF;;;;;OAKG;IACH,OAAO,CAAC,cAAc,CAmBrB;IAED;;;;;;;;;;OAUG;IACH,OAAO,CAAC,mBAAmB,CAkF1B;IAGD,OAAO,CAAC,cAAc,CA0ErB;IAGD,UAAU,iCAIT;IAED;;;;;;;;;OASG;IAEH,iBAAiB,+DAAgE,IAAI,cAAc,EAAE,cAAc,CAAC,KAAG,MAAM;QACzH,MAAM,EAAE,cAAc,CAAC;QACvB,MAAM,EAAE,cAAc,CAAC;QACvB,WAAW,EAAE,UAAU,CAAC;QACxB,OAAO,EAAE,MAAM,CAAC;QAChB,cAAc,EAAE,OAAO,CAAC;KAC3B,CAAC,CAwED;IAGD,wCAAwC,sCAAuC,CAAC,EAAE,EAAE,cAAc,GAAG,SAAS,KAAK,cAAc,UAS/H;IASF,KAAK,aAGJ;CACJ;AAuDD,wBAAgB,WAAW,CAAC,CAAC,EAAE,MAAM,QAGpC"}
1
+ {"version":3,"file":"solver.d.ts","sourceRoot":"","sources":["../../src/typer/solver.ts"],"names":[],"mappings":"AAAA,OAAO,EAEH,UAAU,EACV,cAAc,EACjB,MAAM,qBAAqB,CAAC;AAE7B,OAAO,EAAa,KAAK,MAAM,EAAE,MAAM,SAAS,CAAC;AAMjD,OAAO,EACH,aAAa,EAMZ,WAAW,EACZ,MAAM,EACN,kBAAkB,EACrB,MAAM,gBAAgB,CAAC;AAoBxB,qBAAa,MAAM;IACf,EAAE,EAAE,WAAW,CAAC;IAChB,KAAK,EAAE,aAAa,CAAC;IACrB,GAAG,EAAE,MAAM,CAAC;gBAEA,GAAG,EAAE,MAAM;IAOvB,sBAAsB,uCA6FpB;IAIF;;;;;OAKG;IACH,kBAAkB,UAAW,MAAM,YAAa,cAAc,mCAsB7D;IAGD,8BAA8B,kEAS5B;IAEF,uBAAuB,kDAUrB;IAGF,2BAA2B,4BASzB;IAEF;;;;;OAKG;IACH,OAAO,CAAC,cAAc,CAmBrB;IAED;;;;;;;;;OASG;IACH,OAAO,CAAC,mBAAmB,CAoF1B;IAGD,OAAO,CAAC,cAAc,CA0ErB;IAGD,UAAU,iCAIT;IAED;;;;;;;;;OASG;IAEH,iBAAiB,+DAAgE,IAAI,cAAc,EAAE,cAAc,CAAC,KAAG,MAAM;QACzH,MAAM,EAAE,cAAc,CAAC;QACvB,MAAM,EAAE,cAAc,CAAC;QACvB,WAAW,EAAE,UAAU,CAAC;QACxB,OAAO,EAAE,MAAM,CAAC;QAChB,cAAc,EAAE,OAAO,CAAC;KAC3B,CAAC,CAwED;IAGD,wCAAwC,sCAAuC,CAAC,EAAE,EAAE,cAAc,GAAG,SAAS,KAAK,cAAc,UAS/H;IASF,KAAK,aAGJ;CACJ;AAuDD,wBAAgB,WAAW,CAAC,CAAC,EAAE,MAAM,QAGpC"}