@zzzen/pyright-internal 1.2.0-dev.20240707 → 1.2.0-dev.20240714

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 (147) hide show
  1. package/dist/analyzer/analyzerNodeInfo.js +74 -46
  2. package/dist/analyzer/analyzerNodeInfo.js.map +1 -1
  3. package/dist/analyzer/binder.js +506 -512
  4. package/dist/analyzer/binder.js.map +1 -1
  5. package/dist/analyzer/checker.js +649 -634
  6. package/dist/analyzer/checker.js.map +1 -1
  7. package/dist/analyzer/codeFlowEngine.d.ts +5 -3
  8. package/dist/analyzer/codeFlowEngine.js +87 -101
  9. package/dist/analyzer/codeFlowEngine.js.map +1 -1
  10. package/dist/analyzer/codeFlowTypes.js +30 -28
  11. package/dist/analyzer/codeFlowTypes.js.map +1 -1
  12. package/dist/analyzer/constraintSolver.js +68 -64
  13. package/dist/analyzer/constraintSolver.js.map +1 -1
  14. package/dist/analyzer/constructorTransform.js +22 -22
  15. package/dist/analyzer/constructorTransform.js.map +1 -1
  16. package/dist/analyzer/constructors.js +51 -48
  17. package/dist/analyzer/constructors.js.map +1 -1
  18. package/dist/analyzer/dataClasses.js +109 -175
  19. package/dist/analyzer/dataClasses.js.map +1 -1
  20. package/dist/analyzer/declarationUtils.js +14 -15
  21. package/dist/analyzer/declarationUtils.js.map +1 -1
  22. package/dist/analyzer/decorators.js +77 -77
  23. package/dist/analyzer/decorators.js.map +1 -1
  24. package/dist/analyzer/enums.js +70 -56
  25. package/dist/analyzer/enums.js.map +1 -1
  26. package/dist/analyzer/functionTransform.js +8 -18
  27. package/dist/analyzer/functionTransform.js.map +1 -1
  28. package/dist/analyzer/importResolver.d.ts +2 -1
  29. package/dist/analyzer/importResolver.js +40 -29
  30. package/dist/analyzer/importResolver.js.map +1 -1
  31. package/dist/analyzer/importStatementUtils.js +27 -27
  32. package/dist/analyzer/importStatementUtils.js.map +1 -1
  33. package/dist/analyzer/namedTuples.js +33 -59
  34. package/dist/analyzer/namedTuples.js.map +1 -1
  35. package/dist/analyzer/operations.js +66 -66
  36. package/dist/analyzer/operations.js.map +1 -1
  37. package/dist/analyzer/packageTypeVerifier.js +66 -62
  38. package/dist/analyzer/packageTypeVerifier.js.map +1 -1
  39. package/dist/analyzer/parameterUtils.d.ts +4 -4
  40. package/dist/analyzer/parameterUtils.js +28 -46
  41. package/dist/analyzer/parameterUtils.js.map +1 -1
  42. package/dist/analyzer/parseTreeUtils.js +268 -269
  43. package/dist/analyzer/parseTreeUtils.js.map +1 -1
  44. package/dist/analyzer/parseTreeWalker.js +76 -76
  45. package/dist/analyzer/parseTreeWalker.js.map +1 -1
  46. package/dist/analyzer/patternMatching.js +176 -143
  47. package/dist/analyzer/patternMatching.js.map +1 -1
  48. package/dist/analyzer/program.js +1 -1
  49. package/dist/analyzer/program.js.map +1 -1
  50. package/dist/analyzer/properties.js +78 -147
  51. package/dist/analyzer/properties.js.map +1 -1
  52. package/dist/analyzer/protocols.js +21 -21
  53. package/dist/analyzer/protocols.js.map +1 -1
  54. package/dist/analyzer/sourceFile.js +3 -3
  55. package/dist/analyzer/sourceFile.js.map +1 -1
  56. package/dist/analyzer/sourceMapper.js +20 -19
  57. package/dist/analyzer/sourceMapper.js.map +1 -1
  58. package/dist/analyzer/staticExpressions.js +83 -84
  59. package/dist/analyzer/staticExpressions.js.map +1 -1
  60. package/dist/analyzer/testWalker.js +2 -2
  61. package/dist/analyzer/testWalker.js.map +1 -1
  62. package/dist/analyzer/tracePrinter.js +20 -20
  63. package/dist/analyzer/tracePrinter.js.map +1 -1
  64. package/dist/analyzer/typeDocStringUtils.js +25 -25
  65. package/dist/analyzer/typeDocStringUtils.js.map +1 -1
  66. package/dist/analyzer/typeEvaluator.js +1884 -1937
  67. package/dist/analyzer/typeEvaluator.js.map +1 -1
  68. package/dist/analyzer/typeEvaluatorTypes.d.ts +6 -5
  69. package/dist/analyzer/typeEvaluatorTypes.js +4 -1
  70. package/dist/analyzer/typeEvaluatorTypes.js.map +1 -1
  71. package/dist/analyzer/typeGuards.js +211 -211
  72. package/dist/analyzer/typeGuards.js.map +1 -1
  73. package/dist/analyzer/typePrinter.js +118 -115
  74. package/dist/analyzer/typePrinter.js.map +1 -1
  75. package/dist/analyzer/typeStubWriter.js +104 -103
  76. package/dist/analyzer/typeStubWriter.js.map +1 -1
  77. package/dist/analyzer/typeUtils.d.ts +14 -3
  78. package/dist/analyzer/typeUtils.js +432 -402
  79. package/dist/analyzer/typeUtils.js.map +1 -1
  80. package/dist/analyzer/typeVarContext.js +8 -8
  81. package/dist/analyzer/typeVarContext.js.map +1 -1
  82. package/dist/analyzer/typeWalker.js +13 -10
  83. package/dist/analyzer/typeWalker.js.map +1 -1
  84. package/dist/analyzer/typedDicts.js +96 -198
  85. package/dist/analyzer/typedDicts.js.map +1 -1
  86. package/dist/analyzer/types.d.ts +144 -102
  87. package/dist/analyzer/types.js +662 -494
  88. package/dist/analyzer/types.js.map +1 -1
  89. package/dist/commands/dumpFileDebugInfoCommand.js +33 -33
  90. package/dist/commands/dumpFileDebugInfoCommand.js.map +1 -1
  91. package/dist/common/fileSystem.d.ts +1 -0
  92. package/dist/common/fileSystem.js.map +1 -1
  93. package/dist/common/fullAccessHost.js +6 -4
  94. package/dist/common/fullAccessHost.js.map +1 -1
  95. package/dist/common/realFileSystem.d.ts +1 -0
  96. package/dist/common/realFileSystem.js +4 -0
  97. package/dist/common/realFileSystem.js.map +1 -1
  98. package/dist/common/textEditTracker.js +14 -14
  99. package/dist/common/textEditTracker.js.map +1 -1
  100. package/dist/languageService/autoImporter.js +10 -10
  101. package/dist/languageService/autoImporter.js.map +1 -1
  102. package/dist/languageService/callHierarchyProvider.js +23 -23
  103. package/dist/languageService/callHierarchyProvider.js.map +1 -1
  104. package/dist/languageService/completionProvider.js +153 -151
  105. package/dist/languageService/completionProvider.js.map +1 -1
  106. package/dist/languageService/definitionProvider.d.ts +1 -1
  107. package/dist/languageService/definitionProvider.js +3 -1
  108. package/dist/languageService/definitionProvider.js.map +1 -1
  109. package/dist/languageService/documentSymbolCollector.js +19 -19
  110. package/dist/languageService/documentSymbolCollector.js.map +1 -1
  111. package/dist/languageService/hoverProvider.js +25 -24
  112. package/dist/languageService/hoverProvider.js.map +1 -1
  113. package/dist/languageService/importSorter.js +8 -8
  114. package/dist/languageService/importSorter.js.map +1 -1
  115. package/dist/languageService/referencesProvider.js +8 -8
  116. package/dist/languageService/referencesProvider.js.map +1 -1
  117. package/dist/languageService/signatureHelpProvider.d.ts +1 -1
  118. package/dist/languageService/signatureHelpProvider.js +6 -6
  119. package/dist/languageService/signatureHelpProvider.js.map +1 -1
  120. package/dist/languageService/symbolIndexer.js +3 -3
  121. package/dist/languageService/symbolIndexer.js.map +1 -1
  122. package/dist/languageService/tooltipUtils.js +13 -13
  123. package/dist/languageService/tooltipUtils.js.map +1 -1
  124. package/dist/parser/parseNodes.d.ts +468 -401
  125. package/dist/parser/parseNodes.js +626 -355
  126. package/dist/parser/parseNodes.js.map +1 -1
  127. package/dist/parser/parser.d.ts +1 -0
  128. package/dist/parser/parser.js +316 -294
  129. package/dist/parser/parser.js.map +1 -1
  130. package/dist/tests/classDeclaration.test.js +14 -14
  131. package/dist/tests/classDeclaration.test.js.map +1 -1
  132. package/dist/tests/harness/vfs/filesystem.d.ts +3 -2
  133. package/dist/tests/harness/vfs/filesystem.js +6 -2
  134. package/dist/tests/harness/vfs/filesystem.js.map +1 -1
  135. package/dist/tests/importResolver.test.js +4 -3
  136. package/dist/tests/importResolver.test.js.map +1 -1
  137. package/dist/tests/parseTreeUtils.test.js +5 -5
  138. package/dist/tests/parseTreeUtils.test.js.map +1 -1
  139. package/dist/tests/parser.test.js +8 -8
  140. package/dist/tests/parser.test.js.map +1 -1
  141. package/dist/tests/sourceMapperUtils.test.js +7 -7
  142. package/dist/tests/sourceMapperUtils.test.js.map +1 -1
  143. package/dist/tests/typeEvaluator3.test.js +8 -3
  144. package/dist/tests/typeEvaluator3.test.js.map +1 -1
  145. package/dist/tests/typePrinter.test.js +14 -39
  146. package/dist/tests/typePrinter.test.js.map +1 -1
  147. package/package.json +1 -1
