@lcap/nasl-language-server-core 3.14.0-rc.3 → 3.14.0-rc.5

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 (111) hide show
  1. package/out/checker.d.ts.map +1 -1
  2. package/out/checker.js +93 -36
  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 +3 -1
  7. package/out/index.js.map +1 -1
  8. package/out/module/graph.js +6 -6
  9. package/out/module/graph.js.map +1 -1
  10. package/out/module/module.d.ts.map +1 -1
  11. package/out/module/module.js +3 -6
  12. package/out/module/module.js.map +1 -1
  13. package/out/reference-manager/builtin-q-name.d.ts +8 -1
  14. package/out/reference-manager/builtin-q-name.d.ts.map +1 -1
  15. package/out/reference-manager/builtin-q-name.js +55 -1
  16. package/out/reference-manager/builtin-q-name.js.map +1 -1
  17. package/out/reference-manager/get-q-name.js.map +1 -1
  18. package/out/reference-manager/reference-manager.d.ts +14 -6
  19. package/out/reference-manager/reference-manager.d.ts.map +1 -1
  20. package/out/reference-manager/reference-manager.js +221 -111
  21. package/out/reference-manager/reference-manager.js.map +1 -1
  22. package/out/reference-manager/rename-q-name.d.ts.map +1 -1
  23. package/out/reference-manager/rename-q-name.js +3 -0
  24. package/out/reference-manager/rename-q-name.js.map +1 -1
  25. package/out/reference-manager/symbol-type.d.ts +5 -3
  26. package/out/reference-manager/symbol-type.d.ts.map +1 -1
  27. package/out/reference-manager/symbol-type.js +11 -8
  28. package/out/reference-manager/symbol-type.js.map +1 -1
  29. package/out/reference-manager/update-nasl-fragment.d.ts.map +1 -1
  30. package/out/reference-manager/update-nasl-fragment.js +5 -4
  31. package/out/reference-manager/update-nasl-fragment.js.map +1 -1
  32. package/out/symbol/graph.js +2 -2
  33. package/out/symbol/graph.js.map +1 -1
  34. package/out/typer/collectGlobalDefs.d.ts.map +1 -1
  35. package/out/typer/collectGlobalDefs.js +79 -15
  36. package/out/typer/collectGlobalDefs.js.map +1 -1
  37. package/out/typer/component-def-manager/component-def-manager.d.ts +11 -7
  38. package/out/typer/component-def-manager/component-def-manager.d.ts.map +1 -1
  39. package/out/typer/component-def-manager/component-def-manager.js +17 -6
  40. package/out/typer/component-def-manager/component-def-manager.js.map +1 -1
  41. package/out/typer/component-def-manager/utils.d.ts.map +1 -1
  42. package/out/typer/component-def-manager/utils.js +5 -3
  43. package/out/typer/component-def-manager/utils.js.map +1 -1
  44. package/out/typer/dispatch-def.d.ts +0 -2
  45. package/out/typer/dispatch-def.d.ts.map +1 -1
  46. package/out/typer/dispatch-def.js +15 -43
  47. package/out/typer/dispatch-def.js.map +1 -1
  48. package/out/typer/dispatch-expr.d.ts.map +1 -1
  49. package/out/typer/dispatch-expr.js +135 -97
  50. package/out/typer/dispatch-expr.js.map +1 -1
  51. package/out/typer/dispatch-process.d.ts +0 -1
  52. package/out/typer/dispatch-process.d.ts.map +1 -1
  53. package/out/typer/dispatch-process.js +22 -14
  54. package/out/typer/dispatch-process.js.map +1 -1
  55. package/out/typer/dispatch-stmt.d.ts.map +1 -1
  56. package/out/typer/dispatch-stmt.js +30 -21
  57. package/out/typer/dispatch-stmt.js.map +1 -1
  58. package/out/typer/dispatch-view.d.ts.map +1 -1
  59. package/out/typer/dispatch-view.js +90 -40
  60. package/out/typer/dispatch-view.js.map +1 -1
  61. package/out/typer/incremental-update.d.ts +7 -30
  62. package/out/typer/incremental-update.d.ts.map +1 -1
  63. package/out/typer/incremental-update.js +133 -217
  64. package/out/typer/incremental-update.js.map +1 -1
  65. package/out/typer/index.d.ts +3 -4
  66. package/out/typer/index.d.ts.map +1 -1
  67. package/out/typer/index.js +4 -4
  68. package/out/typer/index.js.map +1 -1
  69. package/out/typer/sem-diag.d.ts +1 -0
  70. package/out/typer/sem-diag.d.ts.map +1 -1
  71. package/out/typer/sem-diag.js +24 -17
  72. package/out/typer/sem-diag.js.map +1 -1
  73. package/out/typer/solver.d.ts +1 -0
  74. package/out/typer/solver.d.ts.map +1 -1
  75. package/out/typer/solver.js +9 -1
  76. package/out/typer/solver.js.map +1 -1
  77. package/out/typer/subster.d.ts.map +1 -1
  78. package/out/typer/subster.js +21 -10
  79. package/out/typer/subster.js.map +1 -1
  80. package/out/typer/type-manager.d.ts +3 -2
  81. package/out/typer/type-manager.d.ts.map +1 -1
  82. package/out/typer/type-manager.js +30 -20
  83. package/out/typer/type-manager.js.map +1 -1
  84. package/out/typer/type-predicate.d.ts +15 -2
  85. package/out/typer/type-predicate.d.ts.map +1 -1
  86. package/out/typer/type-predicate.js +56 -24
  87. package/out/typer/type-predicate.js.map +1 -1
  88. package/out/typer/typer.d.ts +25 -2
  89. package/out/typer/typer.d.ts.map +1 -1
  90. package/out/typer/typer.js +39 -7
  91. package/out/typer/typer.js.map +1 -1
  92. package/out/typer/unifier.d.ts.map +1 -1
  93. package/out/typer/unifier.js +37 -27
  94. package/out/typer/unifier.js.map +1 -1
  95. package/out/utils/parseTsClassType.d.ts +2 -0
  96. package/out/utils/parseTsClassType.d.ts.map +1 -1
  97. package/out/utils/parseTsClassType.js +7 -2
  98. package/out/utils/parseTsClassType.js.map +1 -1
  99. package/out/utils/type-operator.d.ts +2 -2
  100. package/out/utils/type-operator.d.ts.map +1 -1
  101. package/out/utils/type-operator.js +24 -7
  102. package/out/utils/type-operator.js.map +1 -1
  103. package/package.json +5 -6
  104. package/out/utils/vue-hack.d.ts +0 -25
  105. package/out/utils/vue-hack.d.ts.map +0 -1
  106. package/out/utils/vue-hack.js +0 -33
  107. package/out/utils/vue-hack.js.map +0 -1
  108. package/out/utils/vue.d.ts +0 -2
  109. package/out/utils/vue.d.ts.map +0 -1
  110. package/out/utils/vue.js +0 -10
  111. package/out/utils/vue.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"dispatch-def.js","sourceRoot":"","sources":["../../src/typer/dispatch-def.ts"],"names":[],"mappings":";;;AAAA,uDAmC6B;AAC7B,8DAEkC;AAElC,mCAGiB;AAEjB,yDAAiD;AACjD,8EAAuG;AACvG,mDAAwE;AACxE,mEAA8D;AAC9D,iDAUwB;AAExB,qDAO0B;AAC1B,iDAA0D;AAE1D,mDAA8D;AAC9D,uCAAuC;AAGvC,0CAA0C;AAC1C,SAAgB,WAAW,CAAC,GAAW,EAAE,EAAc;IACnD,IAAI,CAAC,EAAE,EAAE,CAAC;QACN,OAAO,SAAS,CAAC;IACrB,CAAC;IAED,GAAG,CAAC,cAAc,GAAG,KAAK,CAAC,CAAC,gBAAgB;IAC5C,MAAM,cAAc,GAAG,GAAG,CAAC,WAAW,CAAC;IACvC,GAAG,CAAC,WAAW,GAAG,EAAE,CAAC;IACrB,IAAI,IAAA,qDAAmC,EAAC,EAAE,CAAC,EAAE,CAAC;QAC1C,GAAG,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAC3B,CAAC;IACD,IAAI,CAAC,CAAC,YAAY;QACd,QAAQ,EAAE,CAAC,OAAO,EAAE,CAAC;YACjB,KAAK,UAAU;gBAAE,UAAU,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;gBAAC,MAAM;YAC5C,KAAK,OAAO;gBAAE,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;gBAAC,MAAM;YACtC,KAAK,QAAQ;gBAAE,QAAQ,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;gBAAC,MAAM;YACxC,KAAK,WAAW,CAAC,CAAC,MAAM;YACxB,KAAK,OAAO;gBAAE,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;gBAAC,MAAM;YACtC,KAAK,gBAAgB;gBAAE,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;gBAAC,MAAM;YAC/C,KAAK,eAAe;gBAAE,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;gBAAC,MAAM;YAC9C,mDAAmD;YACnD,KAAK,QAAQ;gBAAE,QAAQ,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;gBAAC,MAAM;YACxC,KAAK,WAAW;gBAAE,WAAW,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;gBAAC,MAAM;YAC9C,KAAK,MAAM,CAAC,CAAC,4BAA4B,CAAC,MAAM;YAChD,KAAK,YAAY;gBAAE,YAAY,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;gBAAC,MAAM;YAChD,KAAK,WAAW,CAAC;YACjB,KAAK,eAAe;gBAAE,WAAW,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;gBAAC,MAAM;YAClD,KAAK,uBAAuB;gBAAE,uBAAuB,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;gBAAC,MAAM;YACtE,KAAK,iBAAiB;gBAAE,iBAAiB,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;gBAAC,MAAM;YAC1D,KAAK,WAAW;gBAAE,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;gBAAC,MAAM;YAC1C,KAAK,2BAA2B;gBAAE,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;gBAAC,MAAM;YAC1D,KAAK,gBAAgB;gBAAE,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;gBAAC,MAAM;YAC/C,KAAK,OAAO;gBAAE,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;gBAAC,MAAM;YACtC,KAAK,YAAY,CAAC,CAAC,MAAM;YACzB,KAAK,cAAc;gBAAE,cAAc,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;gBAAC,MAAM;YACpD,KAAK,iBAAiB;gBAAE,iBAAiB,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;gBAAC,MAAM;YAC1D,KAAK,kBAAkB;gBAAE,kBAAkB,CAAC,GAAG,EAAE,EAAsB,CAAC,CAAC;gBAAC,MAAM;YAChF,KAAK,WAAW;gBAAE,IAAA,8BAAW,EAAC,GAAG,EAAE,EAAE,CAAC,CAAC;gBAAC,MAAM;YAC9C,KAAK,QAAQ;gBAAE,IAAA,gBAAQ,EAAC,GAAG,EAAE,EAAE,CAAC,CAAC;gBAAC,MAAM;YACxC,KAAK,WAAW;gBAAE,IAAA,mBAAW,EAAC,GAAG,EAAE,EAAE,CAAC,CAAC;gBAAC,MAAM,CAAC,mBAAmB;YAClE,KAAK,WAAW;gBAAE,IAAA,mBAAW,EAAC,GAAG,EAAE,EAAE,CAAC,CAAC;gBAAC,MAAM;YAC9C,OAAO,CAAC,CAAC,CAAC;gBACN,MAAM,KAAK,GAAG,IAAI,KAAK,CAAC,eAAe,EAAE,CAAC,OAAO,EAAE,CAAC,CAAC;gBACrD,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;YACvB,CAAC;QACL,CAAC;IACL,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,kCAAkC,CAAC,CAAC;QACrD,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IACtB,CAAC;YAAS,CAAC;QACP,IAAI,IAAA,qDAAmC,EAAC,EAAE,CAAC,EAAE,CAAC;YAC1C,GAAG,CAAC,SAAS,CAAC,GAAG,EAAE,CAAC;QACxB,CAAC;QACD,GAAG,CAAC,WAAW,GAAG,cAAc,CAAC;IACrC,CAAC;AACL,CAAC;AAvDD,kCAuDC;AAED,SAAS,WAAW,CAAC,GAAW,EAAE,EAA6B;IAC3D,MAAM,aAAa,GAAG,CAAC,GAAG,EAAE,CAAC,MAAM,EAAE,GAAG,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,cAAc,CAAC,CAAC;IAC1E,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,WAAW,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC;IAChD,4DAA4D;IAC5D,6EAA6E;IAC7E,oEAAoE;IACpE,EAAE,CAAC,UAAU,EAAE,KAAK,EAAE,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,IAAA,qCAAqB,EAAC,GAAG,EAAE,IAAI,CAAC,CAAC,CAAC;IACxE,aAAa,CAAC,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;IAErC,8BAA8B;IAC9B,IAAI,EAAE,CAAC,eAAe,EAAE,CAAC;QACrB,MAAM,QAAQ,GAAG,GAAG,CAAC,MAAM,CAAC,SAAS,CAAC,GAAG,CAAC,cAAc,EAAE,CAAC,eAAe,EAAE,CAAC,CAAC;QAC9E,IAAI,QAAQ,EAAE,CAAC;YACX,gEAAgE;YAChE,MAAM,SAAS,GAAG,GAAG,CAAC,MAAM,CAAC,aAAa,CAAC,QAAQ,CAAC,IAAI,IAAI,GAAG,EAAc,CAAC;YAC9E,SAAS,CAAC,GAAG,CAAC,EAA2B,CAAC,CAAC;YAC3C,GAAG,CAAC,MAAM,CAAC,aAAa,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC;YAE9C,MAAM,MAAM,GAAG,GAAG,CAAC,MAAM,CAAC,aAAa,CAAC,EAA2B,CAAC,IAAI,IAAI,GAAG,EAAc,CAAC;YAC9F,MAAM,CAAC,GAAG,CAAC,QAAiC,CAAC,CAAC;YAC9C,GAAG,CAAC,MAAM,CAAC,aAAa,CAAC,EAA2B,EAAE,MAAM,CAAC,CAAC;QAClE,CAAC;QAED,MAAM,kBAAkB,GAAG,GAAG,CAAC,MAAM,CAAC,qBAAqB,CAAC,GAAG,CAAC,cAAc,EAAE,CAAC,eAAe,EAAE,CAAC,CAAC;QACpG,4BAA4B;QAC5B,kBAAkB,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC;QAE5B,MAAM,YAAY,GAAG,GAAG,CAAC,MAAM,CAAC,qBAAqB,CAAC,GAAG,CAAC,GAAG,IAAA,yCAAqB,EAAC,EAAE,CAAC,EAAE,CAAC,CAAC;QAC1F,4BAA4B;QAC5B,YAAY,EAAE,GAAG,CAAC,QAAQ,CAAC,CAAC;IAChC,CAAC;AACL,CAAC;AAED,MAAM,uBAAuB,GAAG,WAAW,CAAC;AAErC,MAAM,kBAAkB,GAAG,CAA8B,EAAK,EAAE,EAAE;IACrE,MAAM,eAAe,GAAG,IAAA,2CAAmB,EAAC,EAAE,CAAC,CAAC;IAChD,MAAM,OAAO,GAAsB,EAAE,CAAC;IACtC,IAAI,eAAe,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC7B,OAAO,CAAC,GAAG,CAAC,UAAU,EAAE,CAAC,cAAc,wBAAwB,CAAC,CAAC;QACjE,eAAe,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE;YACxB,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC;YACxE,IAAI,CAAC,CAAC,qBAAqB,EAAE,CAAC;gBAC1B,OAAO;YACX,CAAC;YACD,IAAI,CAAC,CAAC,CAAC,gBAAgB,EAAE,CAAC;gBACtB,OAAO;YACX,CAAC;YACD,MAAM,EAAE,GAAG,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC;YACnC,IAAI,EAAE,IAAI,CAAC,IAAA,+BAAc,EAAC,EAAE,CAAC,IAAI,CAAC,IAAA,wBAAO,EAAC,EAAE,CAAC,IAAI,CAAC,IAAA,yBAAQ,EAAC,EAAE,CAAC,EAAE,CAAC;gBAC7D,mBAAmB;gBACnB,CAAC,CAAC,IAAI,CAAC,cAAc,GAAG,EAAE,CAAC;gBAC3B,mBAAmB;gBACnB,MAAM,IAAI,GAAG,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,MAAM,EAAE,CAAC;gBAC5C,OAAO,CAAC,IAAI,CAAC,GAAG,EAAE;oBACd,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,cAAc,EAAE,IAAI,EAAE,CAAC,CAAC;gBAC5C,CAAC,CAAC,CAAC;YACP,CAAC;QACL,CAAC,CAAC,CAAC;IACP,CAAC;IACD,OAAO,OAAO,CAAC;AACnB,CAAC,CAAA;AA1BY,QAAA,kBAAkB,sBA0B9B;AAED,SAAgB,OAAO,CAA8B,GAAW,EAAE,EAAK;IACnE,MAAM,SAAS,GAAG,CAAC,GAAG,EAAE,CAAC,aAAa,EAAE,GAAG,EAAE,CAAC,MAAM,EAAE,GAAG,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC;IACtF,OAAO;IACP,EAAE,CAAC,OAAO,KAAK,2BAA2B,IAAI,SAAS,CAAC,IAAI,CAAC,GAAG,CAAE,EAAgC,CAAC,UAAU,CAAC,CAAC,CAAC;IAChH,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE;QACpB,WAAW,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC;IACxB,CAAC,CAAC,CAAC;IACH,GAAG,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,EAAE,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;IAElD,IAAA,8BAAc,EAAC,GAAG,EAAC,EAAE,CAAC,IAAI,CAAC,CAAC;IAC5B,IAAA,2BAAmB,EAAC,GAAG,EAAE,EAAE,CAAC,UAAU,CAAC,CAAC;IACxC,SAAS,CAAC,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;IAEjC,GAAG,CAAC,OAAO,CAAC,EAAE,EAAE,IAAA,oCAAqB,EAAC,EAAE,EAAE,GAAG,CAAC,CAAC,CAAC;IAEhD,mBAAmB;IACnB,IAAG,CAAC,GAAG,CAAC,MAAM,EAAC,CAAC;QACd,GAAG,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC;IACzB,CAAC;IAED,IAAI,EAAE,CAAC,QAAQ,EAAE,UAAU,CAAC,YAAY,CAAC,EAAE,CAAC;QACxC,MAAM,OAAO,GAAG,IAAA,6CAAqC,EAAC,EAAE,CAAC,SAAS,IAAI,EAAE,EAAE,EAAE,CAAC,OAAO,CAAC,CAAC;QACtF,GAAG,CAAC,gBAAgB,CAAC,EAAE,EAAE,OAAO,CAAC,GAAG,CAAC,cAAc,EAAE,EAAE,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC;IAC7E,CAAC;IACD,8CAA8C;IAC9C,CAAC,GAAG,CAAC,MAAM,IAAI,GAAG,CAAC,aAAa,CAAC,oBAAU,CAAC,CAAC;IAC7C,OAAO,GAAG,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC;AAC9B,CAAC;AA3BD,0BA2BC;AAED,MAAM,iBAAiB,GAAG,CAAC,GAAW,EAAE,EAAmB,EAAE,EAAE;IAC3D,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;IACjB,MAAM,GAAG,GAAG,EAAE,CAAC,qBAAqB,EAAE,CAAC;IACvC,GAAG,CAAC,eAAe,CAAC,GAAG,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;AACrC,CAAC,CAAA;AAEM,MAAM,qBAAqB,GAAG,CAAC,GAAW,EAAE,MAAgC,EAAqB,EAAE;IACtG,MAAM,OAAO,GAAsB,EAAE,CAAC;IACtC,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;QACzB,IAAI,GAAG,CAAC,kBAAkB,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,CAAC;YACxC;;eAEG;YACH,OAAO,CAAC,IAAI,CAAC,GAAG,IAAA,0BAAkB,EAAC,KAAK,CAAC,CAAC,CAAC;QAC/C,CAAC;IACL,CAAC;IACD,OAAO,OAAO,CAAC;AACnB,CAAC,CAAA;AAXY,QAAA,qBAAqB,yBAWjC;AAEM,MAAM,qBAAqB,GAAG,CAAC,MAA4D,EAAE,EAAE;IAClG,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC,CAAC,mBAAmB;QAC7C,MAAM,MAAM,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,IAAI,EAAE,CAAC,EAAE,GAAG,CAAC,KAAK,CAAC,aAAa,IAAI,EAAE,CAAC,CAAC,CAAC;QACzE,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;YACzB,KAAK,CAAC,QAAQ,GAAG,OAAO,CAAC,KAAK,CAAC,YAAY,EAAE,UAAU,CAAC,CAAC;YACzD,IAAI,KAAK,CAAC,OAAO,KAAK,gBAAgB,EAAE,CAAC;gBACrC,KAAK,CAAC,QAAQ,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC;YACrC,CAAC;QACL,CAAC;IACL,CAAC;AACL,CAAC,CAAA;AAVY,QAAA,qBAAqB,yBAUjC;AAED,SAAS,UAAU,CAAC,GAAW,EAAE,EAAY;IACzC,IAAA,oBAAY,EAAC,GAAG,CAAC,YAAY,EAAE,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC,gCAAgC;IAC7E,MAAM,KAAK,GAAG,EAAE,CAAC,cAAc,IAAI,GAAG,CAAC,OAAO,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;IACtE,IAAI,EAAE,CAAC,YAAY,EAAE,CAAC;QAClB,MAAM,QAAQ,GAAG,IAAA,6BAAa,EAAC,GAAG,EAAE,EAAE,CAAC,YAAY,EAAE,KAAK,CAAC,CAAC;QAC5D,MAAM,EAAE,GAAG,EAAE,CAAC,cAAc,IAAI,QAAQ,CAAC;QACzC,GAAG,CAAC,OAAO,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;IACxB,CAAC;SAAM,CAAC;QACJ,GAAG,CAAC,OAAO,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC;IAC3B,CAAC;AACL,CAAC;AAED,SAAS,iBAAiB,CAAC,GAAW,EAAE,EAAmB;IACvD,IAAA,4BAAY,EAAC,GAAG,EAAE,EAAE,CAAC,YAAY,EAAE,EAAE,CAAC,cAAc,CAAC,CAAC;IACtD,GAAG,CAAC,OAAO,CAAC,EAAE,EAAE,EAAE,CAAC,cAAc,CAAC,CAAC;AACvC,CAAC;AAED,SAAS,kBAAkB,CAAC,GAAW,EAAE,EAAoB;IACzD,IAAA,4BAAY,EAAC,GAAG,EAAE,EAAE,CAAC,YAAY,EAAE,EAAE,CAAC,cAAc,CAAC,CAAC;IACtD,GAAG,CAAC,OAAO,CAAC,EAAE,EAAE,EAAE,CAAC,cAAc,CAAC,CAAC;AACvC,CAAC;AAED,qBAAqB;AACrB,SAAS,QAAQ,CAAC,GAAW,EAAE,EAAU;IACrC,IAAA,oBAAY,EAAC,GAAG,CAAC,YAAY,EAAE,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,CAAA,CAAC,gCAAgC;IAC5E,MAAM,EAAE,GAAG,EAAE,CAAC,cAAc,IAAI,GAAG,CAAC,OAAO,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;IACnE,GAAG,CAAC,OAAO,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;IAEpB,IAAA,4BAAY,EAAC,GAAG,EAAE,EAAE,CAAC,YAAY,EAAE,GAAG,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,uBAAuB;AACnF,CAAC;AAED,SAAS,OAAO,CAAC,GAAW,EAAE,EAA0B;IACpD,IAAA,oBAAY,EAAC,GAAG,CAAC,YAAY,EAAE,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC,gCAAgC;IAC7E,GAAG,CAAC,OAAO,CAAC,EAAE,EAAE,EAAE,CAAC,cAAc,CAAC,CAAC,CAAE,mDAAmD;IAExF,IAAA,4BAAY,EAAC,GAAG,EAAE,EAAE,CAAC,YAAY,EAAE,GAAG,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,uBAAuB;IAE/E,EAAE,CAAC,QAAQ,GAAG,OAAO,CAAC,EAAE,CAAC,YAAY,EAAE,UAAU,CAAC,CAAC;IACnD,IAAI,EAAE,CAAC,OAAO,KAAK,gBAAgB,EAAE,CAAC;QAClC,EAAE,CAAC,QAAQ,GAAG,CAAC,EAAE,CAAC,QAAQ,CAAC;IAC/B,CAAC;AACL,CAAC;AAED,SAAS,QAAQ,CAAC,GAAW,EAAE,EAAU;IACrC,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE;QAC3B,GAAG,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,aAAa;QACrD,IAAI,CAAC,YAAY,IAAI,IAAA,6BAAa,EAAC,GAAG,EAAE,IAAI,CAAC,YAAY,EAAE,IAAI,CAAC,cAAc,CAAC,CAAC;IACpF,CAAC,CAAC,CAAC;IACH,gEAAgE;IAChE,GAAG,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC;AAC3B,CAAC;AAED,SAAS,YAAY,CAAC,GAAW,EAAE,EAAc;IAC7C,EAAE,CAAC,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,WAAW,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC,CAAC;AAC5D,CAAC;AAED,SAAS,WAAW,CAAC,GAAW,EAAE,EAAa;IAC3C,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE;QAC3B,GAAG,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,aAAa;QACrD,IAAI,CAAC,YAAY,IAAI,IAAA,6BAAa,EAAC,GAAG,EAAE,IAAI,CAAC,YAAY,EAAE,IAAI,CAAC,cAAc,CAAC,CAAC;IACpF,CAAC,CAAC,CAAC;IACH,GAAG,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC;IAEvB,gEAAgE;IAChE,IAAI,EAAE,CAAC,IAAI,KAAK,kBAAkB,EAAE,CAAC;QACjC,MAAM,QAAQ,GAAG,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,MAAM,CAAC,CAAC;QAC5D,IAAI,QAAQ,EAAE,CAAC;YACX,QAAQ,CAAC,cAAc,GAAG,IAAA,8BAAe,EAAC,wBAAS,CAAC,CAAC;QACzD,CAAC;IACL,CAAC;AACL,CAAC;AAED,+CAA+C;AACxC,MAAM,WAAW,GAAG,CAAC,GAAW,EAAE,EAAa,EAAE,EAAE;IACtD,gCAAgC;IAChC,EAAE,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC;IAE7C,0BAA0B;IAC1B,MAAM,IAAI,GAAG,qEAAqE,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;IAC5F,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,WAAW,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC;IAE3C,sBAAsB;IACtB,MAAM,MAAM,GAAG,+DAA+D,CAAC,EAAE,CAAC,CAAC;IACnF,MAAM,UAAU,GAAG,IAAA,uCAAwB,EAAC,GAAG,EAAE,MAAM,CAAC,CAAC;IACzD,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,WAAW,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC;IAE7C,UAAU;IACV,EAAE,CAAC,UAAU,EAAE,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;AAC1C,CAAC,CAAA;AAfY,QAAA,WAAW,eAevB;AAED,+CAA+C;AACxC,MAAM,WAAW,GAAG,CAAC,GAAW,EAAE,EAAa,EAAE,EAAE;IACtD,0BAA0B;IAC1B,MAAM,IAAI,GAAG,qEAAqE,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;IAC5F,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,WAAW,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC;IAE3C,sBAAsB;IACtB,MAAM,MAAM,GAAG,+DAA+D,CAAC,EAAE,CAAC,CAAC;IACnF,MAAM,UAAU,GAAG,IAAA,uCAAwB,EAAC,GAAG,EAAE,MAAM,CAAC,CAAC;IACzD,UAAU,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,WAAW,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC,CAAC;IAErD,sBAAsB;IACtB,MAAM,KAAK,GAAG,iDAAiD,CAAC,EAAE,CAAC,CAAC;IACpE,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,WAAW,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC,CAAC;IAE9C,yBAAyB;IACzB,MAAM,SAAS,GAAG,oDAAoD,CAAC,EAAE,CAAC,CAAC;IAC3E,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,WAAW,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC,CAAC;AACtD,CAAC,CAAA;AAjBY,QAAA,WAAW,eAiBvB;AAED,4CAA4C;AACrC,MAAM,QAAQ,GAAG,CAAC,GAAW,EAAE,EAAU,EAAE,EAAE;IAChD,0BAA0B;IAC1B,MAAM,IAAI,GAAG,qEAAqE,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;IAC5F,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,WAAW,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC;IAE3C,sBAAsB;IACtB,MAAM,MAAM,GAAG,+DAA+D,CAAC,EAAE,CAAC,CAAC;IACnF,MAAM,UAAU,GAAG,IAAA,uCAAwB,EAAC,GAAG,EAAE,MAAM,CAAC,CAAC;IACzD,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,WAAW,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC;IAE7C,sBAAsB;IACtB,MAAM,KAAK,GAAG,iDAAiD,CAAC,EAAE,CAAC,CAAC;IACpE,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,WAAW,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC,CAAC;IAE9C,yBAAyB;IACzB,MAAM,SAAS,GAAG,oDAAoD,CAAC,EAAE,CAAC,CAAC;IAC3E,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,WAAW,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC,CAAC;IAElD,2BAA2B;IAC3B,+EAA+E;AACnF,CAAC,CAAA;AApBY,QAAA,QAAQ,YAoBpB;AAED,0EAA0E;AAC1E,iEAAiE;AACjE,SAAgB,qEAAqE,CAAC,GAAW,EAAE,EAAwC;IACvI,MAAM,UAAU,GAAsB,EAAE,CAAC;IAEzC,MAAM,QAAQ,GAAG,CAAC,EAAwC,EAAE,EAAE;QAC1D,UAAU,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,CAAC;QAC7B,EAAE,CAAC,UAAU,EAAE,MAAM,IAAI,UAAU,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,UAAU,CAAC,CAAC;QAC3D,EAAE,CAAC,UAAU,EAAE,MAAM,IAAI,UAAU,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,UAAU,CAAC,CAAC;QAC3D,EAAE,CAAC,OAAO,KAAK,WAAW,IAAI,EAAE,CAAC,WAAW,EAAE,MAAM,IAAI,UAAU,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,WAAW,CAAC,CAAC;QAC3F,EAAE,CAAC,OAAO,KAAK,WAAW,IAAI,EAAE,CAAC,aAAa,EAAE,MAAM,IAAI,UAAU,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,aAAa,CAAC,CAAC;QAC/F,EAAE,CAAC,OAAO,KAAK,WAAW,IAAK,EAAgB,CAAC,UAAU,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC;QAC9E,mBAAmB;QACnB,EAAE,CAAC,aAAa,EAAE,MAAM,EAAE,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,aAAa,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC,CAAC;QACtE,IAAI,EAAE,CAAC,OAAO,KAAK,WAAW,EAAE,CAAC;YAC5B,EAAgB,CAAC,QAAQ,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;YAC7C,kCAAkC;YAClC,UAAU,CAAC,IAAI,CAAC,GAAI,EAAgB,CAAC,iBAAiB,CAAC,CAAC;YACxD,UAAU,CAAC,IAAI,CAAC,GAAI,EAAgB,CAAC,SAAS,CAAC,CAAC;QACpD,CAAC;IACL,CAAC,CAAA;IACD,QAAQ,CAAC,EAAE,CAAC,CAAC;IAEb,IAAI,EAAE,CAAC,OAAO,KAAK,KAAK,EAAE,CAAC;QACvB,EAAE,CAAC,qBAAqB,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;QAC3C,EAAE,CAAC,YAAY,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;QAClC,EAAE,CAAC,WAAW,IAAI,aAAa,CAAC,GAAG,EAAE,EAAE,CAAC,WAAW,CAAC,CAAC;QACrD,EAAE,CAAC,qBAAqB,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC;QAC5C,8CAA8C;IAClD,CAAC;IACD,OAAO,UAAU,CAAC;AACtB,CAAC;AA7BD,sJA6BC;AAED,oCAAoC;AACpC,SAAgB,+DAA+D,CAAC,EAAwC;IAEpH,MAAM,YAAY,GAA4F,EAAE,CAAC;IAEjH,MAAM,QAAQ,GAAG,CAAC,EAAwC,EAAE,EAAE;QAC1D,EAAE,CAAC,MAAM,EAAE,MAAM,IAAI,YAAY,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,CAAC;QACrD,IAAI,EAAE,CAAC,OAAO,KAAK,KAAK,IAAI,EAAE,CAAC,OAAO,KAAK,WAAW,EAAE,CAAC,CAAC,mBAAmB;YACzE,EAAE,CAAC,UAAU,EAAE,MAAM,IAAI,YAAY,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC,2BAA2B;YACzF,EAAE,CAAC,0BAA0B,EAAE,MAAM,IAAI,YAAY,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,0BAA0B,CAAC,CAAC,CAAC,2BAA2B;YACzH,EAAE,CAAC,YAAY,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,OAAO;QAC/C,CAAC;QACD,IAAI,EAAE,CAAC,OAAO,KAAK,KAAK,EAAE,CAAC;YACvB,YAAY,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,gBAAgB,CAAC,CAAC;YAC1C,EAAE,CAAC,qBAAqB,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC;QAChD,CAAC;QACD,IAAI,EAAE,CAAC,OAAO,KAAK,WAAW,EAAE,CAAC,CAAC,mBAAmB;YACjD,EAAE,CAAC,kBAAkB,IAAI,YAAY,CAAC,IAAI,CAAC,EAAE,CAAC,kBAAkB,CAAC,CAAC,CAAC,mBAAmB;YACtF,EAAE,CAAC,WAAW,IAAI,YAAY,CAAC,IAAI,CAAC,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC,mBAAmB;YACxE,EAAE,CAAC,UAAU,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC;QACrC,CAAC;QACD,IAAI,EAAE,CAAC,OAAO,KAAK,WAAW,EAAE,CAAC;YAC7B,sCAAsC;YACtC,EAAE,CAAC,QAAQ,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;QAClC,CAAC;IACL,CAAC,CAAA;IAED,QAAQ,CAAC,EAAE,CAAC,CAAC;IACb,OAAO,YAAY,CAAC;AACxB,CAAC;AA5BD,0IA4BC;AAED,6BAA6B;AAC7B,SAAgB,iDAAiD,CAAC,EAAsB;IAEpF,MAAM,WAAW,GAA2D,EAAE,CAAC;IAE/E,WAAW,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,CAAC;IAC9B,IAAI,EAAE,CAAC,OAAO,KAAK,QAAQ,EAAE,CAAC;QAC1B,EAAE,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,GAAoB,EAAE,EAAE;YAC1C,0CAA0C;YAC1C,2CAA2C;QAC/C,CAAC,CAAC,CAAC;IACP,CAAC;IACD,OAAO,WAAW,CAAC;AACvB,CAAC;AAZD,8GAYC;AAED,SAAgB,oDAAoD,CAAC,EAAsB;IAEvF,MAAM,cAAc,GAAkD,EAAE,CAAC;IAEzE,EAAE,CAAC,SAAS,EAAE,MAAM,IAAI,cAAc,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC;IAC7D,EAAE,CAAC,UAAU,EAAE,MAAM,IAAI,cAAc,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,UAAU,CAAC,CAAC;IAC/D,IAAI,EAAE,CAAC,OAAO,KAAK,WAAW,EAAE,CAAC;QAC7B,EAAE,CAAC,iBAAiB,EAAE,MAAM,IAAI,cAAc,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,iBAAiB,CAAC,CAAC;IACjF,CAAC;IACD,OAAO,cAAc,CAAC;AAC1B,CAAC;AAVD,oHAUC;AAED,iBAAiB;AACjB,SAAS,cAAc,CAAC,GAAW,EAAE,EAAgB;IACjD,sBAAsB;IACtB,MAAM,KAAK,GAAG,IAAA,yCAAqB,EAAC,EAAE,CAAC,CAAC;IACxC,KAAK,IAAI,GAAG,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,EAAE,EAAE,CAAC,cAAc,CAAC,CAAC;AACzD,CAAC;AAGD,MAAM,aAAa,GAAG,CAAC,GAAW,EAAE,EAAe,EAAE,EAAE;IACnD,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,YAAY,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC;AACrD,CAAC,CAAA;AAED,MAAM,YAAY,GAAG,CAAC,GAAW,EAAE,EAAkB,EAAE,EAAE;IACrD,GAAG,CAAC,OAAO,CAAC,EAAE,EAAE,2BAAY,CAAC,CAAC,CAAC,oEAAoE;AACvG,CAAC,CAAA;AAED,MAAM,aAAa,GAAG,CAAC,GAAW,EAAE,EAAe,EAAE,EAAE;IACnD,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,IAAA,mBAAW,EAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC;AACpD,CAAC,CAAA;AAED,MAAM,OAAO,GAAG,CAAC,GAAW,EAAE,EAAS,EAAE,EAAE;IACzC,MAAM,KAAK,GAAG,IAAA,yCAAqB,EAAC,EAAE,CAAC,CAAC;IACxC,IAAI,KAAK,EAAE,CAAC;QACV,GAAG,CAAC,MAAM,CAAC,WAAW,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;IACpC,CAAC;IACD,GAAG,CAAC,OAAO,CAAC,EAAE,EAAE,IAAA,oCAAqB,EAAC,EAAE,EAAE,GAAG,CAAC,CAAC,CAAC;AAClD,CAAC,CAAA;AAED;;;GAGG;AACI,MAAM,wBAAwB,GAAG,CAAC,GAAW,EAAE,EAAE;IACpD,MAAM,gBAAgB,GAAG,IAAI,8BAAc,CAAC;QACxC,QAAQ,EAAE,gBAAgB;QAC1B,aAAa,EAAE,oCAAoC;QACnD,QAAQ,EAAE,WAAW;KACxB,CAAC,CAAA;IACF,MAAM,KAAK,GAAG,IAAA,mCAAoB,EAC9B,CAAC,MAAM,EAAE,QAAQ,CAAC,EAClB,CAAC,IAAA,8BAAe,EAAC,IAAI,8BAAc,CAAC;YAChC,QAAQ,EAAE,GAAG;YACb,QAAQ,EAAE,WAAW;SACxB,CAAC,CAAC,EAAE,yBAAU,CAAC,CACnB,CAAC;IAEF,MAAM,OAAO,GAAG,IAAA,mCAAoB,EAChC,CAAC,2BAAY,EAAE,gBAAgB,CAAC,EAChC,KAAK,EACL,CAAC,IAAI,8BAAc,CAAC;YAChB,QAAQ,EAAE,GAAG;YACb,QAAQ,EAAE,WAAW;SACxB,CAAC,CAAC,CACN,CAAC;IAEF,MAAM,iBAAiB,GAAG,IAAI,qBAAK,CAAC;QAChC,IAAI,EAAE,cAAc;KACvB,CAAC,CAAC;IACH,iBAAiB,CAAC,gBAAgB,GAAG,OAAO,CAAC;IAC7C,MAAM,SAAS,GAAG,8CAA8C,CAAC;IAEjE,GAAG,CAAC,MAAM,CAAC,SAAS,CAAC,GAAG,CAAC,SAAS,EAAE,iBAAiB,CAAC,CAAC;IACvD,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,iBAAiB,EAAE,OAAO,CAAC,CAAC;AACrD,CAAC,CAAA;AA/BY,QAAA,wBAAwB,4BA+BpC;AAGM,MAAM,qCAAqC,GAC9C,CAAC,SAAgB,EAAE,OAAc,EAAE,EAAE,CACrC,CAAC,QAAoB,EAAE,WAAgC,OAAO,EAAE,EAAE,CAClE,CAAC,GAAW,EAAE,MAAiB,EAAE,EAAE;IAC/B,KAAK,MAAM,CAAC,IAAI,SAAS,EAAE,CAAC;QACxB,IAAI,CAAC,CAAC,cAAc;YAAE,SAAS;QAE/B,MAAM,KAAK,GAAG,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QAC7B,IAAI,IAAA,yBAAQ,EAAC,KAAK,CAAC,EAAE,CAAC;YAClB,GAAG,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,IAAI,cAAc,EAAE,QAAQ,EAAE,CAAC,EAAE,QAAQ,CAAC,CAAC;YAClE,CAAC,CAAC,gBAAgB,GAAG,SAAS,CAAC;QACnC,CAAC;aAAM,IAAI,CAAC,IAAA,iCAAgB,EAAC,KAAK,CAAC,EAAE,CAAC;YAClC,GAAG,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,IAAI,2BAA2B,EAAE,QAAQ,EAAE,CAAC,EAAE,QAAQ,CAAC,CAAC;YAC/E,CAAC,CAAC,gBAAgB,GAAG,SAAS,CAAC;QACnC,CAAC;IACL,CAAC;IACD,KAAK,MAAM,CAAC,IAAI,OAAO,EAAE,CAAC;QACtB,IAAI,CAAC,CAAC,cAAc;YAAE,SAAS;QAE/B,MAAM,KAAK,GAAG,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QAC7B,IAAI,IAAA,yBAAQ,EAAC,KAAK,CAAC,EAAE,CAAC;YAClB,GAAG,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,IAAI,cAAc,EAAE,QAAQ,EAAE,CAAC,EAAE,QAAQ,CAAC,CAAC;YAClE,CAAC,CAAC,gBAAgB,GAAG,SAAS,CAAC;QACnC,CAAC;aAAM,IAAI,CAAC,IAAA,iCAAgB,EAAC,KAAK,CAAC,EAAE,CAAC;YAClC,GAAG,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,IAAI,2BAA2B,EAAE,QAAQ,EAAE,CAAC,EAAE,QAAQ,CAAC,CAAC;YAC/E,CAAC,CAAC,gBAAgB,GAAG,SAAS,CAAC;QACnC,CAAC;IACL,CAAC;AACL,CAAC,CAAC;AA5BO,QAAA,qCAAqC,yCA4B5C"}
