@lcap/nasl-language-server-core 4.4.0-beta.4 → 4.4.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.map +1 -1
- package/out/checker.js +83 -2
- package/out/checker.js.map +1 -1
- package/out/reference-manager/reference-manager.d.ts +2 -2
- package/out/reference-manager/reference-manager.d.ts.map +1 -1
- package/out/reference-manager/reference-manager.js +2 -2
- package/out/reference-manager/reference-manager.js.map +1 -1
- package/out/reference-manager/view-elem-logic.d.ts +3 -3
- package/out/reference-manager/view-elem-logic.d.ts.map +1 -1
- package/out/reference-manager/view-elem-logic.js +17 -0
- package/out/reference-manager/view-elem-logic.js.map +1 -1
- package/out/symbol/traverse/concepts/index.d.ts +1 -1
- package/out/symbol/traverse/concepts/index.d.ts.map +1 -1
- package/out/typer/dispatch-call.d.ts.map +1 -1
- package/out/typer/dispatch-call.js +6 -0
- package/out/typer/dispatch-call.js.map +1 -1
- package/out/typer/dispatch-def.d.ts.map +1 -1
- package/out/typer/dispatch-def.js +3 -1
- package/out/typer/dispatch-def.js.map +1 -1
- package/out/typer/dispatch-expr.d.ts +2 -1
- package/out/typer/dispatch-expr.d.ts.map +1 -1
- package/out/typer/dispatch-expr.js +95 -21
- package/out/typer/dispatch-expr.js.map +1 -1
- package/out/typer/dispatch-stmt.d.ts.map +1 -1
- package/out/typer/dispatch-stmt.js +29 -15
- package/out/typer/dispatch-stmt.js.map +1 -1
- package/out/typer/dispatch-view.d.ts.map +1 -1
- package/out/typer/dispatch-view.js +0 -4
- package/out/typer/dispatch-view.js.map +1 -1
- package/out/typer/incremental-update.d.ts +4 -0
- package/out/typer/incremental-update.d.ts.map +1 -1
- package/out/typer/incremental-update.js +81 -2
- package/out/typer/incremental-update.js.map +1 -1
- package/out/typer/oql-checker/chain-call-transformer.d.ts.map +1 -1
- package/out/typer/oql-checker/chain-call-transformer.js +17 -4
- package/out/typer/oql-checker/chain-call-transformer.js.map +1 -1
- package/out/typer/oql-checker/ts-parser.d.ts.map +1 -1
- package/out/typer/oql-checker/ts-parser.js +157 -21
- package/out/typer/oql-checker/ts-parser.js.map +1 -1
- package/out/typer/overload-helper.d.ts.map +1 -1
- package/out/typer/overload-helper.js +5 -0
- package/out/typer/overload-helper.js.map +1 -1
- package/out/typer/subster.d.ts +1 -1
- package/out/typer/subster.d.ts.map +1 -1
- package/out/typer/subster.js +7 -3
- package/out/typer/subster.js.map +1 -1
- package/out/typer/type-predicate.d.ts.map +1 -1
- package/out/typer/type-predicate.js +38 -2
- package/out/typer/type-predicate.js.map +1 -1
- package/out/typer/typer.d.ts +22 -2
- package/out/typer/typer.d.ts.map +1 -1
- package/out/typer/typer.js +117 -16
- package/out/typer/typer.js.map +1 -1
- package/out/typer/unifier.d.ts +1 -1
- package/out/typer/unifier.d.ts.map +1 -1
- package/out/typer/unifier.js +8 -4
- package/out/typer/unifier.js.map +1 -1
- package/package.json +6 -6
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dispatch-def.d.ts","sourceRoot":"","sources":["../../src/typer/dispatch-def.ts"],"names":[],"mappings":"AAAA,OAAO,EAEH,KAAK,EAIL,UAAU,EAGV,SAAS,EACT,YAAY,EACZ,aAAa,EACb,eAAe,EACf,SAAS,EACT,yBAAyB,EACzB,cAAc,EAEd,SAAS,EACT,GAAG,EACH,SAAS,EACT,MAAM,EAEN,aAAa,EACb,wBAAwB,EAExB,IAAI,EAMJ,WAAW,EAIX,cAAc,EAEjB,MAAM,qBAAqB,CAAC;AA2B7B,OAAO,EAAE,KAAK,MAAM,EAAE,MAAM,SAAS,CAAC;AAGtC,OAAO,EAAuB,iBAAiB,EAA2C,MAAM,6BAA6B,CAAC;AAoB9H,wBAAgB,WAAW,CAAC,GAAG,EAAE,MAAM,EAAE,EAAE,EAAE,UAAU,aAwDtD;AAsCD,eAAO,MAAM,kBAAkB,oCAAqC,CAAC,YAEtC,IAAI,GAwBlC,CAAA;AAED,wBAAgB,OAAO,CAAC,CAAC,SAAS,iBAAiB,EAAE,GAAG,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC,GAAG,cAAc,CAyBvF;AAUD,eAAO,MAAM,qBAAqB,QAAS,MAAM,UAAU,MAAM,iBAAiB,CAAC,KAAG,MAAM,MAAM,IAAI,CAWrG,CAAA;AAED,eAAO,MAAM,qBAAqB,WAAY,MAAM,iBAAiB,GAAG,SAAS,GAAG,aAAa,GAAG,YAAY,CAAC,SAUhH,CAAA;
|
|
1
|
+
{"version":3,"file":"dispatch-def.d.ts","sourceRoot":"","sources":["../../src/typer/dispatch-def.ts"],"names":[],"mappings":"AAAA,OAAO,EAEH,KAAK,EAIL,UAAU,EAGV,SAAS,EACT,YAAY,EACZ,aAAa,EACb,eAAe,EACf,SAAS,EACT,yBAAyB,EACzB,cAAc,EAEd,SAAS,EACT,GAAG,EACH,SAAS,EACT,MAAM,EAEN,aAAa,EACb,wBAAwB,EAExB,IAAI,EAMJ,WAAW,EAIX,cAAc,EAEjB,MAAM,qBAAqB,CAAC;AA2B7B,OAAO,EAAE,KAAK,MAAM,EAAE,MAAM,SAAS,CAAC;AAGtC,OAAO,EAAuB,iBAAiB,EAA2C,MAAM,6BAA6B,CAAC;AAoB9H,wBAAgB,WAAW,CAAC,GAAG,EAAE,MAAM,EAAE,EAAE,EAAE,UAAU,aAwDtD;AAsCD,eAAO,MAAM,kBAAkB,oCAAqC,CAAC,YAEtC,IAAI,GAwBlC,CAAA;AAED,wBAAgB,OAAO,CAAC,CAAC,SAAS,iBAAiB,EAAE,GAAG,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC,GAAG,cAAc,CAyBvF;AAUD,eAAO,MAAM,qBAAqB,QAAS,MAAM,UAAU,MAAM,iBAAiB,CAAC,KAAG,MAAM,MAAM,IAAI,CAWrG,CAAA;AAED,eAAO,MAAM,qBAAqB,WAAY,MAAM,iBAAiB,GAAG,SAAS,GAAG,aAAa,GAAG,YAAY,CAAC,SAUhH,CAAA;AA8HD,eAAO,MAAM,WAAW,QAAS,MAAM,MAAM,SAAS,SAarD,CAAA;AAGD,eAAO,MAAM,WAAW,QAAS,MAAM,MAAM,SAAS,SAgBrD,CAAA;AAGD,eAAO,MAAM,QAAQ,QAAS,MAAM,MAAM,MAAM,SAiB/C,CAAA;AAED;;;;;GAKG;AAEH,4CAA4C;AAC5C,wBAAgB,+DAA+D,CAAC,EAAE,EAAE,GAAG,GAAG,SAAS,GAAG,SAAS,GAAG,MAAM,GAClH,KAAK,CAAC,KAAK,GAAG,eAAe,GAAG,SAAS,GAAG,yBAAyB,GAAG,cAAc,CAAC,CA2B5F;AAID,wBAAgB,iDAAiD,CAAC,EAAE,EAAE,SAAS,GAAG,MAAM,GAAG,SAAS,GAC9F,KAAK,CAAC,IAAI,GAAG,aAAa,GAAG,wBAAwB,CAAC,CAW3D;AAUD,eAAO,MAAM,aAAa,QAAS,MAAM,MAAM,WAAW,SAEzD,CAAA"}
|
|
@@ -274,7 +274,9 @@ function tpParam(env, nd) {
|
|
|
274
274
|
// v4.1 AI 相关需求要求它也能推
|
|
275
275
|
const ndTy = nd.typeAnnotation ?? env.unifier.nextFreshTyAnn('free');
|
|
276
276
|
env.setType(nd, ndTy);
|
|
277
|
-
|
|
277
|
+
if (nd.defaultValue) {
|
|
278
|
+
(0, dispatch_expr_1.tpSolvingExpr)(env, nd.defaultValue, ndTy);
|
|
279
|
+
}
|
|
278
280
|
nd.optional = Boolean(nd.defaultValue?.expression);
|
|
279
281
|
if (nd.concept === 'InterfaceParam') {
|
|
280
282
|
nd.optional = !nd.required;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dispatch-def.js","sourceRoot":"","sources":["../../src/typer/dispatch-def.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"dispatch-def.js","sourceRoot":"","sources":["../../src/typer/dispatch-def.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { AnonymousFunction, BatchAssignment, LogicItemNode, Match, NewComposite, SubLogic, SyntaxNode, TypeAnnotation } from '@lcap/nasl-concepts';
|
|
1
|
+
import { AnonymousFunction, BatchAssignment, LogicItemNode, Match, IfExpression, NewComposite, SubLogic, SyntaxNode, TypeAnnotation } from '@lcap/nasl-concepts';
|
|
2
2
|
import { type SemEnv } from './typer';
|
|
3
3
|
type ExpressionNode = Exclude<SyntaxNode, TypeAnnotation>;
|
|
4
4
|
export declare function dispatchExpr(env: SemEnv, nd: ExpressionNode | undefined, tgtTy: TypeAnnotation | undefined): TypeAnnotation | undefined;
|
|
@@ -10,6 +10,7 @@ export declare const extractNameTyPair: (env: SemEnv, ty: TypeAnnotation | undef
|
|
|
10
10
|
*/
|
|
11
11
|
export declare function tpSolvingExpr(env: SemEnv, expr: SyntaxNode, tgtTy: TypeAnnotation | undefined): TypeAnnotation | undefined;
|
|
12
12
|
export declare function tpMatch(env: SemEnv, nd: Match, tgtTy: TypeAnnotation | undefined): TypeAnnotation | undefined;
|
|
13
|
+
export declare function tpIfExpression(env: SemEnv, nd: IfExpression, tgtTy: TypeAnnotation | undefined): TypeAnnotation | undefined;
|
|
13
14
|
export declare const getRightByLine: (nd: BatchAssignment | NewComposite, itemIdx: number, memIdx?: number) => LogicItemNode;
|
|
14
15
|
export {};
|
|
15
16
|
//# sourceMappingURL=dispatch-expr.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dispatch-expr.d.ts","sourceRoot":"","sources":["../../src/typer/dispatch-expr.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,iBAAiB,EAEjB,eAAe,EAYf,aAAa,EACb,KAAK,
|
|
1
|
+
{"version":3,"file":"dispatch-expr.d.ts","sourceRoot":"","sources":["../../src/typer/dispatch-expr.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,iBAAiB,EAEjB,eAAe,EAYf,aAAa,EACb,KAAK,EACL,YAAY,EAKZ,YAAY,EAqBZ,QAAQ,EACR,UAAU,EACV,cAAc,EAKf,MAAM,qBAAqB,CAAC;AAoD7B,OAAO,EACL,KAAK,MAAM,EAEZ,MAAM,SAAS,CAAC;AA0EjB,KAAK,cAAc,GAAG,OAAO,CAAC,UAAU,EAAE,cAAc,CAAC,CAAC;AAG1D,wBAAgB,YAAY,CAAC,GAAG,EAAE,MAAM,EAAE,EAAE,EAAE,cAAc,GAAG,SAAS,EAAE,KAAK,EAAE,cAAc,GAAG,SAAS,GAAG,cAAc,GAAG,SAAS,CA0DvI;AAquBD,eAAO,MAAM,mBAAmB,QAAS,MAAM,MAAM,iBAAiB,UAAU,cAAc,GAAG,SAAS,2BAAuB,cAAc,GAAG,SA0BjJ,CAAA;AAED,eAAO,MAAM,UAAU,QAAS,MAAM,MAAM,QAAQ,SAAS,cAAc,GAAG,SAAS,eAAc,OAAO,KAAW,cAAc,GAAG,SAgGvI,CAAA;AA0jBD,eAAO,MAAM,iBAAiB,QAAS,MAAM,MAAM,cAAc,GAAG,SAAS,KAAG,MAAM,CAAC,MAAM,EAAE,cAAc,GAAG,IAAI,CAAC,CAapH,CAAA;AA6FD;;GAEG;AACH,wBAAgB,aAAa,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,cAAc,GAAG,SAAS,GAAG,cAAc,GAAG,SAAS,CAY1H;AAED,wBAAgB,OAAO,CAAC,GAAG,EAAE,MAAM,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,cAAc,GAAG,SAAS,GAAG,cAAc,GAAG,SAAS,CAoJ7G;AAED,wBAAgB,cAAc,CAAC,GAAG,EAAE,MAAM,EAAE,EAAE,EAAE,YAAY,EAAE,KAAK,EAAE,cAAc,GAAG,SAAS,GAAG,cAAc,GAAG,SAAS,CAS3H;AA2CD,eAAO,MAAM,cAAc,OAAQ,eAAe,GAAG,YAAY,WAAW,MAAM,WAAW,MAAM,KAAG,aAMrG,CAAC"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.getRightByLine = exports.tpMatch = exports.tpSolvingExpr = exports.extractNameTyPair = exports.tpSubLogic = exports.tpAnonymousFunction = exports.dispatchExpr = void 0;
|
|
3
|
+
exports.getRightByLine = exports.tpIfExpression = exports.tpMatch = exports.tpSolvingExpr = exports.extractNameTyPair = exports.tpSubLogic = exports.tpAnonymousFunction = exports.dispatchExpr = void 0;
|
|
4
4
|
const nasl_concepts_1 = require("@lcap/nasl-concepts");
|
|
5
5
|
const fp_macros_1 = require("../utils/fp-macros");
|
|
6
6
|
const sem_diag_1 = require("./sem-diag");
|
|
@@ -13,6 +13,7 @@ const get_q_name_1 = require("../reference-manager/get-q-name");
|
|
|
13
13
|
const reference_manager_1 = require("../reference-manager/reference-manager");
|
|
14
14
|
const string_1 = require("../utils/string");
|
|
15
15
|
const assertion_1 = require("../utils/assertion");
|
|
16
|
+
const typer_1 = require("./typer");
|
|
16
17
|
const service_1 = require("@lcap/nasl-concepts/service");
|
|
17
18
|
const asserts_1 = require("@lcap/nasl-concepts/asserts");
|
|
18
19
|
const type_manager_1 = require("./type-manager");
|
|
@@ -61,6 +62,7 @@ function dispatchExpr(env, nd, tgtTy) {
|
|
|
61
62
|
case 'NewList': return tpNewList(env, nd, tgtTy);
|
|
62
63
|
case 'NewMap': return tpNewMap(env, nd, tgtTy);
|
|
63
64
|
case 'Match': return tpMatch(env, nd, tgtTy);
|
|
65
|
+
case 'IfExpression': return tpIfExpression(env, nd, tgtTy);
|
|
64
66
|
case 'StringInterpolation': return tpStringInterpolation(env, nd, tgtTy);
|
|
65
67
|
case 'AnonymousFunction': return (0, exports.tpAnonymousFunction)(env, nd, tgtTy);
|
|
66
68
|
case 'SubLogic': return (0, exports.tpSubLogic)(env, nd, tgtTy);
|
|
@@ -327,6 +329,18 @@ const processRefProp = (env, nd, objTyAnn) => {
|
|
|
327
329
|
env.setType(nd.property, type_manager_1.naslAnyTy);
|
|
328
330
|
return;
|
|
329
331
|
}
|
|
332
|
+
if (objTyAnn.typeKind === 'generic' && vRefTyDef.concept === 'Structure') {
|
|
333
|
+
const propertyType = (0, typer_1.findPropertyTypeFromGeneric)(env, objTyAnn, vRefTyDef, nd.property.name);
|
|
334
|
+
if (propertyType) {
|
|
335
|
+
env.setType(nd.property, propertyType);
|
|
336
|
+
}
|
|
337
|
+
else {
|
|
338
|
+
// 找不到属性时设置错误,与非 generic 分支保持一致
|
|
339
|
+
env.addError((0, sem_diag_1.mkMemNotFoundErr)(objTyAnn, nd.property.name));
|
|
340
|
+
env.setType(nd.property, type_manager_1.naslAnyTy);
|
|
341
|
+
}
|
|
342
|
+
return;
|
|
343
|
+
}
|
|
330
344
|
let prop = reference_manager_1.ReferenceManager.getProp(vRefTyDef, nd.property.name);
|
|
331
345
|
if (!prop) {
|
|
332
346
|
if (nd.object.name === 'processSystem') {
|
|
@@ -779,22 +793,49 @@ const tpAnonymousFunction = (env, nd, _tgtTy, isListSort = false) => {
|
|
|
779
793
|
};
|
|
780
794
|
exports.tpAnonymousFunction = tpAnonymousFunction;
|
|
781
795
|
const tpSubLogic = (env, nd, tgtTy, isListSort = false) => {
|
|
796
|
+
// 保持与 tpAnonymousFunction 一致:先展开 expected function type 中的 tuple spread
|
|
797
|
+
const expectedTy = tgtTy ? desugarTupleSpreadInArgsOfFunctionType(tgtTy) : undefined;
|
|
798
|
+
// 仅对“表达式中的临时 SubLogic”(TS arrow-function block 解析产物)做参数类型的“预填充”:
|
|
799
|
+
// - 让 tpParam 直接用 expected type,而不是先生成 free type var
|
|
800
|
+
// - 保证闭包捕获变量(如外层 record 参数)具备正确成员类型,避免 Any 化
|
|
801
|
+
if (expectedTy && (0, type_predicate_2.isFuncTy)(expectedTy) && typeof nd.name === 'string' && nd.name.startsWith('$anon$')) {
|
|
802
|
+
nd.params.forEach((param, idx) => {
|
|
803
|
+
const exp = expectedTy.typeArguments?.[idx];
|
|
804
|
+
if (!exp)
|
|
805
|
+
return;
|
|
806
|
+
if (!param.typeAnnotation) {
|
|
807
|
+
param.typeAnnotation = (0, type_manager_1.copyTyAnn)(exp);
|
|
808
|
+
}
|
|
809
|
+
});
|
|
810
|
+
}
|
|
782
811
|
const subLogicVars = [...nd.params, ...nd.returns, ...nd.variables];
|
|
783
812
|
env.refMgr.setLocalSymBindings(nd, subLogicVars);
|
|
784
813
|
subLogicVars.forEach(v => (0, dispatch_def_1.dispatchDef)(env, v));
|
|
785
814
|
// 处理 tgtTy 缺失的情况
|
|
786
|
-
if (
|
|
815
|
+
if (expectedTy && !(0, type_predicate_2.isFuncTy)(expectedTy) && !isListSort) {
|
|
787
816
|
env.setType(nd, type_manager_1.naslAnyTy);
|
|
788
|
-
env.addError((0, sem_diag_1.mkIncompatibleTyErr)(env, '函数',
|
|
817
|
+
env.addError((0, sem_diag_1.mkIncompatibleTyErr)(env, '函数', expectedTy));
|
|
789
818
|
return (0, type_manager_1.createFnTyFromTyAnns)([], type_manager_1.naslAnyTy);
|
|
790
819
|
}
|
|
791
820
|
// 如果有 tgtTy 且是函数类型,则进行 unification
|
|
792
|
-
if (
|
|
821
|
+
if (expectedTy && (0, type_predicate_2.isFuncTy)(expectedTy)) {
|
|
822
|
+
// 对于“作为表达式出现的 SubLogic”(例如由 TS arrow-function block 生成),通常没有显式参数类型。
|
|
823
|
+
// 只做 contravariant unify 很难把参数类型从 expected type 传播进来,进而导致闭包捕获变量上的成员访问类型变成 Any。
|
|
824
|
+
// 因此:当参数未声明类型(或当前是 Any/未解),先用 expected param type 填充。
|
|
825
|
+
nd.params.forEach((param, idx) => {
|
|
826
|
+
const expected = expectedTy.typeArguments?.[idx];
|
|
827
|
+
if (!expected)
|
|
828
|
+
return;
|
|
829
|
+
const cur = env.getRawType(param);
|
|
830
|
+
if (!param.typeAnnotation && (!cur || (0, type_predicate_2.isAnyTy)(cur) || (0, type_predicate_1.isUnResolvedTy)(cur))) {
|
|
831
|
+
env.setType(param, expected);
|
|
832
|
+
}
|
|
833
|
+
});
|
|
793
834
|
// TODO: 通过 default value 生成 constraints
|
|
794
835
|
nd.params.forEach((param, idx) => {
|
|
795
836
|
// v4.1 AI 相关需求要求它也能推
|
|
796
837
|
const paramTy = env.getRawType(param);
|
|
797
|
-
env.unifier.unifyContravariant(paramTy,
|
|
838
|
+
env.unifier.unifyContravariant(paramTy, expectedTy.typeArguments[idx], param); // contravariant
|
|
798
839
|
});
|
|
799
840
|
}
|
|
800
841
|
// 若非前端,则 shallow copy,因为内部会触发 solve,会把进来前的约束清掉;
|
|
@@ -817,7 +858,7 @@ const tpSubLogic = (env, nd, tgtTy, isListSort = false) => {
|
|
|
817
858
|
// 运行后置校验并把 postChecks 触发
|
|
818
859
|
const normalizedSemTyMap = (0, subster_1.traverseAndSubst)(env)(nd, subst);
|
|
819
860
|
const errs = localSolver.postCheckSolution(subst, localSolver.cs, normalizedSemTyMap) || [];
|
|
820
|
-
if (
|
|
861
|
+
if (!env.isErrorReportingDisabled() && !env.hasErrorDelegatee) {
|
|
821
862
|
for (const err of errs) {
|
|
822
863
|
env.addError(err.message, env.getCurFileNode(), err.errBoundary, err.fromPlayground ? 'warning' : 'error');
|
|
823
864
|
}
|
|
@@ -828,13 +869,13 @@ const tpSubLogic = (env, nd, tgtTy, isListSort = false) => {
|
|
|
828
869
|
(0, dispatch_stmt_1.tpSolvingPlayground)(env, nd.playground);
|
|
829
870
|
subLogicVars.forEach(env.removeLexicalSym);
|
|
830
871
|
const ndTy = (0, type_manager_1.createRefTyAnnFromDef)(nd, env);
|
|
831
|
-
if (
|
|
872
|
+
if (expectedTy && ndTy.typeKind === 'function') {
|
|
832
873
|
// 从 expected type 上 copy sync 字段,保证 SubLogic 的函数类型和 Param 处声明的字段一致
|
|
833
|
-
ndTy.sync =
|
|
874
|
+
ndTy.sync = expectedTy.sync;
|
|
834
875
|
}
|
|
835
876
|
env.setType(nd, ndTy);
|
|
836
877
|
env.unifier.cs = csCopy;
|
|
837
|
-
!isListSort && env.unifier.unify(ndTy,
|
|
878
|
+
!isListSort && env.unifier.unify(ndTy, expectedTy); // 这里需要额外的 unify,否则 SubLogic 算出来的类型不能与外侧进来时的约束产生关系
|
|
838
879
|
return ndTy;
|
|
839
880
|
};
|
|
840
881
|
exports.tpSubLogic = tpSubLogic;
|
|
@@ -918,8 +959,9 @@ function tpCallQueryComponent(env, nd, tgtTy) {
|
|
|
918
959
|
};
|
|
919
960
|
env.ctxCQC = nd;
|
|
920
961
|
env.ctxTpQFE = makeTpQueryFieldExpr;
|
|
962
|
+
const hasJoin = nd.from?.joinParts?.length > 0;
|
|
921
963
|
// typing expressions in nd.from.joinsParts
|
|
922
|
-
if (
|
|
964
|
+
if (hasJoin) {
|
|
923
965
|
tpJoinParts(env, nd.from.joinParts);
|
|
924
966
|
}
|
|
925
967
|
// this will also set aggrAsNames, groupByAsNames
|
|
@@ -1061,7 +1103,13 @@ function tpCallQueryComponent(env, nd, tgtTy) {
|
|
|
1061
1103
|
return (0, type_manager_1.createAnonymousTyAnn)(selProps.map(string_1.lowercaseFirstChar), tyAnns);
|
|
1062
1104
|
}
|
|
1063
1105
|
});
|
|
1064
|
-
|
|
1106
|
+
// 如果没有 join 且只有一个实体,直接返回该实体的类型,不包匿名结构
|
|
1107
|
+
if (nd.simplifyType && !hasJoin && selShortNames.length === 1) {
|
|
1108
|
+
retTy = (0, type_manager_1.createListTyAnn)(tys?.[0] || type_manager_1.naslAnyTy);
|
|
1109
|
+
}
|
|
1110
|
+
else {
|
|
1111
|
+
retTy = (0, type_manager_1.createListTyAnn)((0, type_manager_1.createAnonymousTyAnn)(selShortNames.map(string_1.lowercaseFirstChar), tys));
|
|
1112
|
+
}
|
|
1065
1113
|
}
|
|
1066
1114
|
// 2.11 之前才有,升级脚本也没管,需要特殊处理
|
|
1067
1115
|
if (nd.limit) {
|
|
@@ -1138,6 +1186,7 @@ function tpCallQueryComponent(env, nd, tgtTy) {
|
|
|
1138
1186
|
case 'COUNTD':
|
|
1139
1187
|
return type_manager_1.naslLongTy;
|
|
1140
1188
|
case 'AVG':
|
|
1189
|
+
env.unifier.unify(propTy, type_manager_1.naslDecimalOrLongTy);
|
|
1141
1190
|
return type_manager_1.naslDecimalTy;
|
|
1142
1191
|
default:
|
|
1143
1192
|
return propTy;
|
|
@@ -1197,15 +1246,25 @@ function tpOqlQueryComponent(env, nd, tgtTy) {
|
|
|
1197
1246
|
}
|
|
1198
1247
|
const logicNd = parser.parseInLogicContext(`const $queryResult$ = ${code};`, '$queryResult$');
|
|
1199
1248
|
if (logicNd) {
|
|
1200
|
-
|
|
1201
|
-
|
|
1249
|
+
// @ts-expect-error
|
|
1250
|
+
logicNd.parentNode = null;
|
|
1251
|
+
logicNd.name = 'oqlTempLogic';
|
|
1252
|
+
env.setErrorDelegatee(nd);
|
|
1202
1253
|
const oldCS = env.unifier.cs;
|
|
1203
1254
|
// 对 dispatchDef 的调用,会修改 env.unifier.cs。因此需要给他一个全新的cs,避免污染正常的cs
|
|
1204
1255
|
const newCS = new Map();
|
|
1205
1256
|
env.unifier.cs = newCS;
|
|
1206
|
-
|
|
1207
|
-
|
|
1208
|
-
|
|
1257
|
+
try {
|
|
1258
|
+
(0, dispatch_def_1.tpLogic)(env, logicNd);
|
|
1259
|
+
}
|
|
1260
|
+
catch (err) {
|
|
1261
|
+
// 打印下错误,便于排查
|
|
1262
|
+
env.logger?.fatal?.('[tpOqlQueryComponent] error:', err);
|
|
1263
|
+
}
|
|
1264
|
+
finally {
|
|
1265
|
+
env.unifier.cs = oldCS;
|
|
1266
|
+
env.resetErrorDelegatee();
|
|
1267
|
+
}
|
|
1209
1268
|
if (nd.typeAnnotation) {
|
|
1210
1269
|
// 有类型标注,直接用
|
|
1211
1270
|
env.setType(nd, nd.typeAnnotation);
|
|
@@ -1286,7 +1345,9 @@ function tpNewComposite(env, nd, tgtTy) {
|
|
|
1286
1345
|
if (right && (0, nasl_type_manipulation_1.isEnumIdentifier)(right)) {
|
|
1287
1346
|
env.addError(`新建表达式中 ${right.toNaturalTS()} 枚举类不能直接使用,请取它的枚举项`, undefined, right);
|
|
1288
1347
|
}
|
|
1289
|
-
|
|
1348
|
+
// 传递当前这条连线,以便在错误报告中记录是哪条连线导致的错误
|
|
1349
|
+
const context = { assignmentLine: line };
|
|
1350
|
+
env.unifier.unifyWithBoundary(rTy, lPropTyAnn, right, context);
|
|
1290
1351
|
});
|
|
1291
1352
|
const properties = toRaws(nd.properties);
|
|
1292
1353
|
// 没连线的左边的元素们。其实无所谓,但要跟现在保持一致。
|
|
@@ -1446,6 +1507,8 @@ function tpMatch(env, nd, tgtTy) {
|
|
|
1446
1507
|
const exprTy = nd.isExpression ?
|
|
1447
1508
|
dispatchExpr(env, nd.expression, undefined) :
|
|
1448
1509
|
tpSolvingExpr(env, nd.expression, undefined);
|
|
1510
|
+
// 类型匹配,必须加上isTypeMatch 判断,否则值匹配时会错误地用值的类型去约束未解析类型,类型细化也将基于错误的类型
|
|
1511
|
+
const isTypeMatch = nd.cases.some(caseItem => caseItem.patterns.length > 0 && caseItem.patterns.every((p) => (0, type_predicate_1.isTypeAnnotation)(p)));
|
|
1449
1512
|
const tpMatchTypeRefineCase = (nd, exprTy) => (mc) => {
|
|
1450
1513
|
let exprRefinedTy = exprTy;
|
|
1451
1514
|
// mc.patterns 中可能包含类型模式和值模式,分别对应类型匹配和值匹配。
|
|
@@ -1477,6 +1540,10 @@ function tpMatch(env, nd, tgtTy) {
|
|
|
1477
1540
|
exprRefinedTy = (0, type_manager_1.createUnionTyAnnIfNecessary)(env, caseRefinedTys); // TODO 报错
|
|
1478
1541
|
}
|
|
1479
1542
|
}
|
|
1543
|
+
// 值匹配
|
|
1544
|
+
if (!isTypeMatch) {
|
|
1545
|
+
toRaws(mc.patterns).forEach(pattern => dispatchExpr(env, pattern, exprRefinedTy));
|
|
1546
|
+
}
|
|
1480
1547
|
}
|
|
1481
1548
|
const allocatedVars = new Set();
|
|
1482
1549
|
const itVar = nasl_concepts_1.Variable.createProtoTypeOnly({
|
|
@@ -1528,10 +1595,6 @@ function tpMatch(env, nd, tgtTy) {
|
|
|
1528
1595
|
}
|
|
1529
1596
|
}
|
|
1530
1597
|
}
|
|
1531
|
-
// 类型匹配,必须加上isTypeMatch 判断,否则值匹配时会错误地用值的类型去约束未解析类型,类型细化也将基于错误的类型
|
|
1532
|
-
const isTypeMatch = nd.cases.some((caseItem) => {
|
|
1533
|
-
return caseItem.patterns.length > 0 && caseItem.patterns.every((p) => (0, type_predicate_1.isTypeAnnotation)(p));
|
|
1534
|
-
});
|
|
1535
1598
|
// 只有当 exprTy 是未解析的类型(typeParam 或 indexedAccess)时,才需要从 patterns 构造 union 类型来约束它
|
|
1536
1599
|
if (isTypeMatch && ((0, type_predicate_2.isTyAnnTyParam)(exprTy) || (0, type_predicate_1.isIndexedType)(exprTy))) {
|
|
1537
1600
|
// 从已有的 match cases 的类型构造出 union-like type
|
|
@@ -1575,6 +1638,17 @@ function tpMatch(env, nd, tgtTy) {
|
|
|
1575
1638
|
}
|
|
1576
1639
|
}
|
|
1577
1640
|
exports.tpMatch = tpMatch;
|
|
1641
|
+
function tpIfExpression(env, nd, tgtTy) {
|
|
1642
|
+
const conditionTy = dispatchExpr(env, nd.condition, type_manager_1.naslBooleanTy);
|
|
1643
|
+
env.unifier.unify(conditionTy, type_manager_1.naslBooleanTy);
|
|
1644
|
+
const consequentTy = dispatchExpr(env, nd.consequent, undefined);
|
|
1645
|
+
const alternateTy = dispatchExpr(env, nd.alternate, undefined);
|
|
1646
|
+
const ifTy = (0, type_manager_1.createUnionTyAnnIfNecessary)(env, [consequentTy, alternateTy].filter(Boolean));
|
|
1647
|
+
env.setType(nd, ifTy);
|
|
1648
|
+
env.unifier.unify(ifTy, tgtTy);
|
|
1649
|
+
return ifTy;
|
|
1650
|
+
}
|
|
1651
|
+
exports.tpIfExpression = tpIfExpression;
|
|
1578
1652
|
function tpUnparsed(env, nd, tgtTy) {
|
|
1579
1653
|
// should be bottom type,但是现在没有 bottom type 怎么办?
|
|
1580
1654
|
// 按后端设成 string 的话前端各种骚用法会报错什么 [1, 2, 3] 这种,难道你要我 typeof eval(nd)?
|