@lcap/nasl-language-server-core 4.1.0-beta.4 → 4.1.0-beta.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.
- package/out/checker.d.ts +1 -1
- package/out/checker.d.ts.map +1 -1
- package/out/checker.js +11 -3
- package/out/checker.js.map +1 -1
- package/out/reference-manager/reference-manager.d.ts +5 -1
- package/out/reference-manager/reference-manager.d.ts.map +1 -1
- package/out/reference-manager/reference-manager.js +93 -52
- package/out/reference-manager/reference-manager.js.map +1 -1
- package/out/reference-manager/update-nasl-fragment.js +1 -1
- package/out/reference-manager/update-nasl-fragment.js.map +1 -1
- package/out/typer/dispatch-expr.d.ts.map +1 -1
- package/out/typer/dispatch-expr.js +4 -2
- package/out/typer/dispatch-expr.js.map +1 -1
- package/package.json +5 -5
package/out/checker.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import type { SyntaxNode, App, BaseNode } from '@lcap/nasl-concepts';
|
|
2
2
|
import { TypeAnnotation } from '@lcap/nasl-concepts';
|
|
3
|
-
import { type SemEnv } from './typer';
|
|
3
|
+
import { type SemEnv } from './typer/typer';
|
|
4
4
|
import { Diagnostic as NaslTypeDiagnostic } from '@lcap/nasl-types';
|
|
5
5
|
export declare enum Severity {
|
|
6
6
|
WARN = "warning",
|
package/out/checker.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"checker.d.ts","sourceRoot":"","sources":["../src/checker.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,UAAU,EAU0F,GAAG,EAMvG,QAAQ,EACT,MAAM,qBAAqB,CAAC;AAE7B,OAAO,EACgE,cAAc,EAGpF,MAAM,qBAAqB,CAAC;AAS7B,OAAO,
|
|
1
|
+
{"version":3,"file":"checker.d.ts","sourceRoot":"","sources":["../src/checker.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,UAAU,EAU0F,GAAG,EAMvG,QAAQ,EACT,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;AAiQF;;;GAGG;AACH,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,eAAe;oCAynIpB,OAAO;sDAPW,gBAAgB,EAAE;;;;sBAhBjD,UAAU,GAAG,SAAS;;;8BA4Df,UAAU;2BAuBb,UAAU;;kBA7nInB,UAAU,WAAW,MAAM,YAAY,YAAY;EA+oIzE;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;AAED,eAAO,MAAM,6BAA6B,aAAc,UAAU,sCAAoC,MAAM,gBAAgB,CAmC3H,CAAA;AAMD,MAAM,MAAM,cAAc,GAAG,UAAU,CAAC,OAAO,oBAAoB,CAAC,CAAC"}
|
package/out/checker.js
CHANGED
|
@@ -6,10 +6,11 @@ const nasl_concepts_1 = require("@lcap/nasl-concepts");
|
|
|
6
6
|
const service_1 = require("@lcap/nasl-concepts/service");
|
|
7
7
|
const file_node_cache_1 = require("./utils/file-node-cache");
|
|
8
8
|
const nasl_utils_1 = require("@lcap/nasl-utils");
|
|
9
|
-
const
|
|
9
|
+
const sem_diag_1 = require("./typer/sem-diag");
|
|
10
10
|
const type_predicate_1 = require("./typer/type-predicate");
|
|
11
11
|
const type_manager_1 = require("./typer/type-manager");
|
|
12
12
|
const nasl_predicate_1 = require("./typer/nasl-predicate");
|
|
13
|
+
const helper_1 = require("./typer/helper");
|
|
13
14
|
var Severity;
|
|
14
15
|
(function (Severity) {
|
|
15
16
|
Severity["WARN"] = "warning";
|
|
@@ -333,7 +334,7 @@ function createErrorDiagnoser(context) {
|
|
|
333
334
|
currentNode = currentNode.parentNode;
|
|
334
335
|
}
|
|
335
336
|
const finalNode = memberExpression ?? node;
|
|
336
|
-
(0,
|
|
337
|
+
(0, helper_1.createOnPush)(diagnostics, finalNode, diagnostic);
|
|
337
338
|
finalNode.tsErrorDetail = diagnostic;
|
|
338
339
|
}
|
|
339
340
|
else { }
|
|
@@ -2816,6 +2817,13 @@ function createErrorDiagnoser(context) {
|
|
|
2816
2817
|
if (node.calleeName === 'Clear' && type?.typeKind === 'union') {
|
|
2817
2818
|
error(node, `传入类型错误,接收类型:非union类型`);
|
|
2818
2819
|
}
|
|
2820
|
+
if (node.calleeName === 'ListSort') {
|
|
2821
|
+
const instTyParams = env.resolvedCallInfo.get(node)?.typeParams;
|
|
2822
|
+
const selForSort = instTyParams?.[1];
|
|
2823
|
+
if (selForSort?.typeKind === 'union') {
|
|
2824
|
+
error(node, (0, sem_diag_1.mkIncompatibleTyErr)(env, selForSort, '非 union 的基础类型:如字符串、整数、布尔等'));
|
|
2825
|
+
}
|
|
2826
|
+
}
|
|
2819
2827
|
if (node.typeArguments?.length) {
|
|
2820
2828
|
yield* (0, nasl_utils_1.wrapForEachToGenerator)(node.typeArguments, function* (node) {
|
|
2821
2829
|
yield* checkNode(node);
|
|
@@ -3277,7 +3285,7 @@ function createErrorDiagnoser(context) {
|
|
|
3277
3285
|
/**
|
|
3278
3286
|
* 参考类型检查器的 {@link tpIdentifier}方法
|
|
3279
3287
|
*/
|
|
3280
|
-
return
|
|
3288
|
+
return type_manager_1.naslLongTy;
|
|
3281
3289
|
}
|
|
3282
3290
|
else if (node.name === 'it') {
|
|
3283
3291
|
return env.getType(node);
|