1
+ {"version":3,"file":"dispatch-def.js","sourceRoot":"","sources":["../../src/typer/dispatch-def.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"dispatch-expr.d.ts","sourceRoot":"","sources":["../../src/typer/dispatch-expr.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,QAAQ,EAER,eAAe,EAGf,aAAa,EACb,YAAY,EACZ,aAAa,EACb,SAAS,EAYT,aAAa,EACb,KAAK,EAIL,YAAY,EAqBZ,UAAU,EACV,cAAc,EAIf,MAAM,qBAAqB,CAAC;AAuC7B,OAAO,EACa,KAAK,UAAU,EAMlC,MAAM,wCAAwC,CAAC;AAMhD,OAAO,EACL,KAAK,MAAM,EACZ,MAAM,SAAS,CAAC;AAwFjB,wBAAgB,YAAY,CAAC,GAAG,EAAE,MAAM,EAAE,EAAE,EAAE,UAAU,GAAG,SAAS,EAAE,KAAK,EAAE,cAAc,GAAG,SAAS,GAAG,cAAc,GAAG,SAAS,CAoDnI;AAukBD,wBAAgB,WAAW,CAAC,GAAG,EAAE,MAAM,EAAE,EAAE,EAAE,SAAS,EAAE,KAAK,EAAE,cAAc,GAAG,SAAS,GAAG,cAAc,GAAG,SAAS,CAqHrH;AAGD,wBAAgB,sBAAsB,CAAC,GAAG,EAAE,MAAM,EAAE,EAAE,EAAE,SAAS,EAAE,GAAG,EAAE,UAAU,GAAG,SAAS,GAAG,cAAc,GAAG,SAAS,CA6B1H;AAED,wBAAgB,oBAAoB,CAAC,GAAG,EAAE,MAAM,EAAE,EAAE,EAAE,QAAQ,EAAE,KAAK,EAAE,cAAc,QAUpF;AA4BD,wBAAgB,cAAc,CAAC,GAAG,EAAE,MAAM,EAAE,EAAE,EAAE,YAAY,EAAE,KAAK,EAAE,cAAc,GAAG,SAAS,8BAmM9F;AA6ED,wBAAgB,eAAe,CAAC,GAAG,EAAE,MAAM,EAAE,EAAE,EAAE,aAAa,EAAE,KAAK,EAAE,cAAc,GAAG,SAAS,8BAkChG;AAED,eAAO,MAAM,mBAAmB,wBAAkB,CAAC;AACnD,eAAO,MAAM,2BAA2B,wBAAkB,CAAC;AAE3D,wBAAgB,eAAe,CAAC,GAAG,EAAE,MAAM,EAAE,EAAE,EAAE,aAAa,EAAE,KAAK,EAAE,cAAc,GAAG,SAAS,8BAiBhG;AAqiBD,eAAO,MAAM,iBAAiB,QAAS,MAAM,MAAM,cAAc,GAAG,SAAS,KAAG,MAAM,CAAC,MAAM,EAAE,cAAc,GAAG,IAAI,CAAC,CAapH,CAAA;AA8FD,wBAAgB,aAAa,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,cAAc,GAAG,SAAS,GAAG,cAAc,GAAG,SAAS,CAU1H;AAED,wBAAgB,OAAO,CAAC,GAAG,EAAE,MAAM,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,cAAc,GAAG,SAAS,GAAG,cAAc,GAAG,SAAS,CAgH7G;AAWD,wBAAgB,aAAa,CAAC,GAAG,EAAE,MAAM,EAAE,EAAE,EAAE,SAAS,EAAE,KAAK,EAAE,cAAc,GAAG,SAAS,GAAG,cAAc,GAAG,SAAS,CA4IvH;AAkCD;;GAEG;AACH,eAAO,MAAM,YAAY,QAAS,MAAM,MAAM,SAAS,SAAS,cAAc,GAAG,SAAS,KAAG,cAAc,GAAG,SAe7G,CAAA;AA6BD,eAAO,MAAM,cAAc,OAAQ,eAAe,GAAG,YAAY,WAAW,MAAM,WAAW,MAAM,KAAG,aAMrG,CAAC"}
1
+ {"version":3,"file":"dispatch-expr.d.ts","sourceRoot":"","sources":["../../src/typer/dispatch-expr.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,QAAQ,EAER,eAAe,EAGf,aAAa,EACb,YAAY,EACZ,aAAa,EACb,SAAS,EAYT,aAAa,EACb,KAAK,EAIL,YAAY,EAqBZ,UAAU,EACV,cAAc,EAIf,MAAM,qBAAqB,CAAC;AAsC7B,OAAO,EACa,KAAK,UAAU,EAMlC,MAAM,wCAAwC,CAAC;AAMhD,OAAO,EACL,KAAK,MAAM,EACZ,MAAM,SAAS,CAAC;AAwFjB,wBAAgB,YAAY,CAAC,GAAG,EAAE,MAAM,EAAE,EAAE,EAAE,UAAU,GAAG,SAAS,EAAE,KAAK,EAAE,cAAc,GAAG,SAAS,GAAG,cAAc,GAAG,SAAS,CAoDnI;AAmoBD,wBAAgB,WAAW,CAAC,GAAG,EAAE,MAAM,EAAE,EAAE,EAAE,SAAS,EAAE,KAAK,EAAE,cAAc,GAAG,SAAS,GAAG,cAAc,GAAG,SAAS,CAqHrH;AAGD,wBAAgB,sBAAsB,CAAC,GAAG,EAAE,MAAM,EAAE,EAAE,EAAE,SAAS,EAAE,GAAG,EAAE,UAAU,GAAG,SAAS,GAAG,cAAc,GAAG,SAAS,CA6B1H;AAED,wBAAgB,oBAAoB,CAAC,GAAG,EAAE,MAAM,EAAE,EAAE,EAAE,QAAQ,EAAE,KAAK,EAAE,cAAc,QAUpF;AA4BD,wBAAgB,cAAc,CAAC,GAAG,EAAE,MAAM,EAAE,EAAE,EAAE,YAAY,EAAE,KAAK,EAAE,cAAc,GAAG,SAAS,8BA+L9F;AAwED,wBAAgB,eAAe,CAAC,GAAG,EAAE,MAAM,EAAE,EAAE,EAAE,aAAa,EAAE,KAAK,EAAE,cAAc,GAAG,SAAS,8BAmChG;AAED,eAAO,MAAM,mBAAmB,wBAAkB,CAAC;AACnD,eAAO,MAAM,2BAA2B,wBAAkB,CAAC;AAE3D,wBAAgB,eAAe,CAAC,GAAG,EAAE,MAAM,EAAE,EAAE,EAAE,aAAa,EAAE,KAAK,EAAE,cAAc,GAAG,SAAS,8BAmBhG;AAuiBD,eAAO,MAAM,iBAAiB,QAAS,MAAM,MAAM,cAAc,GAAG,SAAS,KAAG,MAAM,CAAC,MAAM,EAAE,cAAc,GAAG,IAAI,CAAC,CAapH,CAAA;AA8FD,wBAAgB,aAAa,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,cAAc,GAAG,SAAS,GAAG,cAAc,GAAG,SAAS,CAU1H;AAED,wBAAgB,OAAO,CAAC,GAAG,EAAE,MAAM,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,cAAc,GAAG,SAAS,GAAG,cAAc,GAAG,SAAS,CA8G7G;AAWD,wBAAgB,aAAa,CAAC,GAAG,EAAE,MAAM,EAAE,EAAE,EAAE,SAAS,EAAE,KAAK,EAAE,cAAc,GAAG,SAAS,GAAG,cAAc,GAAG,SAAS,CA6IvH;AAkCD;;GAEG;AACH,eAAO,MAAM,YAAY,QAAS,MAAM,MAAM,SAAS,SAAS,cAAc,GAAG,SAAS,KAAG,cAAc,GAAG,SAe7G,CAAA;AA6BD,eAAO,MAAM,cAAc,OAAQ,eAAe,GAAG,YAAY,WAAW,MAAM,WAAW,MAAM,KAAG,aAMrG,CAAC"}
@@ -84,7 +84,8 @@ function tpPaginate(env, nd, tgtTy) {
84
84
  // 分页返回的似乎是 { list:..., total: Integer }
85
85
  env.setType(nd, (0, type_manager_1.createAnonymousTyAnn)(['list', 'total'], [env.getRawType(nd.list),
86
86
  type_manager_1.naslLongTy]));
87
- // 暂时应该不会有这种奇葩的推导,省一点是一点 env.unifier.unify(env.getRawType(nd), tgtTy);
87
+ // 暂时应该不会有这种奇葩的推导,省一点是一点: ==> 现在加上吧,赋值那边的额外 unify 可以完全去掉
88
+ env.unifier.unify(env.getRawType(nd), tgtTy);
88
89
  return env.getRawType(nd);
89
90
  }
90
91
  function tpNullLiteral(env, nd, tgtTy) {
@@ -94,9 +95,6 @@ function tpNullLiteral(env, nd, tgtTy) {
94
95
  return type_manager_1.naslNullTy;
95
96
  }
96
97
  function tpDefaultValue(env, nd, tgtTy) {
97
- if (nd.playground) {
98
- (0, dispatch_stmt_1.tpSolvingPlayground)(env, nd.playground);
99
- }
100
98
  if (nd.expression) {
101
99
  // Date 系列的东西默认值都是 StringLiteral,所以这里要特殊处理。
102
100
  if ((0, type_predicate_2.isDateTy)(tgtTy) || (0, type_predicate_2.isTimeTy)(tgtTy) || (0, type_predicate_2.isDateTimeTy)(tgtTy)) {
@@ -119,6 +117,7 @@ function tpDefaultValue(env, nd, tgtTy) {
119
117
  }
120
118
  // 大有讲究:敢信现在 let x: Decimal = 0 的 0 是 Decimal 类型(与逻辑里不同)
121
119
  env.setType(nd, tgtTy ?? env.getRawType(nd.expression));
120
+ (0, dispatch_stmt_1.tpSolvingPlayground)(env, nd.playground);
122
121
  return env.getRawType(nd);
123
122
  }
124
123
  function tpStringLiteral(env, nd, tgtTy) {
@@ -185,13 +184,6 @@ function tpIdentifier(env, nd, tgtTy) {
185
184
  env.setType(nd, tgtTy);
186
185
  return;
187
186
  }
188
- // a.b.c 中的 b 和 c 不应指向局部变量
189
- if (!env.isInMemberExpr && (0, nasl_predicate_1.isTypeInferConcept)(def)) {
190
- nd.pointToSymbol = def;
191
- }
192
- else if (nd.pointToSymbol) {
193
- nd.pointToSymbol = undefined;
194
- }
195
187
  let refTy = env.getRawType(def);
196
188
  if (refTy) {
197
189
  env.setType(nd, refTy);
@@ -201,8 +193,17 @@ function tpIdentifier(env, nd, tgtTy) {
201
193
  env.setType(nd, freshTy);
202
194
  env.setType(def, freshTy);
203
195
  }
204
- env.unifier.unify(env.getRawType(nd), tgtTy);
205
- return env.getRawType(nd);
196
+ const ndTy = env.getRawType(nd);
197
+ // a.b.c 中的 b 和 c 不应指向局部变量、不收集草稿区的推导
198
+ if (!env.isInMemberExpr && (0, nasl_predicate_1.isTypeInferConcept)(def)) {
199
+ env.idToVar.set(nd, def);
200
+ !env.isPlayground && env.allRefsInPlayground.delete(def);
201
+ }
202
+ else {
203
+ env.idToVar.delete(nd);
204
+ }
205
+ env.unifier.unify(ndTy, tgtTy);
206
+ return ndTy;
206
207
  }
207
208
  function tpMemberExpression(env, nd, tgtTy) {
208
209
  let rawObjTyAnn = undefined;
@@ -358,9 +359,6 @@ function tpBinaryArithExpr(env, nd, tgtTy) {
358
359
  else if ((0, type_predicate_2.isIntegerTy)(rightTy)) {
359
360
  env.unifier.unify(type_manager_1.naslLongTy, leftTy);
360
361
  }
361
- else {
362
- env.unifier.unifyEq(leftTy, rightTy);
363
- }
364
362
  }
365
363
  else if (!(0, type_predicate_2.isTyAnnTyParam)(leftTy) && (0, type_predicate_2.isTyAnnTyParam)(rightTy)) {
366
364
  if ((0, type_predicate_2.isDecimalTy)(leftTy)) {
@@ -369,9 +367,6 @@ function tpBinaryArithExpr(env, nd, tgtTy) {
369
367
  else if ((0, type_predicate_2.isIntegerTy)(leftTy)) {
370
368
  env.unifier.unify(type_manager_1.naslLongTy, rightTy);
371
369
  }
372
- else {
373
- env.unifier.unifyEq(rightTy, leftTy);
374
- }
375
370
  }
376
371
  // 人肉 solve
377
372
  const hasString = (0, type_predicate_2.isStringTy)(leftTy) || (0, type_predicate_2.isStringTy)(rightTy);
@@ -422,6 +417,48 @@ function tpBinaryExpression(env, nd, tgtTy) {
422
417
  });
423
418
  env.unifier.unify(retTy, tgtTy);
424
419
  env.setType(nd, retTy);
420
+ // 添加Add操作的类型兼容性检查
421
+ const postChk = (fileNode, errBoundary, severity) => (env) => {
422
+ const leftTy = env.getType(nd.left);
423
+ const rightTy = env.getType(nd.right);
424
+ // 获取类型的底层类型,如果是元数据类型则返回其底层类型
425
+ const getBaseType = (ty) => {
426
+ if (!ty)
427
+ return ty;
428
+ if ((0, type_predicate_2.isMetadataType)(ty)) {
429
+ // 使用typeAlias来查找元数据类型的底层类型
430
+ const qName = (0, reference_manager_1.getTokenQualifiedName)(ty);
431
+ if (qName && env.typeAlias.has(qName)) {
432
+ return env.typeAlias.get(qName);
433
+ }
434
+ }
435
+ return ty;
436
+ };
437
+ const baseLeftTy = getBaseType(leftTy);
438
+ const baseRightTy = getBaseType(rightTy);
439
+ // 检查Union类型的数值成员
440
+ const isUnionNumericTy = (ty) => {
441
+ if (!ty)
442
+ return false;
443
+ if ((0, type_predicate_2.isNumericTy)(ty))
444
+ return true;
445
+ if ((0, type_predicate_1.isUnionTy)(ty)) {
446
+ return ty.typeArguments?.every(memberTy => (0, type_predicate_2.isNumericTy)(memberTy)) ?? false;
447
+ }
448
+ return false;
449
+ };
450
+ // 允许的Add操作情况:
451
+ // 1. 任一操作数是String类型(字符串拼接)
452
+ // 2. 两个操作数都是数值类型(Long、Decimal等),包括数值Union类型
453
+ // 3. 包含Any类型的情况
454
+ // 4. 元数据类型按其底层类型进行检查
455
+ const isStringOperationValid = (0, type_predicate_2.isStringTy)(baseLeftTy) || (0, type_predicate_2.isStringTy)(baseRightTy) || (0, type_predicate_2.isAnyTy)(baseLeftTy) || (0, type_predicate_2.isAnyTy)(baseRightTy);
456
+ const isNumericOperationValid = isUnionNumericTy(baseLeftTy) && isUnionNumericTy(baseRightTy);
457
+ if (!isStringOperationValid && !isNumericOperationValid && baseLeftTy && baseRightTy) {
458
+ env.addError((0, sem_diag_1.mkIncompatibleTyErr)(env, leftTy || type_manager_1.naslAnyTy, rightTy || type_manager_1.naslAnyTy), fileNode, errBoundary, severity);
459
+ }
460
+ };
461
+ env.addPostCheckTask(nd, postChk(env.getCurFileNode(), nd, env.errSeverity));
425
462
  return retTy;
426
463
  }
427
464
  case '-':
@@ -504,41 +541,52 @@ function tpPlusExpression(env: SemEnv, nd: BinaryExpression, tgtTy: TypeAnnotati
504
541
  * == != 的检查也不好做
505
542
  * (==): <T>(Null, T) -> Boolean
506
543
  * (==): <T>(T, Null) -> Boolean
507
- * (==): <T1 extends Integer | Decimal, T2 extends Integer | Decimal>(T1, T2) -> Boolean
544
+ * (==): <T1 extends Integer | Decimal, T2 extends Integer | Decimal>(T1, T2) -> Boolean ==> T1、T2 毫无关系
508
545
  * (==): <T>(T, T) -> Boolean
509
546
  */
510
547
  const tpBinaryComparisonExpr = (env, nd, tgtTy) => {
511
548
  let leftTy = dispatchExpr(env, nd.left, undefined);
512
549
  let rightTy = dispatchExpr(env, nd.right, undefined);
513
- if ((0, type_predicate_2.isTyAnnTyParam)(rightTy)) {
514
- rightTy = leftTy;
515
- env.unifier.unifyEq(rightTy, leftTy);
550
+ if ((0, type_predicate_2.isTyAnnTyParam)(leftTy) && !(0, type_predicate_2.isTyAnnTyParam)(rightTy)) {
551
+ if ((0, type_predicate_2.isDecimalTy)(rightTy)) {
552
+ env.unifier.unify(leftTy, type_manager_1.naslDecimalTy);
553
+ }
554
+ else if ((0, type_predicate_2.isIntegerTy)(rightTy)) {
555
+ env.unifier.unify(type_manager_1.naslLongTy, leftTy);
556
+ }
516
557
  }
517
- else if ((0, type_predicate_2.isTyAnnTyParam)(leftTy)) {
518
- leftTy = rightTy;
519
- env.unifier.unifyEq(leftTy, rightTy);
558
+ else if (!(0, type_predicate_2.isTyAnnTyParam)(leftTy) && (0, type_predicate_2.isTyAnnTyParam)(rightTy)) {
559
+ if ((0, type_predicate_2.isDecimalTy)(leftTy)) {
560
+ env.unifier.unify(rightTy, type_manager_1.naslDecimalTy);
561
+ }
562
+ else if ((0, type_predicate_2.isIntegerTy)(leftTy)) {
563
+ env.unifier.unify(type_manager_1.naslLongTy, rightTy);
564
+ }
520
565
  }
521
566
  env.unifier.unify(type_manager_1.naslBooleanTy, tgtTy);
522
567
  env.setType(nd, type_manager_1.naslBooleanTy);
523
568
  // 不调用 solver 则无法判断,调用则影响速度,所以报错后移了
524
569
  const postChk = (fileNode, errBoundary, severity) => (env) => {
525
- const leftTy = env.getType(nd.left);
526
- const rightTy = env.getType(nd.right);
527
- if ((0, type_predicate_2.isNullTy)(leftTy)) {
570
+ // 保留原始类型,用于报错
571
+ const leftTy = env.getType(nd.left) ?? type_manager_1.naslAnyTy;
572
+ const rightTy = env.getType(nd.right) ?? type_manager_1.naslAnyTy;
573
+ const castLeftTy = (0, type_predicate_1.isDecimalUnionLongTy)(leftTy) ? type_manager_1.naslDecimalTy : leftTy;
574
+ const castRightTy = (0, type_predicate_1.isDecimalUnionLongTy)(rightTy) ? type_manager_1.naslDecimalTy : rightTy;
575
+ if ((0, type_predicate_2.isNullTy)(castLeftTy)) {
528
576
  // rightTy 不做要求
529
577
  }
530
- else if ((0, type_predicate_2.isNullTy)(rightTy)) {
578
+ else if ((0, type_predicate_2.isNullTy)(castRightTy)) {
531
579
  // leftTy 不做要求
532
580
  }
533
- else if ((0, type_predicate_2.isNumericTy)(leftTy) && (0, type_predicate_2.isNumericTy)(rightTy)) { // @ts-expect-error
534
- if (!(0, type_predicate_1.binaryOpCompatibleNumTys)(leftTy, rightTy)) {
535
- env.addError((0, sem_diag_1.mkIncompatibleTyErr)(env, leftTy || type_manager_1.naslAnyTy, rightTy || type_manager_1.naslAnyTy), fileNode, errBoundary, severity);
581
+ else if ((0, type_predicate_2.isNumericTy)(castLeftTy) && (0, type_predicate_2.isNumericTy)(castRightTy)) {
582
+ if (!(0, type_predicate_1.binaryOpCompatibleNumTys)(castLeftTy, castRightTy)) {
583
+ env.addError((0, sem_diag_1.mkIncompatibleTyErr)(env, leftTy, rightTy), fileNode, errBoundary, severity);
536
584
  }
537
585
  }
538
586
  else {
539
- // 非数字、非 Null、非 Enum 类型则要求完全相等
540
- if (leftTy && rightTy && !(0, type_predicate_1.isEqualTy)(env, leftTy, rightTy)) {
541
- env.addError((0, sem_diag_1.mkIncompatibleTyErr)(env, leftTy || type_manager_1.naslAnyTy, rightTy || type_manager_1.naslAnyTy), fileNode, errBoundary, severity);
587
+ // 非数字、非 Null、非 Enum 类型则要求完全相等,但支持Union类型的兼容性检查
588
+ if (!(0, type_predicate_1.isEqualTy)(env, leftTy, rightTy)) {
589
+ env.addError((0, sem_diag_1.mkIncompatibleTyErr)(env, leftTy, rightTy), fileNode, errBoundary, severity);
542
590
  }
543
591
  }
544
592
  };
@@ -565,36 +613,40 @@ const tpBinaryOrderExpr = (env, nd, tgtTy) => {
565
613
  env.unifier.unifyEq(leftTy, rightTy);
566
614
  }
567
615
  const isValidTy = (ty) => {
568
- // weak test for the sake of performance and 后向兼容性,鬼知道 NASL 上还有 typeName: 'Integer' 这种奇葩???
569
616
  if (!ty) {
570
617
  return false;
571
618
  }
572
619
  if ((0, type_predicate_2.isPrimitiveTy)(ty) && orderableTyNames.includes(ty.typeName)) {
573
620
  return true;
574
621
  }
622
+ // 支持Union类型:如果所有成员都是可排序类型,则Union类型也是可排序的
623
+ if ((0, type_predicate_1.isUnionTy)(ty)) {
624
+ return ty.typeArguments?.every(memberTy => isValidTy(memberTy)) ?? false;
625
+ }
575
626
  const qName = (0, reference_manager_1.getTokenQualifiedName)(ty);
576
- return qName && env.typeAlias.has(qName);
627
+ return !!qName && env.typeAlias.has(qName);
577
628
  };
578
629
  // 不调用 solver 则无法判断,调用则影响速度,所以报错后移了
579
630
  const postChk = (fileNode, errBoundary, severity) => (env) => {
580
- const leftTy = env.getType(nd.left);
581
- const rightTy = env.getType(nd.right);
631
+ const leftTy = env.getType(nd.left) ?? type_manager_1.naslAnyTy;
632
+ const rightTy = env.getType(nd.right) ?? type_manager_1.naslAnyTy;
633
+ const castLeftTy = (0, type_predicate_1.isDecimalUnionLongTy)(leftTy) ? type_manager_1.naslDecimalTy : leftTy;
634
+ const castRightTy = (0, type_predicate_1.isDecimalUnionLongTy)(rightTy) ? type_manager_1.naslDecimalTy : rightTy;
582
635
  if (!isValidTy(leftTy)) {
583
636
  env.addError((0, sem_diag_1.mkIncompatibleTyErr)(env, leftTy || type_manager_1.naslAnyTy, '整数、字符串 等基础类型'), fileNode, errBoundary, severity);
584
637
  }
585
638
  else if (!isValidTy(rightTy)) {
586
639
  env.addError((0, sem_diag_1.mkIncompatibleTyErr)(env, rightTy || type_manager_1.naslAnyTy, '整数、字符串 等基础类型'), fileNode, errBoundary, severity);
587
640
  }
588
- else if ((0, type_predicate_2.isNumericTy)(leftTy) && (0, type_predicate_2.isNumericTy)(rightTy)) { // @ts-expect-error
589
- if (!(0, type_predicate_1.binaryOpCompatibleNumTys)(leftTy, rightTy)) {
590
- env.addError((0, sem_diag_1.mkIncompatibleTyErr)(env, leftTy || type_manager_1.naslAnyTy, rightTy || type_manager_1.naslAnyTy), fileNode, errBoundary, severity);
641
+ else if ((0, type_predicate_2.isNumericTy)(castLeftTy) && (0, type_predicate_2.isNumericTy)(castRightTy)) {
642
+ if (!(0, type_predicate_1.binaryOpCompatibleNumTys)(castLeftTy, castRightTy)) {
643
+ env.addError((0, sem_diag_1.mkIncompatibleTyErr)(env, leftTy, rightTy), fileNode, errBoundary, severity);
591
644
  }
592
645
  }
593
646
  else {
594
- // 非数字、非 Null、非 Enum 类型则要求完全相等
595
- // 非数字类型则要求完全相等,(x:Integer) >= 1.234 历史上是合法的,也太难了
596
- if (leftTy && rightTy && !(0, type_predicate_1.isEqualTy)(env, leftTy, rightTy)) {
597
- env.addError((0, sem_diag_1.mkIncompatibleTyErr)(env, leftTy || type_manager_1.naslAnyTy, rightTy || type_manager_1.naslAnyTy), fileNode, errBoundary, severity);
647
+ // 非数字、非 Null、非 Enum 类型则要求完全相等,但支持Union类型的兼容性检查
648
+ if (!(0, type_predicate_1.isEqualTy)(env, leftTy, rightTy)) {
649
+ env.addError((0, sem_diag_1.mkIncompatibleTyErr)(env, leftTy, rightTy), fileNode, errBoundary, severity);
598
650
  }
599
651
  }
600
652
  };
@@ -686,7 +738,8 @@ function tpCallLogic(env, nd, tgtTy) {
686
738
  env.setType(arg, parTy);
687
739
  }
688
740
  else {
689
- // 报错
741
+ // 报错:泛型逻辑调用,最后的 callInfo 里有 type variables,会被判定为 unresolved,目前不检查 arg 会缺少报错
742
+ // env.addError(`调用逻辑:参数不能为空`, env.getCurFileNode(), arg);
690
743
  env.setType(arg, type_manager_1.naslAnyTy);
691
744
  }
692
745
  }
@@ -705,9 +758,7 @@ function tpCallLogic(env, nd, tgtTy) {
705
758
  // 给 checker 报错用,都给吧,CallLogic 也有要处理 Error | T 返回类型的复杂情形,checker 直接拿结果就行不用重复处理
706
759
  // TODO: 前端的部分组件逻辑好像指飞了(env.resoleRef 和 env.resolvedCallInfo 结果不一样)……先用 !env.isView 判断一下
707
760
  if (!env.isView || nd.calleeNamespace === 'nasl.util') { // json 序列化 - similarly add param info for nasl.util
708
- const callInfo = (0, type_manager_1.createFunctionDef)(fnTy.typeArguments, finalRetTy, def, fnTy.typeParams, // Pass type parameters for generic functions
709
- nd.calleeNamespace.startsWith('extensions.') ? nd.calleeNamespace.split('.')[1] : undefined // 是否来自依赖库,TODO:目前只能优化服务端报错,页面的调用没有 callInfo
710
- );
761
+ const callInfo = (0, type_manager_1.createFunctionDef)(fnTy.typeArguments, finalRetTy, def, fnTy.typeParams);
711
762
  env.resolvedCallInfo.set(nd, callInfo);
712
763
  }
713
764
  if (fnTy.typeParams?.length) {
@@ -820,10 +871,8 @@ function tpCallFunction(env, nd, tgtTy) {
820
871
  const fnTy = fnDef?.__TypeAnnotation;
821
872
  (0, helper_1.zipWith_)(env.unifier.unify, argTys, fnTy?.typeArguments);
822
873
  env.setType(nd, fnTy?.returnType?.[0] ?? type_manager_1.naslAnyTy); // 似乎不可能为空
823
- if (!env.isView) {
824
- const callInfo = (0, type_manager_1.createFunctionDef)(argTys, fnTy?.returnType?.[0] ?? type_manager_1.naslAnyTy, fnDef);
825
- env.resolvedCallInfo.set(nd, callInfo);
826
- }
874
+ const callInfo = (0, type_manager_1.createFunctionDef)(argTys, fnTy?.returnType?.[0] ?? type_manager_1.naslAnyTy, fnDef, undefined);
875
+ env.resolvedCallInfo.set(nd, callInfo);
827
876
  return env.getRawType(nd);
828
877
  }
829
878
  const fnDef = env.quickGetLibDef(nd);
@@ -851,12 +900,9 @@ function tpCallFunction(env, nd, tgtTy) {
851
900
  env.unifier.unify(finalRetTy, tgtTy);
852
901
  // TODO:处理可选参数必填选填问题
853
902
  env.setType(nd, finalRetTy); // 似乎不可能为空
854
- // Extract optional parameter information from type annotations
855
- if (!env.isView) {
856
- const callInfo = (0, type_manager_1.createFunctionDef)(fnTy.typeArguments, finalRetTy, fnDef, fnTy.typeParams // 实例化后的
857
- );
858
- env.resolvedCallInfo.set(nd, callInfo);
859
- }
903
+ const callInfo = (0, type_manager_1.createFunctionDef)(fnTy.typeArguments, finalRetTy, fnDef, // 内置函数
904
+ fnTy.typeParams);
905
+ env.resolvedCallInfo.set(nd, callInfo);
860
906
  return finalRetTy;
861
907
  function handleEnumFn(env, nd, tgtTy) {
862
908
  const createAnonymousRetTy = (ty) => (0, type_manager_1.createAnonymousTyAnn)(['text', 'value'], [type_manager_1.naslStringTy, ty]);
@@ -964,15 +1010,10 @@ function tpLengthAndConvertCall(env, nd, tgtTy) {
964
1010
  // For Length function, the parameter is required
965
1011
  // Create a mock definition for the Length function
966
1012
  const mockLengthDef = {
967
- params: [{
968
- name: 'collection',
969
- optional: false
970
- }]
1013
+ params: [{ name: 'collection', optional: false }]
971
1014
  };
972
- if (!env.isView) {
973
- const callInfo = (0, type_manager_1.createFunctionDef)(argTys, type_manager_1.naslLongTy, mockLengthDef);
974
- env.resolvedCallInfo.set(nd, callInfo); // 存储函数定义(含参数和返回类型)
975
- }
1015
+ const callInfo = (0, type_manager_1.createFunctionDef)(argTys, type_manager_1.naslLongTy, mockLengthDef, undefined);
1016
+ env.resolvedCallInfo.set(nd, callInfo); // 存储函数定义(含参数和返回类型)
976
1017
  return type_manager_1.naslLongTy;
977
1018
  }
978
1019
  if (calleeName === 'Convert') {
@@ -1003,10 +1044,8 @@ function tpLengthAndConvertCall(env, nd, tgtTy) {
1003
1044
  const mockConvertDef = {
1004
1045
  params: paramTys?.map(() => ({ optional: false })) || []
1005
1046
  };
1006
- if (!env.isView) {
1007
- const callInfo = (0, type_manager_1.createFunctionDef)(argTys, env.getRawType(nd), mockConvertDef);
1008
- env.resolvedCallInfo.set(nd, callInfo);
1009
- }
1047
+ const callInfo = (0, type_manager_1.createFunctionDef)(argTys, env.getRawType(nd), mockConvertDef, undefined);
1048
+ env.resolvedCallInfo.set(nd, callInfo);
1010
1049
  return env.getRawType(nd);
1011
1050
  }
1012
1051
  }
@@ -1032,7 +1071,7 @@ function tpCallInterface(env, nd, tgtTy) {
1032
1071
  env.setType(nd, finalRetTy);
1033
1072
  env.unifier.unify(finalRetTy, tgtTy);
1034
1073
  if (!env.isView) {
1035
- const callInfo = (0, type_manager_1.createFunctionDef)(def.params.map(p => p.typeAnnotation), finalRetTy, def);
1074
+ const callInfo = (0, type_manager_1.createFunctionDef)(def.params.map(p => p.typeAnnotation), finalRetTy, def, undefined);
1036
1075
  env.resolvedCallInfo.set(nd, callInfo);
1037
1076
  }
1038
1077
  return finalRetTy;
@@ -1043,11 +1082,12 @@ exports.tpCallMicroserviceInterface = tpCallInterface;
1043
1082
  function tpCallConnector(env, nd, tgtTy) {
1044
1083
  const cDef = env.refMgr.getNodeDef(nd);
1045
1084
  (0, helper_1.zipWith_)((arg, paramTy) => dispatchExpr(env, arg, paramTy), nd.arguments, cDef.params.map(p => p.typeAnnotation));
1046
- tgtTy && env.unifier.unify(cDef.returns?.[0]?.typeAnnotation, tgtTy);
1047
- const ndTy = cDef.returns?.[0]?.typeAnnotation;
1085
+ const retTy = env.getRawType(nd); // connector logic 的返回类型也可以推导
1086
+ tgtTy && env.unifier.unify(retTy, tgtTy);
1087
+ const ndTy = retTy;
1048
1088
  env.setType(nd, ndTy);
1049
1089
  if (!env.isView) {
1050
- const callInfo = (0, type_manager_1.createFunctionDef)(cDef.params.map(p => p.typeAnnotation), ndTy, cDef);
1090
+ const callInfo = (0, type_manager_1.createFunctionDef)(cDef.params.map(p => p.typeAnnotation), ndTy, cDef, undefined);
1051
1091
  env.resolvedCallInfo.set(nd, callInfo);
1052
1092
  }
1053
1093
  return ndTy;
@@ -1102,10 +1142,6 @@ function tpSubLogic(env, nd, tgtTy) {
1102
1142
  env.setType(nd, ndTy);
1103
1143
  env.unifier.cs = csCopy;
1104
1144
  env.unifier.unify(ndTy, tgtTy); // 这里需要额外的 unify,否则 SubLogic 算出来的类型不能与外侧进来时的约束产生关系
1105
- if (nd.nodePath?.startsWith('app.logics')) {
1106
- const postChk = (0, dispatch_def_1.checkVariableAndReturnTypeAnnotations)(nd.variables, nd.returns);
1107
- env.addPostCheckTask(nd, postChk(env.getCurFileNode(), env.errSeverity));
1108
- }
1109
1145
  return ndTy;
1110
1146
  }
1111
1147
  function tpArgument(env, nd, tgtTy) {
@@ -1187,9 +1223,10 @@ function tpCallQueryComponent(env, nd, tgtTy) {
1187
1223
  const createdVars = createNameAliasVarNodes(aggrAsNames, groupByAsNames);
1188
1224
  nd.orderBy && nd.orderBy.forEach(tpOrderByExpr);
1189
1225
  nd.having && dispatchExpr(env, nd.having, type_manager_1.naslBooleanTy);
1190
- nd.havingPlayground && (0, dispatch_stmt_1.tpSolvingPlayground)(env, nd.havingPlayground);
1191
1226
  nd.where && dispatchExpr(env, nd.where, type_manager_1.naslBooleanTy);
1192
- nd.wherePlayground && (0, dispatch_stmt_1.tpSolvingPlayground)(env, nd.wherePlayground);
1227
+ // 后置检查连 context 都没了,告辞
1228
+ (0, dispatch_stmt_1.tpSolvingPlayground)(env, nd.wherePlayground);
1229
+ (0, dispatch_stmt_1.tpSolvingPlayground)(env, nd.havingPlayground);
1193
1230
  env.ctxTpQFE = undefined;
1194
1231
  env.ctxCQC = undefined;
1195
1232
  createdVars.forEach(v => {
@@ -1333,10 +1370,10 @@ function tpCallQueryComponent(env, nd, tgtTy) {
1333
1370
  ? (0, type_manager_1.createAnonymousTyAnn)(['list', 'total'], [(0, type_manager_1.createListTyAnn)(nd.typeAnnotation ?? type_manager_1.naslAnyTy), type_manager_1.naslLongTy])
1334
1371
  : (0, type_manager_1.createListTyAnn)(nd.typeAnnotation ?? type_manager_1.naslAnyTy);
1335
1372
  }
1336
- if (nd.ideVersion !== '2.11' && nd.ideVersion !== '2.22' && nd.typeAnnotation) {
1337
- retTy = nd.typeAnnotation; // 那也没办法了,锁死了
1338
- }
1339
- else {
1373
+ // if (nd.ideVersion !== '2.11' && nd.ideVersion !== '2.22' && nd.typeAnnotation) {
1374
+ // retTy = nd.typeAnnotation; // 那也没办法了,锁死了
1375
+ // } else
1376
+ {
1340
1377
  nd.typeAnnotation = retTy;
1341
1378
  if (!env.isFirstScreenCheck && !(0, type_predicate_1.isEqualTy)(env, nd.typeAnnotation, retTy)) {
1342
1379
  // @warning: 这个 typeAnnotation 其实没有用,反正发布的时候会标注上去
@@ -1469,9 +1506,12 @@ const fakeTpSql = (env, nd, tgtTy) => {
1469
1506
  };
1470
1507
  // 新建 实体/数据结构、匿名数据结构 new Entity/Structure anonymousStructure
1471
1508
  function tpNewComposite(env, nd, tgtTy) {
1509
+ // HACK: 连线(包括 BatchAssignment 和 NewComposite) rights 和 members 字段,传入的可能是 Proxied,需要 toRaw
1510
+ // 参考:【rg3】+ saas + 批量赋值时,将同一变量(三层变量)同时赋值给两个不同的变量有报错,、New 等自动连线功能失效
1511
+ // http://projectmanage.netease-official.lcap.163yun.com/dashboard/BugDetail?id=3148436628556032
1472
1512
  nd.rights.forEach(selMem => {
1473
- dispatchExpr(env, selMem.expression, undefined);
1474
- selMem.members.forEach(mem => dispatchExpr(env, mem, undefined));
1513
+ dispatchExpr(env, toRaw(selMem.expression), undefined);
1514
+ selMem.members.forEach(mem => dispatchExpr(env, toRaw(mem), undefined));
1475
1515
  });
1476
1516
  const lNameTyPair = (0, exports.extractNameTyPair)(env, nd.typeAnnotation);
1477
1517
  if (!lNameTyPair) {
@@ -1652,8 +1692,6 @@ function tpMatch(env, nd, tgtTy) {
1652
1692
  // type patterns must be type annotations
1653
1693
  exprRefinedTy = (0, type_manager_1.createUnionTyAnnIfNecessary)(env, mc.patterns.map(inferTy));
1654
1694
  // TODO wudengke 求解完成之后,报错
1655
- // if (!isSubTy(env, exprRefinedTy, exprTy)) {
1656
- // }
1657
1695
  }
1658
1696
  else { // '其他' 分支或 空模式的分支
1659
1697
  // 对其他所有 case 的所有类型取关于全集 exprTy 的补集
@@ -1663,7 +1701,7 @@ function tpMatch(env, nd, tgtTy) {
1663
1701
  // 确保我们在处理纯类型的匹配
1664
1702
  if (pureTys.length === prevPatterns.length) {
1665
1703
  // 单例模式后改为直接比较内存地址
1666
- const caseRefinedTys = (0, type_predicate_2.isUnionTy)(exprTy) ? exprTy?.typeArguments?.filter(t1 => !pureTys.find(t2 => {
1704
+ const caseRefinedTys = (0, type_predicate_1.isUnionTy)(exprTy) ? exprTy?.typeArguments?.filter(t1 => !pureTys.find(t2 => {
1667
1705
  return (0, type_predicate_1.isEqualTy)(env, t1, t2);
1668
1706
  })) : [];
1669
1707
  if (caseRefinedTys?.length) {
@@ -1853,21 +1891,21 @@ function tpEntityLogic(env, nd, tgtTy) {
1853
1891
  env.unifier.unify(finalRetTy, tgtTy);
1854
1892
  // Create a mock definition for entity logics
1855
1893
  const mockDef = { params: paramTys.map(() => ({ optional: false })) };
1856
- const callInfo = (0, type_manager_1.createFunctionDef)(paramTys, finalRetTy, mockDef);
1894
+ const callInfo = (0, type_manager_1.createFunctionDef)(paramTys, finalRetTy, mockDef, undefined);
1857
1895
  env.resolvedCallInfo.set(nd, callInfo);
1858
1896
  return finalRetTy;
1859
1897
  function getRetTy() {
1860
1898
  switch (calleeName) {
1861
1899
  case 'get': return entityRefTy;
1862
1900
  case 'create': return entityOrErrTy; // 带个 Error 类型
1863
- case 'delete': return type_manager_1.naslVoidTy; // 现在如此
1901
+ case 'delete': return type_manager_1.naslLongTy; // 现在如此
1864
1902
  case 'update': return entityRefTy;
1865
1903
  case 'createOrUpdate': return entityOrErrTy; // 带个 Error 类型
1866
1904
  case 'updateBy': return type_manager_1.naslLongTy;
1867
- case 'deleteBy': return type_manager_1.naslVoidTy;
1905
+ case 'deleteBy': return type_manager_1.naslLongTy;
1868
1906
  case 'batchCreate': return listEntityRefTy;
1869
1907
  case 'batchUpdate': return listEntityRefTy;
1870
- case 'batchDelete': return type_manager_1.naslVoidTy;
1908
+ case 'batchDelete': return type_manager_1.naslLongTy;
1871
1909
  case 'import': return type_manager_1.naslStringTy;
1872
1910
  }
1873
1911
  }
@@ -1910,7 +1948,7 @@ const removeErrTys = (env, nd, retTy) => {
1910
1948
  finalRetTy = (0, fp_macros_1.IfBind)(finalRetTy.typeArguments?.filter(ty => !((0, type_predicate_2.isErrorTy)(ty))))(filteredRetTys => (0, type_manager_1.createUnionTyAnnIfNecessary)(env, filteredRetTys))((0, fp_macros_1.feed)(finalRetTy));
1911
1949
  }
1912
1950
  // @ts-ignore
1913
- if ((0, type_predicate_2.isUnionTy)(finalRetTy) && !finalRetTy.typeArguments?.length) {
1951
+ if ((0, type_predicate_1.isUnionTy)(finalRetTy) && !finalRetTy.typeArguments?.length) {
1914
1952
  return type_manager_1.naslVoidTy; // createUnionTyAnnIfNecessary 得到 Union<> 时表示无返回类型
1915
1953
  }
1916
1954
  return finalRetTy;