@@ -25,6 +25,7 @@ class TypeWalker {
25
25
  return this._isWalkCanceled;
26
26
  }
27
27
  walk(type) {
28
+ var _a;
28
29
  if (this._recursionCount > types_1.maxTypeRecursionCount) {
29
30
  this._hitRecursionLimit = true;
30
31
  return;
@@ -33,7 +34,7 @@ class TypeWalker {
33
34
  return;
34
35
  }
35
36
  this._recursionCount++;
36
- if (type.typeAliasInfo) {
37
+ if ((_a = type.props) === null || _a === void 0 ? void 0 : _a.typeAliasInfo) {
37
38
  this.visitTypeAlias(type);
38
39
  }
39
40
  switch (type.category) {
@@ -76,9 +77,11 @@ class TypeWalker {
76
77
  this._isWalkCanceled = true;
77
78
  }
78
79
  visitTypeAlias(type) {
79
- (0, debug_1.assert)(type.typeAliasInfo);
80
- if (type.typeAliasInfo.typeArguments) {
81
- for (const typeArg of type.typeAliasInfo.typeArguments) {
80
+ var _a;
81
+ const aliasInfo = (_a = type.props) === null || _a === void 0 ? void 0 : _a.typeAliasInfo;
82
+ (0, debug_1.assert)(aliasInfo !== undefined);
83
+ if (aliasInfo.typeArguments) {
84
+ for (const typeArg of aliasInfo.typeArguments) {
82
85
  this.walk(typeArg);
83
86
  if (this._isWalkCanceled) {
84
87
  break;
@@ -100,9 +103,9 @@ class TypeWalker {
100
103
  }
101
104
  visitFunction(type) {
102
105
  var _a;
103
- for (let i = 0; i < type.details.parameters.length; i++) {
106
+ for (let i = 0; i < type.shared.parameters.length; i++) {
104
107
  // Ignore parameters such as "*" that have no name.
105
- if (type.details.parameters[i].name) {
108
+ if (type.shared.parameters[i].name) {
106
109
  const paramType = types_1.FunctionType.getEffectiveParameterType(type, i);
107
110
  this.walk(paramType);
108
111
  if (this._isWalkCanceled) {
@@ -111,14 +114,14 @@ class TypeWalker {
111
114
  }
112
115
  }
113
116
  if (!this._isWalkCanceled && !types_1.FunctionType.isParamSpecValue(type) && !types_1.FunctionType.isParamSpecValue(type)) {
114
- const returnType = (_a = type.details.declaredReturnType) !== null && _a !== void 0 ? _a : type.inferredReturnType;
117
+ const returnType = (_a = type.shared.declaredReturnType) !== null && _a !== void 0 ? _a : type.priv.inferredReturnType;
115
118
  if (returnType) {
116
119
  this.walk(returnType);
117
120
  }
118
121
  }
119
122
  }
120
123
  visitOverloadedFunction(type) {
121
- for (const overload of type.overloads) {
124
+ for (const overload of type.priv.overloads) {
122
125
  this.walk(overload);
123
126
  if (this._isWalkCanceled) {
124
127
  break;
@@ -128,7 +131,7 @@ class TypeWalker {
128
131
  visitClass(type) {
129
132
  var _a;
130
133
  if (!types_1.ClassType.isPseudoGenericClass(type)) {
131
- const typeArgs = ((_a = type.tupleTypeArguments) === null || _a === void 0 ? void 0 : _a.map((t) => t.type)) || type.typeArguments;
134
+ const typeArgs = ((_a = type.priv.tupleTypeArguments) === null || _a === void 0 ? void 0 : _a.map((t) => t.type)) || type.priv.typeArguments;
132
135
  if (typeArgs) {
133
136
  for (const argType of typeArgs) {
134
137
  this.walk(argType);
@@ -143,7 +146,7 @@ class TypeWalker {
143
146
  // Nothing to do.
144
147
  }
145
148
  visitUnion(type) {
146
- for (const subtype of type.subtypes) {
149
+ for (const subtype of type.priv.subtypes) {
147
150
  this.walk(subtype);
148
151
  if (this._isWalkCanceled) {
149
152
  break;
@@ -1 +1 @@
1
- {"version":3,"file":"typeWalker.js","sourceRoot":"","sources":["../../../../../src/analyzer/typeWalker.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"typeWalker.js","sourceRoot":"","sources":["../../../../../src/analyzer/typeWalker.ts"],"names":[],"mappings":"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"}