@lcap/nasl-language-server-core 4.0.0-rc.5 → 4.0.1-rc.0
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 +5 -2
- package/out/checker.js.map +1 -1
- package/out/module/graph.js +6 -6
- package/out/module/graph.js.map +1 -1
- package/out/module/module.d.ts.map +1 -1
- package/out/module/module.js +3 -6
- package/out/module/module.js.map +1 -1
- package/out/reference-manager/collect-q-name.d.ts.map +1 -1
- package/out/reference-manager/collect-q-name.js +2 -1
- package/out/reference-manager/collect-q-name.js.map +1 -1
- package/out/reference-manager/get-q-name.d.ts.map +1 -1
- package/out/reference-manager/get-q-name.js +1 -5
- package/out/reference-manager/get-q-name.js.map +1 -1
- package/out/reference-manager/reference-manager.d.ts +11 -5
- package/out/reference-manager/reference-manager.d.ts.map +1 -1
- package/out/reference-manager/reference-manager.js +59 -59
- package/out/reference-manager/reference-manager.js.map +1 -1
- package/out/reference-manager/rename-q-name.d.ts.map +1 -1
- package/out/reference-manager/rename-q-name.js +3 -0
- package/out/reference-manager/rename-q-name.js.map +1 -1
- package/out/reference-manager/symbol-type.d.ts +3 -1
- package/out/reference-manager/symbol-type.d.ts.map +1 -1
- package/out/reference-manager/symbol-type.js +9 -7
- package/out/reference-manager/symbol-type.js.map +1 -1
- package/out/reference-manager/update-nasl-fragment.d.ts.map +1 -1
- package/out/reference-manager/update-nasl-fragment.js +5 -4
- package/out/reference-manager/update-nasl-fragment.js.map +1 -1
- package/out/symbol/graph.js +2 -2
- package/out/symbol/graph.js.map +1 -1
- package/out/typer/component-def-manager/utils.d.ts.map +1 -1
- package/out/typer/component-def-manager/utils.js +5 -3
- package/out/typer/component-def-manager/utils.js.map +1 -1
- package/out/typer/dispatch-def.d.ts.map +1 -1
- package/out/typer/dispatch-def.js +6 -6
- package/out/typer/dispatch-def.js.map +1 -1
- package/out/typer/dispatch-expr.d.ts +5 -2
- package/out/typer/dispatch-expr.d.ts.map +1 -1
- package/out/typer/dispatch-expr.js +85 -42
- package/out/typer/dispatch-expr.js.map +1 -1
- package/out/typer/dispatch-process.d.ts +0 -1
- package/out/typer/dispatch-process.d.ts.map +1 -1
- package/out/typer/dispatch-process.js +18 -12
- package/out/typer/dispatch-process.js.map +1 -1
- package/out/typer/dispatch-stmt.d.ts.map +1 -1
- package/out/typer/dispatch-stmt.js +15 -9
- 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 +84 -37
- package/out/typer/dispatch-view.js.map +1 -1
- package/out/typer/incremental-update.d.ts +6 -29
- package/out/typer/incremental-update.d.ts.map +1 -1
- package/out/typer/incremental-update.js +116 -204
- package/out/typer/incremental-update.js.map +1 -1
- package/out/typer/index.d.ts +2 -2
- package/out/typer/index.d.ts.map +1 -1
- package/out/typer/index.js +1 -2
- package/out/typer/index.js.map +1 -1
- package/out/typer/subster.d.ts.map +1 -1
- package/out/typer/subster.js +9 -10
- package/out/typer/subster.js.map +1 -1
- package/out/typer/type-manager.d.ts +2 -0
- package/out/typer/type-manager.d.ts.map +1 -1
- package/out/typer/type-manager.js +8 -3
- package/out/typer/type-manager.js.map +1 -1
- package/out/typer/type-predicate.d.ts +15 -2
- package/out/typer/type-predicate.d.ts.map +1 -1
- package/out/typer/type-predicate.js +54 -23
- package/out/typer/type-predicate.js.map +1 -1
- package/out/typer/typer.d.ts +12 -1
- package/out/typer/typer.d.ts.map +1 -1
- package/out/typer/typer.js +16 -2
- package/out/typer/typer.js.map +1 -1
- package/out/utils/parseTsClassType.d.ts.map +1 -1
- package/out/utils/parseTsClassType.js +3 -0
- package/out/utils/parseTsClassType.js.map +1 -1
- package/out/utils/type-operator.d.ts +1 -1
- package/out/utils/type-operator.d.ts.map +1 -1
- package/out/utils/type-operator.js +6 -4
- package/out/utils/type-operator.js.map +1 -1
- package/package.json +7 -8
- package/out/utils/vue-hack.d.ts +0 -25
- package/out/utils/vue-hack.d.ts.map +0 -1
- package/out/utils/vue-hack.js +0 -33
- package/out/utils/vue-hack.js.map +0 -1
- package/out/utils/vue.d.ts +0 -2
- package/out/utils/vue.d.ts.map +0 -1
- package/out/utils/vue.js +0 -10
- package/out/utils/vue.js.map +0 -1
|
@@ -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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"}
|
|
@@ -11,25 +11,10 @@ export interface PreProcessResult {
|
|
|
11
11
|
typerCreateNodes: Set<SyntaxNode>;
|
|
12
12
|
}
|
|
13
13
|
/**
|
|
14
|
-
* @warning
|
|
14
|
+
* @warning 改动这个文件中的逻辑时很容易引发增量检查问题、查找引用问题、内存泄漏,请谨慎;如单元测试 UT 发生错误,更要谨慎
|
|
15
|
+
* 为了增加效率,直接往 params 的 Set 里加东西
|
|
15
16
|
*/
|
|
16
|
-
export declare const
|
|
17
|
-
/**
|
|
18
|
-
* 1 扫描 xs 的 qNames
|
|
19
|
-
* 2 确定待检查项 ys:xs 引用的 FileNodes,
|
|
20
|
-
* 3 删除 xs 中对所有全局符号的引用,更新 symbolRefs
|
|
21
|
-
* (1 因为即使通过撤销重做,进来的 refs 对象的内存地址也不一样,无法重用)
|
|
22
|
-
* (2 xs 中其他符号的引用如果还在,查找其他符号时依然会找到"消失的xs",然后再找到 xs 被引用的 FileNode,这样不对)
|
|
23
|
-
* 4 缓存要删除的 qNames,现在不能删除,因为如果删除了,移除 ys 中的符号时就会报错,例子我不记得了,之后再想想……
|
|
24
|
-
*
|
|
25
|
-
* 以下不在 preProcess 中做:
|
|
26
|
-
* 5 类型检查 ys
|
|
27
|
-
* 6 不需要删除 ys 中对 xs 的引用 refs,所以不需要更新 symbolRefs(为了之后做 'relink')
|
|
28
|
-
*/
|
|
29
|
-
/**
|
|
30
|
-
* @warning: 改动这个文件中的逻辑时很容易引发增量检查问题、查找引用问题、内存泄漏,请谨慎;如单元测试 UT 发生错误,更要谨慎
|
|
31
|
-
*/
|
|
32
|
-
export declare const preProcessDefRemoval: (env: SemEnv, nd: DefConcept) => PreProcessResult;
|
|
17
|
+
export declare const preProcessOther: (env: SemEnv, nd: SyntaxNode, typerCheckFiles: Set<SyntaxNode>) => boolean;
|
|
33
18
|
/**
|
|
34
19
|
* rename xs:
|
|
35
20
|
* 1 获取要删除的旧的 qNames1
|
|
@@ -41,17 +26,9 @@ export declare const preProcessDefRemoval: (env: SemEnv, nd: DefConcept) => PreP
|
|
|
41
26
|
* 7 类型检查 ys 和 zs
|
|
42
27
|
*/
|
|
43
28
|
/**
|
|
44
|
-
* @warning
|
|
45
|
-
*/
|
|
46
|
-
export declare const preProcessDefRename: (env: SemEnv, nd: DefConcept, oldName: string, mode: 'rename-only' | 'update' | null, oqlRemoveNodesTsPath: Set<string>) => PreProcessResult;
|
|
47
|
-
/**
|
|
48
|
-
* @warning: 改动这个文件中的逻辑时很容易引发增量检查问题、查找引用问题、内存泄漏,请谨慎;如单元测试 UT 发生错误,更要谨慎
|
|
49
|
-
*/
|
|
50
|
-
export declare const preProcessDefUpdate: (env: SemEnv, nd: DefConcept) => PreProcessResult;
|
|
51
|
-
/**
|
|
52
|
-
* @warning: 改动这个文件中的逻辑时很容易引发增量检查问题、查找引用问题、内存泄漏,请谨慎;如单元测试 UT 发生错误,更要谨慎
|
|
29
|
+
* @warning 改动这个文件中的逻辑时很容易引发增量检查问题、查找引用问题、内存泄漏,请谨慎;如单元测试 UT 发生错误,更要谨慎
|
|
53
30
|
*/
|
|
54
|
-
export declare const
|
|
31
|
+
export declare const preProcessDefRename: (env: SemEnv, nd: DefConcept, typerCheckFiles: Set<SyntaxNode>, oldName: string, mode: 'rename-only' | 'update' | null, oqlRemoveNodesTsPath: Set<string>) => boolean;
|
|
55
32
|
/**
|
|
56
33
|
* 1. 符号删除
|
|
57
34
|
* 2. 运行新的类型标注,额外错误诊断
|
|
@@ -69,7 +46,7 @@ export declare const preProcessNonDefAction: (nd: SyntaxNode) => PreProcessResul
|
|
|
69
46
|
* @returns 诊断信息列表
|
|
70
47
|
*/
|
|
71
48
|
/**
|
|
72
|
-
* @warning
|
|
49
|
+
* @warning 改动这个文件中的逻辑时很容易引发增量检查问题、查找引用问题、内存泄漏,请谨慎;如单元测试 UT 发生错误,更要谨慎
|
|
73
50
|
*/
|
|
74
51
|
export declare function checkUpdateRefsDiag(env: SemEnv, diagnosticManager: DiagnosticManager, chkFiles: Set<SyntaxNode>, removeNodes: Set<SyntaxNode>, createNodes: Set<SyntaxNode>, tsDiagnostics: ConcreteOQLDiagnostic[], checkedFiles?: Set<SyntaxNode>): Promise<Array<DiagnosticRecord>>;
|
|
75
52
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"incremental-update.d.ts","sourceRoot":"","sources":["../../src/typer/incremental-update.ts"],"names":[],"mappings":"AAEA,OAAO,EAAqC,UAAU,EAAkB,MAAM,qBAAqB,CAAC;AAGpG,OAAO,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AAIjC,OAAO,EAAiC,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAG7E,OAAO,EAAE,UAAU,EAAuD,MAAM,wCAAwC,CAAC;AAMzH,OAAO,EAAE,UAAU,IAAI,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AACpE,OAAO,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAC;AAE7D,KAAK,iBAAiB,GAAG,kBAAkB,CAAC,iBAAiB,CAAC;AAG9D,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
|
|
1
|
+
{"version":3,"file":"incremental-update.d.ts","sourceRoot":"","sources":["../../src/typer/incremental-update.ts"],"names":[],"mappings":"AAEA,OAAO,EAAqC,UAAU,EAAkB,MAAM,qBAAqB,CAAC;AAGpG,OAAO,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AAIjC,OAAO,EAAiC,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAG7E,OAAO,EAAE,UAAU,EAAuD,MAAM,wCAAwC,CAAC;AAMzH,OAAO,EAAE,UAAU,IAAI,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AACpE,OAAO,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAC;AAE7D,KAAK,iBAAiB,GAAG,kBAAkB,CAAC,iBAAiB,CAAC;AAG9D,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,OAO/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;AAyHD;;;;;GAKG;AAEH;;;;;;;;;GASG;AACH;;GAEG;AACH,wBAAsB,mBAAmB,CACrC,GAAG,EAAE,MAAM,EACX,iBAAiB,EAAE,iBAAiB,EACpC,QAAQ,EAAE,GAAG,CAAC,UAAU,CAAC,EACzB,WAAW,EAAE,GAAG,CAAC,UAAU,CAAC,EAC5B,WAAW,EAAE,GAAG,CAAC,UAAU,CAAC,EAC5B,aAAa,EAAE,qBAAqB,EAAE,EACtC,YAAY,GAAE,GAAG,CAAC,UAAU,CAAa,GAC1C,OAAO,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC,CA4FlC;AA8JD;;;;;;;GAOG;AACH,eAAO,MAAM,WAAW,QACjB,MAAM,cACC,IAAI,UAAU,CAAC,gBACb,IAAI,UAAU,CAAC,KAC5B,MAAM,UAAU,CAyHlB,CAAA"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.getOqlFiles = exports.checkUpdateRefsDiag = exports.
|
|
3
|
+
exports.getOqlFiles = exports.checkUpdateRefsDiag = exports.preProcessDefRename = exports.preProcessOther = void 0;
|
|
4
4
|
const set_1 = require("mnemonist/set");
|
|
5
5
|
const nasl_utils_1 = require("@lcap/nasl-utils");
|
|
6
6
|
const file_node_cache_1 = require("../utils/file-node-cache");
|
|
@@ -17,88 +17,18 @@ const remove_q_name_1 = require("../reference-manager/remove-q-name");
|
|
|
17
17
|
const rename_q_name_1 = require("../reference-manager/rename-q-name");
|
|
18
18
|
const dispatch_def_1 = require("./dispatch-def");
|
|
19
19
|
/**
|
|
20
|
-
* @warning
|
|
20
|
+
* @warning 改动这个文件中的逻辑时很容易引发增量检查问题、查找引用问题、内存泄漏,请谨慎;如单元测试 UT 发生错误,更要谨慎
|
|
21
|
+
* 为了增加效率,直接往 params 的 Set 里加东西
|
|
21
22
|
*/
|
|
22
|
-
const
|
|
23
|
-
const typerCheckFiles = new Set();
|
|
24
|
-
const typerRemoveNodes = new Set();
|
|
25
|
-
const typerCreateNodes = new Set([nd]);
|
|
23
|
+
const preProcessOther = (env, nd, typerCheckFiles) => {
|
|
26
24
|
const fileNode = (0, service_1.getFileNode)(nd);
|
|
25
|
+
// 一定不能真的去检查实体自动生成(更新)的实体逻辑
|
|
27
26
|
if (fileNode && !(0, reference_manager_1.isEntityLogic)(fileNode)) {
|
|
28
27
|
typerCheckFiles.add(fileNode);
|
|
29
28
|
}
|
|
30
|
-
return
|
|
31
|
-
typerCheckFiles,
|
|
32
|
-
typerRemoveNodes,
|
|
33
|
-
typerCreateNodes,
|
|
34
|
-
};
|
|
29
|
+
return true;
|
|
35
30
|
};
|
|
36
|
-
exports.
|
|
37
|
-
/**
|
|
38
|
-
* 1 扫描 xs 的 qNames
|
|
39
|
-
* 2 确定待检查项 ys:xs 引用的 FileNodes,
|
|
40
|
-
* 3 删除 xs 中对所有全局符号的引用,更新 symbolRefs
|
|
41
|
-
* (1 因为即使通过撤销重做,进来的 refs 对象的内存地址也不一样,无法重用)
|
|
42
|
-
* (2 xs 中其他符号的引用如果还在,查找其他符号时依然会找到"消失的xs",然后再找到 xs 被引用的 FileNode,这样不对)
|
|
43
|
-
* 4 缓存要删除的 qNames,现在不能删除,因为如果删除了,移除 ys 中的符号时就会报错,例子我不记得了,之后再想想……
|
|
44
|
-
*
|
|
45
|
-
* 以下不在 preProcess 中做:
|
|
46
|
-
* 5 类型检查 ys
|
|
47
|
-
* 6 不需要删除 ys 中对 xs 的引用 refs,所以不需要更新 symbolRefs(为了之后做 'relink')
|
|
48
|
-
*/
|
|
49
|
-
/**
|
|
50
|
-
* @warning: 改动这个文件中的逻辑时很容易引发增量检查问题、查找引用问题、内存泄漏,请谨慎;如单元测试 UT 发生错误,更要谨慎
|
|
51
|
-
*/
|
|
52
|
-
const preProcessDefRemoval = (env, nd) => {
|
|
53
|
-
const typerRemoveNodes = new Set([nd]);
|
|
54
|
-
const typerCheckFiles = new Set();
|
|
55
|
-
const typerCreateNodes = new Set();
|
|
56
|
-
const fileNode = (0, service_1.getFileNode)(nd);
|
|
57
|
-
fileNode && typerCheckFiles.add(fileNode);
|
|
58
|
-
if (reference_manager_2.ReferenceManager.localDefConcept.includes(nd.concept)) {
|
|
59
|
-
const fileNode = (0, service_1.getFileNode)(nd);
|
|
60
|
-
if (fileNode && !(0, reference_manager_1.isEntityLogic)(fileNode)) {
|
|
61
|
-
typerCheckFiles.add(fileNode);
|
|
62
|
-
}
|
|
63
|
-
}
|
|
64
|
-
else if (reference_manager_2.ReferenceManager.globalDefConcept.includes(nd.concept)) {
|
|
65
|
-
const nsp = (0, reference_manager_1.getNamespaceWithoutLast)(nd) ?? '';
|
|
66
|
-
// Including entity logics if nd.concept === 'Entity'
|
|
67
|
-
const qNames = (0, remove_q_name_1.getQNamesOfRemoveAction)(nsp, nd);
|
|
68
|
-
for (const qName of qNames) {
|
|
69
|
-
const subDef = env.refMgr.qNameDefs.get(qName);
|
|
70
|
-
if (subDef) {
|
|
71
|
-
// typerRemoveNodes.add(subDef); // 防止后面遍历变成 N^2 复杂度
|
|
72
|
-
const refs = getDirectRefFileNodes(env, subDef);
|
|
73
|
-
for (const ref of refs) {
|
|
74
|
-
typerCheckFiles.add(ref);
|
|
75
|
-
}
|
|
76
|
-
if (subDef.concept === 'Logic') {
|
|
77
|
-
const lgc = env.overriddenLogic.get(subDef);
|
|
78
|
-
if (lgc) {
|
|
79
|
-
typerRemoveNodes.add(lgc);
|
|
80
|
-
env.overriddenLogic.delete(subDef);
|
|
81
|
-
}
|
|
82
|
-
}
|
|
83
|
-
}
|
|
84
|
-
}
|
|
85
|
-
// 大概率是删了子定义
|
|
86
|
-
if (qNames.length === 1 && fileNode) {
|
|
87
|
-
const refs = getDirectRefFileNodes(env, fileNode);
|
|
88
|
-
for (const ref of refs) {
|
|
89
|
-
typerCheckFiles.add(ref);
|
|
90
|
-
}
|
|
91
|
-
}
|
|
92
|
-
}
|
|
93
|
-
// 缓存 def 应该足够了, def 下面的定义如 Structure 下面的 StructureProperty,不需要做缓存
|
|
94
|
-
// 现在不能删除 qName,否则后面删引用时 qName 会找不到。先缓存一下,之后删
|
|
95
|
-
return {
|
|
96
|
-
typerCheckFiles,
|
|
97
|
-
typerRemoveNodes,
|
|
98
|
-
typerCreateNodes,
|
|
99
|
-
};
|
|
100
|
-
};
|
|
101
|
-
exports.preProcessDefRemoval = preProcessDefRemoval;
|
|
31
|
+
exports.preProcessOther = preProcessOther;
|
|
102
32
|
/**
|
|
103
33
|
* rename xs:
|
|
104
34
|
* 1 获取要删除的旧的 qNames1
|
|
@@ -110,22 +40,16 @@ exports.preProcessDefRemoval = preProcessDefRemoval;
|
|
|
110
40
|
* 7 类型检查 ys 和 zs
|
|
111
41
|
*/
|
|
112
42
|
/**
|
|
113
|
-
* @warning
|
|
43
|
+
* @warning 改动这个文件中的逻辑时很容易引发增量检查问题、查找引用问题、内存泄漏,请谨慎;如单元测试 UT 发生错误,更要谨慎
|
|
114
44
|
*/
|
|
115
|
-
const preProcessDefRename = (env, nd, oldName, mode, oqlRemoveNodesTsPath) => {
|
|
45
|
+
const preProcessDefRename = (env, nd, typerCheckFiles, oldName, mode, oqlRemoveNodesTsPath) => {
|
|
116
46
|
const fileNode = (0, service_1.getFileNode)(nd);
|
|
117
|
-
|
|
47
|
+
fileNode && !(0, reference_manager_1.isEntityLogic)(fileNode) && typerCheckFiles.add(fileNode);
|
|
118
48
|
// 不处理逻辑内的局部符号
|
|
119
49
|
if (reference_manager_2.ReferenceManager.localDefConcept.includes(nd.concept)) {
|
|
120
50
|
env.refMgr.isLocalCacheValid = false;
|
|
121
|
-
return
|
|
122
|
-
typerCheckFiles,
|
|
123
|
-
typerRemoveNodes: new Set(),
|
|
124
|
-
typerCreateNodes: new Set()
|
|
125
|
-
};
|
|
51
|
+
return true;
|
|
126
52
|
}
|
|
127
|
-
const typerRemoveNodes = new Set();
|
|
128
|
-
const typerCreateNodes = new Set();
|
|
129
53
|
const qName = (0, reference_manager_2.getTokenQualifiedName)(nd);
|
|
130
54
|
// 2. Get items to check which have references to old qNames1
|
|
131
55
|
const oldQName = easyGetOldQName(qName, oldName);
|
|
@@ -155,60 +79,113 @@ const preProcessDefRename = (env, nd, oldName, mode, oqlRemoveNodesTsPath) => {
|
|
|
155
79
|
env.refMgr.transferQNameDef(oldQName, newQName, mode);
|
|
156
80
|
});
|
|
157
81
|
// 6. Based on transferred symbolRefs, get items to check that reference new qNames2
|
|
158
|
-
getDirectRefFileNodes(env, nd).forEach((refFileNode) => {
|
|
159
|
-
|
|
160
|
-
});
|
|
161
|
-
return
|
|
162
|
-
typerCheckFiles,
|
|
163
|
-
typerRemoveNodes,
|
|
164
|
-
typerCreateNodes,
|
|
165
|
-
};
|
|
82
|
+
// getDirectRefFileNodes(env, nd as DefConcept).forEach((refFileNode) => {
|
|
83
|
+
// typerCheckFiles.add(refFileNode);
|
|
84
|
+
// });
|
|
85
|
+
return true;
|
|
166
86
|
};
|
|
167
87
|
exports.preProcessDefRename = preProcessDefRename;
|
|
168
|
-
// 其他对定义的更新
|
|
169
88
|
/**
|
|
170
|
-
*
|
|
89
|
+
* 增、删,一定要检查一级引用。
|
|
90
|
+
* 单纯的更新,不需要检查一级引用,仅在签名变更时检查一级引用。
|
|
171
91
|
*/
|
|
172
|
-
const
|
|
173
|
-
const
|
|
174
|
-
const
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
92
|
+
const pushRefFilesToChkFiles = (env, chkFiles, qNames) => {
|
|
93
|
+
const processedFileNodes = new Set();
|
|
94
|
+
for (const qName of qNames) {
|
|
95
|
+
const def = env.refMgr.qNameDefs.get(qName);
|
|
96
|
+
if (!reference_manager_2.ReferenceManager.globalDefConcept.includes(def?.concept)) {
|
|
97
|
+
continue;
|
|
98
|
+
}
|
|
99
|
+
for (const ref of getDirectRefFileNodes(env, def)) {
|
|
100
|
+
chkFiles.add(ref);
|
|
101
|
+
}
|
|
102
|
+
if (!(0, file_node_cache_1.checkNodeIsFileModuleInIdeWithCache)(def)) {
|
|
103
|
+
// 再查一下 fileNode 级别的父节点的引用,如 Entity1.property1 被删了,还要查 Entity1 的引用
|
|
104
|
+
const fileNode = (0, service_1.getFileNode)(def);
|
|
105
|
+
if (fileNode && !processedFileNodes.has(fileNode)) {
|
|
106
|
+
processedFileNodes.add(fileNode);
|
|
107
|
+
for (const ref of getDirectRefFileNodes(env, fileNode)) {
|
|
108
|
+
chkFiles.add(ref);
|
|
109
|
+
}
|
|
110
|
+
}
|
|
111
|
+
}
|
|
179
112
|
}
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
113
|
+
};
|
|
114
|
+
const batchPreProcessAllRemoveNodes = (env, removeNodes, chkFiles, removedFiles) => {
|
|
115
|
+
// 首先需要删除所有引用,后面移除定义后,删除引用时要么符号找不到,要么要去缓存里找,更麻烦,不如多一次遍历
|
|
116
|
+
const allQNames = new Set();
|
|
117
|
+
// 第一个循环里处理完所有局部符号
|
|
118
|
+
for (const rmNd of removeNodes) {
|
|
119
|
+
/**
|
|
120
|
+
* 注意:必须在这里就先删除,不能后面 getFileNode 再从 fileNode 清除
|
|
121
|
+
* 因为要么 fileNode 不存在了,要么 fileNode 下已经没有了被删除的节点
|
|
122
|
+
* 符号类型:一律删除
|
|
123
|
+
**/
|
|
124
|
+
if (reference_manager_2.ReferenceManager.localDefConcept.includes(rmNd.concept)) {
|
|
125
|
+
env.refMgr.invalidateLocalSymCache(rmNd);
|
|
126
|
+
}
|
|
127
|
+
if (!reference_manager_2.ReferenceManager.globalDefConcept.includes(rmNd.concept)) {
|
|
128
|
+
env.removeTypes(rmNd);
|
|
129
|
+
}
|
|
130
|
+
const nsp = (0, reference_manager_1.getNamespaceWithoutLast)(rmNd) ?? '';
|
|
131
|
+
// Including entity logics if nd.concept === 'Entity'
|
|
132
|
+
const qNames = (0, remove_q_name_1.getQNamesOfRemoveAction)(nsp, rmNd);
|
|
133
|
+
for (const qName of qNames) {
|
|
134
|
+
allQNames.add(qName);
|
|
135
|
+
}
|
|
136
|
+
}
|
|
137
|
+
// 一起批量处理:里面有缓存,避免重复处理对性能的影响
|
|
138
|
+
pushRefFilesToChkFiles(env, chkFiles, Array.from(allQNames));
|
|
139
|
+
// 第二个循环里处理全局符号
|
|
140
|
+
for (const qName of allQNames) {
|
|
141
|
+
const rmNd = env.refMgr.qNameDefs.get(qName);
|
|
142
|
+
if (!rmNd) {
|
|
143
|
+
continue;
|
|
144
|
+
}
|
|
145
|
+
// 全局符号引用:缓存。局部符号引用:删除。
|
|
146
|
+
if (reference_manager_2.ReferenceManager.globalDefConcept.includes(rmNd.concept)) {
|
|
147
|
+
if (rmNd.concept === 'Logic') {
|
|
148
|
+
const ovLgc = env.overriddenLogic.get(rmNd);
|
|
149
|
+
if (ovLgc) {
|
|
150
|
+
removeNodes.add(ovLgc); // 会在本轮迭代中被遍历到
|
|
151
|
+
env.overriddenLogic.delete(rmNd);
|
|
152
|
+
}
|
|
153
|
+
}
|
|
154
|
+
if ((0, file_node_cache_1.checkNodeIsFileModuleInIdeWithCache)(rmNd)) {
|
|
155
|
+
removedFiles.add(rmNd);
|
|
156
|
+
// 下面 getDirectRefFileNodes 是不是会给子页面加进去,那这里 removedFiles 也给子页面加进去吧,保险一点……
|
|
157
|
+
for (const subView of getSubViews(rmNd)) {
|
|
158
|
+
removedFiles.add(subView);
|
|
159
|
+
}
|
|
160
|
+
}
|
|
161
|
+
env.refMgr.handleDefOp("delete" /* Operation.Remove */, rmNd, qName); // 连根拔起,但缓存
|
|
162
|
+
}
|
|
163
|
+
else {
|
|
164
|
+
}
|
|
165
|
+
env.refMgr.removeRefsForGlobalSym(env, rmNd);
|
|
184
166
|
}
|
|
185
|
-
// The remaining refs updates are left to post-processing
|
|
186
|
-
return {
|
|
187
|
-
typerCheckFiles,
|
|
188
|
-
typerRemoveNodes,
|
|
189
|
-
typerCreateNodes,
|
|
190
|
-
};
|
|
191
167
|
};
|
|
192
|
-
|
|
193
|
-
//
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
168
|
+
const batchPreProcessAllCreateNodes = (env, createNodes, chkFiles) => {
|
|
169
|
+
// 新创建的节点,从 preProcessDefCreation 搬过来的
|
|
170
|
+
// TODO:之后再整理代码
|
|
171
|
+
for (const nd of createNodes) {
|
|
172
|
+
if (reference_manager_2.ReferenceManager.localDefConcept.includes(nd.concept)) {
|
|
173
|
+
continue;
|
|
174
|
+
}
|
|
175
|
+
const nsp = (0, reference_manager_1.getNamespaceWithoutLast)(nd);
|
|
176
|
+
const createdQNames = (0, collect_q_name_1.getQNamesOfCreateAction)(nsp, nd);
|
|
177
|
+
// Try to 'relink' to old defs,仅 relink refs,和建立 QNames,新的 refs 需要检查后再收集
|
|
178
|
+
for (const [qName, def] of createdQNames) {
|
|
179
|
+
env.refMgr.handleDefOp("create" /* Operation.Create */, def, qName);
|
|
180
|
+
}
|
|
181
|
+
/**
|
|
182
|
+
* If there are old refs after relinking, the FileNodes containing these old refs also need type checking.
|
|
183
|
+
* Note that it is not sufficient to check def's references,
|
|
184
|
+
* we must check all the newly added defs' (contained by the root def) references
|
|
185
|
+
*/
|
|
186
|
+
pushRefFilesToChkFiles(env, chkFiles, createdQNames.map(([qName]) => qName));
|
|
203
187
|
}
|
|
204
|
-
// non-def的话没有引用,所以不需要再 getDirectRefFileNodes
|
|
205
|
-
return {
|
|
206
|
-
typerCheckFiles,
|
|
207
|
-
typerRemoveNodes: new Set(),
|
|
208
|
-
typerCreateNodes: new Set()
|
|
209
|
-
};
|
|
210
188
|
};
|
|
211
|
-
exports.preProcessNonDefAction = preProcessNonDefAction;
|
|
212
189
|
/**
|
|
213
190
|
* 1. 符号删除
|
|
214
191
|
* 2. 运行新的类型标注,额外错误诊断
|
|
@@ -227,88 +204,23 @@ exports.preProcessNonDefAction = preProcessNonDefAction;
|
|
|
227
204
|
* @returns 诊断信息列表
|
|
228
205
|
*/
|
|
229
206
|
/**
|
|
230
|
-
* @warning
|
|
207
|
+
* @warning 改动这个文件中的逻辑时很容易引发增量检查问题、查找引用问题、内存泄漏,请谨慎;如单元测试 UT 发生错误,更要谨慎
|
|
231
208
|
*/
|
|
232
209
|
async function checkUpdateRefsDiag(env, diagnosticManager, chkFiles, removeNodes, createNodes, tsDiagnostics, checkedFiles = new Set()) {
|
|
233
|
-
nasl_utils_1.isDebugMode && console.time('\x1b[44m\x1b[97m 1: 按原有类型删除符号引用和类型 \x1b[0m');
|
|
234
210
|
let diagRecs = [];
|
|
235
211
|
let removedFiles = new Set(); // 优化:删除的文件不需要检查
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
env.refMgr.removeRefsForGlobalSym(env, rmNd);
|
|
240
|
-
/**
|
|
241
|
-
* 注意:必须在这里就先删除,不能后面 getFileNode 再从 fileNode 清除
|
|
242
|
-
* 因为要么 fileNode 不存在了,要么 fileNode 下已经没有了被删除的节点
|
|
243
|
-
* 符号类型:一律删除
|
|
244
|
-
**/
|
|
245
|
-
env.removeTypes(rmNd);
|
|
246
|
-
}
|
|
247
|
-
// 全局符号引用:缓存。局部符号引用:删除。
|
|
248
|
-
for (const rmNd of removeNodes) {
|
|
249
|
-
const ndQName = (0, reference_manager_2.getTokenQualifiedName)(rmNd);
|
|
250
|
-
if (reference_manager_2.ReferenceManager.globalDefConcept.includes(rmNd.concept)) {
|
|
251
|
-
const nsp = (0, reference_manager_1.getNamespaceWithoutLast)(rmNd);
|
|
252
|
-
const qNamesToRemove = (0, remove_q_name_1.getQNamesOfRemoveAction)(nsp, rmNd);
|
|
253
|
-
for (const qName of qNamesToRemove) {
|
|
254
|
-
// 连根拔起,但缓存
|
|
255
|
-
const subDef = env.refMgr.qNameDefs.get(qName);
|
|
256
|
-
if (subDef) {
|
|
257
|
-
if ((0, file_node_cache_1.checkNodeIsFileModuleInIdeWithCache)(subDef)) {
|
|
258
|
-
removedFiles.add(subDef);
|
|
259
|
-
// 下面 getDirectRefFileNodes 是不是会给子页面加进去,那这里 removedFiles 也给子页面加进去吧,保险一点……
|
|
260
|
-
for (const subView of getSubViews(subDef)) {
|
|
261
|
-
removedFiles.add(subView);
|
|
262
|
-
}
|
|
263
|
-
}
|
|
264
|
-
env.refMgr.handleDefOp("delete" /* Operation.Remove */, subDef, qName);
|
|
265
|
-
}
|
|
266
|
-
}
|
|
267
|
-
}
|
|
268
|
-
else if (reference_manager_2.ReferenceManager.localDefConcept.includes(rmNd.concept)) {
|
|
269
|
-
env.refMgr.removeLocalSymbol(rmNd);
|
|
270
|
-
}
|
|
271
|
-
else {
|
|
272
|
-
env.refMgr.handleRefOp(env, "delete" /* Operation.Remove */, rmNd, ndQName);
|
|
273
|
-
}
|
|
274
|
-
}
|
|
212
|
+
nasl_utils_1.isDebugMode && console.time('\x1b[44m\x1b[97m 1: 按原有类型删除符号引用和类型 \x1b[0m');
|
|
213
|
+
batchPreProcessAllRemoveNodes(env, removeNodes, chkFiles, removedFiles);
|
|
214
|
+
batchPreProcessAllCreateNodes(env, createNodes, chkFiles);
|
|
275
215
|
for (const file of removedFiles) {
|
|
276
216
|
clearSemInfoDiags(env, diagnosticManager, file);
|
|
277
217
|
}
|
|
278
218
|
nasl_utils_1.isDebugMode && console.timeEnd('\x1b[44m\x1b[97m 1: 按原有类型删除符号引用和类型 \x1b[0m');
|
|
279
|
-
// 新创建的节点,从 preProcessDefCreation 搬过来的
|
|
280
|
-
// TODO:之后再整理代码
|
|
281
|
-
for (const nd of createNodes) {
|
|
282
|
-
if (!reference_manager_2.ReferenceManager.localDefConcept.includes(nd.concept)) {
|
|
283
|
-
const nsp = (0, reference_manager_1.getNamespaceWithoutLast)(nd);
|
|
284
|
-
const createdQNames = (0, collect_q_name_1.getQNamesOfCreateAction)(nsp, nd);
|
|
285
|
-
// Try to 'relink' to old defs
|
|
286
|
-
// 仅 relink refs,和建立 QNames,新的 refs 需要检查后再收集
|
|
287
|
-
for (const [qName, def] of createdQNames) {
|
|
288
|
-
env.refMgr.handleDefOp("create" /* Operation.Create */, def, qName);
|
|
289
|
-
/**
|
|
290
|
-
* If there are old refs after relinking, the FileNodes containing these old refs also need type checking.
|
|
291
|
-
* Note that it is not sufficient to check def's references,
|
|
292
|
-
* we must check all the newly added defs' (contained by the root def) references
|
|
293
|
-
*/
|
|
294
|
-
for (const refFileNode of getDirectRefFileNodes(env, def)) {
|
|
295
|
-
chkFiles.add(refFileNode);
|
|
296
|
-
}
|
|
297
|
-
}
|
|
298
|
-
}
|
|
299
|
-
}
|
|
300
219
|
let filteredChkFiles = new Set();
|
|
301
220
|
// 原地修改。删除的文件,引用和报错删除后就不用做什么了。
|
|
302
221
|
for (const file of (0, set_1.difference)(chkFiles, removedFiles)) {
|
|
303
|
-
//
|
|
304
|
-
|
|
305
|
-
if (file.name !== 'departmentManagement' || file.title !== '部门管理') {
|
|
306
|
-
!file.nodePath.includes('[-1]') && filteredChkFiles.add(file);
|
|
307
|
-
}
|
|
308
|
-
}
|
|
309
|
-
else {
|
|
310
|
-
!file.nodePath.includes('[-1]') && filteredChkFiles.add(file);
|
|
311
|
-
}
|
|
222
|
+
// 兜底一下,免得哪里漏处理了导致错误栏刷屏
|
|
223
|
+
!file.nodePath.includes('[-1]') && filteredChkFiles.add(file);
|
|
312
224
|
}
|
|
313
225
|
chkFiles = filteredChkFiles;
|
|
314
226
|
// 全局逻辑先拓扑排序
|
|
@@ -477,7 +389,7 @@ const getSubViews = (node) => {
|
|
|
477
389
|
const toRaw = (node) => node?.__v_raw ?? node;
|
|
478
390
|
// Helper function to get the file nodes of direct references. Will never check Entity logics.
|
|
479
391
|
/**
|
|
480
|
-
* @warning
|
|
392
|
+
* @warning 改动这个文件中的逻辑时很容易引发增量检查问题、查找引用问题、内存泄漏,请谨慎;如单元测试 UT 发生错误,更要谨慎
|
|
481
393
|
*/
|
|
482
394
|
const getDirectRefFileNodes = (env, def) => {
|
|
483
395
|
const refs = (0, set_1.union)(env.refMgr.getSymbolRefs(def) ?? new Set(), env.refMgr.getImplicitReferences(def));
|