@lcap/nasl-language-server-core 4.4.0-beta.9 → 4.4.0-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 (95) hide show
  1. package/out/checker.d.ts +2 -1
  2. package/out/checker.d.ts.map +1 -1
  3. package/out/checker.js +613 -92
  4. package/out/checker.js.map +1 -1
  5. package/out/reference-manager/collect-q-name.d.ts.map +1 -1
  6. package/out/reference-manager/collect-q-name.js +6 -3
  7. package/out/reference-manager/collect-q-name.js.map +1 -1
  8. package/out/reference-manager/get-q-name.d.ts.map +1 -1
  9. package/out/reference-manager/get-q-name.js +12 -4
  10. package/out/reference-manager/get-q-name.js.map +1 -1
  11. package/out/reference-manager/reference-manager.d.ts +94 -12
  12. package/out/reference-manager/reference-manager.d.ts.map +1 -1
  13. package/out/reference-manager/reference-manager.js +270 -77
  14. package/out/reference-manager/reference-manager.js.map +1 -1
  15. package/out/reference-manager/remove-q-name.d.ts.map +1 -1
  16. package/out/reference-manager/remove-q-name.js +7 -4
  17. package/out/reference-manager/remove-q-name.js.map +1 -1
  18. package/out/reference-manager/symbol-type.d.ts +1 -1
  19. package/out/reference-manager/symbol-type.d.ts.map +1 -1
  20. package/out/reference-manager/symbol-type.js +1 -0
  21. package/out/reference-manager/symbol-type.js.map +1 -1
  22. package/out/reference-manager/update-nasl-fragment.d.ts +2 -2
  23. package/out/reference-manager/update-nasl-fragment.d.ts.map +1 -1
  24. package/out/reference-manager/update-nasl-fragment.js +29 -24
  25. package/out/reference-manager/update-nasl-fragment.js.map +1 -1
  26. package/out/reference-manager/view-elem-logic.js.map +1 -1
  27. package/out/services/bindable-logic-service.js.map +1 -1
  28. package/out/symbol/traverse/concepts/index.d.ts +1 -1
  29. package/out/symbol/traverse/concepts/index.d.ts.map +1 -1
  30. package/out/symbol/traverse/concepts/logic/expression/member-expression.js.map +1 -1
  31. package/out/typer/collectGlobalDefs.d.ts +8 -0
  32. package/out/typer/collectGlobalDefs.d.ts.map +1 -1
  33. package/out/typer/collectGlobalDefs.js +74 -49
  34. package/out/typer/collectGlobalDefs.js.map +1 -1
  35. package/out/typer/dispatch-all.d.ts.map +1 -1
  36. package/out/typer/dispatch-all.js +3 -1
  37. package/out/typer/dispatch-all.js.map +1 -1
  38. package/out/typer/dispatch-call.d.ts.map +1 -1
  39. package/out/typer/dispatch-call.js +4 -0
  40. package/out/typer/dispatch-call.js.map +1 -1
  41. package/out/typer/dispatch-def.d.ts.map +1 -1
  42. package/out/typer/dispatch-def.js +45 -19
  43. package/out/typer/dispatch-def.js.map +1 -1
  44. package/out/typer/dispatch-expr.d.ts.map +1 -1
  45. package/out/typer/dispatch-expr.js +69 -60
  46. package/out/typer/dispatch-expr.js.map +1 -1
  47. package/out/typer/dispatch-process.d.ts +8 -1
  48. package/out/typer/dispatch-process.d.ts.map +1 -1
  49. package/out/typer/dispatch-process.js +34 -1
  50. package/out/typer/dispatch-process.js.map +1 -1
  51. package/out/typer/dispatch-stmt.js.map +1 -1
  52. package/out/typer/dispatch-view.d.ts.map +1 -1
  53. package/out/typer/dispatch-view.js +56 -20
  54. package/out/typer/dispatch-view.js.map +1 -1
  55. package/out/typer/fix-use-before-assign.js.map +1 -1
  56. package/out/typer/get-oql-files.d.ts.map +1 -1
  57. package/out/typer/get-oql-files.js +2 -8
  58. package/out/typer/get-oql-files.js.map +1 -1
  59. package/out/typer/incremental-update.d.ts +2 -5
  60. package/out/typer/incremental-update.d.ts.map +1 -1
  61. package/out/typer/incremental-update.js +95 -19
  62. package/out/typer/incremental-update.js.map +1 -1
  63. package/out/typer/oql-checker/ts-parser.d.ts.map +1 -1
  64. package/out/typer/oql-checker/ts-parser.js +99 -20
  65. package/out/typer/oql-checker/ts-parser.js.map +1 -1
  66. package/out/typer/overload-helper.d.ts.map +1 -1
  67. package/out/typer/overload-helper.js +185 -23
  68. package/out/typer/overload-helper.js.map +1 -1
  69. package/out/typer/solver.d.ts +1 -1
  70. package/out/typer/solver.d.ts.map +1 -1
  71. package/out/typer/solver.js +16 -4
  72. package/out/typer/solver.js.map +1 -1
  73. package/out/typer/subster.d.ts.map +1 -1
  74. package/out/typer/subster.js +32 -5
  75. package/out/typer/subster.js.map +1 -1
  76. package/out/typer/topo-sort.d.ts +1 -0
  77. package/out/typer/topo-sort.d.ts.map +1 -1
  78. package/out/typer/topo-sort.js +15 -5
  79. package/out/typer/topo-sort.js.map +1 -1
  80. package/out/typer/type-predicate.d.ts.map +1 -1
  81. package/out/typer/type-predicate.js +11 -3
  82. package/out/typer/type-predicate.js.map +1 -1
  83. package/out/typer/typer.d.ts +1 -1
  84. package/out/typer/typer.d.ts.map +1 -1
  85. package/out/typer/typer.js +14 -3
  86. package/out/typer/typer.js.map +1 -1
  87. package/out/typer/unifier.d.ts.map +1 -1
  88. package/out/typer/unifier.js +9 -7
  89. package/out/typer/unifier.js.map +1 -1
  90. package/out/utils/debug.js.map +1 -1
  91. package/out/utils/type-operator.d.ts +15 -0
  92. package/out/utils/type-operator.d.ts.map +1 -1
  93. package/out/utils/type-operator.js +65 -3
  94. package/out/utils/type-operator.js.map +1 -1
  95. package/package.json +5 -5
