@microsoft/powerquery-language-services 0.10.4 → 0.10.6
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/lib/powerquery-language-services/analysis/analysisBase.js +2 -1
- package/lib/powerquery-language-services/analysis/analysisBase.js.map +1 -1
- package/lib/powerquery-language-services/inspection/activeNode/activeNodeUtils.js +8 -6
- package/lib/powerquery-language-services/inspection/activeNode/activeNodeUtils.js.map +1 -1
- package/lib/powerquery-language-services/inspection/autocomplete/autocompleteFieldAccess.js +1 -4
- package/lib/powerquery-language-services/inspection/autocomplete/autocompleteFieldAccess.js.map +1 -1
- package/lib/powerquery-language-services/inspection/autocomplete/autocompleteItem/autocompleteItemUtils.d.ts +2 -2
- package/lib/powerquery-language-services/inspection/autocomplete/autocompleteItem/autocompleteItemUtils.js +5 -5
- package/lib/powerquery-language-services/inspection/autocomplete/autocompleteItem/autocompleteItemUtils.js.map +1 -1
- package/lib/powerquery-language-services/inspection/dereferencedIdentifier/dereferencedIdentifier.d.ts +37 -0
- package/lib/powerquery-language-services/inspection/dereferencedIdentifier/dereferencedIdentifier.js +14 -0
- package/lib/powerquery-language-services/inspection/dereferencedIdentifier/dereferencedIdentifier.js.map +1 -0
- package/lib/powerquery-language-services/inspection/dereferencedIdentifier/dereferencedIdentifierUtils.d.ts +6 -0
- package/lib/powerquery-language-services/inspection/dereferencedIdentifier/dereferencedIdentifierUtils.js +222 -0
- package/lib/powerquery-language-services/inspection/dereferencedIdentifier/dereferencedIdentifierUtils.js.map +1 -0
- package/lib/powerquery-language-services/inspection/dereferencedIdentifier/index.d.ts +2 -0
- package/lib/powerquery-language-services/inspection/dereferencedIdentifier/index.js +20 -0
- package/lib/powerquery-language-services/inspection/dereferencedIdentifier/index.js.map +1 -0
- package/lib/powerquery-language-services/inspection/index.d.ts +1 -1
- package/lib/powerquery-language-services/inspection/index.js +1 -1
- package/lib/powerquery-language-services/inspection/index.js.map +1 -1
- package/lib/powerquery-language-services/inspection/invokeExpression/invokeExpression.js +1 -1
- package/lib/powerquery-language-services/inspection/invokeExpression/invokeExpression.js.map +1 -1
- package/lib/powerquery-language-services/inspection/scope/scope.d.ts +1 -1
- package/lib/powerquery-language-services/inspection/scope/scopeInspection.js +55 -38
- package/lib/powerquery-language-services/inspection/scope/scopeInspection.js.map +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/common.d.ts +3 -10
- package/lib/powerquery-language-services/inspection/type/inspectType/common.js +44 -63
- package/lib/powerquery-language-services/inspection/type/inspectType/common.js.map +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/examineFieldSpecificationList.d.ts +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeEachExpression.d.ts +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeEachExpression.js.map +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeErrorHandlingExpression.d.ts +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeErrorHandlingExpression.js.map +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeField/common.d.ts +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeField/common.js.map +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeField/inspectTypeFieldProjection.d.ts +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeField/inspectTypeFieldSelector.d.ts +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeField/inspectTypeFieldSelector.js +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeField/inspectTypeFieldSelector.js.map +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeFieldSpecification.d.ts +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeFieldSpecification.js.map +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeFunctionExpression.d.ts +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeFunctionExpression.js.map +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeFunctionType.d.ts +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeFunctionType.js.map +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeIdentifier.d.ts +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeIdentifier.js +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeIdentifier.js.map +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeIdentifierExpression.d.ts +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeIdentifierExpression.js +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeIdentifierExpression.js.map +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeIfExpression.d.ts +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeIfExpression.js.map +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeInvokeExpression.d.ts +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeInvokeExpression.js +10 -5
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeInvokeExpression.js.map +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeList.d.ts +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeList.js.map +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeListType.d.ts +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeListType.js.map +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeLiteralExpression.d.ts +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeNullCoalescingExpression.d.ts +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeNullCoalescingExpression.js.map +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeParameter.d.ts +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeParameter.js.map +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypePrimitiveType.d.ts +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeRangeExpression.d.ts +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeRangeExpression.js +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeRangeExpression.js.map +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeRecord.d.ts +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeRecord.js +5 -8
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeRecord.js.map +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeRecordType.d.ts +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeRecursivePrimaryExpression.d.ts +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeRecursivePrimaryExpression.js.map +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeState/index.d.ts +2 -0
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeState/index.js +20 -0
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeState/index.js.map +1 -0
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeState/inspectTypeState.d.ts +9 -0
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeState/inspectTypeState.js +5 -0
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeState/inspectTypeState.js.map +1 -0
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeState/inspectTypeStateUtils.d.ts +7 -0
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeState/inspectTypeStateUtils.js +43 -0
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeState/inspectTypeStateUtils.js.map +1 -0
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeTBinOpExpression.d.ts +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeTBinOpExpression.js.map +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeTableType.d.ts +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeTableType.js +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeTableType.js.map +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeUnaryExpression.d.ts +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeUnaryExpression.js.map +1 -1
- package/lib/powerquery-language-services/inspection/type/task.js +7 -23
- package/lib/powerquery-language-services/inspection/type/task.js.map +1 -1
- package/lib/powerquery-language-services/inspectionUtils.js +4 -5
- package/lib/powerquery-language-services/inspectionUtils.js.map +1 -1
- package/lib/powerquery-language-services/library/libraryUtils.js +2 -1
- package/lib/powerquery-language-services/library/libraryUtils.js.map +1 -1
- package/lib/powerquery-language-services/validate/validateUnknownIdentifiers.js +0 -2
- package/lib/powerquery-language-services/validate/validateUnknownIdentifiers.js.map +1 -1
- package/package.json +3 -3
- package/lib/powerquery-language-services/inspection/deferenceIdentifier.d.ts +0 -5
- package/lib/powerquery-language-services/inspection/deferenceIdentifier.js +0 -95
- package/lib/powerquery-language-services/inspection/deferenceIdentifier.js.map +0 -1
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@microsoft/powerquery-language-services",
|
|
3
|
-
"version": "0.10.
|
|
3
|
+
"version": "0.10.6",
|
|
4
4
|
"author": "Microsoft",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"scripts": {
|
|
@@ -54,8 +54,8 @@
|
|
|
54
54
|
"typescript": "4.6.4"
|
|
55
55
|
},
|
|
56
56
|
"dependencies": {
|
|
57
|
-
"@microsoft/powerquery-formatter": "0.3.
|
|
58
|
-
"@microsoft/powerquery-parser": "0.
|
|
57
|
+
"@microsoft/powerquery-formatter": "0.3.17",
|
|
58
|
+
"@microsoft/powerquery-parser": "0.18.1",
|
|
59
59
|
"vscode-languageserver-textdocument": "1.0.4",
|
|
60
60
|
"vscode-languageserver-types": "3.17.1"
|
|
61
61
|
}
|
|
@@ -1,5 +0,0 @@
|
|
|
1
|
-
import * as PQP from "@microsoft/powerquery-parser";
|
|
2
|
-
import { NodeIdMap, TXorNode } from "@microsoft/powerquery-parser/lib/powerquery-parser/parser";
|
|
3
|
-
import { ScopeById } from "./scope";
|
|
4
|
-
import { TypeById } from "./typeCache";
|
|
5
|
-
export declare function tryDeferenceIdentifier(settings: PQP.CommonSettings, nodeIdMapCollection: NodeIdMap.Collection, eachScopeById: TypeById | undefined, xorNode: TXorNode, scopeById?: ScopeById): Promise<PQP.Result<TXorNode | undefined, PQP.CommonError.CommonError>>;
|
|
@@ -1,95 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
// Copyright (c) Microsoft Corporation.
|
|
3
|
-
// Licensed under the MIT license.
|
|
4
|
-
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
5
|
-
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
6
|
-
return new (P || (P = Promise))(function (resolve, reject) {
|
|
7
|
-
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
8
|
-
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
9
|
-
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
10
|
-
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
11
|
-
});
|
|
12
|
-
};
|
|
13
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
14
|
-
exports.tryDeferenceIdentifier = void 0;
|
|
15
|
-
const powerquery_parser_1 = require("@microsoft/powerquery-parser");
|
|
16
|
-
const parser_1 = require("@microsoft/powerquery-parser/lib/powerquery-parser/parser");
|
|
17
|
-
const trace_1 = require("@microsoft/powerquery-parser/lib/powerquery-parser/common/trace");
|
|
18
|
-
const language_1 = require("@microsoft/powerquery-parser/lib/powerquery-parser/language");
|
|
19
|
-
const scope_1 = require("./scope");
|
|
20
|
-
const __1 = require("..");
|
|
21
|
-
const trace_2 = require("../trace");
|
|
22
|
-
// Recusrive deference of the identifier until it reaches the value node.
|
|
23
|
-
// Does not handle recursive identifiers.
|
|
24
|
-
function tryDeferenceIdentifier(settings, nodeIdMapCollection, eachScopeById, xorNode,
|
|
25
|
-
// If a map is given, then it's mutated and returned.
|
|
26
|
-
// Else create a new Map instance and return that instead.
|
|
27
|
-
scopeById = new Map()) {
|
|
28
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
29
|
-
const trace = settings.traceManager.entry(trace_2.InspectionTraceConstant.InspectScope, tryDeferenceIdentifier.name, settings.initialCorrelationId, __1.TraceUtils.xorNodeDetails(xorNode));
|
|
30
|
-
const updatedSettings = Object.assign(Object.assign({}, settings), { initialCorrelationId: trace.id });
|
|
31
|
-
parser_1.XorNodeUtils.assertIsIdentifier(xorNode);
|
|
32
|
-
if (parser_1.XorNodeUtils.isContext(xorNode)) {
|
|
33
|
-
trace.exit({ [trace_1.TraceConstant.Result]: undefined });
|
|
34
|
-
return powerquery_parser_1.ResultUtils.ok(undefined);
|
|
35
|
-
}
|
|
36
|
-
const identifier = xorNode.node;
|
|
37
|
-
let identifierLiteral;
|
|
38
|
-
switch (identifier.kind) {
|
|
39
|
-
case language_1.Ast.NodeKind.Identifier:
|
|
40
|
-
identifierLiteral = identifier.literal;
|
|
41
|
-
break;
|
|
42
|
-
case language_1.Ast.NodeKind.IdentifierExpression:
|
|
43
|
-
identifierLiteral = identifier.identifier.literal;
|
|
44
|
-
break;
|
|
45
|
-
default:
|
|
46
|
-
throw powerquery_parser_1.Assert.isNever(identifier);
|
|
47
|
-
}
|
|
48
|
-
const triedNodeScope = yield (0, scope_1.assertGetOrCreateNodeScope)(updatedSettings, nodeIdMapCollection, eachScopeById, xorNode.node.id, scopeById);
|
|
49
|
-
if (powerquery_parser_1.ResultUtils.isError(triedNodeScope)) {
|
|
50
|
-
trace.exit({ [trace_1.TraceConstant.Result]: triedNodeScope.kind });
|
|
51
|
-
return triedNodeScope;
|
|
52
|
-
}
|
|
53
|
-
const nodeScope = triedNodeScope.value;
|
|
54
|
-
const scopeItem = nodeScope.get(identifierLiteral);
|
|
55
|
-
if (
|
|
56
|
-
// If the identifier couldn't be found in the generated scope,
|
|
57
|
-
// then either the scope generation is incorrect or it's an external identifier.
|
|
58
|
-
scopeItem === undefined) {
|
|
59
|
-
trace.exit({ [trace_1.TraceConstant.Result]: undefined });
|
|
60
|
-
return powerquery_parser_1.ResultUtils.ok(xorNode);
|
|
61
|
-
}
|
|
62
|
-
let nextXorNode;
|
|
63
|
-
switch (scopeItem.kind) {
|
|
64
|
-
case scope_1.ScopeItemKind.Each:
|
|
65
|
-
case scope_1.ScopeItemKind.Parameter:
|
|
66
|
-
case scope_1.ScopeItemKind.Undefined:
|
|
67
|
-
break;
|
|
68
|
-
case scope_1.ScopeItemKind.LetVariable:
|
|
69
|
-
case scope_1.ScopeItemKind.RecordField:
|
|
70
|
-
nextXorNode = scopeItem.value;
|
|
71
|
-
break;
|
|
72
|
-
case scope_1.ScopeItemKind.SectionMember:
|
|
73
|
-
nextXorNode = scopeItem.value;
|
|
74
|
-
break;
|
|
75
|
-
default:
|
|
76
|
-
throw powerquery_parser_1.Assert.isNever(scopeItem);
|
|
77
|
-
}
|
|
78
|
-
let result;
|
|
79
|
-
if (nextXorNode === undefined) {
|
|
80
|
-
result = Promise.resolve(powerquery_parser_1.ResultUtils.ok(xorNode));
|
|
81
|
-
}
|
|
82
|
-
else if (parser_1.XorNodeUtils.isContext(nextXorNode) ||
|
|
83
|
-
(nextXorNode.node.kind !== language_1.Ast.NodeKind.Identifier &&
|
|
84
|
-
nextXorNode.node.kind !== language_1.Ast.NodeKind.IdentifierExpression)) {
|
|
85
|
-
result = Promise.resolve(powerquery_parser_1.ResultUtils.ok(xorNode));
|
|
86
|
-
}
|
|
87
|
-
else {
|
|
88
|
-
result = tryDeferenceIdentifier(updatedSettings, nodeIdMapCollection, eachScopeById, nextXorNode, scopeById);
|
|
89
|
-
}
|
|
90
|
-
trace.exit();
|
|
91
|
-
return result;
|
|
92
|
-
});
|
|
93
|
-
}
|
|
94
|
-
exports.tryDeferenceIdentifier = tryDeferenceIdentifier;
|
|
95
|
-
//# sourceMappingURL=deferenceIdentifier.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"deferenceIdentifier.js","sourceRoot":"","sources":["../../../src/powerquery-language-services/inspection/deferenceIdentifier.ts"],"names":[],"mappings":"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"}
|