@lcap/nasl-language-server-core 4.3.0-beta.21 → 4.3.0-beta.22

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 (37) hide show
  1. package/out/checker.d.ts.map +1 -1
  2. package/out/checker.js +19 -8
  3. package/out/checker.js.map +1 -1
  4. package/out/reference-manager/reference-manager.d.ts.map +1 -1
  5. package/out/reference-manager/reference-manager.js +10 -1
  6. package/out/reference-manager/reference-manager.js.map +1 -1
  7. package/out/typer/dispatch-call.d.ts.map +1 -1
  8. package/out/typer/dispatch-call.js +3 -0
  9. package/out/typer/dispatch-call.js.map +1 -1
  10. package/out/typer/dispatch-expr.d.ts.map +1 -1
  11. package/out/typer/dispatch-expr.js +15 -5
  12. package/out/typer/dispatch-expr.js.map +1 -1
  13. package/out/typer/dispatch-view.d.ts.map +1 -1
  14. package/out/typer/dispatch-view.js +30 -17
  15. package/out/typer/dispatch-view.js.map +1 -1
  16. package/out/typer/oql-checker/ts-parser.d.ts.map +1 -1
  17. package/out/typer/oql-checker/ts-parser.js +22 -6
  18. package/out/typer/oql-checker/ts-parser.js.map +1 -1
  19. package/out/typer/overload-helper.d.ts.map +1 -1
  20. package/out/typer/overload-helper.js +8 -0
  21. package/out/typer/overload-helper.js.map +1 -1
  22. package/out/typer/subster.d.ts.map +1 -1
  23. package/out/typer/subster.js +5 -2
  24. package/out/typer/subster.js.map +1 -1
  25. package/out/typer/type-predicate.d.ts.map +1 -1
  26. package/out/typer/type-predicate.js +0 -2
  27. package/out/typer/type-predicate.js.map +1 -1
  28. package/out/typer/typer.d.ts +8 -0
  29. package/out/typer/typer.d.ts.map +1 -1
  30. package/out/typer/typer.js +18 -1
  31. package/out/typer/typer.js.map +1 -1
  32. package/out/typer/unifier.js +4 -3
  33. package/out/typer/unifier.js.map +1 -1
  34. package/out/utils/parseTsClassType.d.ts.map +1 -1
  35. package/out/utils/parseTsClassType.js +0 -2
  36. package/out/utils/parseTsClassType.js.map +1 -1
  37. package/package.json +6 -6