@@ -126,6 +126,7 @@ function* tpFrontend(env, nd) {
126
126
  env.unifier.clearCs();
127
127
  yield* tpBindEventForViewLevelEvent(env, be);
128
128
  (0, subster_1.traverseSubstRunCheck)(env, be);
129
+ env.unifier.clearCs();
129
130
  });
130
131
  env.isView = isViewCopy;
131
132
  // 兼容 null 是为了看从服务端发布 json 恢复出来的内容,基本前端都是 null 而不是标准的空数组 []
@@ -192,12 +193,11 @@ function* tpBusinessComponent(env, nd) {
192
193
  });
193
194
  });
194
195
  nd.events.forEach((e) => (0, dispatch_def_1.dispatchDef)(env, e));
195
- const sortedLogics = sortLogicsForFrontendDomain(env, nd.logics);
196
+ const sortedLogics = sortLogicsForFrontendDomain(env, nd.logics, nd);
196
197
  const scopeVarsForRecording = [...vars, ...sortedLogics];
197
198
  env.refMgr.setLocalSymBindings(nd, scopeVarsForRecording);
198
199
  for (const l of sortedLogics) {
199
- const qName = (0, get_q_name_1.getTokenQualifiedName)(l);
200
- env.refMgr.gQNameDefs.set(qName, l);
200
+ env.addLexicalSym(l);
201
201
  (0, helper_1.createOnPush)(env.allocatedVirtualNodes, env.getCurFileNode(), l);
202
202
  }
203
203
  yield* (0, nasl_utils_1.wrapForEachToGenerator)(sortedLogics, function* (l) {
@@ -210,6 +210,8 @@ function* tpBusinessComponent(env, nd) {
210
210
  yield* tpViewElementFirstPass(env, e);
211
211
  });
212
212
  (0, subster_1.traverseSubstRunCheck)(env, nd);
213
+ // 在 BusinessComponent 级别处理完约束后,清空约束集合,因为后续不会再继续求解
214
+ env.unifier.clearCs();
213
215
  // 从logics字段中筛选isPublic=true的元素
214
216
  const readableProps = nd.logics
215
217
  .filter((logic) => logic.isPublic === true)
@@ -249,6 +251,11 @@ function* tpBusinessComponent(env, nd) {
249
251
  });
250
252
  env.refMgr.compDefMgr.overwriteBusinessComponentDef(nd, ty);
251
253
  yield;
254
+ // 清理流程变量
255
+ for (const v of allocatedProcessVars) {
256
+ env.removeLexicalSym(v);
257
+ }
258
+ // 清理所有局部符号(基于节点对象,更可靠)
252
259
  for (const c of env.refMgr.getLocalSymBindings(nd) ?? []) {
253
260
  env.removeLexicalSym(c);
254
261
  }
@@ -305,10 +312,8 @@ function* tpView(env, nd, skipSubView = false) {
305
312
  }
306
313
  const viewVars = [...nd.params, ...nd.variables];
307
314
  // localVars deprecated; local scope symbols recorded via refMgr.setLocalSymBindings
308
- const dropList = [];
309
315
  viewVars.forEach((item) => {
310
316
  (0, dispatch_def_1.dispatchDef)(env, item);
311
- dropList.push(item);
312
317
  (0, helper_1.createOnPush)(env.allocatedVirtualNodes, env.getCurFileNode(), item);
313
318
  });
314
319
  nd.elements.forEach((e) => {
@@ -323,7 +328,7 @@ function* tpView(env, nd, skipSubView = false) {
323
328
  ve);
324
329
  });
325
330
  });
326
- const sortedLogics = sortLogicsForFrontendDomain(env, nd.logics);
331
+ const sortedLogics = sortLogicsForFrontendDomain(env, nd.logics, nd);
327
332
  // Record scope bindings for this View (process synthetic vars + params + variables + logics)
