@zzzen/pyright-internal 1.2.0-dev.20240721 → 1.2.0-dev.20240728

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 (211) hide show
  1. package/dist/analyzer/analyzerNodeInfo.js +2 -2
  2. package/dist/analyzer/analyzerNodeInfo.js.map +1 -1
  3. package/dist/analyzer/binder.js +8 -8
  4. package/dist/analyzer/binder.js.map +1 -1
  5. package/dist/analyzer/cacheManager.js +3 -0
  6. package/dist/analyzer/cacheManager.js.map +1 -1
  7. package/dist/analyzer/checker.d.ts +3 -2
  8. package/dist/analyzer/checker.js +115 -122
  9. package/dist/analyzer/checker.js.map +1 -1
  10. package/dist/analyzer/codeFlowEngine.d.ts +2 -2
  11. package/dist/analyzer/codeFlowEngine.js +49 -42
  12. package/dist/analyzer/codeFlowEngine.js.map +1 -1
  13. package/dist/analyzer/codeFlowTypes.js +1 -1
  14. package/dist/analyzer/codeFlowTypes.js.map +1 -1
  15. package/dist/analyzer/constraintSolver.d.ts +2 -2
  16. package/dist/analyzer/constraintSolver.js +164 -204
  17. package/dist/analyzer/constraintSolver.js.map +1 -1
  18. package/dist/analyzer/constructorTransform.d.ts +2 -2
  19. package/dist/analyzer/constructorTransform.js +15 -15
  20. package/dist/analyzer/constructorTransform.js.map +1 -1
  21. package/dist/analyzer/constructors.d.ts +2 -2
  22. package/dist/analyzer/constructors.js +28 -33
  23. package/dist/analyzer/constructors.js.map +1 -1
  24. package/dist/analyzer/dataClasses.d.ts +2 -2
  25. package/dist/analyzer/dataClasses.js +59 -36
  26. package/dist/analyzer/dataClasses.js.map +1 -1
  27. package/dist/analyzer/declaration.d.ts +9 -9
  28. package/dist/analyzer/declaration.js +9 -9
  29. package/dist/analyzer/declaration.js.map +1 -1
  30. package/dist/analyzer/declarationUtils.d.ts +1 -1
  31. package/dist/analyzer/declarationUtils.js +6 -6
  32. package/dist/analyzer/declarationUtils.js.map +1 -1
  33. package/dist/analyzer/decorators.js +4 -4
  34. package/dist/analyzer/decorators.js.map +1 -1
  35. package/dist/analyzer/docStringConversion.js +2 -2
  36. package/dist/analyzer/docStringConversion.js.map +1 -1
  37. package/dist/analyzer/enums.d.ts +2 -2
  38. package/dist/analyzer/enums.js +6 -6
  39. package/dist/analyzer/enums.js.map +1 -1
  40. package/dist/analyzer/functionTransform.d.ts +2 -2
  41. package/dist/analyzer/functionTransform.js +4 -4
  42. package/dist/analyzer/functionTransform.js.map +1 -1
  43. package/dist/analyzer/importResolver.js +5 -3
  44. package/dist/analyzer/importResolver.js.map +1 -1
  45. package/dist/analyzer/namedTuples.d.ts +3 -3
  46. package/dist/analyzer/namedTuples.js +21 -22
  47. package/dist/analyzer/namedTuples.js.map +1 -1
  48. package/dist/analyzer/operations.js +10 -10
  49. package/dist/analyzer/operations.js.map +1 -1
  50. package/dist/analyzer/packageTypeVerifier.js +8 -8
  51. package/dist/analyzer/packageTypeVerifier.js.map +1 -1
  52. package/dist/analyzer/parameterUtils.d.ts +10 -10
  53. package/dist/analyzer/parameterUtils.js +58 -58
  54. package/dist/analyzer/parameterUtils.js.map +1 -1
  55. package/dist/analyzer/parseTreeUtils.d.ts +6 -6
  56. package/dist/analyzer/parseTreeUtils.js +22 -22
  57. package/dist/analyzer/parseTreeUtils.js.map +1 -1
  58. package/dist/analyzer/patternMatching.js +108 -89
  59. package/dist/analyzer/patternMatching.js.map +1 -1
  60. package/dist/analyzer/program.js +11 -4
  61. package/dist/analyzer/program.js.map +1 -1
  62. package/dist/analyzer/properties.js +19 -19
  63. package/dist/analyzer/properties.js.map +1 -1
  64. package/dist/analyzer/protocols.js +14 -15
  65. package/dist/analyzer/protocols.js.map +1 -1
  66. package/dist/analyzer/pythonPathUtils.js +1 -1
  67. package/dist/analyzer/pythonPathUtils.js.map +1 -1
  68. package/dist/analyzer/service.d.ts +3 -7
  69. package/dist/analyzer/service.js +28 -30
  70. package/dist/analyzer/service.js.map +1 -1
  71. package/dist/analyzer/serviceUtils.d.ts +8 -0
  72. package/dist/analyzer/serviceUtils.js +31 -0
  73. package/dist/analyzer/serviceUtils.js.map +1 -0
  74. package/dist/analyzer/sourceFile.js +5 -19
  75. package/dist/analyzer/sourceFile.js.map +1 -1
  76. package/dist/analyzer/sourceMapper.d.ts +1 -1
  77. package/dist/analyzer/sourceMapper.js +4 -4
  78. package/dist/analyzer/sourceMapper.js.map +1 -1
  79. package/dist/analyzer/staticExpressions.js +1 -1
  80. package/dist/analyzer/staticExpressions.js.map +1 -1
  81. package/dist/analyzer/tracePrinter.js +4 -4
  82. package/dist/analyzer/tracePrinter.js.map +1 -1
  83. package/dist/analyzer/tuples.d.ts +9 -0
  84. package/dist/analyzer/tuples.js +252 -0
  85. package/dist/analyzer/tuples.js.map +1 -0
  86. package/dist/analyzer/typeComplexity.d.ts +2 -0
  87. package/dist/analyzer/typeComplexity.js +86 -0
  88. package/dist/analyzer/typeComplexity.js.map +1 -0
  89. package/dist/analyzer/typeEvaluator.js +1062 -1311
  90. package/dist/analyzer/typeEvaluator.js.map +1 -1
  91. package/dist/analyzer/typeEvaluatorTypes.d.ts +44 -40
  92. package/dist/analyzer/typeEvaluatorTypes.js +7 -1
  93. package/dist/analyzer/typeEvaluatorTypes.js.map +1 -1
  94. package/dist/analyzer/typeGuards.js +114 -85
  95. package/dist/analyzer/typeGuards.js.map +1 -1
  96. package/dist/analyzer/typePrinter.d.ts +1 -1
  97. package/dist/analyzer/typePrinter.js +54 -53
  98. package/dist/analyzer/typePrinter.js.map +1 -1
  99. package/dist/analyzer/typeStubWriter.d.ts +3 -3
  100. package/dist/analyzer/typeStubWriter.js +15 -15
  101. package/dist/analyzer/typeStubWriter.js.map +1 -1
  102. package/dist/analyzer/typeUtils.d.ts +20 -18
  103. package/dist/analyzer/typeUtils.js +316 -321
  104. package/dist/analyzer/typeUtils.js.map +1 -1
  105. package/dist/analyzer/typeVarContext.d.ts +24 -36
  106. package/dist/analyzer/typeVarContext.js +89 -193
  107. package/dist/analyzer/typeVarContext.js.map +1 -1
  108. package/dist/analyzer/typeWalker.js +4 -4
  109. package/dist/analyzer/typeWalker.js.map +1 -1
  110. package/dist/analyzer/typedDicts.d.ts +2 -2
  111. package/dist/analyzer/typedDicts.js +48 -52
  112. package/dist/analyzer/typedDicts.js.map +1 -1
  113. package/dist/analyzer/types.d.ts +79 -57
  114. package/dist/analyzer/types.js +125 -113
  115. package/dist/analyzer/types.js.map +1 -1
  116. package/dist/commands/dumpFileDebugInfoCommand.js +11 -11
  117. package/dist/commands/dumpFileDebugInfoCommand.js.map +1 -1
  118. package/dist/common/configOptions.d.ts +1 -0
  119. package/dist/common/configOptions.js +5 -0
  120. package/dist/common/configOptions.js.map +1 -1
  121. package/dist/common/diagnosticRules.d.ts +1 -0
  122. package/dist/common/diagnosticRules.js +1 -0
  123. package/dist/common/diagnosticRules.js.map +1 -1
  124. package/dist/common/fileSystem.d.ts +0 -1
  125. package/dist/common/fileSystem.js.map +1 -1
  126. package/dist/common/languageServerInterface.d.ts +13 -0
  127. package/dist/common/languageServerInterface.js +15 -1
  128. package/dist/common/languageServerInterface.js.map +1 -1
  129. package/dist/common/lspUtils.js +2 -2
  130. package/dist/common/memUtils.d.ts +4 -0
  131. package/dist/common/memUtils.js +33 -2
  132. package/dist/common/memUtils.js.map +1 -1
  133. package/dist/common/serviceKeys.d.ts +3 -0
  134. package/dist/common/serviceKeys.js +2 -0
  135. package/dist/common/serviceKeys.js.map +1 -1
  136. package/dist/common/serviceProviderExtensions.js +7 -0
  137. package/dist/common/serviceProviderExtensions.js.map +1 -1
  138. package/dist/languageServerBase.d.ts +4 -3
  139. package/dist/languageServerBase.js +14 -10
  140. package/dist/languageServerBase.js.map +1 -1
  141. package/dist/languageService/autoImporter.d.ts +3 -2
  142. package/dist/languageService/autoImporter.js +5 -1
  143. package/dist/languageService/autoImporter.js.map +1 -1
  144. package/dist/languageService/completionProvider.d.ts +5 -3
  145. package/dist/languageService/completionProvider.js +38 -37
  146. package/dist/languageService/completionProvider.js.map +1 -1
  147. package/dist/languageService/completionProviderUtils.d.ts +1 -1
  148. package/dist/languageService/completionProviderUtils.js +3 -3
  149. package/dist/languageService/completionProviderUtils.js.map +1 -1
  150. package/dist/languageService/fileWatcherDynamicFeature.js +2 -2
  151. package/dist/languageService/fileWatcherDynamicFeature.js.map +1 -1
  152. package/dist/languageService/hoverProvider.js +3 -3
  153. package/dist/languageService/hoverProvider.js.map +1 -1
  154. package/dist/languageService/referencesProvider.js +2 -2
  155. package/dist/languageService/signatureHelpProvider.js +1 -1
  156. package/dist/languageService/signatureHelpProvider.js.map +1 -1
  157. package/dist/languageService/tooltipUtils.js +3 -3
  158. package/dist/languageService/tooltipUtils.js.map +1 -1
  159. package/dist/localization/localize.d.ts +5 -0
  160. package/dist/localization/localize.js +6 -0
  161. package/dist/localization/localize.js.map +1 -1
  162. package/dist/localization/package.nls.cs.json +5 -1
  163. package/dist/localization/package.nls.de.json +5 -1
  164. package/dist/localization/package.nls.en-us.json +5 -0
  165. package/dist/localization/package.nls.es.json +5 -1
  166. package/dist/localization/package.nls.fr.json +5 -1
  167. package/dist/localization/package.nls.it.json +5 -1
  168. package/dist/localization/package.nls.ja.json +5 -1
  169. package/dist/localization/package.nls.ko.json +5 -1
  170. package/dist/localization/package.nls.pl.json +5 -1
  171. package/dist/localization/package.nls.pt-br.json +5 -1
  172. package/dist/localization/package.nls.qps-ploc.json +5 -1
  173. package/dist/localization/package.nls.ru.json +5 -1
  174. package/dist/localization/package.nls.tr.json +5 -1
  175. package/dist/localization/package.nls.zh-cn.json +5 -1
  176. package/dist/localization/package.nls.zh-tw.json +5 -1
  177. package/dist/parser/parseNodes.d.ts +9 -9
  178. package/dist/parser/parseNodes.js +20 -20
  179. package/dist/parser/parseNodes.js.map +1 -1
  180. package/dist/parser/parser.js +30 -30
  181. package/dist/parser/parser.js.map +1 -1
  182. package/dist/tests/checker.test.js +2 -2
  183. package/dist/tests/fourslash/signature.builtinDocstrings.fourslash.js +4 -21
  184. package/dist/tests/fourslash/signature.builtinDocstrings.fourslash.js.map +1 -1
  185. package/dist/tests/fourslash/signature.complicated.fourslash.js +1 -1
  186. package/dist/tests/fourslash/signature.complicated.fourslash.js.map +1 -1
  187. package/dist/tests/harness/fourslash/fourSlashParser.js +1 -1
  188. package/dist/tests/harness/fourslash/fourSlashParser.js.map +1 -1
  189. package/dist/tests/harness/fourslash/testStateUtils.js +2 -2
  190. package/dist/tests/harness/fourslash/testStateUtils.js.map +1 -1
  191. package/dist/tests/harness/vfs/filesystem.d.ts +0 -1
  192. package/dist/tests/harness/vfs/filesystem.js +0 -4
  193. package/dist/tests/harness/vfs/filesystem.js.map +1 -1
  194. package/dist/tests/importResolver.test.js +62 -15
  195. package/dist/tests/importResolver.test.js.map +1 -1
  196. package/dist/tests/lsp/languageServerTestUtils.js +1 -1
  197. package/dist/tests/lsp/languageServerTestUtils.js.map +1 -1
  198. package/dist/tests/typeEvaluator3.test.js +1 -1
  199. package/dist/tests/typeEvaluator4.test.js +9 -1
  200. package/dist/tests/typeEvaluator4.test.js.map +1 -1
  201. package/dist/tests/typeEvaluator5.test.js +8 -2
  202. package/dist/tests/typeEvaluator5.test.js.map +1 -1
  203. package/dist/tests/typeEvaluator6.test.js +72 -60
  204. package/dist/tests/typeEvaluator6.test.js.map +1 -1
  205. package/dist/tests/typeEvaluator7.test.js +2 -2
  206. package/dist/tests/typePrinter.test.js +13 -18
  207. package/dist/tests/typePrinter.test.js.map +1 -1
  208. package/dist/workspaceFactory.d.ts +3 -2
  209. package/dist/workspaceFactory.js +15 -2
  210. package/dist/workspaceFactory.js.map +1 -1
  211. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"constructors.js","sourceRoot":"","sources":["../../../../../src/analyzer/constructors.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"constructors.js","sourceRoot":"","sources":["../../../../../src/analyzer/constructors.ts"],"names":[],"mappings":"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"}
@@ -1,9 +1,9 @@
1
1
  import { CallNode, ClassNode, ParseNode } from '../parser/parseNodes';
2
- import { FunctionArgument, TypeEvaluator } from './typeEvaluatorTypes';
2
+ import { Arg, TypeEvaluator } from './typeEvaluatorTypes';
3
3
  import { ClassType, DataClassBehaviors, DataClassEntry, Type } from './types';
4
4
  export declare function synthesizeDataClassMethods(evaluator: TypeEvaluator, node: ClassNode, classType: ClassType, isNamedTuple: boolean, skipSynthesizeInit: boolean, hasExistingInitMethod: boolean, skipSynthesizeHash: boolean): void;
5
5
  export declare function addInheritedDataClassEntries(classType: ClassType, entries: DataClassEntry[]): boolean;
6
6
  export declare function validateDataClassTransformDecorator(evaluator: TypeEvaluator, node: CallNode): DataClassBehaviors | undefined;
7
7
  export declare function getDataclassDecoratorBehaviors(type: Type): DataClassBehaviors | undefined;
8
- export declare function applyDataClassClassBehaviorOverrides(evaluator: TypeEvaluator, errorNode: ParseNode, classType: ClassType, args: FunctionArgument[], defaultBehaviors: DataClassBehaviors): void;
8
+ export declare function applyDataClassClassBehaviorOverrides(evaluator: TypeEvaluator, errorNode: ParseNode, classType: ClassType, args: Arg[], defaultBehaviors: DataClassBehaviors): void;
9
9
  export declare function applyDataClassDecorator(evaluator: TypeEvaluator, errorNode: ParseNode, classType: ClassType, defaultBehaviors: DataClassBehaviors, callNode: CallNode | undefined): void;
@@ -36,6 +36,7 @@ exports.applyDataClassDecorator = exports.applyDataClassClassBehaviorOverrides =
36
36
  const debug_1 = require("../common/debug");
37
37
  const diagnostic_1 = require("../common/diagnostic");
38
38
  const diagnosticRules_1 = require("../common/diagnosticRules");
39
+ const pythonVersion_1 = require("../common/pythonVersion");
39
40
  const localize_1 = require("../localization/localize");
40
41
  const AnalyzerNodeInfo = __importStar(require("./analyzerNodeInfo"));
41
42
  const analyzerNodeInfo_1 = require("./analyzerNodeInfo");
@@ -63,17 +64,28 @@ function synthesizeDataClassMethods(evaluator, node, classType, isNamedTuple, sk
63
64
  // __new__ method are based on field definitions for NamedTuple classes,
64
65
  // and the parameters of the __init__ method are based on field definitions
65
66
  // in other cases.
66
- types_1.FunctionType.addParameter(newType, types_1.FunctionParam.create(0 /* ParameterCategory.Simple */, classTypeVar, types_1.FunctionParamFlags.TypeDeclared, 'cls'));
67
+ types_1.FunctionType.addParam(newType, types_1.FunctionParam.create(0 /* ParamCategory.Simple */, classTypeVar, types_1.FunctionParamFlags.TypeDeclared, 'cls'));
67
68
  if (!isNamedTuple) {
68
- types_1.FunctionType.addDefaultParameters(newType);
69
+ types_1.FunctionType.addDefaultParams(newType);
70
+ newType.shared.flags |= 32768 /* FunctionTypeFlags.GradualCallableForm */;
69
71
  }
70
72
  newType.shared.declaredReturnType = (0, typeUtils_1.convertToInstance)(classTypeVar);
71
- const selfParam = types_1.FunctionParam.create(0 /* ParameterCategory.Simple */, (0, typeUtils_1.synthesizeTypeVarForSelfCls)(classType, /* isClsParam */ false), types_1.FunctionParamFlags.TypeDeclared, 'self');
72
- types_1.FunctionType.addParameter(initType, selfParam);
73
+ const selfType = (0, typeUtils_1.synthesizeTypeVarForSelfCls)(classType, /* isClsParam */ false);
74
+ const selfParam = types_1.FunctionParam.create(0 /* ParamCategory.Simple */, selfType, types_1.FunctionParamFlags.TypeDeclared, 'self');
75
+ types_1.FunctionType.addParam(initType, selfParam);
73
76
  if (isNamedTuple) {
74
- types_1.FunctionType.addDefaultParameters(initType);
77
+ types_1.FunctionType.addDefaultParams(initType);
78
+ initType.shared.flags |= 32768 /* FunctionTypeFlags.GradualCallableForm */;
75
79
  }
76
80
  initType.shared.declaredReturnType = evaluator.getNoneType();
81
+ // For Python 3.13 and newer, synthesize a __replace__ method.
82
+ let replaceType;
83
+ if (AnalyzerNodeInfo.getFileInfo(node).executionEnvironment.pythonVersion >= pythonVersion_1.pythonVersion3_13) {
84
+ replaceType = types_1.FunctionType.createSynthesizedInstance('__replace__');
85
+ types_1.FunctionType.addParam(replaceType, selfParam);
86
+ types_1.FunctionType.addKeywordOnlyParamSeparator(replaceType);
87
+ replaceType.shared.declaredReturnType = selfType;
88
+ }
77
89
  // Maintain a list of all dataclass entries (including
78
90
  // those from inherited classes) plus a list of only those
79
91
  // entries added by this class.
@@ -84,7 +96,10 @@ function synthesizeDataClassMethods(evaluator, node, classType, isNamedTuple, sk
84
96
  // If one or more ancestor classes have an unknown type, we cannot
85
97
  // safely determine the parameter list, so we'll accept any parameters
86
98
  // to avoid a false positive.
87
- types_1.FunctionType.addDefaultParameters(initType);
99
+ types_1.FunctionType.addDefaultParams(initType);
100
+ if (replaceType) {
101
+ types_1.FunctionType.addDefaultParams(replaceType);
102
+ }
88
103
  }
89
104
  // Add field-based parameters to either the __new__ or __init__ method
90
105
  // based on whether this is a NamedTuple or a dataclass.
@@ -142,7 +157,7 @@ function synthesizeDataClassMethods(evaluator, node, classType, isNamedTuple, sk
142
157
  variableNameNode = statement.d.leftExpr.d.valueExpr;
143
158
  const assignmentStatement = statement;
144
159
  variableTypeEvaluator = () => evaluator.getTypeOfAnnotation(assignmentStatement.d.leftExpr.d.annotation, {
145
- isVariableAnnotation: true,
160
+ varTypeAnnotation: true,
146
161
  allowFinal: true,
147
162
  allowClassVar: true,
148
163
  });
@@ -203,7 +218,7 @@ function synthesizeDataClassMethods(evaluator, node, classType, isNamedTuple, sk
203
218
  variableNameNode = statement.d.valueExpr;
204
219
  const annotationStatement = statement;
205
220
  variableTypeEvaluator = () => evaluator.getTypeOfAnnotation(annotationStatement.d.annotation, {
206
- isVariableAnnotation: true,
221
+ varTypeAnnotation: true,
207
222
  allowFinal: true,
208
223
  allowClassVar: true,
209
224
  });
@@ -364,24 +379,34 @@ function synthesizeDataClassMethods(evaluator, node, classType, isNamedTuple, sk
364
379
  if (!entry.alias && entry.nameNode && (0, symbolNameUtils_1.isPrivateName)(entry.nameNode.d.value)) {
365
380
  evaluator.addDiagnostic(diagnosticRules_1.DiagnosticRule.reportGeneralTypeIssues, localize_1.LocMessage.dataClassFieldWithPrivateName(), entry.nameNode);
366
381
  }
367
- const functionParam = types_1.FunctionParam.create(0 /* ParameterCategory.Simple */, effectiveType, types_1.FunctionParamFlags.TypeDeclared, effectiveName, entry.hasDefault ? entry.type : undefined);
382
+ const functionParam = types_1.FunctionParam.create(0 /* ParamCategory.Simple */, effectiveType, types_1.FunctionParamFlags.TypeDeclared, effectiveName, entry.hasDefault ? entry.type : undefined);
368
383
  if (entry.isKeywordOnly) {
369
384
  keywordOnlyParams.push(functionParam);
370
385
  }
371
386
  else {
372
- types_1.FunctionType.addParameter(constructorType, functionParam);
387
+ types_1.FunctionType.addParam(constructorType, functionParam);
388
+ }
389
+ if (replaceType) {
390
+ const paramWithDefault = {
391
+ ...functionParam,
392
+ defaultType: types_1.AnyType.create(/* isEllipsis */ true),
393
+ };
394
+ types_1.FunctionType.addParam(replaceType, paramWithDefault);
373
395
  }
374
396
  }
375
397
  });
376
398
  if (keywordOnlyParams.length > 0) {
377
- types_1.FunctionType.addKeywordOnlyParameterSeparator(constructorType);
399
+ types_1.FunctionType.addKeywordOnlyParamSeparator(constructorType);
378
400
  keywordOnlyParams.forEach((param) => {
379
- types_1.FunctionType.addParameter(constructorType, param);
401
+ types_1.FunctionType.addParam(constructorType, param);
380
402
  });
381
403
  }
382
404
  }
383
405
  symbolTable.set('__init__', symbol_1.Symbol.createWithType(4 /* SymbolFlags.ClassMember */, initType));
384
406
  symbolTable.set('__new__', symbol_1.Symbol.createWithType(4 /* SymbolFlags.ClassMember */, newType));
407
+ if (replaceType) {
408
+ symbolTable.set('__replace__', symbol_1.Symbol.createWithType(4 /* SymbolFlags.ClassMember */, replaceType));
409
+ }
385
410
  }