@@ -1 +1 @@
1
- {"version":3,"file":"checker.d.ts","sourceRoot":"","sources":["../src/checker.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,UAAU,EAU2G,GAAG,EAMxH,QAAQ,EAET,MAAM,qBAAqB,CAAC;AAE7B,OAAO,EACgE,cAAc,EAGpF,MAAM,qBAAqB,CAAC;AAS7B,OAAO,EAAE,KAAK,MAAM,EAAE,MAAM,eAAe,CAAC;AAK5C,OAAO,EAAE,UAAU,IAAI,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAMpE,oBAAY,QAAQ;IAClB,IAAI,YAAY;IAChB,KAAK,UAAU;CAChB;AAED,MAAM,MAAM,UAAU,GAAG,kBAAkB,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;AAEnE,KAAK,YAAY,GAAG;IAClB,QAAQ,CAAC,EAAE,QAAQ,CAAC;IACpB,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAC;CACpB,CAAC;AAMF,MAAM,MAAM,kBAAkB,GAAG,GAAG,CAAC,UAAU,EAAE,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC;AAEpE,MAAM,MAAM,kBAAkB,GAAG,GAAG,CAAC,UAAU,EAAE,kBAAkB,CAAC,CAAC;AAMrE,KAAK,gBAAgB,GAAG;IACtB,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;CACpB,CAAC;AAqBF,KAAK,eAAe,GAAG;IACrB,GAAG,EAAE,GAAG,CAAC;IACT,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,OAAO,CAAC;IACf,yBAAyB,CAAC,EAAE,gBAAgB,EAAE,CAAC;IAC/C,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAC;CACpB,CAAC;AA4OF;;;GAGG;AACH,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,eAAe;oCAyxIpB,OAAO;sDAPW,gBAAgB,EAAE;;;;sBAhBjD,UAAU,GAAG,SAAS;;;8BA4Df,UAAU;2BAuBb,UAAU;;;iBAW3B,MAAM;kBACL,MAAM;kBACN,MAAM;qBACH,MAAM;;kBA1yIF,UAAU,WAAW,MAAM,YAAY,YAAY;EA60IzE;AAGD,MAAM,WAAW,gBAAgB;IAC/B,EAAE,EAAE,MAAM,CAAC;IAEX,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,QAAQ,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,iBAAiB,EAAE,KAAK,CAAC,UAAU,CAAC,CAAC;IACrC,mBAAmB,EAAE,KAAK,CAAC,UAAU,CAAC,CAAC;IACvC,qBAAqB,EAAE,KAAK,CAAC,UAAU,CAAC,CAAC;CAC1C;AAMD,eAAO,MAAM,6BAA6B,aAC9B,UAAU,+DAGnB,MAAM,gBAAgB,CAyCxB,CAAC;AAMF,MAAM,MAAM,cAAc,GAAG,UAAU,CAAC,OAAO,oBAAoB,CAAC,CAAC"}
1
+ {"version":3,"file":"checker.d.ts","sourceRoot":"","sources":["../src/checker.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,UAAU,EAU2G,GAAG,EAMxH,QAAQ,EAET,MAAM,qBAAqB,CAAC;AAE7B,OAAO,EACgE,cAAc,EAGpF,MAAM,qBAAqB,CAAC;AAS7B,OAAO,EAAE,KAAK,MAAM,EAAE,MAAM,eAAe,CAAC;AAK5C,OAAO,EAAE,UAAU,IAAI,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAMpE,oBAAY,QAAQ;IAClB,IAAI,YAAY;IAChB,KAAK,UAAU;CAChB;AAED,MAAM,MAAM,UAAU,GAAG,kBAAkB,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;AAEnE,KAAK,YAAY,GAAG;IAClB,QAAQ,CAAC,EAAE,QAAQ,CAAC;IACpB,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAC;CACpB,CAAC;AAMF,MAAM,MAAM,kBAAkB,GAAG,GAAG,CAAC,UAAU,EAAE,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC;AAEpE,MAAM,MAAM,kBAAkB,GAAG,GAAG,CAAC,UAAU,EAAE,kBAAkB,CAAC,CAAC;AAMrE,KAAK,gBAAgB,GAAG;IACtB,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;CACpB,CAAC;AAqBF,KAAK,eAAe,GAAG;IACrB,GAAG,EAAE,GAAG,CAAC;IACT,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,OAAO,CAAC;IACf,yBAAyB,CAAC,EAAE,gBAAgB,EAAE,CAAC;IAC/C,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAC;CACpB,CAAC;AA4OF;;;GAGG;AACH,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,eAAe;oCAiyIpB,OAAO;sDAPW,gBAAgB,EAAE;;;;sBAhBjD,UAAU,GAAG,SAAS;;;8BA4Df,UAAU;2BAyBb,UAAU;;;iBAW3B,MAAM;kBACL,MAAM;kBACN,MAAM;qBACH,MAAM;;kBApzIF,UAAU,WAAW,MAAM,YAAY,YAAY;EAu1IzE;AAGD,MAAM,WAAW,gBAAgB;IAC/B,EAAE,EAAE,MAAM,CAAC;IAEX,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,QAAQ,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,iBAAiB,EAAE,KAAK,CAAC,UAAU,CAAC,CAAC;IACrC,mBAAmB,EAAE,KAAK,CAAC,UAAU,CAAC,CAAC;IACvC,qBAAqB,EAAE,KAAK,CAAC,UAAU,CAAC,CAAC;CAC1C;AAMD,eAAO,MAAM,6BAA6B,aAC9B,UAAU,+DAGnB,MAAM,gBAAgB,CAyCxB,CAAC;AAMF,MAAM,MAAM,cAAc,GAAG,UAAU,CAAC,OAAO,oBAAoB,CAAC,CAAC"}
package/out/checker.js CHANGED
@@ -3851,7 +3851,9 @@ function createErrorDiagnoser(context) {
3851
3851
  * @param node
3852
3852
  */
3853
3853
  function* checkQueryOrderByExpression(node) {
3854
- yield* checkNode(node.orderElement);
3854
+ if (ensureNodeKeyExists(node, 'orderElement')) {
3855
+ yield* checkNode(node.orderElement);
3856
+ }
3855
3857
  yield* checkPlayground(node.orderElementPlayground);
3856
3858
  }
3857
3859
  /**
@@ -3880,13 +3882,20 @@ function createErrorDiagnoser(context) {
3880
3882
  function* checkOqlQueryComponent(node) {
3881
3883
  ensureNodeKeyExists(node, 'code');
3882
3884
  yield* checkSameSource(node);
3883
- // 自动推导情况
3884
- const typeAnnotation = env.getType(node);
3885
- if (!node.typeAnnotation && typeAnnotation) {
3886
- if (typeAnnotation.typeName === 'List' && typeAnnotation.typeKind === 'generic') {
3887
- const { typeArguments = [] } = typeAnnotation;
3888
- if (typeArguments.length && typeArguments[0].isComplexType()) {
3889
- error(node, `SQL查询:返回类型不支持单个复杂类型 ${typeArguments[0].headTitle}。`);
3885
+ if (node.typeAnnotation) { // 手动设置
3886
+ const IMPOSSIBLE_TOPLEVEL_TYPES = ['Map'];
3887
+ if (IMPOSSIBLE_TOPLEVEL_TYPES.includes(node.typeAnnotation.typeName || "")) {
3888
+ error(node, `SQL查询:返回类型不支持设置为 ${node.typeAnnotation.headTitle}。`);
3889
+ }
3890
+ }
3891
+ else { // 自动推导
3892
+ const typeAnnotation = env.getType(node);
3893
+ if (typeAnnotation) {
3894
+ if (typeAnnotation.typeName === 'List' && typeAnnotation.typeKind === 'generic') {
3895
+ const { typeArguments = [] } = typeAnnotation;
3896
+ if (typeArguments.length && typeArguments[0].isComplexType()) {
3897
+ error(node, `SQL查询:返回类型不支持单个复杂类型 ${typeArguments[0].headTitle}。`);
3898
+ }
3890
3899
  }
3891
3900
  }
3892
3901
  }
@@ -4482,6 +4491,8 @@ function createErrorDiagnoser(context) {
4482
4491
  }
4483
4492
  });
4484
4493
  diagnostics?.clear();
4494
+ // 删除 diagnosticMap 中的 key,避免内存泄漏和冗余报错
4495
+ diagnosticMap.delete(node);
4485
4496
  }
4486
4497
  else {
4487
4498
  diagnosticMap.clear();