328
333
  /**
329
334
  * 这里现在和未来可能有的问题:process vars 不是 view 引入的,所以不能算入 scopeVars
@@ -332,10 +337,8 @@ function* tpView(env, nd, skipSubView = false) {
332
337
  const scopeVarsForRecording = [...viewVars, ...sortedLogics];
333
338
  env.refMgr.setLocalSymBindings(nd, scopeVarsForRecording);
334
339
  yield* (0, nasl_utils_1.wrapForEachToGenerator)(sortedLogics, (l) => {
335
- const qName = (0, get_q_name_1.getTokenQualifiedName)(l);
336
- env.refMgr.gQNameDefs.set(qName, l);
337
- dropList.push(l);
338
340
  env.addLexicalSym(l);
341
+ (0, helper_1.createOnPush)(env.allocatedVirtualNodes, env.getCurFileNode(), l);
339
342
  });
340
343
  yield* (0, nasl_utils_1.wrapForEachToGenerator)(sortedLogics, (l) => {
341
344
  (0, dispatch_def_1.dispatchDef)(env, l);
@@ -353,6 +356,8 @@ function* tpView(env, nd, skipSubView = false) {
353
356
  });
354
357
  }
355
358
  (0, subster_1.traverseSubstRunCheck)(env, nd);
359
+ // 在 View 级别处理完约束后,清空约束集合,因为后续不会再继续求解
360
+ env.unifier.clearCs();
356
361
  yield;
357
362
  env.isView = isViewCopy;
358
363
  env.setType(nd, type_manager_1.naslAnyTy);
@@ -364,11 +369,13 @@ function* tpView(env, nd, skipSubView = false) {
364
369
  yield dispatchView(env, c);
365
370
  });
366
371
  }
372
+ // 清理流程变量
367
373
  for (const v of allocatedProcessVars) {
368
- env.removeLexicalVarByName(v.name);
374
+ env.removeLexicalSym(v);
369
375
  }
370
- for (const d of dropList) {
371
- env.removeLexicalVarByName(d.name);
376
+ // 清理所有局部符号(基于节点对象,更可靠)
377
+ for (const c of env.refMgr.getLocalSymBindings(nd) ?? []) {
378
+ env.removeLexicalSym(c);
372
379
  }
373
380
  env.queryManager.failAllPendingQueryAndDrain();
374
381
  env.viewAssocProcess = null;
@@ -475,9 +482,10 @@ function* tpViewElementFirstPass(env, nd) {
475
482
  env.unifier.unify(T.renamed, ancestorTableTypeParam);
476
483
  }
477
484
  // 如果当前组件没有定义 dataSource 且有 T,就需要从祖先组件中获取 T
485
+ // u-transfer 使用 source 而非 dataSource 作为数据源
478
486
  const hasDataSourceInInitProp = !!componentDef
479
487
  .getInitPropsTypeAnnotation()
480
- ?.properties?.some((x) => x.name === 'dataSource');
488
+ ?.properties?.some((x) => x.name === 'dataSource' || (nd.tag === 'u-transfer' && x.name === 'source'));
481
489
  const shouldStealAncestorT = !hasDataSourceInInitProp;
482
490
  if (shouldStealAncestorT && T) {
483
491
  const ancestorTableTypeParam = findAncestorWhichHasTypeParamT(env, nd)?.renamed ?? type_manager_1.naslAnyTy;
@@ -923,7 +931,8 @@ function* tpViewElementFirstPass(env, nd) {
923
931
  if (arg) {
924
932
  const multiple = nd.bindAttrs.find(x => x.name === 'multiple');
925
933
  const mTyVar = tgtTy.checkType;
926
- const groundMTy = multiple?.type === 'static' && (multiple.value === true || multiple.value === false)
934
+ const boolLikeValues = [true, false, 'true', 'false'];
935
+ const groundMTy = multiple != null && multiple.type === 'static' && boolLikeValues.includes(multiple.value)
927
936
  ? (0, bind_expression_hack_1.inferStaticValueTypeAsLiteral)(multiple.value)
928
937
  : type_manager_1.naslBooleanTy;
929
938
  // 就地化简类型;或者使用Dummy Type Operator来包裹,以指定类型之间求解的拓扑序
@@ -1215,12 +1224,39 @@ exports.isTagIgnored = isTagIgnored;
1215
1224
  * @returns
1216
1225
  * @deprecated
1217
1226
  */