386
411
  // Synthesize the __match_args__ class variable if it doesn't exist.
387
412
  const strType = evaluator.getBuiltInType(node, 'str');
@@ -406,8 +431,8 @@ function synthesizeDataClassMethods(evaluator, node, classType, isNamedTuple, sk
406
431
  }
407
432
  const synthesizeComparisonMethod = (operator, paramType) => {
408
433
  const operatorMethod = types_1.FunctionType.createSynthesizedInstance(operator);
409
- types_1.FunctionType.addParameter(operatorMethod, selfParam);
410
- types_1.FunctionType.addParameter(operatorMethod, types_1.FunctionParam.create(0 /* ParameterCategory.Simple */, paramType, types_1.FunctionParamFlags.TypeDeclared, 'other'));
434
+ types_1.FunctionType.addParam(operatorMethod, selfParam);
435
+ types_1.FunctionType.addParam(operatorMethod, types_1.FunctionParam.create(0 /* ParamCategory.Simple */, paramType, types_1.FunctionParamFlags.TypeDeclared, 'other'));
411
436
  operatorMethod.shared.declaredReturnType = evaluator.getBuiltInObject(node, 'bool');
412
437
  // If a method of this name already exists, don't override it.
413
438
  if (!symbolTable.get(operator)) {
@@ -436,7 +461,7 @@ function synthesizeDataClassMethods(evaluator, node, classType, isNamedTuple, sk
436
461
  }
437
462
  if (synthesizeHashFunction) {
438
463
  const hashMethod = types_1.FunctionType.createSynthesizedInstance('__hash__');
439
- types_1.FunctionType.addParameter(hashMethod, selfParam);
464
+ types_1.FunctionType.addParam(hashMethod, selfParam);
440
465
  hashMethod.shared.declaredReturnType = evaluator.getBuiltInObject(node, 'int');
441
466
  symbolTable.set('__hash__', symbol_1.Symbol.createWithType(4 /* SymbolFlags.ClassMember */ | 4096 /* SymbolFlags.IgnoredForOverrideChecks */, hashMethod));
442
467
  }
@@ -445,8 +470,7 @@ function synthesizeDataClassMethods(evaluator, node, classType, isNamedTuple, sk
445
470
  }
446
471
  let dictType = evaluator.getBuiltInType(node, 'dict');
447
472
  if ((0, types_1.isInstantiableClass)(dictType)) {
448
- dictType = types_1.ClassType.cloneAsInstance(types_1.ClassType.cloneForSpecialization(dictType, [evaluator.getBuiltInObject(node, 'str'), types_1.AnyType.create()],
449
- /* isTypeArgumentExplicit */ true));
473
+ dictType = types_1.ClassType.cloneAsInstance(types_1.ClassType.specialize(dictType, [evaluator.getBuiltInObject(node, 'str'), types_1.AnyType.create()]));
450
474
  }
451
475
  if (!isNamedTuple) {
452
476
  symbolTable.set('__dataclass_fields__', symbol_1.Symbol.createWithType(4 /* SymbolFlags.ClassMember */ | 128 /* SymbolFlags.ClassVar */, dictType));
@@ -458,15 +482,14 @@ function synthesizeDataClassMethods(evaluator, node, classType, isNamedTuple, sk
458
482
  if (types_1.ClassType.isDataClassGenerateSlots(classType)) {
459
483
  let iterableType = (_a = evaluator.getTypingType(node, 'Iterable')) !== null && _a !== void 0 ? _a : types_1.UnknownType.create();
460
484
  if ((0, types_1.isInstantiableClass)(iterableType)) {
461
- iterableType = types_1.ClassType.cloneAsInstance(types_1.ClassType.cloneForSpecialization(iterableType, [evaluator.getBuiltInObject(node, 'str')],
462
- /* isTypeArgumentExplicit */ true));
485
+ iterableType = types_1.ClassType.cloneAsInstance(types_1.ClassType.specialize(iterableType, [evaluator.getBuiltInObject(node, 'str')]));
463
486
  }
464
487
  symbolTable.set('__slots__', symbol_1.Symbol.createWithType(4 /* SymbolFlags.ClassMember */ | 128 /* SymbolFlags.ClassVar */, iterableType));
465
488
  }
466
489
  // If this dataclass derived from a NamedTuple, update the NamedTuple with
467
490
  // the specialized entry types.
468
491
  if ((0, namedTuples_1.updateNamedTupleBaseClass)(classType, fullDataClassEntries.map((entry) => entry.type),
469
- /* isTypeArgumentExplicit */ true)) {
492
+ /* isTypeArgExplicit */ true)) {
470
493
  // Recompute the MRO based on the updated NamedTuple base class.
471
494
  (0, typeUtils_1.computeMroLinearization)(classType);
472
495
  }
@@ -483,7 +506,7 @@ function getDefaultArgValueForFieldSpecifier(evaluator, callNode, callTypeResult
483
506
  callTarget = callType;
484
507
  }
485
508
  else if ((0, types_1.isOverloadedFunction)(callType)) {
486
- callTarget = evaluator.getBestOverloadForArguments(callNode, { type: callType, isIncomplete: callTypeResult.isIncomplete }, callNode.d.args.map((arg) => (0, typeUtils_1.convertArgumentNodeToFunctionArgument)(arg)));
509
+ callTarget = evaluator.getBestOverloadForArgs(callNode, { type: callType, isIncomplete: callTypeResult.isIncomplete }, callNode.d.args.map((arg) => (0, typeUtils_1.convertNodeToArg)(arg)));
487
510
  }
488
511
  else if ((0, types_1.isInstantiableClass)(callType)) {
489
512
  const initMethodResult = (0, constructors_1.getBoundInitMethod)(evaluator, callNode, callType);
@@ -492,7 +515,7 @@ function getDefaultArgValueForFieldSpecifier(evaluator, callNode, callTypeResult
492
515
  callTarget = initMethodResult.type;
493
516
  }
494
517
  else if ((0, types_1.isOverloadedFunction)(initMethodResult.type)) {
495
- callTarget = evaluator.getBestOverloadForArguments(callNode, { type: initMethodResult.type }, callNode.d.args.map((arg) => (0, typeUtils_1.convertArgumentNodeToFunctionArgument)(arg)));
518
+ callTarget = evaluator.getBestOverloadForArgs(callNode, { type: initMethodResult.type }, callNode.d.args.map((arg) => (0, typeUtils_1.convertNodeToArg)(arg)));
496
519
  }
497
520
  }
498
521
  }
@@ -530,8 +553,8 @@ function getConverterInputType(evaluator, converterNode, fieldType, fieldName) {
530
553
  const targetFunction = types_1.FunctionType.createSynthesizedInstance('');
531
554
  targetFunction.shared.typeVarScopeId = typeVar.priv.scopeId;
532
555
  targetFunction.shared.declaredReturnType = fieldType;
533
- types_1.FunctionType.addParameter(targetFunction, types_1.FunctionParam.create(0 /* ParameterCategory.Simple */, typeVar, types_1.FunctionParamFlags.TypeDeclared | types_1.FunctionParamFlags.NameSynthesized, '__input'));
534
- types_1.FunctionType.addPositionOnlyParameterSeparator(targetFunction);
556
+ types_1.FunctionType.addParam(targetFunction, types_1.FunctionParam.create(0 /* ParamCategory.Simple */, typeVar, types_1.FunctionParamFlags.TypeDeclared | types_1.FunctionParamFlags.NameSynthesized, '__input'));
557
+ types_1.FunctionType.addPositionOnlyParamSeparator(targetFunction);
535
558
  if ((0, types_1.isFunction)(converterType) || (0, types_1.isOverloadedFunction)(converterType)) {
536
559
  const acceptedTypes = [];
537
560
  const diagAddendum = new diagnostic_1.DiagnosticAddendum();
@@ -610,16 +633,16 @@ function getDescriptorForConverterField(evaluator, dataclassNode, converterNode,
610
633
  const fields = types_1.ClassType.getSymbolTable(descriptorClass);
611
634
  const selfType = (0, typeUtils_1.synthesizeTypeVarForSelfCls)(descriptorClass, /* isClsParam */ false);
612
635
  const setFunction = types_1.FunctionType.createSynthesizedInstance('__set__');
613
- types_1.FunctionType.addParameter(setFunction, types_1.FunctionParam.create(0 /* ParameterCategory.Simple */, selfType, types_1.FunctionParamFlags.TypeDeclared, 'self'));
614
- types_1.FunctionType.addParameter(setFunction, types_1.FunctionParam.create(0 /* ParameterCategory.Simple */, types_1.AnyType.create(), types_1.FunctionParamFlags.TypeDeclared, 'obj'));
615
- types_1.FunctionType.addParameter(setFunction, types_1.FunctionParam.create(0 /* ParameterCategory.Simple */, setType, types_1.FunctionParamFlags.TypeDeclared, 'value'));
636
+ types_1.FunctionType.addParam(setFunction, types_1.FunctionParam.create(0 /* ParamCategory.Simple */, selfType, types_1.FunctionParamFlags.TypeDeclared, 'self'));
637
+ types_1.FunctionType.addParam(setFunction, types_1.FunctionParam.create(0 /* ParamCategory.Simple */, types_1.AnyType.create(), types_1.FunctionParamFlags.TypeDeclared, 'obj'));
638
+ types_1.FunctionType.addParam(setFunction, types_1.FunctionParam.create(0 /* ParamCategory.Simple */, setType, types_1.FunctionParamFlags.TypeDeclared, 'value'));
616
639
  setFunction.shared.declaredReturnType = evaluator.getNoneType();
617
640
  const setSymbol = symbol_1.Symbol.createWithType(4 /* SymbolFlags.ClassMember */, setFunction);
618
641
  fields.set('__set__', setSymbol);
619
642
  const getFunction = types_1.FunctionType.createSynthesizedInstance('__get__');
620
- types_1.FunctionType.addParameter(getFunction, types_1.FunctionParam.create(0 /* ParameterCategory.Simple */, selfType, types_1.FunctionParamFlags.TypeDeclared, 'self'));
621
- types_1.FunctionType.addParameter(getFunction, types_1.FunctionParam.create(0 /* ParameterCategory.Simple */, types_1.AnyType.create(), types_1.FunctionParamFlags.TypeDeclared, 'obj'));
622
- types_1.FunctionType.addParameter(getFunction, types_1.FunctionParam.create(0 /* ParameterCategory.Simple */, types_1.AnyType.create(), types_1.FunctionParamFlags.TypeDeclared, 'objtype'));
643
+ types_1.FunctionType.addParam(getFunction, types_1.FunctionParam.create(0 /* ParamCategory.Simple */, selfType, types_1.FunctionParamFlags.TypeDeclared, 'self'));
644
+ types_1.FunctionType.addParam(getFunction, types_1.FunctionParam.create(0 /* ParamCategory.Simple */, types_1.AnyType.create(), types_1.FunctionParamFlags.TypeDeclared, 'obj'));
645
+ types_1.FunctionType.addParam(getFunction, types_1.FunctionParam.create(0 /* ParamCategory.Simple */, types_1.AnyType.create(), types_1.FunctionParamFlags.TypeDeclared, 'objtype'));
623
646
  getFunction.shared.declaredReturnType = getType;
624
647
  const getSymbol = symbol_1.Symbol.createWithType(4 /* SymbolFlags.ClassMember */, getFunction);
625
648
  fields.set('__get__', getSymbol);
@@ -640,7 +663,7 @@ function transformDescriptorType(evaluator, type) {
640
663
  return type;
641
664
  }
642
665
  // The value parameter for a bound __set__ method is parameter index 1.
643
- return types_1.FunctionType.getEffectiveParameterType(setMethodType, 1);
666
+ return types_1.FunctionType.getEffectiveParamType(setMethodType, 1);
644
667
  }
645
668
  // Builds a sorted list of dataclass entries that are inherited by
646
669
  // the specified class. These entries must be unique and in reverse-MRO
@@ -713,7 +736,7 @@ function validateDataClassTransformDecorator(evaluator, node) {
713
736
  const fileInfo = AnalyzerNodeInfo.getFileInfo(node);
714
737
  // Parse the arguments to the call.
715
738
  node.d.args.forEach((arg) => {
716
- if (!arg.d.name || arg.d.argCategory !== 0 /* ArgumentCategory.Simple */) {
739
+ if (!arg.d.name || arg.d.argCategory !== 0 /* ArgCategory.Simple */) {
717
740
  evaluator.addDiagnostic(diagnosticRules_1.DiagnosticRule.reportCallIssue, localize_1.LocMessage.dataClassTransformPositionalParam(), arg);
718
741
  return;
719
742
  }
@@ -767,8 +790,8 @@ function validateDataClassTransformDecorator(evaluator, node) {
767
790
  const valueType = evaluator.getTypeOfExpression(arg.d.valueExpr).type;
768
791
  if (!(0, types_1.isClassInstance)(valueType) ||
769
792
  !types_1.ClassType.isBuiltIn(valueType, 'tuple') ||
770
- !valueType.priv.tupleTypeArguments ||
771
- valueType.priv.tupleTypeArguments.some((entry) => !(0, types_1.isInstantiableClass)(entry.type) &&
793
+ !valueType.priv.tupleTypeArgs ||
794
+ valueType.priv.tupleTypeArgs.some((entry) => !(0, types_1.isInstantiableClass)(entry.type) &&
772
795
  !(0, types_1.isFunction)(entry.type) &&
773
796
  !(0, types_1.isOverloadedFunction)(entry.type))) {
774
797
  evaluator.addDiagnostic(diagnosticRules_1.DiagnosticRule.reportGeneralTypeIssues, localize_1.LocMessage.dataClassTransformFieldSpecifier().format({
@@ -776,7 +799,7 @@ function validateDataClassTransformDecorator(evaluator, node) {
776
799
  }), arg.d.valueExpr);
777
800
  return;
778
801
  }
779
- valueType.priv.tupleTypeArguments.forEach((arg) => {
802
+ valueType.priv.tupleTypeArgs.forEach((arg) => {
780
803
  if ((0, types_1.isInstantiableClass)(arg.type) || (0, types_1.isFunction)(arg.type)) {
781
804
  behaviors.fieldDescriptorNames.push(arg.type.shared.fullName);
782
805
  }
@@ -929,7 +952,7 @@ function applyDataClassClassBehaviorOverrides(evaluator, errorNode, classType, a
929
952
  exports.applyDataClassClassBehaviorOverrides = applyDataClassClassBehaviorOverrides;
930
953
  function applyDataClassDecorator(evaluator, errorNode, classType, defaultBehaviors, callNode) {
931
954
  var _a;
932
- applyDataClassClassBehaviorOverrides(evaluator, errorNode, classType, ((_a = callNode === null || callNode === void 0 ? void 0 : callNode.d.args) !== null && _a !== void 0 ? _a : []).map((arg) => (0, typeUtils_1.convertArgumentNodeToFunctionArgument)(arg)), defaultBehaviors);
955
+ applyDataClassClassBehaviorOverrides(evaluator, errorNode, classType, ((_a = callNode === null || callNode === void 0 ? void 0 : callNode.d.args) !== null && _a !== void 0 ? _a : []).map((arg) => (0, typeUtils_1.convertNodeToArg)(arg)), defaultBehaviors);
933
956
  }
934
957
  exports.applyDataClassDecorator = applyDataClassDecorator;
935
958
  //# sourceMappingURL=dataClasses.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"dataClasses.js","sourceRoot":"","sources":["../../../../../src/analyzer/dataClasses.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"dataClasses.js","sourceRoot":"","sources":["../../../../../src/analyzer/dataClasses.ts"],"names":[],"mappings":"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"}
@@ -5,8 +5,8 @@ export declare const UnresolvedModuleMarker: Uri;
5
5
  export declare const enum DeclarationType {
6
6
  Intrinsic = 0,
7
7
  Variable = 1,
8
- Parameter = 2,
9
- TypeParameter = 3,
8
+ Param = 2,
9
+ TypeParam = 3,
10
10
  TypeAlias = 4,
11
11
  Function = 5,
12
12
  Class = 6,
@@ -44,15 +44,15 @@ export interface FunctionDeclaration extends DeclarationBase {
44
44
  yieldStatements?: (YieldNode | YieldFromNode)[];
45
45
  raiseStatements?: RaiseNode[];
46
46
  }
47
- export interface ParameterDeclaration extends DeclarationBase {
48
- type: DeclarationType.Parameter;
47
+ export interface ParamDeclaration extends DeclarationBase {
48
+ type: DeclarationType.Param;
49
49
  node: ParameterNode;
50
50
  docString?: string;
51
51
  inferredName?: string;
52
52
  inferredTypeNodes?: ExpressionNode[];
53
53
  }
54
- export interface TypeParameterDeclaration extends DeclarationBase {
55
- type: DeclarationType.TypeParameter;
54
+ export interface TypeParamDeclaration extends DeclarationBase {
55
+ type: DeclarationType.TypeParam;
56
56
  node: TypeParameterNode;
57
57
  }
58
58
  export interface TypeAliasDeclaration extends DeclarationBase {
@@ -94,11 +94,11 @@ export interface ModuleLoaderActions {
94
94
  loadSymbolsFromPath: boolean;
95
95
  implicitImports?: Map<string, ModuleLoaderActions>;
96
96
  }
97
- export type Declaration = IntrinsicDeclaration | ClassDeclaration | SpecialBuiltInClassDeclaration | FunctionDeclaration | ParameterDeclaration | TypeParameterDeclaration | TypeAliasDeclaration | VariableDeclaration | AliasDeclaration;
97
+ export type Declaration = IntrinsicDeclaration | ClassDeclaration | SpecialBuiltInClassDeclaration | FunctionDeclaration | ParamDeclaration | TypeParamDeclaration | TypeAliasDeclaration | VariableDeclaration | AliasDeclaration;
98
98
  export declare function isFunctionDeclaration(decl: Declaration): decl is FunctionDeclaration;
99
99
  export declare function isClassDeclaration(decl: Declaration): decl is ClassDeclaration;
100
- export declare function isParameterDeclaration(decl: Declaration): decl is ParameterDeclaration;
101
- export declare function isTypeParameterDeclaration(decl: Declaration): decl is TypeParameterDeclaration;
100
+ export declare function isParamDeclaration(decl: Declaration): decl is ParamDeclaration;
101
+ export declare function isTypeParamDeclaration(decl: Declaration): decl is TypeParamDeclaration;
102
102
  export declare function isTypeAliasDeclaration(decl: Declaration): decl is TypeAliasDeclaration;
103
103
  export declare function isVariableDeclaration(decl: Declaration): decl is VariableDeclaration;
104
104
  export declare function isAliasDeclaration(decl: Declaration): decl is AliasDeclaration;