@lcap/nasl-language-server-core 4.0.1-rc.1 → 4.0.1-rc.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/out/checker.d.ts +1 -1
- package/out/checker.d.ts.map +1 -1
- package/out/checker.js +24 -3
- package/out/checker.js.map +1 -1
- package/out/index.d.ts +2 -1
- package/out/index.d.ts.map +1 -1
- package/out/index.js +4 -1
- package/out/index.js.map +1 -1
- package/out/reference-manager/builtin-q-name.d.ts +1 -1
- package/out/reference-manager/builtin-q-name.d.ts.map +1 -1
- package/out/reference-manager/builtin-q-name.js +14 -10
- package/out/reference-manager/builtin-q-name.js.map +1 -1
- package/out/reference-manager/collect-q-name.d.ts +2 -3
- package/out/reference-manager/collect-q-name.d.ts.map +1 -1
- package/out/reference-manager/collect-q-name.js +29 -28
- package/out/reference-manager/collect-q-name.js.map +1 -1
- package/out/reference-manager/get-q-name.d.ts +0 -2
- package/out/reference-manager/get-q-name.d.ts.map +1 -1
- package/out/reference-manager/get-q-name.js +56 -57
- package/out/reference-manager/get-q-name.js.map +1 -1
- package/out/reference-manager/reference-manager.d.ts +21 -11
- package/out/reference-manager/reference-manager.d.ts.map +1 -1
- package/out/reference-manager/reference-manager.js +192 -101
- package/out/reference-manager/reference-manager.js.map +1 -1
- package/out/reference-manager/remove-q-name.d.ts +1 -2
- package/out/reference-manager/remove-q-name.d.ts.map +1 -1
- package/out/reference-manager/remove-q-name.js +33 -29
- package/out/reference-manager/remove-q-name.js.map +1 -1
- package/out/reference-manager/rename-q-name.d.ts +2 -1
- package/out/reference-manager/rename-q-name.d.ts.map +1 -1
- package/out/reference-manager/rename-q-name.js +13 -3
- package/out/reference-manager/rename-q-name.js.map +1 -1
- package/out/reference-manager/symbol-type.d.ts +5 -3
- package/out/reference-manager/symbol-type.d.ts.map +1 -1
- package/out/reference-manager/symbol-type.js +8 -3
- 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 +4 -4
- package/out/reference-manager/update-nasl-fragment.js.map +1 -1
- package/out/typer/collectGlobalDefs.d.ts +1 -1
- package/out/typer/collectGlobalDefs.d.ts.map +1 -1
- package/out/typer/collectGlobalDefs.js +2 -2
- package/out/typer/collectGlobalDefs.js.map +1 -1
- package/out/typer/component-def-manager/component-def-manager.js +2 -2
- package/out/typer/component-def-manager/component-def-manager.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 +2 -2
- package/out/typer/dispatch-all.js.map +1 -1
- package/out/typer/dispatch-def.d.ts.map +1 -1
- package/out/typer/dispatch-def.js +3 -0
- package/out/typer/dispatch-def.js.map +1 -1
- package/out/typer/dispatch-expr.d.ts.map +1 -1
- package/out/typer/dispatch-expr.js +135 -100
- 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 +17 -5
- package/out/typer/dispatch-process.js.map +1 -1
- package/out/typer/dispatch-view.d.ts +1 -1
- package/out/typer/dispatch-view.d.ts.map +1 -1
- package/out/typer/dispatch-view.js +15 -11
- package/out/typer/dispatch-view.js.map +1 -1
- package/out/typer/incremental-update.d.ts.map +1 -1
- package/out/typer/incremental-update.js +28 -44
- package/out/typer/incremental-update.js.map +1 -1
- package/out/typer/index.d.ts +2 -1
- package/out/typer/index.d.ts.map +1 -1
- package/out/typer/index.js +3 -1
- package/out/typer/index.js.map +1 -1
- package/out/typer/nasl-predicate.d.ts +1 -2
- package/out/typer/nasl-predicate.d.ts.map +1 -1
- package/out/typer/overload-helper.d.ts +12 -0
- package/out/typer/overload-helper.d.ts.map +1 -0
- package/out/typer/overload-helper.js +110 -0
- package/out/typer/overload-helper.js.map +1 -0
- package/out/typer/sem-diag.d.ts +4 -0
- package/out/typer/sem-diag.d.ts.map +1 -1
- package/out/typer/sem-diag.js +9 -1
- package/out/typer/sem-diag.js.map +1 -1
- package/out/typer/solver.d.ts +2 -2
- package/out/typer/solver.d.ts.map +1 -1
- package/out/typer/solver.js +17 -19
- package/out/typer/solver.js.map +1 -1
- package/out/typer/subster.d.ts.map +1 -1
- package/out/typer/subster.js +10 -5
- package/out/typer/subster.js.map +1 -1
- package/out/typer/type-hint-manager/type-hint-manager.d.ts +1 -1
- package/out/typer/type-hint-manager/type-hint-manager.d.ts.map +1 -1
- package/out/typer/type-manager.d.ts.map +1 -1
- package/out/typer/type-manager.js +3 -3
- package/out/typer/type-manager.js.map +1 -1
- package/out/typer/type-predicate.js +5 -5
- package/out/typer/type-predicate.js.map +1 -1
- package/out/typer/typer.d.ts +7 -4
- package/out/typer/typer.d.ts.map +1 -1
- package/out/typer/typer.js +24 -17
- package/out/typer/typer.js.map +1 -1
- package/out/typer/unifier.d.ts.map +1 -1
- package/out/typer/unifier.js +10 -4
- package/out/typer/unifier.js.map +1 -1
- package/out/utils/parseTsClassType.d.ts +2 -3
- package/out/utils/parseTsClassType.d.ts.map +1 -1
- package/out/utils/parseTsClassType.js +25 -58
- package/out/utils/parseTsClassType.js.map +1 -1
- package/out/utils/string.d.ts +4 -0
- package/out/utils/string.d.ts.map +1 -0
- package/out/utils/string.js +29 -0
- package/out/utils/string.js.map +1 -0
- 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 +12 -12
- package/out/utils/type-operator.js.map +1 -1
- package/package.json +9 -6
|
@@ -1,27 +1,8 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.getTokenQualifiedNameForMatchedExpr = exports.getTokenQualifiedName =
|
|
3
|
+
exports.getTokenQualifiedNameForMatchedExpr = exports.getTokenQualifiedName = void 0;
|
|
4
4
|
const symbol_type_1 = require("./symbol-type");
|
|
5
|
-
|
|
6
|
-
// This is pragmatic given that the original function comment notes "efficiency is low, single-use only"
|
|
7
|
-
// Helper functions
|
|
8
|
-
const prependNonEmptyStr = (str1, str2) => {
|
|
9
|
-
if (str1 && str1.length > 0) {
|
|
10
|
-
if (str2 && str2.length > 0) {
|
|
11
|
-
return `${str1}.${str2}`;
|
|
12
|
-
}
|
|
13
|
-
return str1;
|
|
14
|
-
}
|
|
15
|
-
return str2;
|
|
16
|
-
};
|
|
17
|
-
exports.prependNonEmptyStr = prependNonEmptyStr;
|
|
18
|
-
const getPropQName = (nspName, propName, concept) => {
|
|
19
|
-
if (concept === 'Entity' || concept === 'Structure' || concept === 'Enum') {
|
|
20
|
-
return `${nspName}.properties.${propName}`;
|
|
21
|
-
}
|
|
22
|
-
throw new Error(`getPropQName does not support this concept: ${concept}`);
|
|
23
|
-
};
|
|
24
|
-
exports.getPropQName = getPropQName;
|
|
5
|
+
const string_1 = require("../utils/string");
|
|
25
6
|
const handleLogic = (nd) => {
|
|
26
7
|
try {
|
|
27
8
|
return nd.calleewholeKey;
|
|
@@ -47,20 +28,30 @@ const getTokenQualifiedName = (nd) => {
|
|
|
47
28
|
// references
|
|
48
29
|
// 超高频的放前面
|
|
49
30
|
case 'TypeAnnotation': // union type、 anonymous type 等不会走到这里
|
|
50
|
-
return (0,
|
|
31
|
+
return (0, string_1.prependNonEmptyStr)(nd.typeNamespace, nd.typeName);
|
|
51
32
|
case 'Identifier':
|
|
52
|
-
return (0,
|
|
53
|
-
case 'CallAuthInterface':
|
|
54
|
-
return (0, exports.prependNonEmptyStr)(nd.calleeNamespace, nd.calleeName);
|
|
33
|
+
return (0, string_1.prependNonEmptyStr)(nd.namespace, nd.name);
|
|
55
34
|
case 'CallConnector':
|
|
56
|
-
//
|
|
57
|
-
|
|
58
|
-
|
|
35
|
+
// 语言高手的精妙设计 1:calleeNamespace 没有 .logics。
|
|
36
|
+
// 语言高手的精妙设计 2:仅调用处有 .namespace1,connection 定义处没有
|
|
37
|
+
// let calleeNamespace = nd.calleeNamespace;
|
|
38
|
+
// calleeNamespace = calleeNamespace?.replace(/\.namespace\d+$/, '');
|
|
39
|
+
// return `${calleeNamespace}.logics.${(nd as CallConnector).calleeConnectionName}`;
|
|
40
|
+
return `${nd.calleeNamespace}.logics.${nd.calleeName}`;
|
|
41
|
+
case 'Connection':
|
|
42
|
+
// 👍🏻 connection 的 namespace 非常乱,def 和 use 几乎无法对应起来 👍🏻
|
|
43
|
+
return `${nd.getNamespace()}.${nd.name}`;
|
|
44
|
+
case 'ConnectorLogic':
|
|
45
|
+
return `${nd.getNamespace()}.logics.${nd.name}`;
|
|
46
|
+
case 'CallAuthInterface':
|
|
47
|
+
return (0, string_1.prependNonEmptyStr)(nd.calleeNamespace, nd.calleeName);
|
|
59
48
|
case 'CallFunction': // CallFunction 暂时不用建立索引,但其他模块会用到,还是先返回一个值
|
|
60
|
-
return (0,
|
|
49
|
+
return (0, string_1.prependNonEmptyStr)(nd.calleeNamespace, nd.calleeName);
|
|
61
50
|
case 'CallInterface':
|
|
62
51
|
case 'CallMicroserviceInterface': // 是 Interface 子类型
|
|
63
|
-
return (0,
|
|
52
|
+
return (0, string_1.prependNonEmptyStr)(nd.calleeNamespace, nd.calleeName);
|
|
53
|
+
// // 谁有什么更好的办法吗
|
|
54
|
+
// return `app.${prependNonEmptyStr(nd.calleeNamespace, nd.calleeName)}`;
|
|
64
55
|
case 'CallLogic':
|
|
65
56
|
if ((0, symbol_type_1.isProcessLogicCall)(nd.calleeNamespace) && (0, symbol_type_1.isSpecialProcessLogic)(nd.calleeName)) {
|
|
66
57
|
const procDefKey = nd.arguments?.find((arg) => {
|
|
@@ -93,98 +84,106 @@ const getTokenQualifiedName = (nd) => {
|
|
|
93
84
|
case 'BusinessLogic':
|
|
94
85
|
return handleLogic(nd);
|
|
95
86
|
case 'AuthInterface':
|
|
96
|
-
return (0,
|
|
97
|
-
case 'AuthLogic':
|
|
98
|
-
return (0, exports.prependNonEmptyStr)(nd.getNamespace(), nd.name);
|
|
87
|
+
return (0, string_1.prependNonEmptyStr)(nd.getNamespace(), nd.name);
|
|
99
88
|
case 'BackendVariable':
|
|
100
89
|
// 先写死吧,毕竟这 nsp 不写死都不知道怎么拼
|
|
101
90
|
return `app.backend.variables.${nd.name}`;
|
|
102
|
-
case 'ConnectorLogic':
|
|
103
|
-
return `${nd.getNamespace()}.${nd.name}`;
|
|
104
|
-
case 'Connection':
|
|
105
|
-
// 👍🏻 connection 的 namespace 非常乱,def 和 use 几乎无法对应起来 👍🏻
|
|
106
|
-
return `${nd.getNamespace()}.${nd.name}`;
|
|
107
91
|
case 'Event': {
|
|
108
92
|
if (nd.parentNode?.concept === 'BusinessComponent') {
|
|
109
|
-
return (0,
|
|
93
|
+
return (0, string_1.prependNonEmptyStr)((0, exports.getTokenQualifiedName)(nd.parentNode), `events.${nd.name}`);
|
|
110
94
|
}
|
|
111
95
|
// 其他情形还不能处理
|
|
112
96
|
return nd.name;
|
|
113
97
|
}
|
|
114
98
|
case 'Entity':
|
|
115
|
-
return (0,
|
|
99
|
+
return (0, string_1.prependNonEmptyStr)(nd.getNamespace(), nd.name);
|
|
116
100
|
case 'EntityProperty': {
|
|
117
101
|
const entity = nd.getAncestorRaw('Entity');
|
|
118
102
|
if (entity.concept === 'Entity') {
|
|
119
103
|
const entityQName = (0, exports.getTokenQualifiedName)(entity);
|
|
120
|
-
return (0,
|
|
104
|
+
return (0, string_1.getPropQName)(entityQName, nd.name, 'Entity');
|
|
121
105
|
}
|
|
122
106
|
else {
|
|
123
107
|
return undefined;
|
|
124
108
|
}
|
|
125
109
|
}
|
|
126
110
|
case 'Enum':
|
|
127
|
-
return (0,
|
|
111
|
+
return (0, string_1.prependNonEmptyStr)(nd.getNamespace(), nd.name);
|
|
128
112
|
case 'EnumItem':
|
|
129
|
-
return (0,
|
|
113
|
+
return (0, string_1.getPropQName)(nd.getNamespaceForRefMgr(), nd.value, 'Enum');
|
|
130
114
|
// app.frontendTypes.pc.frontends.pc.variables
|
|
131
115
|
case 'FrontendVariable':
|
|
132
116
|
return handleFVar(nd);
|
|
133
117
|
case 'Interface':
|
|
134
118
|
case 'MicroserviceInterface': // 是 Interface 子类型
|
|
135
|
-
return (0,
|
|
119
|
+
return (0, string_1.prependNonEmptyStr)(nd.getNamespace(), nd.name);
|
|
136
120
|
case 'InterfaceParam':
|
|
137
121
|
return nd.name;
|
|
138
122
|
case 'MetadataType':
|
|
139
|
-
return (0,
|
|
123
|
+
return (0, string_1.prependNonEmptyStr)(nd.getNamespace(), nd.name);
|
|
140
124
|
case 'OverriddenLogic':
|
|
141
125
|
return `${symbol_type_1.overriddenLogicNsp}.logics.${nd.name}`;
|
|
142
126
|
case 'Param':
|
|
127
|
+
case 'ParamWithGroup':
|
|
143
128
|
return nd.name;
|
|
144
129
|
case 'Return':
|
|
145
130
|
return nd.name;
|
|
146
131
|
case 'Structure':
|
|
147
|
-
return (0,
|
|
132
|
+
return (0, string_1.prependNonEmptyStr)(nd.getNamespace(), nd.name);
|
|
148
133
|
// case 'ProcessElementV2' :
|
|
149
134
|
// return prependStr(nd.getNamespace(), nd.name);
|
|
150
135
|
case 'StructureProperty':
|
|
151
136
|
// new composite 等地方下面也有 StructureProperty,此时并不是定义,就不生成 QName 了
|
|
152
137
|
const s = nd.getAncestorRaw('Structure');
|
|
153
|
-
return s ? (0,
|
|
138
|
+
return s ? (0, string_1.getPropQName)(`${s.getNamespace()}.${s.name}`, nd.name, 'Structure') : undefined;
|
|
154
139
|
case 'Variable':
|
|
155
140
|
return nd.name;
|
|
156
141
|
case 'View':
|
|
157
|
-
return (0,
|
|
142
|
+
return (0, string_1.prependNonEmptyStr)(nd.getNamespace(), nd.name); // 局部名就可以了
|
|
158
143
|
case 'ViewElement': {
|
|
159
|
-
return (0,
|
|
144
|
+
return (0, string_1.prependNonEmptyStr)((0, exports.getTokenQualifiedName)(nd.likeComponent), nd.name);
|
|
160
145
|
}
|
|
161
146
|
case 'BusinessComponent':
|
|
162
|
-
return (0,
|
|
147
|
+
return (0, string_1.prependNonEmptyStr)(nd.getNamespace(), nd.name);
|
|
163
148
|
// ExternalDestination 不需要处理
|
|
164
149
|
case 'Destination': {
|
|
165
|
-
return (0,
|
|
150
|
+
return (0, string_1.prependNonEmptyStr)(nd.viewNamespace, nd.viewName);
|
|
166
151
|
}
|
|
167
152
|
case 'Module': {
|
|
168
|
-
return (0,
|
|
153
|
+
return (0, string_1.prependNonEmptyStr)(nd.getNamespace(), nd.name);
|
|
169
154
|
}
|
|
170
155
|
case 'Namespace': {
|
|
171
|
-
return (0,
|
|
156
|
+
return (0, string_1.prependNonEmptyStr)(nd.getNamespace(), nd.name);
|
|
172
157
|
}
|
|
173
158
|
case 'Connector': {
|
|
174
|
-
return (0,
|
|
159
|
+
return (0, string_1.prependNonEmptyStr)(nd.getNamespace(), nd.name);
|
|
175
160
|
}
|
|
176
161
|
case 'ProcessV2': {
|
|
177
162
|
return nd.uniqueKey;
|
|
178
163
|
}
|
|
179
164
|
case 'ConfigProperty': {
|
|
180
|
-
return (0,
|
|
165
|
+
return (0, string_1.prependNonEmptyStr)(nd.getNamespace(), nd.name);
|
|
181
166
|
}
|
|
182
167
|
case 'ProcessBindV2':
|
|
183
168
|
return `${nd.refNamespace}.${nd.refName}`;
|
|
184
169
|
case 'DataSource':
|
|
185
170
|
return `${nd.getNamespace()}.${nd.name}`;
|
|
186
|
-
case '
|
|
187
|
-
|
|
171
|
+
case 'AuthLogic': {
|
|
172
|
+
// @ts-expect-error
|
|
173
|
+
const parentNsp = nd.parentNode.getNamespace?.();
|
|
174
|
+
if (parentNsp && parentNsp.length > 0) {
|
|
175
|
+
return `${parentNsp}.${symbol_type_1.authInfix}.logics.${nd.name}`;
|
|
176
|
+
}
|
|
177
|
+
}
|
|
178
|
+
case 'AuthLogicForCallInterface': {
|
|
179
|
+
// @ts-expect-error
|
|
180
|
+
const parentNsp = nd.parentNode.getNamespace?.();
|
|
181
|
+
if (parentNsp && parentNsp.length > 0) {
|
|
182
|
+
return `${parentNsp}.${symbol_type_1.extAuthInfix}.logics.${nd.name}`;
|
|
183
|
+
}
|
|
184
|
+
}
|
|
185
|
+
case 'Role':
|
|
186
|
+
return `${symbol_type_1.roleNsp}.${nd.name}`;
|
|
188
187
|
// case 'BindAttribute': {
|
|
189
188
|
// const dsTy = readDataSourceTy(nd as unknown as BindAttribute);
|
|
190
189
|
// if (dsTy) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"get-q-name.js","sourceRoot":"","sources":["../../src/reference-manager/get-q-name.ts"],"names":[],"mappings":";;;AAaA,+
|
|
1
|
+
{"version":3,"file":"get-q-name.js","sourceRoot":"","sources":["../../src/reference-manager/get-q-name.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,11 +1,8 @@
|
|
|
1
|
-
import { Entity, EntityProperty, Enum, Identifier, Structure, StructureProperty, type SyntaxNode, TypeAnnotation, App, EnumItem, ViewElement, ProcessElementV2 } from '@lcap/nasl-concepts';
|
|
1
|
+
import { Entity, EntityProperty, Enum, Identifier, Structure, StructureProperty, type SyntaxNode, TypeAnnotation, App, EnumItem, ViewElement, ProcessElementV2, View, Connector } from '@lcap/nasl-concepts';
|
|
2
2
|
import { NASLObject } from '@lcap/nasl-types';
|
|
3
|
-
import { SymbolGraph } from '../symbol';
|
|
4
3
|
import { type SemEnv } from '../typer';
|
|
5
4
|
import { ComponentDefManager } from '../typer/component-def-manager/component-def-manager';
|
|
6
|
-
import { getTokenQualifiedName, getTokenQualifiedNameForMatchedExpr, getPropQName, prependNonEmptyStr } from './get-q-name';
|
|
7
5
|
import { type RefConcept, type DefConcept, SupportedNamespace, QName, Operation } from './symbol-type';
|
|
8
|
-
export { getTokenQualifiedName, getTokenQualifiedNameForMatchedExpr, getPropQName, prependNonEmptyStr as prependStr };
|
|
9
6
|
/**
|
|
10
7
|
* 考虑这样一个例子:
|
|
11
8
|
* x = f(...)
|
|
@@ -142,9 +139,8 @@ export declare class ReferenceManager {
|
|
|
142
139
|
static connectionNsp: string;
|
|
143
140
|
constructor();
|
|
144
141
|
buildQNameDefsForApp(app?: App): void;
|
|
145
|
-
buildSymbolRefsForApp(env: SemEnv, app?: App
|
|
142
|
+
buildSymbolRefsForApp(env: SemEnv, app?: App): void;
|
|
146
143
|
static getProp: (def: Entity | Structure | Enum | TypeAnnotation, prop: string) => EntityProperty | StructureProperty | EnumItem | undefined;
|
|
147
|
-
private buildSymbolRefsFromSymbolGraph;
|
|
148
144
|
slowBuildSymbolRefsForApp: (env: SemEnv, app: App) => void;
|
|
149
145
|
private fastBuildQNameDefs;
|
|
150
146
|
/**
|
|
@@ -204,7 +200,7 @@ export declare class ReferenceManager {
|
|
|
204
200
|
*/
|
|
205
201
|
transferQNameDef: (oldQName: string, newQName: string, mode: 'update' | 'rename-only' | null) => void;
|
|
206
202
|
updateRefsInNaslFragment: (env: SemEnv, payload: NASLObject.EventPayload) => void;
|
|
207
|
-
cacheRemovedConnectors: (nd:
|
|
203
|
+
cacheRemovedConnectors: (nd: Connector, connDeps: Connector[], removedFiles: Set<SyntaxNode>) => void;
|
|
208
204
|
/**
|
|
209
205
|
* @warning Only handle global symbols
|
|
210
206
|
*/
|
|
@@ -221,6 +217,8 @@ export declare class ReferenceManager {
|
|
|
221
217
|
*/
|
|
222
218
|
private handleForeignKeyRef;
|
|
223
219
|
private handleBusinessComponentRefs;
|
|
220
|
+
private handleBindRoles;
|
|
221
|
+
private handleAuthLogicRef;
|
|
224
222
|
/**
|
|
225
223
|
* 无论根节点是 ref 还是 def,都要递归收集下层所有的引用节点
|
|
226
224
|
* 会打散 a.b.c、A | B、x.a.b 等结构,并记录必要的信息
|
|
@@ -234,22 +232,24 @@ export declare class ReferenceManager {
|
|
|
234
232
|
* @warning 此过程收集所有引用,包括全局符号和局部符号的,不会做过滤
|
|
235
233
|
* @param env semantic environment
|
|
236
234
|
* @param nd start node to collect sub refs
|
|
235
|
+
* @param skipSubView whether skip the collection for sub views
|
|
237
236
|
* @returns [ref, qName]
|
|
238
237
|
*/
|
|
239
238
|
private collectRefs;
|
|
240
|
-
collectGlobalSubDefs: (nd: DefConcept) => Map<DefConcept, QName>;
|
|
241
239
|
/**
|
|
242
240
|
* @warning Only handle global symbols
|
|
243
241
|
* 仅清除全局符号的引用。外部优先调用此接口,不要直接调用 collectRefs
|
|
244
242
|
* 不是说输入是 global symbol,而是说对于任何输入,只移除内部对 global symbol 的引用
|
|
243
|
+
* @param skipSubView 是否跳过子页面,增量场景调用较多,增量场景默认跳过
|
|
245
244
|
*/
|
|
246
|
-
removeRefsForGlobalSym: (env: SemEnv, rmNd: DefConcept) => void;
|
|
245
|
+
removeRefsForGlobalSym: (env: SemEnv, rmNd: DefConcept, skipSubView?: boolean) => void;
|
|
247
246
|
/**
|
|
248
247
|
* @warning Only handle global symbols
|
|
249
248
|
* 仅收集全局符号的引用。外部优先调用此接口,不要直接调用 collectRefs
|
|
250
249
|
* 不是说输入是 global symbol,而是说对于任何输入,只收集内部对 global symbol 的引用
|
|
250
|
+
* @param skipSubView 是否跳过子页面,增量场景调用较多,增量场景默认跳过
|
|
251
251
|
*/
|
|
252
|
-
addRefsForGlobalSym: (env: SemEnv, nd: DefConcept) => void;
|
|
252
|
+
addRefsForGlobalSym: (env: SemEnv, nd: DefConcept, skipSubView?: boolean) => void;
|
|
253
253
|
invalidateLocalSymCache: () => void;
|
|
254
254
|
/**
|
|
255
255
|
* 干的事太多了,只能改名 hack 了
|
|
@@ -270,6 +270,9 @@ export declare class ReferenceManager {
|
|
|
270
270
|
*/
|
|
271
271
|
private splitPolyType;
|
|
272
272
|
private splitQueryLike;
|
|
273
|
+
/**
|
|
274
|
+
* FieldPermissionV2 是对 Entity 和其属性的特殊引用
|
|
275
|
+
*/
|
|
273
276
|
private splitFieldPermissionV2;
|
|
274
277
|
static getEntityLogicQNames(nd: Entity): string[];
|
|
275
278
|
clearAll(): void;
|
|
@@ -284,7 +287,6 @@ export declare const easyGetOldQName: (qName: string, oldName: string) => string
|
|
|
284
287
|
* 今后大概率会改成 isNonUserNode,实体逻辑只是其中之一。比如文件夹应该也是 nonUserNode 吧
|
|
285
288
|
*/
|
|
286
289
|
export declare const isEntityLogic: (nd: SyntaxNode | null | undefined) => boolean;
|
|
287
|
-
export declare const lowercaseFirstChar: (str: string) => string;
|
|
288
290
|
/**
|
|
289
291
|
* 处理 CodeWave 编译器的一些连带的自动化行为,如自动生成 { abc: Abc } 这样的匿名结构体。
|
|
290
292
|
* 这里实质上是否是引用?这里不是直接引用,但是 entityX 这个名字是从 EntityX 自动生成的,也可以看作是间接引用
|
|
@@ -300,4 +302,12 @@ export declare const getDatasourceQName: (eNsp: string) => string;
|
|
|
300
302
|
* xxx.entities 只保留 xxx
|
|
301
303
|
*/
|
|
302
304
|
export declare const getNamespaceWithoutLast: (def: DefConcept) => string;
|
|
305
|
+
export declare const cheapTestLocalSymbol: (qName: string) => boolean;
|
|
306
|
+
/**
|
|
307
|
+
* 一个 FileNode 下面还可以有其他 FileNode 哦,其实没什么神秘的。
|
|
308
|
+
* @warning 只会返回下属的 FileNode,不包含自己
|
|
309
|
+
* @param node
|
|
310
|
+
* @returns 下属 FileNodes,不包含自己
|
|
311
|
+
*/
|
|
312
|
+
export declare const getSubViews: (node: SyntaxNode) => Array<View>;
|
|
303
313
|
//# sourceMappingURL=reference-manager.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"reference-manager.d.ts","sourceRoot":"","sources":["../../src/reference-manager/reference-manager.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,MAAM,EACN,cAAc,EACd,IAAI,EACJ,UAAU,EAOV,SAAS,EACT,iBAAiB,EACjB,KAAK,UAAU,EACf,cAAc,EAId,GAAG,EACH,QAAQ,EACR,WAAW,EAWX,gBAAgB,
|
|
1
|
+
{"version":3,"file":"reference-manager.d.ts","sourceRoot":"","sources":["../../src/reference-manager/reference-manager.ts"],"names":[],"mappings":"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"}
|