@zzzen/pyright-internal 1.2.0-dev.20230409 → 1.2.0-dev.20230423

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.
Files changed (151) hide show
  1. package/dist/analyzer/binder.js +1 -3
  2. package/dist/analyzer/binder.js.map +1 -1
  3. package/dist/analyzer/codeFlowEngine.js +22 -0
  4. package/dist/analyzer/codeFlowEngine.js.map +1 -1
  5. package/dist/analyzer/commentUtils.d.ts +1 -1
  6. package/dist/analyzer/commentUtils.js +18 -3
  7. package/dist/analyzer/commentUtils.js.map +1 -1
  8. package/dist/analyzer/constructorTransform.js +112 -49
  9. package/dist/analyzer/constructorTransform.js.map +1 -1
  10. package/dist/analyzer/declarationUtils.js +2 -1
  11. package/dist/analyzer/declarationUtils.js.map +1 -1
  12. package/dist/analyzer/docStringConversion.js +2 -3
  13. package/dist/analyzer/docStringConversion.js.map +1 -1
  14. package/dist/analyzer/enums.d.ts +1 -1
  15. package/dist/analyzer/enums.js +114 -55
  16. package/dist/analyzer/enums.js.map +1 -1
  17. package/dist/analyzer/parseTreeUtils.js +9 -4
  18. package/dist/analyzer/parseTreeUtils.js.map +1 -1
  19. package/dist/analyzer/patternMatching.d.ts +6 -2
  20. package/dist/analyzer/patternMatching.js +109 -2
  21. package/dist/analyzer/patternMatching.js.map +1 -1
  22. package/dist/analyzer/program.d.ts +9 -7
  23. package/dist/analyzer/program.js +106 -46
  24. package/dist/analyzer/program.js.map +1 -1
  25. package/dist/analyzer/service.d.ts +2 -2
  26. package/dist/analyzer/service.js +6 -6
  27. package/dist/analyzer/service.js.map +1 -1
  28. package/dist/analyzer/sourceFile.d.ts +1 -3
  29. package/dist/analyzer/sourceFile.js +1 -9
  30. package/dist/analyzer/sourceFile.js.map +1 -1
  31. package/dist/analyzer/sourceMapper.js +1 -1
  32. package/dist/analyzer/sourceMapper.js.map +1 -1
  33. package/dist/analyzer/typeEvaluator.js +147 -38
  34. package/dist/analyzer/typeEvaluator.js.map +1 -1
  35. package/dist/analyzer/typeEvaluatorTypes.d.ts +4 -3
  36. package/dist/analyzer/typeEvaluatorTypes.js +0 -2
  37. package/dist/analyzer/typeEvaluatorTypes.js.map +1 -1
  38. package/dist/analyzer/typeGuards.d.ts +2 -0
  39. package/dist/analyzer/typeGuards.js +172 -175
  40. package/dist/analyzer/typeGuards.js.map +1 -1
  41. package/dist/analyzer/typePrinter.d.ts +1 -1
  42. package/dist/analyzer/typePrinter.js +21 -18
  43. package/dist/analyzer/typePrinter.js.map +1 -1
  44. package/dist/analyzer/typeUtils.js +13 -13
  45. package/dist/analyzer/typeUtils.js.map +1 -1
  46. package/dist/analyzer/types.d.ts +2 -1
  47. package/dist/analyzer/types.js +20 -4
  48. package/dist/analyzer/types.js.map +1 -1
  49. package/dist/common/configOptions.d.ts +1 -1
  50. package/dist/common/configOptions.js +3 -3
  51. package/dist/common/configOptions.js.map +1 -1
  52. package/dist/common/extensibility.d.ts +7 -4
  53. package/dist/common/extensibility.js.map +1 -1
  54. package/dist/common/fullAccessHost.d.ts +2 -1
  55. package/dist/common/fullAccessHost.js +11 -1
  56. package/dist/common/fullAccessHost.js.map +1 -1
  57. package/dist/common/host.d.ts +3 -2
  58. package/dist/common/host.js +1 -1
  59. package/dist/common/host.js.map +1 -1
  60. package/dist/languageServerBase.js +3 -2
  61. package/dist/languageServerBase.js.map +1 -1
  62. package/dist/languageService/autoImporter.d.ts +1 -1
  63. package/dist/languageService/autoImporter.js +2 -2
  64. package/dist/languageService/autoImporter.js.map +1 -1
  65. package/dist/languageService/callHierarchyProvider.js +17 -4
  66. package/dist/languageService/callHierarchyProvider.js.map +1 -1
  67. package/dist/languageService/completionProvider.js +259 -93
  68. package/dist/languageService/completionProvider.js.map +1 -1
  69. package/dist/languageService/completionProviderUtils.js +11 -3
  70. package/dist/languageService/completionProviderUtils.js.map +1 -1
  71. package/dist/languageService/documentSymbolCollector.js +1 -1
  72. package/dist/languageService/documentSymbolCollector.js.map +1 -1
  73. package/dist/languageService/hoverProvider.d.ts +28 -28
  74. package/dist/languageService/hoverProvider.js +151 -118
  75. package/dist/languageService/hoverProvider.js.map +1 -1
  76. package/dist/languageService/importAdder.d.ts +13 -2
  77. package/dist/languageService/importAdder.js +73 -26
  78. package/dist/languageService/importAdder.js.map +1 -1
  79. package/dist/languageService/indentationUtils.js +9 -4
  80. package/dist/languageService/indentationUtils.js.map +1 -1
  81. package/dist/languageService/insertionPointUtils.js +2 -2
  82. package/dist/languageService/insertionPointUtils.js.map +1 -1
  83. package/dist/localization/localize.d.ts +2 -0
  84. package/dist/localization/localize.js +2 -0
  85. package/dist/localization/localize.js.map +1 -1
  86. package/dist/localization/package.nls.en-us.json +2 -0
  87. package/dist/tests/checker.test.js +1 -1
  88. package/dist/tests/completions.test.js +412 -0
  89. package/dist/tests/completions.test.js.map +1 -1
  90. package/dist/tests/docStringConversion.test.js +11 -1
  91. package/dist/tests/docStringConversion.test.js.map +1 -1
  92. package/dist/tests/fourslash/completions.inherited.function.docFromStub.fourslash.js +1 -1
  93. package/dist/tests/fourslash/completions.inherited.function.docFromStub.fourslash.js.map +1 -1
  94. package/dist/tests/fourslash/completions.override2.fourslash.js +16 -1
  95. package/dist/tests/fourslash/completions.override2.fourslash.js.map +1 -1
  96. package/dist/tests/fourslash/completions.variableDocStrings.fourslash.js +1 -1
  97. package/dist/tests/fourslash/completions.variableDocStrings.fourslash.js.map +1 -1
  98. package/dist/tests/fourslash/fourslash.d.ts +11 -1
  99. package/dist/tests/fourslash/hover.docstring.overloads.fourslash.js +2 -2
  100. package/dist/tests/fourslash/hover.docstring.overloads.fourslash.js.map +1 -1
  101. package/dist/tests/fourslash/hover.variable.docString.fourslash.js +1 -1
  102. package/dist/tests/fourslash/hover.variable.docString.fourslash.js.map +1 -1
  103. package/dist/tests/fourslash/showcallhierarchy.incomingCalls.aliasedFunction.fourslash.js +5 -6
  104. package/dist/tests/fourslash/showcallhierarchy.incomingCalls.aliasedFunction.fourslash.js.map +1 -1
  105. package/dist/tests/fourslash/showcallhierarchy.incomingCalls.aliasedVariable.fourslash.js +1 -4
  106. package/dist/tests/fourslash/showcallhierarchy.incomingCalls.aliasedVariable.fourslash.js.map +1 -1
  107. package/dist/tests/fourslash/showcallhierarchy.incomingCalls.function.fourslash.js +10 -9
  108. package/dist/tests/fourslash/showcallhierarchy.incomingCalls.function.fourslash.js.map +1 -1
  109. package/dist/tests/fourslash/showcallhierarchy.outgoingCalls.aliasedFunction1.fourslash.d.ts +1 -0
  110. package/dist/tests/fourslash/showcallhierarchy.outgoingCalls.aliasedFunction1.fourslash.js +54 -0
  111. package/dist/tests/fourslash/showcallhierarchy.outgoingCalls.aliasedFunction1.fourslash.js.map +1 -0
  112. package/dist/tests/fourslash/showcallhierarchy.outgoingCalls.aliasedFunction2.fourslash.d.ts +1 -0
  113. package/dist/tests/fourslash/showcallhierarchy.outgoingCalls.aliasedFunction2.fourslash.js +46 -0
  114. package/dist/tests/fourslash/showcallhierarchy.outgoingCalls.aliasedFunction2.fourslash.js.map +1 -0
  115. package/dist/tests/fourslash/showcallhierarchy.outgoingCalls.function.fourslash.d.ts +1 -0
  116. package/dist/tests/fourslash/showcallhierarchy.outgoingCalls.function.fourslash.js +39 -0
  117. package/dist/tests/fourslash/showcallhierarchy.outgoingCalls.function.fourslash.js.map +1 -0
  118. package/dist/tests/harness/fourslash/fourSlashParser.js +1 -1
  119. package/dist/tests/harness/fourslash/fourSlashParser.js.map +1 -1
  120. package/dist/tests/harness/fourslash/testState.d.ts +6 -1
  121. package/dist/tests/harness/fourslash/testState.js +38 -6
  122. package/dist/tests/harness/fourslash/testState.js.map +1 -1
  123. package/dist/tests/harness/testHost.js +1 -1
  124. package/dist/tests/harness/testHost.js.map +1 -1
  125. package/dist/tests/harness/vfs/factory.js +2 -2
  126. package/dist/tests/harness/vfs/factory.js.map +1 -1
  127. package/dist/tests/harness/vfs/filesystem.js +26 -25
  128. package/dist/tests/harness/vfs/filesystem.js.map +1 -1
  129. package/dist/tests/hoverProvider.test.js +6 -0
  130. package/dist/tests/hoverProvider.test.js.map +1 -1
  131. package/dist/tests/importAdder.test.js +69 -1
  132. package/dist/tests/importAdder.test.js.map +1 -1
  133. package/dist/tests/indentationUtils.ptvs.test.js +2 -2
  134. package/dist/tests/indentationUtils.ptvs.test.js.map +1 -1
  135. package/dist/tests/indentationUtils.test.js +18 -0
  136. package/dist/tests/indentationUtils.test.js.map +1 -1
  137. package/dist/tests/moveSymbol.insertion.test.js +25 -4
  138. package/dist/tests/moveSymbol.insertion.test.js.map +1 -1
  139. package/dist/tests/typeEvaluator1.test.js +8 -0
  140. package/dist/tests/typeEvaluator1.test.js.map +1 -1
  141. package/dist/tests/typeEvaluator2.test.js +4 -0
  142. package/dist/tests/typeEvaluator2.test.js.map +1 -1
  143. package/dist/tests/typeEvaluator3.test.js +10 -0
  144. package/dist/tests/typeEvaluator3.test.js.map +1 -1
  145. package/dist/tests/typeEvaluator4.test.js +5 -1
  146. package/dist/tests/typeEvaluator4.test.js.map +1 -1
  147. package/dist/tests/typePrinter.test.js +5 -0
  148. package/dist/tests/typePrinter.test.js.map +1 -1
  149. package/dist/workspaceFactory.js +1 -1
  150. package/dist/workspaceFactory.js.map +1 -1
  151. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"declarationUtils.js","sourceRoot":"","sources":["../../../src/analyzer/declarationUtils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"declarationUtils.js","sourceRoot":"","sources":["../../../src/analyzer/declarationUtils.ts"],"names":[],"mappings":"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"}
@@ -455,7 +455,6 @@ class DocStringConverter {
455
455
  // Args:
456
456
  // param1 (type): description
457
457
  _beginFieldList() {
458
- var _a, _b;
459
458
  if (this._insideInlineCode) {
460
459
  return false;
461
460
  }
@@ -468,10 +467,10 @@ class DocStringConverter {
468
467
  return true;
469
468
  }
470
469
  // catch-all for styles except reST
471
- const hasOddNumColons = !(line === null || line === void 0 ? void 0 : line.endsWith(':')) && !(line === null || line === void 0 ? void 0 : line.endsWith('::')) && ((_b = (_a = line.match(/:/g)) === null || _a === void 0 ? void 0 : _a.length) !== null && _b !== void 0 ? _b : 0) % 2 === 1; // odd number of colons
470
+ const hasArguments = !(line === null || line === void 0 ? void 0 : line.endsWith(':')) && !(line === null || line === void 0 ? void 0 : line.endsWith('::')) && !!line.match(/^\s*.*?\w+\s*:\s*\w+/g);
472
471
  // reSt params. Attempt to put directives lines into their own paragraphs.
473
472
  const restDirective = DirectivesExtraNewlineRegExp.test(line); //line.match(/^\s*:param/);
474
- if (hasOddNumColons || restDirective) {
473
+ if (hasArguments || restDirective) {
475
474
  const prev = this._lineAt(this._lineNum - 1);
476
475
  // Force a line break, if previous line doesn't already have a break or is blank
477
476
  if (!this._builder.endsWith(MarkdownLineBreak) && !this._builder.endsWith(`\n\n`) && !_isHeader(prev)) {
@@ -1 +1 @@
1
- {"version":3,"file":"docStringConversion.js","sourceRoot":"","sources":["../../../src/analyzer/docStringConversion.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"docStringConversion.js","sourceRoot":"","sources":["../../../src/analyzer/docStringConversion.ts"],"names":[],"mappings":"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"}
@@ -3,7 +3,7 @@ import { VariableDeclaration } from './declaration';
3
3
  import { FunctionArgument, TypeEvaluator } from './typeEvaluatorTypes';
4
4
  import { ClassType, Type } from './types';
5
5
  export declare function isKnownEnumType(className: string): boolean;
6
- export declare function createEnumType(errorNode: ExpressionNode, enumClass: ClassType, argList: FunctionArgument[]): ClassType | undefined;
6
+ export declare function createEnumType(evaluator: TypeEvaluator, errorNode: ExpressionNode, enumClass: ClassType, argList: FunctionArgument[]): ClassType | undefined;
7
7
  export declare function transformTypeForPossibleEnumClass(evaluator: TypeEvaluator, node: NameNode, getValueType: () => Type): Type | undefined;
8
8
  export declare function isDeclInEnumClass(evaluator: TypeEvaluator, decl: VariableDeclaration): boolean;
9
9
  export declare function getTypeOfEnumMember(evaluator: TypeEvaluator, errorNode: ParseNode, classType: ClassType, memberName: string, isIncomplete: boolean): {
@@ -9,9 +9,6 @@
9
9
  */
10
10
  Object.defineProperty(exports, "__esModule", { value: true });
11
11
  exports.getEnumAutoValueType = exports.getTypeOfEnumMember = exports.isDeclInEnumClass = exports.transformTypeForPossibleEnumClass = exports.createEnumType = exports.isKnownEnumType = void 0;
12
- const debug_1 = require("../common/debug");
13
- const positionUtils_1 = require("../common/positionUtils");
14
- const textRange_1 = require("../common/textRange");
15
12
  const analyzerNodeInfo_1 = require("./analyzerNodeInfo");
16
13
  const parseTreeUtils_1 = require("./parseTreeUtils");
17
14
  const symbol_1 = require("./symbol");
@@ -24,23 +21,20 @@ function isKnownEnumType(className) {
24
21
  }
25
22
  exports.isKnownEnumType = isKnownEnumType;
26
23
  // Creates a new custom enum class with named values.
27
- function createEnumType(errorNode, enumClass, argList) {
24
+ function createEnumType(evaluator, errorNode, enumClass, argList) {
28
25
  const fileInfo = (0, analyzerNodeInfo_1.getFileInfo)(errorNode);
29
- let className = 'enum';
30
26
  if (argList.length === 0) {
31
27
  return undefined;
32
28
  }
33
- else {
34
- const nameArg = argList[0];
35
- if (nameArg.argumentCategory === 0 /* Simple */ &&
36
- nameArg.valueExpression &&
37
- nameArg.valueExpression.nodeType === 48 /* StringList */) {
38
- className = nameArg.valueExpression.strings.map((s) => s.value).join('');
39
- }
40
- else {
41
- return undefined;
42
- }
29
+ const nameArg = argList[0];
30
+ if (nameArg.argumentCategory !== 0 /* Simple */ ||
31
+ !nameArg.valueExpression ||
32
+ nameArg.valueExpression.nodeType !== 48 /* StringList */ ||
33
+ nameArg.valueExpression.strings.length !== 1 ||
34
+ nameArg.valueExpression.strings[0].nodeType !== 49 /* String */) {
35
+ return undefined;
43
36
  }
37
+ const className = nameArg.valueExpression.strings.map((s) => s.value).join('');
44
38
  const classType = types_1.ClassType.createInstantiable(className, (0, parseTreeUtils_1.getClassFullName)(errorNode, fileInfo.moduleName, className), fileInfo.moduleName, fileInfo.filePath, 1048576 /* EnumClass */, (0, parseTreeUtils_1.getTypeSourceId)(errorNode),
45
39
  /* declaredMetaclass */ undefined, enumClass.details.effectiveMetaclass);
46
40
  classType.details.baseClasses.push(enumClass);
@@ -50,49 +44,114 @@ function createEnumType(errorNode, enumClass, argList) {
50
44
  if (argList.length < 2) {
51
45
  return undefined;
52
46
  }
53
- else {
54
- const entriesArg = argList[1];
55
- if (entriesArg.argumentCategory !== 0 /* Simple */ ||
56
- !entriesArg.valueExpression ||
57
- entriesArg.valueExpression.nodeType !== 48 /* StringList */) {
58
- // Technically, the Enum constructor supports a bunch of different
59
- // ways to specify the items: space-delimited string, a string
60
- // iterator, an iterator of name/value tuples, and a dictionary
61
- // of name/value pairs. We support only the simple space-delimited
62
- // string here. For users who are interested in type checking, we
63
- // recommend using the more standard class declaration syntax.
47
+ const initArg = argList[1];
48
+ if (initArg.argumentCategory !== 0 /* Simple */ || !initArg.valueExpression) {
49
+ return undefined;
50
+ }
51
+ const intClassType = evaluator.getBuiltInType(errorNode, 'int');
52
+ if (!intClassType || !(0, types_1.isInstantiableClass)(intClassType)) {
53
+ return undefined;
54
+ }
55
+ const classInstanceType = types_1.ClassType.cloneAsInstance(classType);
56
+ // The Enum functional form supports various forms of arguments:
57
+ // Enum('name', 'a b c')
58
+ // Enum('name', 'a,b,c')
59
+ // Enum('name', ['a', 'b', 'c'])
60
+ // Enum('name', ('a', 'b', 'c'))
61
+ // Enum('name', (('a', 1), ('b', 2), ('c', 3)))
62
+ // Enum('name', [('a', 1), ('b', 2), ('c', 3))]
63
+ // Enum('name', {'a': 1, 'b': 2, 'c': 3}
64
+ if (initArg.valueExpression.nodeType === 48 /* StringList */) {
65
+ // Don't allow format strings in the init arg.
66
+ if (!initArg.valueExpression.strings.every((str) => str.nodeType === 49 /* String */)) {
67
+ return undefined;
68
+ }
69
+ const initStr = initArg.valueExpression.strings
70
+ .map((s) => s.value)
71
+ .join('')
72
+ .trim();
73
+ // Split by comma or whitespace.
74
+ const entryNames = initStr.split(/[\s,]+/);
75
+ for (const [index, entryName] of entryNames.entries()) {
76
+ if (!entryName) {
77
+ return undefined;
78
+ }
79
+ const valueType = types_1.ClassType.cloneWithLiteral(types_1.ClassType.cloneAsInstance(intClassType), index + 1);
80
+ const enumLiteral = new types_1.EnumLiteral(classType.details.fullName, classType.details.name, entryName, valueType);
81
+ const newSymbol = symbol_1.Symbol.createWithType(4 /* ClassMember */, types_1.ClassType.cloneWithLiteral(classInstanceType, enumLiteral));
82
+ classFields.set(entryName, newSymbol);
83
+ }
84
+ return classType;
85
+ }
86
+ if (initArg.valueExpression.nodeType === 31 /* List */ ||
87
+ initArg.valueExpression.nodeType === 52 /* Tuple */) {
88
+ const entries = initArg.valueExpression.nodeType === 31 /* List */
89
+ ? initArg.valueExpression.entries
90
+ : initArg.valueExpression.expressions;
91
+ if (entries.length === 0) {
64
92
  return undefined;
65
93
  }
66
- else {
67
- const entries = entriesArg.valueExpression.strings
68
- .map((s) => s.value)
69
- .join('')
70
- .split(' ');
71
- entries.forEach((entryName) => {
72
- entryName = entryName.trim();
73
- if (entryName) {
74
- const entryType = types_1.UnknownType.create();
75
- const newSymbol = symbol_1.Symbol.createWithType(4 /* ClassMember */, entryType);
76
- // We need to associate the declaration with a parse node.
77
- // In this case it's just part of a string literal value.
78
- // The definition provider won't necessarily take the
79
- // user to the exact spot in the string, but it's close enough.
80
- const stringNode = entriesArg.valueExpression;
81
- (0, debug_1.assert)(stringNode.nodeType === 48 /* StringList */);
82
- const fileInfo = (0, analyzerNodeInfo_1.getFileInfo)(errorNode);
83
- const declaration = {
84
- type: 1 /* Variable */,
85
- node: stringNode,
86
- isRuntimeTypeExpression: true,
87
- path: fileInfo.filePath,
88
- range: (0, positionUtils_1.convertOffsetsToRange)(stringNode.start, textRange_1.TextRange.getEnd(stringNode), fileInfo.lines),
89
- moduleName: fileInfo.moduleName,
90
- isInExceptSuite: false,
91
- };
92
- newSymbol.addDeclaration(declaration);
93
- classFields.set(entryName, newSymbol);
94
+ // Entries can be either string literals or tuples of a string
95
+ // literal and a value. All entries must follow the same pattern.
96
+ let isSimpleString = false;
97
+ for (const [index, entry] of entries.entries()) {
98
+ if (index === 0) {
99
+ isSimpleString = entry.nodeType === 48 /* StringList */;
100
+ }
101
+ let nameNode;
102
+ let valueType;
103
+ if (entry.nodeType === 48 /* StringList */) {
104
+ if (!isSimpleString) {
105
+ return undefined;
106
+ }
107
+ nameNode = entry;
108
+ valueType = types_1.ClassType.cloneWithLiteral(types_1.ClassType.cloneAsInstance(intClassType), index + 1);
109
+ }
110
+ else if (entry.nodeType === 52 /* Tuple */) {
111
+ if (isSimpleString) {
112
+ return undefined;
113
+ }
114
+ if (entry.expressions.length !== 2) {
115
+ return undefined;
94
116
  }
95
- });
117
+ nameNode = entry.expressions[0];
118
+ valueType = evaluator.getTypeOfExpression(entry.expressions[1]).type;
119
+ }
120
+ else {
121
+ return undefined;
122
+ }
123
+ if (nameNode.nodeType !== 48 /* StringList */ ||
124
+ nameNode.strings.length !== 1 ||
125
+ nameNode.strings[0].nodeType !== 49 /* String */) {
126
+ return undefined;
127
+ }
128
+ const entryName = nameNode.strings[0].value;
129
+ const enumLiteral = new types_1.EnumLiteral(classType.details.fullName, classType.details.name, entryName, valueType);
130
+ const newSymbol = symbol_1.Symbol.createWithType(4 /* ClassMember */, types_1.ClassType.cloneWithLiteral(classInstanceType, enumLiteral));
131
+ classFields.set(entryName, newSymbol);
132
+ }
133
+ }
134
+ if (initArg.valueExpression.nodeType === 15 /* Dictionary */) {
135
+ const entries = initArg.valueExpression.entries;
136
+ if (entries.length === 0) {
137
+ return undefined;
138
+ }
139
+ for (const entry of entries) {
140
+ // Don't support dictionary expansion expressions.
141
+ if (entry.nodeType !== 17 /* DictionaryKeyEntry */) {
142
+ return undefined;
143
+ }
144
+ const nameNode = entry.keyExpression;
145
+ const valueType = evaluator.getTypeOfExpression(entry.valueExpression).type;
146
+ if (nameNode.nodeType !== 48 /* StringList */ ||
147
+ nameNode.strings.length !== 1 ||
148
+ nameNode.strings[0].nodeType !== 49 /* String */) {
149
+ return undefined;
150
+ }
151
+ const entryName = nameNode.strings[0].value;
152
+ const enumLiteral = new types_1.EnumLiteral(classType.details.fullName, classType.details.name, entryName, valueType);
153
+ const newSymbol = symbol_1.Symbol.createWithType(4 /* ClassMember */, types_1.ClassType.cloneWithLiteral(classInstanceType, enumLiteral));
154
+ classFields.set(entryName, newSymbol);
96
155
  }
97
156
  }
98
157
  return classType;
@@ -1 +1 @@
1
- {"version":3,"file":"enums.js","sourceRoot":"","sources":["../../../src/analyzer/enums.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"enums.js","sourceRoot":"","sources":["../../../src/analyzer/enums.ts"],"names":[],"mappings":"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"}
@@ -158,10 +158,15 @@ function printExpression(node, flags = 0 /* None */) {
158
158
  return printExpression(node.leftExpression, flags) + '.' + node.memberName.value;
159
159
  }
160
160
  case 9 /* Call */: {
161
- return (printExpression(node.leftExpression, flags) +
162
- '(' +
163
- node.arguments.map((arg) => printArgument(arg, flags)).join(', ') +
164
- ')');
161
+ let lhs = printExpression(node.leftExpression, flags);
162
+ // Some left-hand expressions must be parenthesized.
163
+ if (node.leftExpression.nodeType !== 35 /* MemberAccess */ &&
164
+ node.leftExpression.nodeType !== 38 /* Name */ &&
165
+ node.leftExpression.nodeType !== 24 /* Index */ &&
166
+ node.leftExpression.nodeType !== 9 /* Call */) {
167
+ lhs = `(${lhs})`;
168
+ }
169
+ return lhs + '(' + node.arguments.map((arg) => printArgument(arg, flags)).join(', ') + ')';
165
170
  }
166
171
  case 24 /* Index */: {
167
172
  return (printExpression(node.baseExpression, flags) +