@lcap/nasl-language-server-core 4.1.0-rc.3 → 4.1.0-rc.4
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 +6 -4
- package/out/checker.js.map +1 -1
- package/out/index.d.ts +3 -0
- package/out/index.d.ts.map +1 -1
- package/out/index.js +5 -1
- package/out/index.js.map +1 -1
- package/out/reference-manager/build-q-name-def.d.ts +10 -0
- package/out/reference-manager/build-q-name-def.d.ts.map +1 -0
- package/out/reference-manager/build-q-name-def.js +66 -0
- package/out/reference-manager/build-q-name-def.js.map +1 -0
- package/out/reference-manager/builtin-q-name.js +6 -6
- package/out/reference-manager/builtin-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 +11 -7
- package/out/reference-manager/get-q-name.js.map +1 -1
- package/out/reference-manager/helper.d.ts +21 -0
- package/out/reference-manager/helper.d.ts.map +1 -0
- package/out/reference-manager/helper.js +92 -0
- package/out/reference-manager/helper.js.map +1 -0
- package/out/reference-manager/reference-manager.d.ts +39 -132
- package/out/reference-manager/reference-manager.d.ts.map +1 -1
- package/out/reference-manager/reference-manager.js +200 -481
- package/out/reference-manager/reference-manager.js.map +1 -1
- package/out/reference-manager/special-string-ref.d.ts +7 -0
- package/out/reference-manager/special-string-ref.d.ts.map +1 -0
- package/out/reference-manager/special-string-ref.js +34 -0
- package/out/reference-manager/special-string-ref.js.map +1 -0
- package/out/reference-manager/symbol-type.d.ts +5 -2
- package/out/reference-manager/symbol-type.d.ts.map +1 -1
- package/out/reference-manager/symbol-type.js +22 -2
- package/out/reference-manager/symbol-type.js.map +1 -1
- package/out/reference-manager/update-nasl-fragment.d.ts +1 -4
- package/out/reference-manager/update-nasl-fragment.d.ts.map +1 -1
- package/out/reference-manager/update-nasl-fragment.js +22 -37
- package/out/reference-manager/update-nasl-fragment.js.map +1 -1
- package/out/reference-manager/view-elem-logic.d.ts +44 -0
- package/out/reference-manager/view-elem-logic.d.ts.map +1 -0
- package/out/reference-manager/view-elem-logic.js +164 -0
- package/out/reference-manager/view-elem-logic.js.map +1 -0
- package/out/services/bindable-logic-service.d.ts +64 -0
- package/out/services/bindable-logic-service.d.ts.map +1 -0
- package/out/services/bindable-logic-service.js +186 -0
- package/out/services/bindable-logic-service.js.map +1 -0
- package/out/services/client.d.ts +10 -0
- package/out/services/client.d.ts.map +1 -0
- package/out/services/client.js +21 -0
- package/out/services/client.js.map +1 -0
- package/out/services/contextual-variables-service.d.ts +14 -0
- package/out/services/contextual-variables-service.d.ts.map +1 -0
- package/out/services/contextual-variables-service.js +17 -0
- package/out/services/contextual-variables-service.js.map +1 -0
- package/out/services/event-handler-type-service.d.ts +16 -0
- package/out/services/event-handler-type-service.d.ts.map +1 -0
- package/out/services/event-handler-type-service.js +57 -0
- package/out/services/event-handler-type-service.js.map +1 -0
- package/out/services/index.d.ts +2 -0
- package/out/services/index.d.ts.map +1 -0
- package/out/services/index.js +18 -0
- package/out/services/index.js.map +1 -0
- package/out/services/types/type.d.ts +13 -0
- package/out/services/types/type.d.ts.map +1 -0
- package/out/services/types/type.js +3 -0
- package/out/services/types/type.js.map +1 -0
- package/out/symbol/traverse/concepts/frontend/bind-event.d.ts.map +1 -1
- package/out/symbol/traverse/concepts/frontend/bind-event.js +3 -0
- package/out/symbol/traverse/concepts/frontend/bind-event.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/collectGlobalDefs.js +1 -1
- package/out/typer/collectGlobalDefs.js.map +1 -1
- package/out/typer/dispatch-all.d.ts +1 -1
- package/out/typer/dispatch-all.d.ts.map +1 -1
- package/out/typer/dispatch-all.js +1 -1
- package/out/typer/dispatch-all.js.map +1 -1
- package/out/typer/dispatch-def.d.ts +2 -2
- package/out/typer/dispatch-def.d.ts.map +1 -1
- package/out/typer/dispatch-def.js +11 -16
- package/out/typer/dispatch-def.js.map +1 -1
- package/out/typer/dispatch-expr.js +11 -11
- package/out/typer/dispatch-expr.js.map +1 -1
- package/out/typer/dispatch-process.d.ts.map +1 -1
- package/out/typer/dispatch-process.js +7 -3
- package/out/typer/dispatch-process.js.map +1 -1
- package/out/typer/dispatch-view.d.ts.map +1 -1
- package/out/typer/dispatch-view.js +125 -62
- package/out/typer/dispatch-view.js.map +1 -1
- package/out/typer/helper.d.ts +0 -5
- package/out/typer/helper.d.ts.map +1 -1
- package/out/typer/helper.js +1 -21
- package/out/typer/helper.js.map +1 -1
- package/out/typer/incremental-update.d.ts.map +1 -1
- package/out/typer/incremental-update.js +127 -44
- package/out/typer/incremental-update.js.map +1 -1
- package/out/typer/index.d.ts +3 -3
- package/out/typer/index.d.ts.map +1 -1
- package/out/typer/index.js +3 -4
- package/out/typer/index.js.map +1 -1
- package/out/typer/nasl-predicate.d.ts +3 -5
- package/out/typer/nasl-predicate.d.ts.map +1 -1
- package/out/typer/nasl-predicate.js +10 -7
- package/out/typer/nasl-predicate.js.map +1 -1
- package/out/typer/solver.d.ts.map +1 -1
- package/out/typer/solver.js +4 -0
- package/out/typer/solver.js.map +1 -1
- package/out/typer/subster.js +4 -4
- package/out/typer/subster.js.map +1 -1
- package/out/typer/topo-sort.d.ts +1 -1
- package/out/typer/topo-sort.d.ts.map +1 -1
- package/out/typer/topo-sort.js +2 -2
- package/out/typer/topo-sort.js.map +1 -1
- package/out/typer/type-manager.d.ts +1 -1
- package/out/typer/type-manager.d.ts.map +1 -1
- package/out/typer/type-manager.js +5 -7
- package/out/typer/type-manager.js.map +1 -1
- package/out/typer/type-predicate.d.ts.map +1 -1
- package/out/typer/type-predicate.js +21 -7
- package/out/typer/type-predicate.js.map +1 -1
- package/out/typer/typer.d.ts +42 -6
- package/out/typer/typer.d.ts.map +1 -1
- package/out/typer/typer.js +127 -17
- package/out/typer/typer.js.map +1 -1
- package/out/typer/unifier.d.ts +0 -1
- package/out/typer/unifier.d.ts.map +1 -1
- package/out/typer/unifier.js +17 -12
- package/out/typer/unifier.js.map +1 -1
- package/out/utils/misc.d.ts +11 -0
- package/out/utils/misc.d.ts.map +1 -0
- package/out/utils/misc.js +29 -0
- package/out/utils/misc.js.map +1 -0
- package/out/utils/traverse-util.d.ts +5 -0
- package/out/utils/traverse-util.d.ts.map +1 -0
- package/out/utils/traverse-util.js +69 -0
- package/out/utils/traverse-util.js.map +1 -0
- package/package.json +5 -5
|
@@ -7,18 +7,19 @@ const nasl_concepts_1 = require("@lcap/nasl-concepts");
|
|
|
7
7
|
const file_node_cache_1 = require("../utils/file-node-cache");
|
|
8
8
|
const service_1 = require("@lcap/nasl-concepts/service");
|
|
9
9
|
const type_predicate_1 = require("./type-predicate");
|
|
10
|
-
const helper_1 = require("./helper");
|
|
11
10
|
const dispatch_all_1 = require("./dispatch-all");
|
|
12
11
|
const checker_1 = require("../checker");
|
|
13
|
-
const
|
|
14
|
-
const reference_manager_1 = require("../reference-manager/reference-manager");
|
|
12
|
+
const service_2 = require("@lcap/nasl-concepts/service");
|
|
15
13
|
const get_q_name_1 = require("../reference-manager/get-q-name");
|
|
16
|
-
const
|
|
14
|
+
const reference_manager_1 = require("../reference-manager/reference-manager");
|
|
17
15
|
const collect_q_name_1 = require("../reference-manager/collect-q-name");
|
|
18
16
|
const remove_q_name_1 = require("../reference-manager/remove-q-name");
|
|
19
17
|
const rename_q_name_1 = require("../reference-manager/rename-q-name");
|
|
20
18
|
const dispatch_def_1 = require("./dispatch-def");
|
|
21
19
|
const type_manager_1 = require("./type-manager");
|
|
20
|
+
const helper_1 = require("./helper");
|
|
21
|
+
const helper_2 = require("../reference-manager/helper");
|
|
22
|
+
const misc_1 = require("../utils/misc");
|
|
22
23
|
/**
|
|
23
24
|
* @warning 改动这个文件中的逻辑时很容易引发增量检查问题、查找引用问题、内存泄漏,请谨慎;如单元测试 UT 发生错误,更要谨慎
|
|
24
25
|
* 为了增加效率,直接往 params 的 Set 里加东西
|
|
@@ -26,7 +27,7 @@ const type_manager_1 = require("./type-manager");
|
|
|
26
27
|
const preProcessOther = (env, nd, typerCheckFiles) => {
|
|
27
28
|
const fileNode = (0, service_1.getFileNode)(nd);
|
|
28
29
|
// 一定不能真的去检查实体自动生成(更新)的实体逻辑
|
|
29
|
-
if (fileNode && !(0,
|
|
30
|
+
if (fileNode && !(0, helper_2.isEntityLogic)(fileNode)) {
|
|
30
31
|
typerCheckFiles.add(fileNode);
|
|
31
32
|
}
|
|
32
33
|
return true;
|
|
@@ -47,10 +48,10 @@ exports.preProcessOther = preProcessOther;
|
|
|
47
48
|
*/
|
|
48
49
|
const preProcessDefRename = (env, nd, typerCheckFiles, oldName, mode, oqlRemoveNodesTsPath) => {
|
|
49
50
|
const fileNode = (0, service_1.getFileNode)(nd);
|
|
50
|
-
fileNode && !(0,
|
|
51
|
+
fileNode && !(0, helper_2.isEntityLogic)(fileNode) && typerCheckFiles.add(fileNode);
|
|
51
52
|
// 不处理逻辑内的局部符号
|
|
52
|
-
if (
|
|
53
|
-
env.refMgr.
|
|
53
|
+
if (reference_manager_1.ReferenceManager.localDefConcept.includes(nd.concept)) {
|
|
54
|
+
env.refMgr.invalidateLocalSymCache();
|
|
54
55
|
return true;
|
|
55
56
|
}
|
|
56
57
|
const qName = (0, get_q_name_1.getTokenQualifiedName)(nd);
|
|
@@ -65,14 +66,14 @@ const preProcessDefRename = (env, nd, typerCheckFiles, oldName, mode, oqlRemoveN
|
|
|
65
66
|
catch {
|
|
66
67
|
console.error(`Failed to get embedded file path for ${nd.name} in ${nd.nodePath}`);
|
|
67
68
|
}
|
|
68
|
-
const oldQNameDef = env.refMgr.
|
|
69
|
+
const oldQNameDef = env.refMgr.gQNameDefs.get(oldQName);
|
|
69
70
|
if (oldQNameDef) {
|
|
70
71
|
getDirectRefFileNodes(env, oldQNameDef).forEach((refFileNode) => {
|
|
71
72
|
typerCheckFiles.add(refFileNode);
|
|
72
73
|
});
|
|
73
74
|
}
|
|
74
75
|
// 3. Get new qNames2 to add
|
|
75
|
-
const nsp = (0,
|
|
76
|
+
const nsp = (0, helper_2.getNamespaceWithoutLast)(nd);
|
|
76
77
|
const qNamesToRename = (0, rename_q_name_1.getQNamesOfRenameAction)(oldName, nsp, nd);
|
|
77
78
|
// 4. Transfer references: add qNames2 to qNameDefs, transfer symbolRefs from qNames1 to qNames2, remove qNames1 from qNameDefs
|
|
78
79
|
// transferQNameDef already handles qNameDefs deletion and addition
|
|
@@ -95,8 +96,8 @@ exports.preProcessDefRename = preProcessDefRename;
|
|
|
95
96
|
const pushRefFilesToChkFiles = (env, chkFiles, qNames) => {
|
|
96
97
|
const processedFileNodes = new Set();
|
|
97
98
|
for (const qName of qNames) {
|
|
98
|
-
const def = env.refMgr.
|
|
99
|
-
if (!
|
|
99
|
+
const def = env.refMgr.gQNameDefs.get(qName);
|
|
100
|
+
if (!reference_manager_1.ReferenceManager.globalDefConcept.includes(def?.concept)) {
|
|
100
101
|
continue;
|
|
101
102
|
}
|
|
102
103
|
for (const ref of getDirectRefFileNodes(env, def)) {
|
|
@@ -126,13 +127,13 @@ const batchPreProcessAllRemoveNodes = (env, removeNodes, chkFiles, removedFiles)
|
|
|
126
127
|
* 因为要么 fileNode 不存在了,要么 fileNode 下已经没有了被删除的节点
|
|
127
128
|
* 符号类型:一律删除
|
|
128
129
|
**/
|
|
129
|
-
if (
|
|
130
|
+
if (reference_manager_1.ReferenceManager.localDefConcept.includes(rmNd.concept)) {
|
|
130
131
|
env.refMgr.invalidateLocalSymCache();
|
|
131
132
|
}
|
|
132
|
-
if (!
|
|
133
|
+
if (!reference_manager_1.ReferenceManager.globalDefConcept.includes(rmNd.concept)) {
|
|
133
134
|
env.removeTypes(rmNd);
|
|
134
135
|
}
|
|
135
|
-
const nsp = (0,
|
|
136
|
+
const nsp = (0, helper_2.getNamespaceWithoutLast)(rmNd) ?? '';
|
|
136
137
|
// Including entity logics if nd.concept === 'Entity'
|
|
137
138
|
const qNames = (0, remove_q_name_1.getQNamesOfRemoveAction)(nsp, rmNd);
|
|
138
139
|
for (const [qName, def] of qNames) {
|
|
@@ -144,7 +145,7 @@ const batchPreProcessAllRemoveNodes = (env, removeNodes, chkFiles, removedFiles)
|
|
|
144
145
|
pushRefFilesToChkFiles(env, chkFiles, Array.from(allQNameDefs).map(([qName]) => qName));
|
|
145
146
|
// 第二个循环里处理全局符号
|
|
146
147
|
for (const [qName, rmNd0] of allQNameDefs) {
|
|
147
|
-
const rmNd = env.refMgr.
|
|
148
|
+
const rmNd = env.refMgr.gQNameDefs.get(qName); // normalized rmNd,如实体逻辑、连接器啥的
|
|
148
149
|
if (!rmNd) {
|
|
149
150
|
if (rmNd0) {
|
|
150
151
|
removeNodes.add(rmNd0);
|
|
@@ -154,7 +155,7 @@ const batchPreProcessAllRemoveNodes = (env, removeNodes, chkFiles, removedFiles)
|
|
|
154
155
|
continue;
|
|
155
156
|
}
|
|
156
157
|
// 全局符号引用:缓存。局部符号引用:删除。
|
|
157
|
-
if (
|
|
158
|
+
if (reference_manager_1.ReferenceManager.globalDefConcept.includes(rmNd.concept)) {
|
|
158
159
|
if (rmNd.concept === 'Logic') {
|
|
159
160
|
const ovLgc = env.overriddenLogic.get(rmNd);
|
|
160
161
|
if (ovLgc) {
|
|
@@ -166,7 +167,7 @@ const batchPreProcessAllRemoveNodes = (env, removeNodes, chkFiles, removedFiles)
|
|
|
166
167
|
removedFiles.add(rmNd);
|
|
167
168
|
removedFiles.add(rmNd0);
|
|
168
169
|
// 下面 getDirectRefFileNodes 是不是会给子页面加进去,那这里 removedFiles 也给子页面加进去吧,保险一点……
|
|
169
|
-
for (const subView of (0,
|
|
170
|
+
for (const subView of (0, misc_1.getSubViews)(rmNd)) {
|
|
170
171
|
removedFiles.add(subView); // view 没有这种 rmNd !== rmNd0 的情况
|
|
171
172
|
}
|
|
172
173
|
}
|
|
@@ -190,10 +191,10 @@ const batchPreProcessAllCreateNodes = (env, createNodes, chkFiles) => {
|
|
|
190
191
|
// 新创建的节点,从 preProcessDefCreation 搬过来的
|
|
191
192
|
// TODO:之后再整理代码
|
|
192
193
|
for (const nd of createNodes) {
|
|
193
|
-
if (
|
|
194
|
+
if (reference_manager_1.ReferenceManager.localDefConcept.includes(nd.concept)) {
|
|
194
195
|
continue;
|
|
195
196
|
}
|
|
196
|
-
const nsp = (0,
|
|
197
|
+
const nsp = (0, helper_2.getNamespaceWithoutLast)(nd);
|
|
197
198
|
const createdQNames = (0, collect_q_name_1.getQNamesOfCreateAction)(nsp, nd);
|
|
198
199
|
// Try to 'relink' to old defs,仅 relink refs,和建立 QNames,新的 refs 需要检查后再收集
|
|
199
200
|
for (const [qName, def] of createdQNames) {
|
|
@@ -207,6 +208,42 @@ const batchPreProcessAllCreateNodes = (env, createNodes, chkFiles) => {
|
|
|
207
208
|
pushRefFilesToChkFiles(env, chkFiles, createdQNames.map(([qName]) => qName));
|
|
208
209
|
}
|
|
209
210
|
};
|
|
211
|
+
const computeNextChkFiles = (p) => {
|
|
212
|
+
const { env, removeNodes, createNodes, checkedFiles, logicTasks, oldLogicRetTys, oldLogicParamTys, viewNodes, bsNodes, oldViewParamTys } = p;
|
|
213
|
+
if (removeNodes.size || createNodes.size) {
|
|
214
|
+
const ownerConcepts = new Set([
|
|
215
|
+
'Logic', 'BusinessLogic', 'OverriddenLogic', 'AuthLogic', 'AuthLogicForCallInterface', 'ConnectorLogic', 'View', 'BusinessComponent'
|
|
216
|
+
]);
|
|
217
|
+
const collectOwner = (nd) => {
|
|
218
|
+
let q = nd?.parentNode;
|
|
219
|
+
while (q) {
|
|
220
|
+
if (ownerConcepts.has(q.concept)) {
|
|
221
|
+
return (0, misc_1.toRaw)(q);
|
|
222
|
+
}
|
|
223
|
+
q = q.parentNode;
|
|
224
|
+
}
|
|
225
|
+
return undefined;
|
|
226
|
+
};
|
|
227
|
+
const owners = new Set();
|
|
228
|
+
const tryCollect = (nodes) => {
|
|
229
|
+
for (const n of nodes) {
|
|
230
|
+
const owner = collectOwner(n) || (ownerConcepts.has(n.concept) ? n : undefined);
|
|
231
|
+
owner && owners.add(owner);
|
|
232
|
+
}
|
|
233
|
+
};
|
|
234
|
+
tryCollect(removeNodes);
|
|
235
|
+
tryCollect(createNodes);
|
|
236
|
+
const directRefFiles = new Set();
|
|
237
|
+
owners.forEach(o => {
|
|
238
|
+
for (const ref of getDirectRefFileNodes(env, o)) {
|
|
239
|
+
directRefFiles.add(ref);
|
|
240
|
+
}
|
|
241
|
+
});
|
|
242
|
+
return mnemonist_1.set.difference(directRefFiles, checkedFiles);
|
|
243
|
+
}
|
|
244
|
+
// 纯更新:使用签名变化判断(paramCountChangedDefs 已在增删分支处理,这里传空集)
|
|
245
|
+
return mnemonist_1.set.difference(determineNextCheck(env, logicTasks, oldLogicRetTys, oldLogicParamTys, [...viewNodes, ...bsNodes], oldViewParamTys, new Set()), checkedFiles);
|
|
246
|
+
};
|
|
210
247
|
/**
|
|
211
248
|
* 增量更新诊断信息
|
|
212
249
|
* @param params 包含所有参数的对象
|
|
@@ -235,8 +272,8 @@ async function checkUpdateRefsDiag(params) {
|
|
|
235
272
|
}
|
|
236
273
|
chkFiles = filteredChkFiles;
|
|
237
274
|
// 全局逻辑先拓扑排序
|
|
238
|
-
const [itfcNodes, __otherNodes] = (0, helper_1.divideBy)(Array.from(chkFiles),
|
|
239
|
-
const [logicNodes, otherNodes] = (0, helper_1.divideBy)(Array.from(__otherNodes),
|
|
275
|
+
const [itfcNodes, __otherNodes] = (0, helper_1.divideBy)(Array.from(chkFiles), service_2.isCallableNaslInterface);
|
|
276
|
+
const [logicNodes, otherNodes] = (0, helper_1.divideBy)(Array.from(__otherNodes), service_2.isCallableNaslLogic);
|
|
240
277
|
const processRelatedConcepts = ['ProcessDefinitionV2', 'ProcessElement', 'ProcessElementV2', 'ProcessV2'];
|
|
241
278
|
// 必须先检查流程,再检查流程关联页面
|
|
242
279
|
const [processNodes, otherNodes2] = (0, helper_1.divideBy)(otherNodes, (v) => {
|
|
@@ -251,12 +288,15 @@ async function checkUpdateRefsDiag(params) {
|
|
|
251
288
|
* 收集对外暴露的层层传递的类型,例如全局逻辑的返回类型、前端全局变量、服务端全局变量、页面变量的类型
|
|
252
289
|
*/
|
|
253
290
|
const [oldLogicRetTys, oldLogicParamTys] = getLogicSigs(env, logicNodes);
|
|
291
|
+
// 收集页面和业务组件的参数类型(它们没有返回值)
|
|
292
|
+
const oldViewParamTys = getViewComponentSigs(env, [...viewNodes, ...bsNodes]);
|
|
254
293
|
(0, dispatch_def_1.setParamOptionalFlags)([...itfcNodes, ...logicNodes]);
|
|
255
294
|
const logicTasks = (0, dispatch_all_1.topoSortLogicAndSetTypes)(env, logicNodes);
|
|
256
295
|
// 处理类型检查 - 改为顺序处理,确保正确的等待异步操作
|
|
257
296
|
nasl_utils_1.isDebugMode && console.time('\x1b[44m\x1b[97m 2: 类型检查 \x1b[0m');
|
|
258
297
|
// 先处理 BusinessComponent,再处理 View
|
|
259
298
|
const sortedFiles = [...defNodes, ...itfcNodes, ...logicTasks, ...processNodes, ...bsNodes, ...viewNodes];
|
|
299
|
+
// sortedFiles.length > 0 && env.refMgr.invalidateLocalSymCache();
|
|
260
300
|
for (const file of sortedFiles) {
|
|
261
301
|
env.refMgr.removeRefsForGlobalSym(env, file);
|
|
262
302
|
clearSemInfoDiags(env, diagnosticManager, file);
|
|
@@ -266,7 +306,7 @@ async function checkUpdateRefsDiag(params) {
|
|
|
266
306
|
// 按新类型添加符号
|
|
267
307
|
nasl_utils_1.isDebugMode && console.time('\x1b[44m\x1b[97m 3: 按新类型添加符号 \x1b[0m');
|
|
268
308
|
for (const file of sortedFiles) {
|
|
269
|
-
if (
|
|
309
|
+
if (reference_manager_1.ReferenceManager.defConcept.includes(file.concept)) {
|
|
270
310
|
env.refMgr.addRefsForGlobalSym(env, file);
|
|
271
311
|
}
|
|
272
312
|
}
|
|
@@ -294,8 +334,19 @@ async function checkUpdateRefsDiag(params) {
|
|
|
294
334
|
chkFiles.forEach((x) => {
|
|
295
335
|
checkedFiles.add(x);
|
|
296
336
|
});
|
|
297
|
-
//
|
|
298
|
-
const nextChkFiles =
|
|
337
|
+
// 使用抽取的全局函数计算下一轮检查文件
|
|
338
|
+
const nextChkFiles = computeNextChkFiles({
|
|
339
|
+
env,
|
|
340
|
+
removeNodes,
|
|
341
|
+
createNodes,
|
|
342
|
+
checkedFiles,
|
|
343
|
+
logicTasks: logicTasks,
|
|
344
|
+
oldLogicRetTys,
|
|
345
|
+
oldLogicParamTys,
|
|
346
|
+
viewNodes: [...viewNodes],
|
|
347
|
+
bsNodes: [...bsNodes],
|
|
348
|
+
oldViewParamTys,
|
|
349
|
+
});
|
|
299
350
|
if (nextChkFiles.size) {
|
|
300
351
|
nasl_utils_1.isDebugMode && console.log('\x1b[44m\x1b[97m 5: 还需运行新一轮语言服务 \x1b[0m');
|
|
301
352
|
diagRecs.push(...await checkUpdateRefsDiag({
|
|
@@ -346,6 +397,23 @@ const getLogicSigs = (env, logics) => {
|
|
|
346
397
|
}
|
|
347
398
|
return [retTypes, paramTypes];
|
|
348
399
|
};
|
|
400
|
+
/**
|
|
401
|
+
* 收集页面和业务组件的参数类型(它们没有返回值)
|
|
402
|
+
* @param env 语义环境
|
|
403
|
+
* @param viewComponents 页面和业务组件节点列表
|
|
404
|
+
* @returns 参数类型映射
|
|
405
|
+
*/
|
|
406
|
+
const getViewComponentSigs = (env, viewComponents) => {
|
|
407
|
+
const paramTypes = new Map();
|
|
408
|
+
for (const vc of viewComponents) {
|
|
409
|
+
// 只处理有 params 属性的节点
|
|
410
|
+
const params = vc?.params;
|
|
411
|
+
if (Array.isArray(params)) {
|
|
412
|
+
paramTypes.set(vc, params.map((param) => normalizeToUserTy(env.getType(param))));
|
|
413
|
+
}
|
|
414
|
+
}
|
|
415
|
+
return paramTypes;
|
|
416
|
+
};
|
|
349
417
|
const normalizeToUserTy = (ty) => {
|
|
350
418
|
if ((0, type_predicate_1.isResolvedUserTy)(ty)) {
|
|
351
419
|
return ty;
|
|
@@ -371,7 +439,7 @@ const clearSemInfoDiags = (env, diagnosticManager, file, skipSubView = true) =>
|
|
|
371
439
|
removeNodeDiagnostics(env.errorDiagnoser, diagnosticManager, file);
|
|
372
440
|
file.traverseStrictChildrenWithPruning((nd) => {
|
|
373
441
|
env.typeBindings.delete(nd);
|
|
374
|
-
(0,
|
|
442
|
+
(0, service_2.isNaslCallExpr)(nd) && env.resolvedCallInfo.delete(nd);
|
|
375
443
|
return skipSubView && nd !== file && nd.concept === 'View'; // 不能排除自身
|
|
376
444
|
});
|
|
377
445
|
env.allocatedVirtualNodes.get(file)?.forEach(virtualNd => {
|
|
@@ -388,34 +456,49 @@ const clearSemInfoDiags = (env, diagnosticManager, file, skipSubView = true) =>
|
|
|
388
456
|
env.localVars.delete(file);
|
|
389
457
|
};
|
|
390
458
|
/**
|
|
391
|
-
*
|
|
459
|
+
* 收集新一轮类型检查后的全局逻辑、页面和业务组件的参数类型和返回类型,并确定是否需要下一轮检查
|
|
392
460
|
* @param env 语义环境
|
|
393
461
|
* @param logicTasks 逻辑节点列表
|
|
394
462
|
* @param oldLogicRetTys 旧的返回类型映射
|
|
395
463
|
* @param oldLogicParamTys 旧的参数类型映射
|
|
464
|
+
* @param viewComponents 页面和业务组件节点列表
|
|
465
|
+
* @param oldViewParamTys 旧的页面/业务组件参数类型映射
|
|
396
466
|
* @returns 需要下一轮检查的文件集合
|
|
397
467
|
*/
|
|
398
|
-
const determineNextCheck = (env, logicTasks, oldLogicRetTys, oldLogicParamTys) => {
|
|
399
|
-
// 收集新一轮类型检查后的全局逻辑的参数类型和返回类型
|
|
468
|
+
const determineNextCheck = (env, logicTasks, oldLogicRetTys, oldLogicParamTys, viewComponents, oldViewParamTys, paramCountChangedDefs) => {
|
|
400
469
|
const [newLogicRetTys, newLogicParamTys] = getLogicSigs(env, logicTasks);
|
|
470
|
+
const newViewParamTys = getViewComponentSigs(env, viewComponents);
|
|
401
471
|
const chkFiles = new Set();
|
|
402
|
-
|
|
472
|
+
const haveParamTypesChanged = (oldParams, newParams) => oldParams.length !== newParams.length ||
|
|
473
|
+
oldParams.some((oldType, index) => !(0, type_predicate_1.isEqualTy)(env, oldType, newParams[index]));
|
|
474
|
+
const addRefFileNodes = (def) => {
|
|
475
|
+
for (const ref of getDirectRefFileNodes(env, def)) {
|
|
476
|
+
chkFiles.add(ref);
|
|
477
|
+
}
|
|
478
|
+
};
|
|
479
|
+
// 逻辑:检查返回类型或参数类型变化
|
|
403
480
|
for (const l of logicTasks) {
|
|
404
481
|
const oldRetType = oldLogicRetTys.get(l);
|
|
405
482
|
const newRetType = newLogicRetTys.get(l);
|
|
406
483
|
const oldParamTypes = oldLogicParamTys.get(l) || [];
|
|
407
484
|
const newParamTypes = newLogicParamTys.get(l) || [];
|
|
408
|
-
// Check if return type has changed
|
|
409
485
|
const retTypeChanged = !(0, type_predicate_1.isEqualTy)(env, oldRetType, newRetType);
|
|
410
|
-
|
|
411
|
-
|
|
412
|
-
oldParamTypes.some((oldType, index) => !(0, type_predicate_1.isEqualTy)(env, oldType, newParamTypes[index]));
|
|
413
|
-
if (retTypeChanged || paramTypesChanged) {
|
|
414
|
-
for (const ref of getDirectRefFileNodes(env, l)) {
|
|
415
|
-
chkFiles.add(ref);
|
|
416
|
-
}
|
|
486
|
+
if (retTypeChanged || haveParamTypesChanged(oldParamTypes, newParamTypes)) {
|
|
487
|
+
addRefFileNodes(l);
|
|
417
488
|
}
|
|
418
489
|
}
|
|
490
|
+
// 页面与业务组件:仅检查参数类型变化
|
|
491
|
+
for (const vc of viewComponents) {
|
|
492
|
+
const oldParamTypes = oldViewParamTys.get(vc) || [];
|
|
493
|
+
const newParamTypes = newViewParamTys.get(vc) || [];
|
|
494
|
+
if (haveParamTypesChanged(oldParamTypes, newParamTypes)) {
|
|
495
|
+
addRefFileNodes(vc);
|
|
496
|
+
}
|
|
497
|
+
}
|
|
498
|
+
// 形参个数变化(新增 / 删除 Param / ParamWithGroup)强制加入引用文件
|
|
499
|
+
for (const def of paramCountChangedDefs) {
|
|
500
|
+
addRefFileNodes(def);
|
|
501
|
+
}
|
|
419
502
|
return chkFiles;
|
|
420
503
|
};
|
|
421
504
|
// Helper function to get the file nodes of direct references. Will never check Entity logics.
|
|
@@ -431,7 +514,7 @@ const getDirectRefFileNodes = (env, def) => {
|
|
|
431
514
|
refs.forEach((ref) => {
|
|
432
515
|
// Type assertion here avoids runtime checks while satisfying type system
|
|
433
516
|
const fileNode = (0, service_1.getFileNode)(ref);
|
|
434
|
-
if (fileNode && !(0,
|
|
517
|
+
if (fileNode && !(0, helper_2.isEntityLogic)(fileNode)) {
|
|
435
518
|
fileNodes.add(fileNode);
|
|
436
519
|
}
|
|
437
520
|
});
|
|
@@ -469,7 +552,7 @@ const getOqlFiles = (env, __chkFiles, removedNodes) => {
|
|
|
469
552
|
res.add(nd);
|
|
470
553
|
}
|
|
471
554
|
// 如果是可调用的 NASL 逻辑,检查是否包含 OqlQueryComponent
|
|
472
|
-
if ((0,
|
|
555
|
+
if ((0, service_2.isCallableNaslLogic)(nd)) {
|
|
473
556
|
let hasOql = false;
|
|
474
557
|
nd.traverseStrictChildrenStopWhen?.((child) => {
|
|
475
558
|
if (child.concept === 'OqlQueryComponent') {
|
|
@@ -482,11 +565,11 @@ const getOqlFiles = (env, __chkFiles, removedNodes) => {
|
|
|
482
565
|
}
|
|
483
566
|
}
|
|
484
567
|
// 查找直接引用
|
|
485
|
-
const nsp = (0,
|
|
568
|
+
const nsp = (0, helper_2.getNamespaceWithoutLast)(nd);
|
|
486
569
|
const qNames = (0, collect_q_name_1.getQNamesOfCreateAction)(nsp, nd);
|
|
487
570
|
for (const qName of qNames) {
|
|
488
571
|
// 检查缓存的引用
|
|
489
|
-
const cachedRefs = env.refMgr.
|
|
572
|
+
const cachedRefs = env.refMgr.gCachedQNameSymbolRefs.get(qName[0]) ?? new Set();
|
|
490
573
|
for (const ref of cachedRefs) {
|
|
491
574
|
const fNode = (0, service_1.getFileNode)(ref);
|
|
492
575
|
if (fNode && !removedNodes.has(fNode)) {
|
|
@@ -494,7 +577,7 @@ const getOqlFiles = (env, __chkFiles, removedNodes) => {
|
|
|
494
577
|
}
|
|
495
578
|
}
|
|
496
579
|
// 检查当前引用
|
|
497
|
-
const def = env.refMgr.
|
|
580
|
+
const def = env.refMgr.gQNameDefs.get(qName[0]);
|
|
498
581
|
if (def) {
|
|
499
582
|
const refs = env.refMgr.getSymbolRefs(def) ?? new Set();
|
|
500
583
|
for (const ref of refs) {
|
|
@@ -536,7 +619,7 @@ const getOqlFiles = (env, __chkFiles, removedNodes) => {
|
|
|
536
619
|
};
|
|
537
620
|
// 检查节点是否包含 OqlQueryComponent
|
|
538
621
|
const hasOqlQueryComponent = (node) => {
|
|
539
|
-
if (!(0,
|
|
622
|
+
if (!(0, service_2.isCallableNaslLogic)(node)) {
|
|
540
623
|
return false;
|
|
541
624
|
}
|
|
542
625
|
let result = false;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"incremental-update.js","sourceRoot":"","sources":["../../src/typer/incremental-update.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"incremental-update.js","sourceRoot":"","sources":["../../src/typer/incremental-update.ts"],"names":[],"mappings":"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"}
|
package/out/typer/index.d.ts
CHANGED
|
@@ -3,7 +3,7 @@ import { mkSyntaxErr, mkIncompatibleTyErr } from './sem-diag';
|
|
|
3
3
|
import { isSubTy, isEqualTy, isNumericImplicitCast, isUnResolvedTy, isResolvedUserTy } from './type-predicate';
|
|
4
4
|
import { naslBooleanTy, naslStringTy, naslDecimalTy, naslLongTy, naslDateTy, naslTimeTy, naslDateTimeTy, createFnTyFromTyAnns, createListTyAnn, createTyParam, completeNaslGenericTyArgs, createTyParamAnn, tyParamAnn2TyParam, tyParam2TyAnn, createMapTyAnn, showType, printType, naslVoidTy, isBlockStatement, createRefTyAnn, createRefTyAnnFromDef, createUnionTyAnn, createUnionTyAnnIfNecessary, literalTypeToStringType, TypingEnv, extractTyParamAnns, Constraints, Bounds, OrderedConstraints, BindingEnv, isStatement, naslNumTy, naslNullTy, naslAnyTy, createFunctionDef, ResolvedCall } from './type-manager';
|
|
5
5
|
import { isTyAnnTyParam, isFuncTy, isNaslGenericTy, isListTy, isUnionTy, isAnonymousTy, isPrimitiveTy, isRefTy, isAnyTy } from './type-predicate';
|
|
6
|
-
import { createOnPush, removeLastOne, getLastOne, isInteger, isFloat, zipWith_, printTySubst, printConstraints, eraseAllTypeAnnotation, divideBy,
|
|
6
|
+
import { createOnPush, removeLastOne, getLastOne, isInteger, isFloat, zipWith_, printTySubst, printConstraints, eraseAllTypeAnnotation, divideBy, copyMap, zipWith, findIndexBy, getListLast, removeDupBy } from './helper';
|
|
7
7
|
import { Unifier } from './unifier';
|
|
8
8
|
import { Solver } from './solver';
|
|
9
9
|
import { traverseAndSubst, substTyAnn, inPlaceSubstTyAnn, simplifyUnionTyRecursively } from './subster';
|
|
@@ -14,6 +14,6 @@ import { dispatchDef } from './dispatch-def';
|
|
|
14
14
|
import { createProcessVariable } from './dispatch-process';
|
|
15
15
|
import { topoSortLogicAndSetTypes } from './dispatch-all';
|
|
16
16
|
import { findErrMutRecFns } from './topo-sort';
|
|
17
|
-
import { isCallableNaslLogic } from '
|
|
18
|
-
export { Solver, createOnPush, isSubTy, createTyParam, showType, printType, printTySubst, removeLastOne, mkIncompatibleTyErr, isTyAnnTyParam, mkSyntaxErr, naslBooleanTy, naslStringTy, getLastOne, isEqualTy, naslDecimalTy, naslLongTy, SemEnv, TypingEnv, completeNaslGenericTyArgs, createFnTyFromTyAnns, createListTyAnn, isInteger, isFloat, tyParamAnn2TyParam, tyParam2TyAnn, isFuncTy, zipWith_, printConstraints, Unifier, isNaslGenericTy, createMapTyAnn, createTyParamAnn, naslVoidTy, traverseAndSubst, substTyAnn, isBlockStatement, naslDateTy, naslTimeTy, naslDateTimeTy, naslAnyTy, createRefTyAnn, createRefTyAnnFromDef, isNumericImplicitCast, isListTy, createUnionTyAnn, createUnionTyAnnIfNecessary, isUnionTy, isAnonymousTy, literalTypeToStringType, eraseAllTypeAnnotation, tpSolvingStmts, tpSolvingPlayground, dispatchDef, dispatchExpr, divideBy,
|
|
17
|
+
import { isCallableNaslLogic } from '@lcap/nasl-concepts/service';
|
|
18
|
+
export { Solver, createOnPush, isSubTy, createTyParam, showType, printType, printTySubst, removeLastOne, mkIncompatibleTyErr, isTyAnnTyParam, mkSyntaxErr, naslBooleanTy, naslStringTy, getLastOne, isEqualTy, naslDecimalTy, naslLongTy, SemEnv, TypingEnv, completeNaslGenericTyArgs, createFnTyFromTyAnns, createListTyAnn, isInteger, isFloat, tyParamAnn2TyParam, tyParam2TyAnn, isFuncTy, zipWith_, printConstraints, Unifier, isNaslGenericTy, createMapTyAnn, createTyParamAnn, naslVoidTy, traverseAndSubst, substTyAnn, isBlockStatement, naslDateTy, naslTimeTy, naslDateTimeTy, naslAnyTy, createRefTyAnn, createRefTyAnnFromDef, isNumericImplicitCast, isListTy, createUnionTyAnn, createUnionTyAnnIfNecessary, isUnionTy, isAnonymousTy, literalTypeToStringType, eraseAllTypeAnnotation, tpSolvingStmts, tpSolvingPlayground, dispatchDef, dispatchExpr, divideBy, tpCallAuthInterface, tpCallConnector, tpCallFunction, tpCallInterface, tpCallLogic, tpMatch, extractTyParamAnns, Constraints, Bounds, OrderedConstraints, copyMap, zipWith, GlobalLogicRevDep, BindingEnv, isPrimitiveTy, isRefTy, findIndexBy, isStatement, getListLast, removeDupBy, isAnyTy, createProcessVariable, inPlaceSubstTyAnn, simplifyUnionTyRecursively, naslNumTy, naslNullTy, parseTsFnToNaslQNameRefMaps, topoSortLogicAndSetTypes, findErrMutRecFns, createFunctionDef, ResolvedCall, isUnResolvedTy, isResolvedUserTy, isCallableNaslLogic };
|
|
19
19
|
//# sourceMappingURL=index.d.ts.map
|
package/out/typer/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/typer/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AAEjC,OAAO,EAAE,WAAW,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AAE9D,OAAO,EACH,OAAO,EACP,SAAS,EACT,qBAAqB,EACrB,cAAc,EACd,gBAAgB,EACnB,MAAM,kBAAkB,CAAC;AAE1B,OAAO,EACH,aAAa,EAAC,YAAY,EAAC,aAAa,EAAC,UAAU,EACnD,UAAU,EAAC,UAAU,EAAC,cAAc,EACpC,oBAAoB,EAAC,eAAe,EAAC,aAAa,EAClD,yBAAyB,EAAC,gBAAgB,EAC1C,kBAAkB,EAAC,aAAa,EAAC,cAAc,EAAC,QAAQ,EAAC,SAAS,EAClE,UAAU,EAAE,gBAAgB,EAC5B,cAAc,EAAC,qBAAqB,EACpC,gBAAgB,EAAC,2BAA2B,EAC5C,uBAAuB,EACvB,SAAS,EACT,kBAAkB,EAClB,WAAW,EACX,MAAM,EACN,kBAAkB,EAClB,UAAU,EACV,WAAW,EACX,SAAS,EACT,UAAU,EACV,SAAS,EACT,iBAAiB,EACjB,YAAY,EACf,MAAM,gBAAgB,CAAC;AAExB,OAAO,EACH,cAAc,EACd,QAAQ,EACR,eAAe,EACf,QAAQ,EACR,SAAS,EACT,aAAa,EACb,aAAa,EACb,OAAO,EACP,OAAO,EACV,MAAM,kBAAkB,CAAC;AAE1B,OAAO,EACH,YAAY,EAAE,aAAa,EAAE,UAAU,EACvC,SAAS,EAAE,OAAO,EAAE,QAAQ,EAAE,YAAY,EAAE,gBAAgB,EAAE,sBAAsB,EAAE,QAAQ,EAAE,OAAO,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/typer/index.ts"],"names":[],"mappings":"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"}
|
package/out/typer/index.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.eraseAllTypeAnnotation = exports.literalTypeToStringType = exports.isAnonymousTy = exports.isUnionTy = exports.createUnionTyAnnIfNecessary = exports.createUnionTyAnn = exports.isListTy = exports.isNumericImplicitCast = exports.createRefTyAnnFromDef = exports.createRefTyAnn = exports.naslAnyTy = exports.naslDateTimeTy = exports.naslTimeTy = exports.naslDateTy = exports.isBlockStatement = exports.substTyAnn = exports.traverseAndSubst = exports.naslVoidTy = exports.createTyParamAnn = exports.createMapTyAnn = exports.isNaslGenericTy = exports.Unifier = exports.printConstraints = exports.zipWith_ = exports.isFuncTy = exports.tyParam2TyAnn = exports.tyParamAnn2TyParam = exports.isFloat = exports.isInteger = exports.createListTyAnn = exports.createFnTyFromTyAnns = exports.completeNaslGenericTyArgs = exports.SemEnv = exports.naslLongTy = exports.naslDecimalTy = exports.isEqualTy = exports.getLastOne = exports.naslStringTy = exports.naslBooleanTy = exports.mkSyntaxErr = exports.isTyAnnTyParam = exports.mkIncompatibleTyErr = exports.removeLastOne = exports.printTySubst = exports.printType = exports.showType = exports.createTyParam = exports.isSubTy = exports.createOnPush = exports.Solver = void 0;
|
|
4
|
-
exports.isCallableNaslLogic = exports.isResolvedUserTy = exports.isUnResolvedTy = exports.createFunctionDef = exports.findErrMutRecFns = exports.topoSortLogicAndSetTypes = exports.parseTsFnToNaslQNameRefMaps = exports.naslNullTy = exports.naslNumTy = exports.simplifyUnionTyRecursively = exports.inPlaceSubstTyAnn = exports.createProcessVariable = exports.isAnyTy = exports.removeDupBy = exports.getListLast = exports.isStatement = exports.findIndexBy = exports.isRefTy = exports.isPrimitiveTy = exports.zipWith = exports.copyMap = exports.Bounds = exports.extractTyParamAnns = exports.tpMatch = exports.tpCallLogic = exports.tpCallInterface = exports.tpCallFunction = exports.tpCallConnector = exports.tpCallAuthInterface = exports.
|
|
4
|
+
exports.isCallableNaslLogic = exports.isResolvedUserTy = exports.isUnResolvedTy = exports.createFunctionDef = exports.findErrMutRecFns = exports.topoSortLogicAndSetTypes = exports.parseTsFnToNaslQNameRefMaps = exports.naslNullTy = exports.naslNumTy = exports.simplifyUnionTyRecursively = exports.inPlaceSubstTyAnn = exports.createProcessVariable = exports.isAnyTy = exports.removeDupBy = exports.getListLast = exports.isStatement = exports.findIndexBy = exports.isRefTy = exports.isPrimitiveTy = exports.zipWith = exports.copyMap = exports.Bounds = exports.extractTyParamAnns = exports.tpMatch = exports.tpCallLogic = exports.tpCallInterface = exports.tpCallFunction = exports.tpCallConnector = exports.tpCallAuthInterface = exports.divideBy = exports.dispatchExpr = exports.dispatchDef = exports.tpSolvingPlayground = exports.tpSolvingStmts = void 0;
|
|
5
5
|
const typer_1 = require("./typer");
|
|
6
6
|
Object.defineProperty(exports, "SemEnv", { enumerable: true, get: function () { return typer_1.SemEnv; } });
|
|
7
7
|
const sem_diag_1 = require("./sem-diag");
|
|
@@ -66,7 +66,6 @@ Object.defineProperty(exports, "printTySubst", { enumerable: true, get: function
|
|
|
66
66
|
Object.defineProperty(exports, "printConstraints", { enumerable: true, get: function () { return helper_1.printConstraints; } });
|
|
67
67
|
Object.defineProperty(exports, "eraseAllTypeAnnotation", { enumerable: true, get: function () { return helper_1.eraseAllTypeAnnotation; } });
|
|
68
68
|
Object.defineProperty(exports, "divideBy", { enumerable: true, get: function () { return helper_1.divideBy; } });
|
|
69
|
-
Object.defineProperty(exports, "getType", { enumerable: true, get: function () { return helper_1.getType; } });
|
|
70
69
|
Object.defineProperty(exports, "copyMap", { enumerable: true, get: function () { return helper_1.copyMap; } });
|
|
71
70
|
Object.defineProperty(exports, "zipWith", { enumerable: true, get: function () { return helper_1.zipWith; } });
|
|
72
71
|
Object.defineProperty(exports, "findIndexBy", { enumerable: true, get: function () { return helper_1.findIndexBy; } });
|
|
@@ -102,6 +101,6 @@ const dispatch_all_1 = require("./dispatch-all");
|
|
|
102
101
|
Object.defineProperty(exports, "topoSortLogicAndSetTypes", { enumerable: true, get: function () { return dispatch_all_1.topoSortLogicAndSetTypes; } });
|
|
103
102
|
const topo_sort_1 = require("./topo-sort");
|
|
104
103
|
Object.defineProperty(exports, "findErrMutRecFns", { enumerable: true, get: function () { return topo_sort_1.findErrMutRecFns; } });
|
|
105
|
-
const
|
|
106
|
-
Object.defineProperty(exports, "isCallableNaslLogic", { enumerable: true, get: function () { return
|
|
104
|
+
const service_1 = require("@lcap/nasl-concepts/service");
|
|
105
|
+
Object.defineProperty(exports, "isCallableNaslLogic", { enumerable: true, get: function () { return service_1.isCallableNaslLogic; } });
|
|
107
106
|
//# sourceMappingURL=index.js.map
|
package/out/typer/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/typer/index.ts"],"names":[],"mappings":";;;;AAAA,mCAAiC;AA0FF,uFA1FtB,cAAM,OA0FsB;AAxFrC,yCAA8D;AAuF1D,4FAvFK,sBAAW,OAuFL;AADuC,oGAtFhC,8BAAmB,OAsFgC;AApFzE,qDAM0B;AA6EtB,wFAlFA,wBAAO,OAkFA;AAE+C,0FAnFtD,0BAAS,OAmFsD;AAOxC,sGAzFvB,sCAAqB,OAyFuB;AAqC5C,+FA7HA,+BAAc,OA6HA;AACd,iGA7HA,iCAAgB,OA6HA;AA1HpB,iDAsBwB;AAuDP,8FA5Eb,4BAAa,OA4Ea;AAAE,6FA5Ed,2BAAY,OA4Ec;AACxC,8FA7E2B,4BAAa,OA6E3B;AAAE,2FA7E0B,yBAAU,OA6E1B;AAIK,2FAhF9B,yBAAU,OAgF8B;AAAE,2FAhF/B,yBAAU,OAgF+B;AAAE,+FAhFhC,6BAAc,OAgFgC;AAHpE,qGA5EA,mCAAoB,OA4EA;AAAE,gGA5ED,8BAAe,OA4EC;AAJ5B,8FAxE4B,4BAAa,OAwE5B;AAGwB,0GA1E9C,wCAAyB,OA0E8C;AAG7B,iGA7EhB,+BAAgB,OA6EgB;AADtC,mGA3EpB,iCAAkB,OA2EoB;AAAE,8FA3ErB,4BAAa,OA2EqB;AAC3B,+FA5EO,6BAAc,OA4EP;AALxC,yFAvEgD,uBAAQ,OAuEhD;AAAE,0FAvE+C,wBAAS,OAuE/C;AAKyC,2FA3E5D,yBAAU,OA2E4D;AAC1D,iGA5EA,+BAAgB,OA4EA;AACjB,+FA5EX,6BAAc,OA4EW;AACzB,sGA7Ee,oCAAqB,OA6Ef;AAAmC,iGA5ExD,+BAAgB,OA4EwD;AACxE,4GA7EiB,0CAA2B,OA6EjB;AAC3B,wGA7EA,sCAAuB,OA6EA;AAUvB,mGArFA,iCAAkB,OAqFA;AAElB,uFArFA,qBAAM,OAqFA;AASN,4FA3FA,0BAAW,OA2FA;AAOX,0FAjGA,wBAAS,OAiGA;AACT,2FAjGA,yBAAU,OAiGA;AAhCV,0FAhEA,wBAAS,OAgEA;AAoCT,kGAnGA,gCAAiB,OAmGA;AA/FrB,qDAU0B;AA0CiD,+FAnDvE,+BAAc,OAmDuE;AAI9B,yFAtDvD,yBAAQ,OAsDuD;AACtD,gGAtDT,gCAAe,OAsDS;AAGsB,yFAxD9C,yBAAQ,OAwD8C;AACzB,0FAxD7B,0BAAS,OAwD6B;AAAE,8FAvDxC,8BAAa,OAuDwC;AAmBrD,8FAzEA,8BAAa,OAyEA;AACb,wFAzEA,wBAAO,OAyEA;AAKP,wFA7EA,wBAAO,OA6EA;AA1EX,qCAOkB;AA+BN,6FArCR,qBAAY,OAqCQ;AAEe,8FAvCrB,sBAAa,OAuCqB;AACN,2FAxCb,mBAAU,OAwCa;AAGpD,0FA1CA,kBAAS,OA0CA;AAAE,wFA1CA,gBAAO,OA0CA;AAA+C,yFA1C7C,iBAAQ,OA0C6C;AAJpD,6FAtCS,qBAAY,OAsCT;AAI0C,iGA1C/B,yBAAgB,OA0C+B;AAO3F,uGAjD8D,+BAAsB,OAiD9D;AAER,yFAnDwE,iBAAQ,OAmDxE;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/typer/index.ts"],"names":[],"mappings":";;;;AAAA,mCAAiC;AA0FF,uFA1FtB,cAAM,OA0FsB;AAxFrC,yCAA8D;AAuF1D,4FAvFK,sBAAW,OAuFL;AADuC,oGAtFhC,8BAAmB,OAsFgC;AApFzE,qDAM0B;AA6EtB,wFAlFA,wBAAO,OAkFA;AAE+C,0FAnFtD,0BAAS,OAmFsD;AAOxC,sGAzFvB,sCAAqB,OAyFuB;AAqC5C,+FA7HA,+BAAc,OA6HA;AACd,iGA7HA,iCAAgB,OA6HA;AA1HpB,iDAsBwB;AAuDP,8FA5Eb,4BAAa,OA4Ea;AAAE,6FA5Ed,2BAAY,OA4Ec;AACxC,8FA7E2B,4BAAa,OA6E3B;AAAE,2FA7E0B,yBAAU,OA6E1B;AAIK,2FAhF9B,yBAAU,OAgF8B;AAAE,2FAhF/B,yBAAU,OAgF+B;AAAE,+FAhFhC,6BAAc,OAgFgC;AAHpE,qGA5EA,mCAAoB,OA4EA;AAAE,gGA5ED,8BAAe,OA4EC;AAJ5B,8FAxE4B,4BAAa,OAwE5B;AAGwB,0GA1E9C,wCAAyB,OA0E8C;AAG7B,iGA7EhB,+BAAgB,OA6EgB;AADtC,mGA3EpB,iCAAkB,OA2EoB;AAAE,8FA3ErB,4BAAa,OA2EqB;AAC3B,+FA5EO,6BAAc,OA4EP;AALxC,yFAvEgD,uBAAQ,OAuEhD;AAAE,0FAvE+C,wBAAS,OAuE/C;AAKyC,2FA3E5D,yBAAU,OA2E4D;AAC1D,iGA5EA,+BAAgB,OA4EA;AACjB,+FA5EX,6BAAc,OA4EW;AACzB,sGA7Ee,oCAAqB,OA6Ef;AAAmC,iGA5ExD,+BAAgB,OA4EwD;AACxE,4GA7EiB,0CAA2B,OA6EjB;AAC3B,wGA7EA,sCAAuB,OA6EA;AAUvB,mGArFA,iCAAkB,OAqFA;AAElB,uFArFA,qBAAM,OAqFA;AASN,4FA3FA,0BAAW,OA2FA;AAOX,0FAjGA,wBAAS,OAiGA;AACT,2FAjGA,yBAAU,OAiGA;AAhCV,0FAhEA,wBAAS,OAgEA;AAoCT,kGAnGA,gCAAiB,OAmGA;AA/FrB,qDAU0B;AA0CiD,+FAnDvE,+BAAc,OAmDuE;AAI9B,yFAtDvD,yBAAQ,OAsDuD;AACtD,gGAtDT,gCAAe,OAsDS;AAGsB,yFAxD9C,yBAAQ,OAwD8C;AACzB,0FAxD7B,0BAAS,OAwD6B;AAAE,8FAvDxC,8BAAa,OAuDwC;AAmBrD,8FAzEA,8BAAa,OAyEA;AACb,wFAzEA,wBAAO,OAyEA;AAKP,wFA7EA,wBAAO,OA6EA;AA1EX,qCAOkB;AA+BN,6FArCR,qBAAY,OAqCQ;AAEe,8FAvCrB,sBAAa,OAuCqB;AACN,2FAxCb,mBAAU,OAwCa;AAGpD,0FA1CA,kBAAS,OA0CA;AAAE,wFA1CA,gBAAO,OA0CA;AAA+C,yFA1C7C,iBAAQ,OA0C6C;AAJpD,6FAtCS,qBAAY,OAsCT;AAI0C,iGA1C/B,yBAAgB,OA0C+B;AAO3F,uGAjD8D,+BAAsB,OAiD9D;AAER,yFAnDwE,iBAAQ,OAmDxE;AAWtB,wFA9DgG,gBAAO,OA8DhG;AACP,wFA9DA,gBAAO,OA8DA;AAKP,4FAlEA,oBAAW,OAkEA;AAEX,4FAnEA,oBAAW,OAmEA;AACX,4FAnEA,oBAAW,OAmEA;AAhEf,uCAAoC;AAoChC,wFApCK,iBAAO,OAoCL;AAlCX,qCAAkC;AA2B9B,uFA3BK,eAAM,OA2BL;AAzBV,uCAAwG;AAgC5B,iGAhCnE,0BAAgB,OAgCmE;AACxF,2FAjCuB,oBAAU,OAiCvB;AA8BV,kGA/DmC,2BAAiB,OA+DnC;AACjB,2GAhEsD,oCAA0B,OAgEtD;AA9D9B,2DAC4D;AAgExD,4GAhEA,+CAA2B,OAgEA;AA9D/B,mDAAsE;AAkClE,+FAlCK,8BAAc,OAkCL;AAAE,oGAlCK,mCAAmB,OAkCL;AAhCvC,mDAQyB;AAyBrB,6FAhCA,4BAAY,OAgCA;AACZ,oGAhCA,mCAAmB,OAgCA;AACnB,gGAhCA,+BAAe,OAgCA;AACf,+FAhCA,8BAAc,OAgCA;AACd,gGAhCA,+BAAe,OAgCA;AACf,4FAhCA,2BAAW,OAgCA;AACX,wFAhCA,uBAAO,OAgCA;AA7BX,iDAA4C;AAsBH,4FAtBhC,0BAAW,OAsBgC;AApBpD,yDAA2D;AA2CvD,sGA3CK,wCAAqB,OA2CL;AA1CzB,iDAA0D;AAgDtD,yGAhDK,uCAAwB,OAgDL;AA/C5B,2CAA+C;AAgD3C,iGAhDK,4BAAgB,OAgDL;AA/CpB,yDAAkE;AAoD9D,oGApDK,6BAAmB,OAoDL"}
|
|
@@ -1,10 +1,8 @@
|
|
|
1
|
-
import { AuthLogic, AuthLogicForCallInterface, ConnectorLogic, Logic, OverriddenLogic, SyntaxNode, Variable, Return, Param, BaseNode, BusinessLogic, Interface, AuthInterface } from '@lcap/nasl-concepts';
|
|
2
|
-
import { type DefConcept } from '../reference-manager/symbol-type';
|
|
1
|
+
import { AuthLogic, AuthLogicForCallInterface, ConnectorLogic, Logic, OverriddenLogic, SyntaxNode, Variable, Return, Param, BaseNode, BusinessLogic, Interface, AuthInterface, MicroserviceInterface, GatewayInterface } from '@lcap/nasl-concepts';
|
|
3
2
|
export type TypeInferConcept = Variable | Return | Param;
|
|
4
|
-
export declare const isTypeInferConcept: (def:
|
|
3
|
+
export declare const isTypeInferConcept: (def: SyntaxNode) => def is TypeInferConcept;
|
|
5
4
|
export type CallableNaslLogic = Logic | OverriddenLogic | AuthLogic | AuthLogicForCallInterface | ConnectorLogic | BusinessLogic;
|
|
6
|
-
export
|
|
7
|
-
export type CallableNaslInterface = Interface | AuthInterface;
|
|
5
|
+
export type CallableNaslInterface = Interface | AuthInterface | MicroserviceInterface | GatewayInterface;
|
|
8
6
|
export declare const isCallableNaslInterface: (nd: BaseNode) => nd is CallableNaslInterface;
|
|
9
7
|
export declare const isNaslCallExpr: (node: SyntaxNode) => boolean;
|
|
10
8
|
//# sourceMappingURL=nasl-predicate.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"nasl-predicate.d.ts","sourceRoot":"","sources":["../../src/typer/nasl-predicate.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,SAAS,EACT,yBAAyB,EACzB,cAAc,EACd,KAAK,EACL,eAAe,EACf,UAAU,EACV,QAAQ,EACR,MAAM,EACN,KAAK,EACL,QAAQ,EACR,aAAa,EACb,SAAS,EACT,aAAa,
|
|
1
|
+
{"version":3,"file":"nasl-predicate.d.ts","sourceRoot":"","sources":["../../src/typer/nasl-predicate.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,SAAS,EACT,yBAAyB,EACzB,cAAc,EACd,KAAK,EACL,eAAe,EACf,UAAU,EACV,QAAQ,EACR,MAAM,EACN,KAAK,EACL,QAAQ,EACR,aAAa,EACb,SAAS,EACT,aAAa,EACb,qBAAqB,EACrB,gBAAgB,EACnB,MAAM,qBAAqB,CAAC;AAE7B,MAAM,MAAM,gBAAgB,GAAG,QAAQ,GAAG,MAAM,GAAG,KAAK,CAAC;AACzD,eAAO,MAAM,kBAAkB,QAAS,UAAU,4BAId,CAAC;AAErC,MAAM,MAAM,iBAAiB,GACzB,KAAK,GAAG,eAAe,GAAG,SAAS,GAAG,yBAAyB,GAAG,cAAc,GAAG,aAAa,CAAC;AAErG,MAAM,MAAM,qBAAqB,GAC7B,SAAS,GAAG,aAAa,GAAG,qBAAqB,GAAG,gBAAgB,CAAC;AAEzE,eAAO,MAAM,uBAAuB,OAC3B,QAAQ,gCAAkI,CAAC;AAgBpJ,eAAO,MAAM,cAAc,SAAU,UAAU,YACkG,CAAC"}
|
|
@@ -1,18 +1,21 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.isNaslCallExpr = exports.isCallableNaslInterface = exports.
|
|
4
|
-
const isTypeInferConcept = (def) => def.concept === 'Variable' ||
|
|
3
|
+
exports.isNaslCallExpr = exports.isCallableNaslInterface = exports.isTypeInferConcept = void 0;
|
|
4
|
+
const isTypeInferConcept = (def) => def.concept === 'Variable' ||
|
|
5
|
+
def.concept === 'Return' ||
|
|
6
|
+
def.concept === 'Param' ||
|
|
7
|
+
def.concept === 'ParamWithGroup';
|
|
5
8
|
exports.isTypeInferConcept = isTypeInferConcept;
|
|
6
|
-
const
|
|
7
|
-
exports.isCallableNaslLogic = isCallableNaslLogic;
|
|
8
|
-
const isCallableNaslInterface = (nd) => ['Interface', 'AuthInterface'].includes(nd.concept);
|
|
9
|
+
const isCallableNaslInterface = (nd) => ['Interface', 'AuthInterface', 'MicroServiceInterface', 'GatewayInterface'].includes(nd.concept);
|
|
9
10
|
exports.isCallableNaslInterface = isCallableNaslInterface;
|
|
10
|
-
// Logic | AuthLogic | OverriddenLogic | Interface | AuthInterface | AuthLogicForCallInterface | ConnectorLogic
|
|
11
11
|
// fast cheap unsafe checks
|
|
12
12
|
// 不判断空指针让它更快
|
|
13
13
|
const isCallFunction = (node) => node.concept === 'CallFunction';
|
|
14
14
|
const isCallLogic = (node) => node.concept === 'CallLogic' || node.concept === 'CallConnector';
|
|
15
|
-
const isCallInterface = (node) => node.concept === 'CallInterface' ||
|
|
15
|
+
const isCallInterface = (node) => node.concept === 'CallInterface' ||
|
|
16
|
+
node.concept === 'CallAuthInterface' ||
|
|
17
|
+
node.concept === 'CallMicroserviceInterface' ||
|
|
18
|
+
node.concept === 'CallGatewayInterface';
|
|
16
19
|
const isCallAuthInterface = (node) => node.concept === 'CallAuthInterface';
|
|
17
20
|
const isCallConnector = (node) => node.concept === 'CallConnector';
|
|
18
21
|
const isCallEvent = (node) => node.concept === 'CallEvent';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"nasl-predicate.js","sourceRoot":"","sources":["../../src/typer/nasl-predicate.ts"],"names":[],"mappings":";;;AAmBO,MAAM,kBAAkB,GAAG,CAAC,GAAe,EAA2B,EAAE,
|
|
1
|
+
{"version":3,"file":"nasl-predicate.js","sourceRoot":"","sources":["../../src/typer/nasl-predicate.ts"],"names":[],"mappings":";;;AAmBO,MAAM,kBAAkB,GAAG,CAAC,GAAe,EAA2B,EAAE,CAC3E,GAAG,CAAC,OAAO,KAAK,UAAU;IAC1B,GAAG,CAAC,OAAO,KAAK,QAAQ;IACxB,GAAG,CAAC,OAAO,KAAK,OAAO;IACvB,GAAG,CAAC,OAAO,KAAK,gBAAgB,CAAC;AAJxB,QAAA,kBAAkB,sBAIM;AAQ9B,MAAM,uBAAuB,GAChC,CAAC,EAAY,EAA+B,EAAE,CAAC,CAAC,WAAW,EAAE,eAAe,EAAE,uBAAuB,EAAE,kBAAkB,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC;AADvI,QAAA,uBAAuB,2BACgH;AAGpJ,2BAA2B;AAC3B,aAAa;AACb,MAAM,cAAc,GAAG,CAAC,IAAgB,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,KAAK,cAAc,CAAC;AAC7E,MAAM,WAAW,GAAG,CAAC,IAAgB,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,KAAK,WAAW,IAAI,IAAI,CAAC,OAAO,KAAK,eAAe,CAAC;AAC3G,MAAM,eAAe,GAAG,CAAC,IAAgB,EAAE,EAAE,CACzC,IAAI,CAAC,OAAO,KAAK,eAAe;IAChC,IAAI,CAAC,OAAO,KAAK,mBAAmB;IACpC,IAAI,CAAC,OAAO,KAAK,2BAA2B;IAC5C,IAAI,CAAC,OAAO,KAAK,sBAAsB,CAAC;AAC5C,MAAM,mBAAmB,GAAG,CAAC,IAAgB,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,KAAK,mBAAmB,CAAC;AACvF,MAAM,eAAe,GAAG,CAAC,IAAgB,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,KAAK,eAAe,CAAC;AAC/E,MAAM,WAAW,GAAG,CAAC,IAAgB,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,KAAK,WAAW,CAAC;AACvE,6BAA6B;AACtB,MAAM,cAAc,GAAG,CAAC,IAAgB,EAAE,EAAE,CAC/C,WAAW,CAAC,IAAI,CAAC,IAAI,cAAc,CAAC,IAAI,CAAC,IAAI,WAAW,CAAC,IAAI,CAAC,IAAI,eAAe,CAAC,IAAI,CAAC,IAAI,mBAAmB,CAAC,IAAI,CAAC,IAAI,eAAe,CAAC,IAAI,CAAC,CAAC;AADrI,QAAA,cAAc,kBACuH"}
|