1218
- function sortLogicsForFrontendDomain(env, allLogics) {
1219
- const getTopoSortLogicsOnly = (env, allLogics) => {
1220
- const [errMutRefFns, sigCompleteFns, sigIncompleteFns] = (0, topo_sort_1.getLogicCheckingOrder)(env.refMgr, allLogics);
1221
- return [...sigIncompleteFns, ...sigCompleteFns, ...errMutRefFns.flat()];
1222
- };
1227
+ function sortLogicsForFrontendDomain(env, allLogics, viewLike) {
1228
+ if (allLogics.length === 0) {
1229
+ return [];
1230
+ }
1231
+ // 先填充 veQNameDefs,这样 buildOneLevelCallGraph 才能找到 View 级别的 logics
1232
+ env.refMgr.addViewElementLogicQNameDefs(viewLike);
1233
+ // 为 sigIncompleteFns(有 returns 但没有 typeAnnotation 的逻辑)的 returns 预先创建占位符类型
1234
+ // 这样在 determineCallLogicFnTy 查询 logic 类型时,能够获取到占位符类型
1235
+ // 后续 tpLogic 处理时会使用这些占位符类型
1236
+ allLogics.forEach((fn) => {
1237
+ if (fn.returns?.length) {
1238
+ fn.returns.forEach((ret) => {
1239
+ if (!ret.typeAnnotation && !env.typeBindings.has(ret)) {
1240
+ const placeholderTy = env.unifier.nextFreshTyAnn('free');
1241
+ env.setType(ret, placeholderTy);
1242
+ }
1243
+ });
1244
+ }
1245
+ });
1246
+ // 构建所有逻辑的调用图
1247
+ const callGraph = (0, topo_sort_1.buildOneLevelCallGraph)(env.refMgr, allLogics);
1248
+ // 对所有逻辑进行统一的拓扑排序
1249
+ const sortedLogics = (0, topo_sort_1.topoSortFns)(callGraph).flat();
1250
+ // buildOneLevelCallGraph 会为所有输入创建条目,topoSortFns 应该包含所有节点
1251
+ // 但为了安全起见,确保所有输入的逻辑都在结果中
1252
+ const sortedSet = new Set(sortedLogics);
1253
+ const missingLogics = allLogics.filter(l => !sortedSet.has(l));
1254
+ // 如果拓扑排序没有包含所有节点,将缺失的节点添加到末尾
1255
+ // 这通常不应该发生,但如果发生了,至少保证所有逻辑都在结果中
1256
+ const finalSortedLogics = missingLogics.length > 0
1257
+ ? [...sortedLogics, ...missingLogics]
1258
+ : sortedLogics;
1223
1259
  // 这个函数可能返回一些不是Logic的东西比如TypeAnnotation,所以需要过滤掉
1224
- return getTopoSortLogicsOnly(env, allLogics).filter(l => !(0, file_node_cache_1.checkNodeIsFileModuleInIdeWithCache)(l) && (0, asserts_1.isLogic)(l));
1260
+ return finalSortedLogics.filter(l => !(0, file_node_cache_1.checkNodeIsFileModuleInIdeWithCache)(l) && (0, asserts_1.isLogic)(l));
1225
1261
  }
1226
1262
  //# sourceMappingURL=dispatch-view.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"dispatch-view.js","sourceRoot":"","sources":["../../src/typer/dispatch-view.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"dispatch-view.js","sourceRoot":"","sources":["../../src/typer/dispatch-view.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"fix-use-before-assign.js","sourceRoot":"","sources":["../../src/typer/fix-use-before-assign.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"fix-use-before-assign.js","sourceRoot":"","sources":["../../src/typer/fix-use-before-assign.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"get-oql-files.d.ts","sourceRoot":"","sources":["../../src/typer/get-oql-files.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAEjD,OAAO,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AA2BjC;;;;;;;GAOG;AACH,eAAO,MAAM,WAAW,QACf,MAAM,cACC,IAAI,UAAU,CAAC,gBACb,IAAI,UAAU,CAAC,KAC9B,MAAM,UAAU,CA6FlB,CAAA;AAQD,eAAO,MAAM,gBAAgB,aAAc,MAAM,YAAY,MAAM,KAAG,MASrE,CAAC"}
1
+ {"version":3,"file":"get-oql-files.d.ts","sourceRoot":"","sources":["../../src/typer/get-oql-files.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAEjD,OAAO,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AA2BjC;;;;;;;GAOG;AACH,eAAO,MAAM,WAAW,QACf,MAAM,cACC,IAAI,UAAU,CAAC,gBACb,IAAI,UAAU,CAAC,KAC9B,MAAM,UAAU,CAsFlB,CAAA;AAQD,eAAO,MAAM,gBAAgB,aAAc,MAAM,YAAY,MAAM,KAAG,MASrE,CAAC"}
@@ -51,14 +51,8 @@ const getOqlFiles = (env, __chkFiles, removedNodes) => {
51
51
  const nsp = (0, helper_1.getNamespaceWithoutLast)(nd);
52
52
  const qNames = (0, collect_q_name_1.getQNamesOfCreateAction)(nsp, nd);
53
53
  for (const qName of qNames) {
54
- // 检查缓存的引用
55
- const cachedRefs = env.refMgr.gCachedQNameSymbolRefs.get(qName[0]) ?? new Set();
56
- for (const ref of cachedRefs) {
57
- const fNode = (0, service_1.getFileNode)(ref);
58
- if (fNode && !removedNodes.has(fNode)) {
59
- res.add(fNode);
60
- }
61
- }
54
+ // 注意:如果定义不存在(已被删除),不需要检查 pendingRefsForRecreation
55
+ // 因为被删除的节点应该在 removedNodes 中,会被后续过滤掉
62
56
  // 检查当前引用
63
57
  const def = env.refMgr.gQNameDefs.get(qName[0]);
64
58
  if (def) {
@@ -1 +1 @@
1
- {"version":3,"file":"get-oql-files.js","sourceRoot":"","sources":["../../src/typer/get-oql-files.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"get-oql-files.js","sourceRoot":"","sources":["../../src/typer/get-oql-files.ts"],"names":[],"mappings":";;;AAAA,iDAA+C;AAE/C,yDAA0D;AAE1D,yDAAkE;AAElE,wEAA8E;AAC9E,wDAAsE;AACtE,yDAAkE;AAElE,oDAAoD;AACpD,MAAM,8BAA8B,GAAG,CAAC,IAAgB,EAAW,EAAE;IACjE,IAAI,CAAC,IAAA,6BAAmB,EAAC,IAAI,CAAC,EAAE,CAAC;QAC7B,OAAO,KAAK,CAAC;IACjB,CAAC;IAED,IAAI,MAAM,GAAG,KAAK,CAAC;IACnB,IAAI,CAAC,8BAA8B,EAAE,CACnC,CAAC,EAAO,EAAE,EAAE;QACV,IAAI,EAAE,EAAE,OAAO,KAAK,mBAAmB,EAAE,CAAC;YACxC,MAAM,GAAG,IAAI,CAAC;YACd,OAAO,IAAI,CAAC;QACd,CAAC;IACH,CAAC,EACD,CAAC,EAAW,EAAE,EAAE,CAAC,IAAA,6BAAmB,EAAC,EAAE,CAAC,CACzC,CAAC;IAEF,OAAO,MAAM,CAAC;AAClB,CAAC,CAAC;AAEF;;;;;;;GAOG;AACI,MAAM,WAAW,GAAG,CACvB,GAAW,EACX,UAA2B,EAC3B,YAA6B,EACZ,EAAE;IACnB,wBAAW,IAAI,OAAO,CAAC,IAAI,CAAC,wCAAwC,CAAC,CAAC;IACtE,4CAA4C;IAC5C,MAAM,iBAAiB,GAAG,IAAI,GAAG,EAA+B,CAAC;IAEjE,8BAA8B;IAC9B,MAAM,kBAAkB,GAAG,CAAC,EAAc,EAAmB,EAAE;QAC3D,0BAA0B;QAC1B,IAAI,iBAAiB,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC;YAC5B,OAAO,iBAAiB,CAAC,GAAG,CAAC,EAAE,CAAE,CAAC;QACtC,CAAC;QAED,MAAM,GAAG,GAAG,IAAI,GAAG,EAAc,CAAC;QAClC,0BAA0B;QAC1B,IAAI,oBAAoB,CAAC,EAAE,CAAC,EAAE,CAAC;YAC3B,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAChB,CAAC;QAED,IAAI,8BAA8B,CAAC,EAAE,CAAC,EAAE,CAAC;YACrC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAChB,CAAC;QAED,SAAS;QACT,MAAM,GAAG,GAAG,IAAA,gCAAuB,EAAC,EAAgB,CAAC,CAAC;QACtD,MAAM,MAAM,GAAG,IAAA,wCAAuB,EAAC,GAAG,EAAE,EAAgB,CAAC,CAAC;QAC9D,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;YACzB,kDAAkD;YAClD,qCAAqC;YACrC,SAAS;YACT,MAAM,GAAG,GAAG,GAAG,CAAC,MAAM,CAAC,UAAU,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;YAChD,IAAI,GAAG,EAAE,CAAC;gBACN,MAAM,IAAI,GAAG,GAAG,CAAC,MAAM,CAAC,aAAa,CAAC,GAAG,CAAC,IAAI,IAAI,GAAG,EAAc,CAAC;gBACpE,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;oBACrB,MAAM,KAAK,GAAG,IAAA,qBAAW,EAAC,GAAG,CAAe,CAAC;oBAC7C,IAAI,KAAK,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC;wBACpC,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;oBACnB,CAAC;gBACL,CAAC;YACL,CAAC;QACL,CAAC;QAED,OAAO;QACP,iBAAiB,CAAC,GAAG,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC;QAC/B,OAAO,GAAG,CAAC;IACf,CAAC,CAAC;IAEF,qBAAqB;IACrB,MAAM,2BAA2B,GAAG,CAAC,UAA2B,EAAmB,EAAE;QACjF,MAAM,MAAM,GAAG,IAAI,GAAG,EAAc,CAAC;QACrC,MAAM,OAAO,GAAG,IAAI,GAAG,EAAc,CAAC;QACtC,MAAM,KAAK,GAAiB,CAAC,GAAG,UAAU,CAAC,CAAC;QAE5C,OAAO,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACtB,MAAM,OAAO,GAAG,KAAK,CAAC,KAAK,EAAG,CAAC;YAE/B,IAAI,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC;gBACvB,SAAS;YACb,CAAC;YACD,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;YAErB,qCAAqC;YACrC,IAAI,oBAAoB,CAAC,OAAO,CAAC,IAAI,8BAA8B,CAAC,OAAO,CAAC,EAAE,CAAC;gBAC3E,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;YACxB,CAAC;YAED,cAAc;YACd,MAAM,IAAI,GAAG,kBAAkB,CAAC,OAAO,CAAC,CAAC;YACzC,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;gBACrB,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;oBAC9C,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;gBACpB,CAAC;YACL,CAAC;QACL,CAAC;QAED,OAAO,MAAM,CAAC;IAClB,CAAC,CAAC;IAEF,kBAAkB;IAClB,MAAM,QAAQ,GAAG,IAAI,GAAG,CAAa,UAAU,CAAC,CAAC;IACjD,MAAM,eAAe,GAAG,2BAA2B,CAAC,QAAQ,CAAC,CAAC;IAE9D,YAAY;IACZ,MAAM,MAAM,GAAG,KAAK,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,YAAY,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC;IAEnF,wBAAW,IAAI,OAAO,CAAC,OAAO,CAAC,wCAAwC,CAAC,CAAC;IACzE,OAAO,MAAM,CAAC;AAClB,CAAC,CAAA;AA1FY,QAAA,WAAW,eA0FvB;AAED,MAAM,oBAAoB,GAAG,CAAC,EAAc,EAAW,EAAE,CACrD,EAAE,CAAC,OAAO,KAAK,QAAQ;IACvB,EAAE,CAAC,OAAO,KAAK,WAAW;IAC1B,EAAE,CAAC,OAAO,KAAK,MAAM;IACrB,EAAE,CAAC,OAAO,KAAK,iBAAiB,CAAC;AAE9B,MAAM,gBAAgB,GAAG,CAAC,QAAgB,EAAE,QAAgB,EAAU,EAAE;IAC3E,MAAM,YAAY,GAAG,QAAQ,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;IAC/C,MAAM,cAAc,GAAG,QAAQ,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;IACjD,IAAI,YAAY,GAAG,cAAc,EAAE,CAAC;QAChC,MAAM,QAAQ,GAAG,QAAQ,CAAC,SAAS,CAAC,CAAC,EAAE,cAAc,GAAG,CAAC,CAAC,CAAC;QAC3D,MAAM,SAAS,GAAG,QAAQ,CAAC,SAAS,CAAC,YAAY,CAAC,CAAC;QACnD,OAAO,QAAQ,GAAG,QAAQ,GAAG,SAAS,CAAC;IAC3C,CAAC;IACD,OAAO,QAAQ,CAAC;AACpB,CAAC,CAAC;AATW,QAAA,gBAAgB,oBAS3B"}
@@ -25,14 +25,11 @@ export interface PreProcessResult {
25
25
  */
26
26
  export declare const preProcessOther: (env: SemEnv, nd: SyntaxNode, typerCheckFiles: Set<SyntaxNode>) => boolean;
27
27
  /**
28
- * rename xs:
28
+ * 重命名定义节点:
29
29
  * 1 获取要删除的旧的 qNames1
30
30
  * 2 获取引用旧的 qNames1 的待检查项 ys
31
31
  * 3 获取要增加的新的 qNames2
32
- * 4 引用转移:gQNameDefs 中增加 qNames2,并且把 qNames1 symbolRefs 转移到 qNames2,gQNameDefs 中删除 qNames1
33
- * 5 尝试 'relink':改名后,如果新名字已经存在一些存量 refs,也要加进去
34
- * 6 根据转移的 symbolRefs,获取引用新的 qNames2 的待检查项 zs(比如可能一个以前找不到的名字碰巧连接上了)
35
- * 7 类型检查 ys 和 zs
32
+ * 4 删除旧的 qNames1,清空旧引用(根据 mode 决定是否缓存引用)
36
33
  */
37
34
  /**
38
35
  * @warning 改动这个文件中的逻辑时很容易引发增量检查问题、查找引用问题、内存泄漏,请谨慎;如单元测试 UT 发生错误,更要谨慎
@@ -1 +1 @@
1
- {"version":3,"file":"incremental-update.d.ts","sourceRoot":"","sources":["../../src/typer/incremental-update.ts"],"names":[],"mappings":"AAEA,OAAO,EAAY,SAAS,EAAkD,UAAU,EAAwB,MAAM,qBAAqB,CAAC;AAG5I,OAAO,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AAGjC,OAAO,EAAiC,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAE7E,OAAO,EAAE,KAAK,UAAU,EAA8B,MAAM,kCAAkC,CAAC;AAO/F,OAAO,EAAE,UAAU,IAAI,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AACpE,OAAO,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAC;AAS7D,KAAK,iBAAiB,GAAG,kBAAkB,CAAC,iBAAiB,CAAC;AAE9D;;;GAGG;AACH,KAAK,iBAAiB,GAAG;IACrB,SAAS,EAAE,GAAG,CAAC;IACf,MAAM,EAAE,GAAG,CAAC;IACZ,KAAK,CAAC,EAAE,MAAM,CAAC;CAClB,CAAC;AA2FF,MAAM,WAAW,gBAAgB;IAC7B,eAAe,EAAE,GAAG,CAAC,UAAU,CAAC,CAAC;IACjC,gBAAgB,EAAE,GAAG,CAAC,UAAU,CAAC,CAAC;IAClC,gBAAgB,EAAE,GAAG,CAAC,UAAU,CAAC,CAAC;CACrC;AAED;;;GAGG;AACH,eAAO,MAAM,eAAe,QAAS,MAAM,MAAM,UAAU,mBAAmB,IAAI,UAAU,CAAC,KAAG,OAa/F,CAAA;AAED;;;;;;;;;GASG;AACH;;GAEG;AACH,eAAO,MAAM,mBAAmB,QACvB,MAAM,MACP,UAAU,mBACG,IAAI,UAAU,CAAC,WACvB,MAAM,QACT,aAAa,GAAG,QAAQ,GAAG,IAAI,wBACf,IAAI,MAAM,CAAC,KAC9B,OAgDN,CAAA;AAoOD,MAAM,WAAW,yBAAyB;IACtC,GAAG,EAAE,MAAM,CAAC;IACZ,OAAO,EAAE,iBAAiB,GAAG,SAAS,CAAC;IACvC,QAAQ,EAAE,GAAG,CAAC,UAAU,CAAC,CAAC;IAC1B,WAAW,EAAE,GAAG,CAAC,UAAU,CAAC,CAAC;IAC7B,WAAW,EAAE,GAAG,CAAC,UAAU,CAAC,CAAC;IAC7B,aAAa,EAAE,qBAAqB,EAAE,CAAC;IACvC,iBAAiB,CAAC,EAAE,GAAG,CAAC,SAAS,CAAC,CAAC;IACnC,YAAY,CAAC,EAAE,GAAG,CAAC,UAAU,CAAC,CAAC;IAC/B,YAAY,CAAC,EAAE,GAAG,CAAC,UAAU,EAAE,iBAAiB,CAAC,CAAC;CACrD;AAED;;;;GAIG;AACH;;GAEG;AACH,wBAAsB,mBAAmB,CAAC,MAAM,EAAE,yBAAyB,GAAG,OAAO,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC,CAkN7G"}
1
+ {"version":3,"file":"incremental-update.d.ts","sourceRoot":"","sources":["../../src/typer/incremental-update.ts"],"names":[],"mappings":"AAEA,OAAO,EAAiB,SAAS,EAAoE,UAAU,EAAwB,MAAM,qBAAqB,CAAC;AAGnK,OAAO,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AAGjC,OAAO,EAAiC,gBAAgB,EAAsB,MAAM,YAAY,CAAC;AAEjG,OAAO,EAAE,KAAK,UAAU,EAA8B,MAAM,kCAAkC,CAAC;AAO/F,OAAO,EAAE,UAAU,IAAI,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AACpE,OAAO,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAC;AAS7D,KAAK,iBAAiB,GAAG,kBAAkB,CAAC,iBAAiB,CAAC;AAE9D;;;GAGG;AACH,KAAK,iBAAiB,GAAG;IACrB,SAAS,EAAE,GAAG,CAAC;IACf,MAAM,EAAE,GAAG,CAAC;IACZ,KAAK,CAAC,EAAE,MAAM,CAAC;CAClB,CAAC;AAyHF,MAAM,WAAW,gBAAgB;IAC7B,eAAe,EAAE,GAAG,CAAC,UAAU,CAAC,CAAC;IACjC,gBAAgB,EAAE,GAAG,CAAC,UAAU,CAAC,CAAC;IAClC,gBAAgB,EAAE,GAAG,CAAC,UAAU,CAAC,CAAC;CACrC;AAED;;;GAGG;AACH,eAAO,MAAM,eAAe,QAAS,MAAM,MAAM,UAAU,mBAAmB,IAAI,UAAU,CAAC,KAAG,OAa/F,CAAA;AAED;;;;;;GAMG;AACH;;GAEG;AACH,eAAO,MAAM,mBAAmB,QACvB,MAAM,MACP,UAAU,mBACG,IAAI,UAAU,CAAC,WACvB,MAAM,QACT,aAAa,GAAG,QAAQ,GAAG,IAAI,wBACf,IAAI,MAAM,CAAC,KAC9B,OAwDN,CAAA;AAoOD,MAAM,WAAW,yBAAyB;IACtC,GAAG,EAAE,MAAM,CAAC;IACZ,OAAO,EAAE,iBAAiB,GAAG,SAAS,CAAC;IACvC,QAAQ,EAAE,GAAG,CAAC,UAAU,CAAC,CAAC;IAC1B,WAAW,EAAE,GAAG,CAAC,UAAU,CAAC,CAAC;IAC7B,WAAW,EAAE,GAAG,CAAC,UAAU,CAAC,CAAC;IAC7B,aAAa,EAAE,qBAAqB,EAAE,CAAC;IACvC,iBAAiB,CAAC,EAAE,GAAG,CAAC,SAAS,CAAC,CAAC;IACnC,YAAY,CAAC,EAAE,GAAG,CAAC,UAAU,CAAC,CAAC;IAC/B,YAAY,CAAC,EAAE,GAAG,CAAC,UAAU,EAAE,iBAAiB,CAAC,CAAC;CACrD;AAED;;;;GAIG;AACH;;GAEG;AACH,wBAAsB,mBAAmB,CAAC,MAAM,EAAE,yBAAyB,GAAG,OAAO,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC,CAsQ7G"}
@@ -42,7 +42,33 @@ const ANCESTOR_REVALIDATION_RULES = [
42
42
  env.errorDiagnoser.checkViewIndexPageSetting(ancestorNode);
43
43
  }
44
44
  },
45
- errorFilter: (err) => !!err.isIndex,
45
+ errorFilter: (err) => !err.isIndex,
46
+ },
47
+ {
48
+ childNodeType: 'ProcessElementV2',
49
+ triggerFields: ['subProcessKey'],
50
+ ancestorNodeTypes: ['App'],
51
+ directParentOnly: false,
52
+ validationFn: (ancestorNode, env) => {
53
+ // 类型检查:确保 ancestorNode 是 App 类型
54
+ if (ancestorNode.concept === 'App') {
55
+ // 检测所有流程的循环引用(在 App 级别,因为流程的变更会影响兄弟级别的流程)
56
+ env.errorDiagnoser.checkAllProcessCircularReferences(ancestorNode);
57
+ }
58
+ },
59
+ errorFilter: (err) => {
60
+ // 过滤掉流程循环引用相关的错误,以便重新检测
61
+ return !err.message?.includes('流程存在循环引用');
62
+ },
63
+ siblingNodeTypes: ['ProcessV2'],
64
+ getSiblingNodes: (ancestorNode) => {
65
+ // 从 App 节点获取所有 ProcessV2 兄弟节点
66
+ if (ancestorNode.concept === 'App') {
67
+ const appNode = ancestorNode;
68
+ return appNode.processV2s || [];
69
+ }
70
+ return [];
71
+ },
46
72
  },
47
73
  ];
48
74
  /**
@@ -102,14 +128,11 @@ const preProcessOther = (env, nd, typerCheckFiles) => {
102
128
  };
103
129
  exports.preProcessOther = preProcessOther;
104
130
  /**
105
- * rename xs:
131
+ * 重命名定义节点:
106
132
  * 1 获取要删除的旧的 qNames1
107
133
  * 2 获取引用旧的 qNames1 的待检查项 ys
108
134
  * 3 获取要增加的新的 qNames2
109
- * 4 引用转移:gQNameDefs 中增加 qNames2,并且把 qNames1 symbolRefs 转移到 qNames2,gQNameDefs 中删除 qNames1
110
- * 5 尝试 'relink':改名后,如果新名字已经存在一些存量 refs,也要加进去
111
- * 6 根据转移的 symbolRefs,获取引用新的 qNames2 的待检查项 zs(比如可能一个以前找不到的名字碰巧连接上了)
112
- * 7 类型检查 ys 和 zs
135
+ * 4 删除旧的 qNames1,清空旧引用(根据 mode 决定是否缓存引用)
113
136
  */
114
137
  /**
115
138
  * @warning 改动这个文件中的逻辑时很容易引发增量检查问题、查找引用问题、内存泄漏,请谨慎;如单元测试 UT 发生错误,更要谨慎
@@ -123,7 +146,7 @@ const preProcessDefRename = (env, nd, typerCheckFiles, oldName, mode, oqlRemoveN
123
146
  return true;
124
147
  }
125
148
  const qName = (0, get_q_name_1.getTokenQualifiedName)(nd);
126
- // 2. Get items to check which have references to old qNames1
149
+ // 2. 获取引用旧的 qNames1 的待检查项
127
150
  const oldQName = easyGetOldQName(qName, oldName);
128
151
  try {
129
152
  const filePath = nd.getEmbeddedFilePath();
@@ -140,20 +163,27 @@ const preProcessDefRename = (env, nd, typerCheckFiles, oldName, mode, oqlRemoveN
140
163
  typerCheckFiles.add(refFileNode);
141
164
  });
142
165
  }
143
- // 3. Get new qNames2 to add
166
+ // 3. 获取要增加的新的 qNames2
144
167
  const nsp = (0, helper_2.getNamespaceWithoutLast)(nd);
145
168
  const qNamesToRename = (0, rename_q_name_1.getQNamesOfRenameAction)(oldName, nsp, nd);
146
- // 4. Transfer references: add qNames2 to gQNameDefs, transfer symbolRefs from qNames1 to qNames2, remove qNames1 from gQNameDefs
147
- // transferQNameDef already handles gQNameDefs deletion and addition
169
+ // 4. 删除旧的 qNames1 并清空旧引用
170
+ // 注意:新的 qNames2 会在 batchPreProcessAllCreateNodes 阶段统一设置(通过 typerCreateNodes.add 调用)
171
+ // 这确保了统一性:所有新的 qName 都通过相同的代码路径设置
172
+ // 所有引用会在类型检查阶段通过 addRefsForGlobalSym 重新建立
148
173
  qNamesToRename.forEach(([oldQName, newQName]) => {
149
- // 5. Try to 'relink': if the new name already has existing refs, they also need to be added
150
- // Transfer or relinquish symbolRefs
151
- env.refMgr.transferQNameDef(oldQName, newQName, mode);
174
+ if (!oldQName || !newQName)
175
+ return;
176
+ const oldDef = env.refMgr.gQNameDefs.get(oldQName);
177
+ if (!oldDef)
178
+ return;
179
+ // 缓存引用(用于撤销/重做,重命名回旧名字/创建同名节点建立关联)
180
+ env.refMgr.cacheRefsForRecreation(oldQName, oldDef);
181
+ // 从 gQNameDefs 中删除旧的 qName
182
+ // 注意:新的 qName 会在 batchPreProcessAllCreateNodes 阶段设置
183
+ env.refMgr.gQNameDefs.delete(oldQName);
184
+ // 清空旧定义的引用:引用会在类型检查阶段重新建立
185
+ env.refMgr.deleteSymbolRefs(oldDef);
152
186
  });
153
- // 6. Based on transferred symbolRefs, get items to check that reference new qNames2
154
- // getDirectRefFileNodes(env, nd as DefConcept).forEach((refFileNode) => {
155
- // typerCheckFiles.add(refFileNode);
156
- // });
157
187
  return true;
158
188
  };
159
189
  exports.preProcessDefRename = preProcessDefRename;
@@ -463,10 +493,56 @@ async function checkUpdateRefsDiag(params) {
463
493
  continue;
464
494
  }
465
495
  // 调用 checker 的重新验证方法
466
- const nodeDiagnosticsMap = env.errorDiagnoser.revalidateAncestorNode(ancestorNode, rule.validationFn, rule.errorFilter);
496
+ const nodeDiagnosticsMap = env.errorDiagnoser.revalidateAncestorNode(ancestorNode, rule.validationFn, rule.errorFilter, rule.siblingNodeTypes, rule.getSiblingNodes);
467
497
  // 收集新的诊断信息
498
+ // 注意:nodeDiagnosticsMap 可能包含多个文件节点的诊断信息(如 App 和 ProcessV2)
499
+ // 需要按文件节点分组处理
500
+ // 同时,即使兄弟节点没有诊断信息,也需要为它们生成空的 DiagnosticRecord,以便 pushAll 能清除它们的错误
501
+ const processedFileNodes = new Set();
468
502
  if (nodeDiagnosticsMap) {
469
- diagRecs.push(...(0, checker_1.transformDiagnosticsToRecords)(ancestorNode, nodeDiagnosticsMap));
503
+ // 按文件节点分组诊断信息
504
+ const diagnosticsByFileNode = new Map();
505
+ nodeDiagnosticsMap.forEach((errs, node) => {
506
+ const fileNode = (0, service_1.getFileNode)(node);
507
+ if (fileNode) {
508
+ processedFileNodes.add(fileNode);
509
+ let fileDiagnostics = diagnosticsByFileNode.get(fileNode);
510
+ if (!fileDiagnostics) {
511
+ fileDiagnostics = new Map();
512
+ diagnosticsByFileNode.set(fileNode, fileDiagnostics);
513
+ }
514
+ fileDiagnostics.set(node, errs);
515
+ }
516
+ });
517
+ // 为每个文件节点生成 DiagnosticRecord
518
+ diagnosticsByFileNode.forEach((fileDiagnostics, fileNode) => {
519
+ diagRecs.push(...(0, checker_1.transformDiagnosticsToRecords)(fileNode, fileDiagnostics));
520
+ });
521
+ }
522
+ // 为兄弟节点生成 DiagnosticRecord(即使它们没有诊断信息,也要生成空的,以便 pushAll 能清除它们的错误)
523
+ if (rule.getSiblingNodes) {
524
+ const siblings = rule.getSiblingNodes(ancestorNode);
525
+ for (const siblingNode of siblings) {
526
+ // 如果指定了 siblingNodeTypes,则只处理匹配类型的兄弟节点
527
+ if (rule.siblingNodeTypes && rule.siblingNodeTypes.length > 0) {
528
+ if (!rule.siblingNodeTypes.includes(siblingNode.concept)) {
529
+ continue;
530
+ }
531
+ }
532
+ // 如果已经处理过这个文件节点,跳过
533
+ if (processedFileNodes.has(siblingNode)) {
534
+ continue;
535
+ }
536
+ // 为兄弟节点生成空的 DiagnosticRecord
537
+ const siblingDiagnostics = env.errorDiagnoser.getDiagnostics(siblingNode);
538
+ if (siblingDiagnostics) {
539
+ diagRecs.push(...(0, checker_1.transformDiagnosticsToRecords)(siblingNode, siblingDiagnostics));
540
+ }
541
+ else {
542
+ // 即使没有诊断信息,也要生成一个空的 DiagnosticRecord,以便 pushAll 能清除错误
543
+ diagRecs.push(...(0, checker_1.transformDiagnosticsToRecords)(siblingNode, new Map()));
544
+ }
545
+ }
470
546
  }
471
547
  }
472
548
  }