@zzzen/pyright-internal 1.2.0-dev.20240609 → 1.2.0-dev.20240623
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/dist/analyzer/binder.d.ts +3 -1
- package/dist/analyzer/binder.js +9 -3
- package/dist/analyzer/binder.js.map +1 -1
- package/dist/analyzer/cacheManager.js +3 -0
- package/dist/analyzer/cacheManager.js.map +1 -1
- package/dist/analyzer/checker.d.ts +3 -0
- package/dist/analyzer/checker.js +164 -85
- package/dist/analyzer/checker.js.map +1 -1
- package/dist/analyzer/codeFlowEngine.d.ts +1 -1
- package/dist/analyzer/codeFlowEngine.js +7 -12
- package/dist/analyzer/codeFlowEngine.js.map +1 -1
- package/dist/analyzer/constraintSolver.js +1 -4
- package/dist/analyzer/constraintSolver.js.map +1 -1
- package/dist/analyzer/constructors.js +0 -2
- package/dist/analyzer/constructors.js.map +1 -1
- package/dist/analyzer/dataClasses.d.ts +2 -2
- package/dist/analyzer/dataClasses.js +55 -78
- package/dist/analyzer/dataClasses.js.map +1 -1
- package/dist/analyzer/decorators.d.ts +2 -1
- package/dist/analyzer/decorators.js +34 -39
- package/dist/analyzer/decorators.js.map +1 -1
- package/dist/analyzer/docStringUtils.d.ts +0 -1
- package/dist/analyzer/docStringUtils.js +1 -6
- package/dist/analyzer/docStringUtils.js.map +1 -1
- package/dist/analyzer/enums.js +1 -1
- package/dist/analyzer/enums.js.map +1 -1
- package/dist/analyzer/importResolver.js +11 -9
- package/dist/analyzer/importResolver.js.map +1 -1
- package/dist/analyzer/namedTuples.js +3 -3
- package/dist/analyzer/namedTuples.js.map +1 -1
- package/dist/analyzer/parseTreeUtils.d.ts +1 -1
- package/dist/analyzer/parseTreeUtils.js +18 -2
- package/dist/analyzer/parseTreeUtils.js.map +1 -1
- package/dist/analyzer/patternMatching.js +11 -2
- package/dist/analyzer/patternMatching.js.map +1 -1
- package/dist/analyzer/properties.js +2 -2
- package/dist/analyzer/properties.js.map +1 -1
- package/dist/analyzer/protocols.js +14 -3
- package/dist/analyzer/protocols.js.map +1 -1
- package/dist/analyzer/service.js +27 -48
- package/dist/analyzer/service.js.map +1 -1
- package/dist/analyzer/sourceFile.d.ts +2 -1
- package/dist/analyzer/sourceFile.js +4 -2
- package/dist/analyzer/sourceFile.js.map +1 -1
- package/dist/analyzer/typeDocStringUtils.d.ts +1 -0
- package/dist/analyzer/typeDocStringUtils.js +8 -1
- package/dist/analyzer/typeDocStringUtils.js.map +1 -1
- package/dist/analyzer/typeEvaluator.js +555 -580
- package/dist/analyzer/typeEvaluator.js.map +1 -1
- package/dist/analyzer/typeEvaluatorTypes.d.ts +0 -1
- package/dist/analyzer/typePrinter.js +4 -2
- package/dist/analyzer/typePrinter.js.map +1 -1
- package/dist/analyzer/typeUtils.d.ts +0 -1
- package/dist/analyzer/typeUtils.js +13 -24
- package/dist/analyzer/typeUtils.js.map +1 -1
- package/dist/analyzer/typedDicts.js +6 -6
- package/dist/analyzer/typedDicts.js.map +1 -1
- package/dist/analyzer/types.d.ts +40 -42
- package/dist/analyzer/types.js +93 -97
- package/dist/analyzer/types.js.map +1 -1
- package/dist/commands/dumpFileDebugInfoCommand.js +16 -24
- package/dist/commands/dumpFileDebugInfoCommand.js.map +1 -1
- package/dist/common/cancellationUtils.d.ts +1 -0
- package/dist/common/cancellationUtils.js +15 -1
- package/dist/common/cancellationUtils.js.map +1 -1
- package/dist/common/configOptions.js +1 -1
- package/dist/common/configOptions.js.map +1 -1
- package/dist/common/diagnostic.d.ts +1 -0
- package/dist/common/diagnostic.js +5 -0
- package/dist/common/diagnostic.js.map +1 -1
- package/dist/common/docStringService.d.ts +16 -0
- package/dist/common/docStringService.js +38 -0
- package/dist/common/docStringService.js.map +1 -0
- package/dist/common/envVarUtils.js +3 -1
- package/dist/common/envVarUtils.js.map +1 -1
- package/dist/common/extensibility.d.ts +1 -7
- package/dist/common/extensibility.js.map +1 -1
- package/dist/common/languageServerInterface.d.ts +1 -2
- package/dist/common/languageServerInterface.js.map +1 -1
- package/dist/common/serviceKeys.d.ts +2 -0
- package/dist/common/serviceKeys.js +1 -0
- package/dist/common/serviceKeys.js.map +1 -1
- package/dist/common/serviceProvider.js +3 -0
- package/dist/common/serviceProvider.js.map +1 -1
- package/dist/common/serviceProviderExtensions.d.ts +2 -0
- package/dist/common/serviceProviderExtensions.js +8 -0
- package/dist/common/serviceProviderExtensions.js.map +1 -1
- package/dist/common/stringUtils.d.ts +1 -0
- package/dist/common/stringUtils.js +5 -1
- package/dist/common/stringUtils.js.map +1 -1
- package/dist/common/textRangeCollection.d.ts +1 -1
- package/dist/common/textRangeCollection.js +14 -14
- package/dist/common/textRangeCollection.js.map +1 -1
- package/dist/common/uri/uriUtils.d.ts +1 -1
- package/dist/common/uri/uriUtils.js +1 -1
- package/dist/common/uri/uriUtils.js.map +1 -1
- package/dist/languageServerBase.d.ts +1 -1
- package/dist/languageServerBase.js +2 -2
- package/dist/languageServerBase.js.map +1 -1
- package/dist/languageService/autoImporter.js +2 -2
- package/dist/languageService/autoImporter.js.map +1 -1
- package/dist/languageService/completionProvider.d.ts +1 -0
- package/dist/languageService/completionProvider.js +16 -7
- package/dist/languageService/completionProvider.js.map +1 -1
- package/dist/languageService/completionProviderUtils.d.ts +2 -1
- package/dist/languageService/completionProviderUtils.js +6 -4
- package/dist/languageService/completionProviderUtils.js.map +1 -1
- package/dist/languageService/definitionProvider.d.ts +2 -1
- package/dist/languageService/definitionProvider.js.map +1 -1
- package/dist/languageService/hoverProvider.d.ts +2 -1
- package/dist/languageService/hoverProvider.js +17 -11
- package/dist/languageService/hoverProvider.js.map +1 -1
- package/dist/languageService/signatureHelpProvider.d.ts +3 -1
- package/dist/languageService/signatureHelpProvider.js +26 -7
- package/dist/languageService/signatureHelpProvider.js.map +1 -1
- package/dist/localization/localize.d.ts +1 -0
- package/dist/localization/localize.js +1 -0
- package/dist/localization/localize.js.map +1 -1
- package/dist/localization/package.nls.cs.json +4 -1
- package/dist/localization/package.nls.de.json +4 -1
- package/dist/localization/package.nls.en-us.json +1 -0
- package/dist/localization/package.nls.es.json +3 -0
- package/dist/localization/package.nls.fr.json +4 -1
- package/dist/localization/package.nls.it.json +4 -1
- package/dist/localization/package.nls.ja.json +4 -1
- package/dist/localization/package.nls.ko.json +4 -1
- package/dist/localization/package.nls.pl.json +4 -1
- package/dist/localization/package.nls.pt-br.json +4 -1
- package/dist/localization/package.nls.qps-ploc.json +4 -1
- package/dist/localization/package.nls.ru.json +4 -1
- package/dist/localization/package.nls.tr.json +4 -1
- package/dist/localization/package.nls.zh-cn.json +4 -1
- package/dist/localization/package.nls.zh-tw.json +4 -1
- package/dist/tests/checker.test.js +10 -2
- package/dist/tests/checker.test.js.map +1 -1
- package/dist/tests/config.test.js +1 -1
- package/dist/tests/config.test.js.map +1 -1
- package/dist/tests/docStringConversion.test.d.ts +2 -1
- package/dist/tests/docStringConversion.test.js +300 -293
- package/dist/tests/docStringConversion.test.js.map +1 -1
- package/dist/tests/fourslash/hover.docstring.alias.fourslash.js +5 -5
- package/dist/tests/fourslash/hover.docstring.alias.fourslash.js.map +1 -1
- package/dist/tests/fourslash/hover.init.fourslash.js +1 -1
- package/dist/tests/fourslash/hover.init.fourslash.js.map +1 -1
- package/dist/tests/fourslash/hover.variable.docString.fourslash.js +1 -1
- package/dist/tests/fourslash/hover.variable.docString.fourslash.js.map +1 -1
- package/dist/tests/fourslash/rename.externallyHidden.fourslash.js +2 -2
- package/dist/tests/fourslash/rename.externallyHidden.fourslash.js.map +1 -1
- package/dist/tests/fourslash/rename.externallyHidden.params.fourslash.js +1 -1
- package/dist/tests/fourslash/rename.externallyHidden.params.fourslash.js.map +1 -1
- package/dist/tests/harness/fourslash/testState.js +2 -1
- package/dist/tests/harness/fourslash/testState.js.map +1 -1
- package/dist/tests/parseTreeUtils.test.js +89 -0
- package/dist/tests/parseTreeUtils.test.js.map +1 -1
- package/dist/tests/pathUtils.test.js +6 -0
- package/dist/tests/pathUtils.test.js.map +1 -1
- package/dist/tests/signatureHelp.test.js +2 -1
- package/dist/tests/signatureHelp.test.js.map +1 -1
- package/dist/tests/typeEvaluator1.test.js +1 -1
- package/dist/tests/typeEvaluator3.test.js +1 -1
- package/dist/tests/typeEvaluator7.test.js +1 -1
- package/dist/tests/uri.test.js +6 -0
- package/dist/tests/uri.test.js.map +1 -1
- package/dist/workspaceFactory.d.ts +1 -1
- package/package.json +1 -1
- package/dist/tests/docStringUtils.test.d.ts +0 -1
- package/dist/tests/docStringUtils.test.js +0 -74
- package/dist/tests/docStringUtils.test.js.map +0 -1
@@ -32,7 +32,7 @@ var __importStar = (this && this.__importStar) || function (mod) {
|
|
32
32
|
return result;
|
33
33
|
};
|
34
34
|
Object.defineProperty(exports, "__esModule", { value: true });
|
35
|
-
exports.applyDataClassDecorator = exports.
|
35
|
+
exports.applyDataClassDecorator = exports.applyDataClassClassBehaviorOverrides = exports.getDataclassDecoratorBehaviors = exports.validateDataClassTransformDecorator = exports.addInheritedDataClassEntries = exports.synthesizeDataClassMethods = void 0;
|
36
36
|
const debug_1 = require("../common/debug");
|
37
37
|
const diagnostic_1 = require("../common/diagnostic");
|
38
38
|
const diagnosticRules_1 = require("../common/diagnosticRules");
|
@@ -53,12 +53,12 @@ const typeVarContext_1 = require("./typeVarContext");
|
|
53
53
|
// and __match_args__ class variables.
|
54
54
|
function synthesizeDataClassMethods(evaluator, node, classType, isNamedTuple, skipSynthesizeInit, hasExistingInitMethod, skipSynthesizeHash) {
|
55
55
|
var _a;
|
56
|
-
(0, debug_1.assert)(types_1.ClassType.isDataClass(classType));
|
56
|
+
(0, debug_1.assert)(types_1.ClassType.isDataClass(classType) || isNamedTuple);
|
57
57
|
const classTypeVar = (0, typeUtils_1.synthesizeTypeVarForSelfCls)(classType, /* isClsParam */ true);
|
58
58
|
const newType = types_1.FunctionType.createSynthesizedInstance('__new__', 1 /* FunctionTypeFlags.ConstructorMethod */);
|
59
|
-
newType.details.constructorTypeVarScopeId = classType
|
59
|
+
newType.details.constructorTypeVarScopeId = (0, typeUtils_1.getTypeVarScopeId)(classType);
|
60
60
|
const initType = types_1.FunctionType.createSynthesizedInstance('__init__');
|
61
|
-
initType.details.constructorTypeVarScopeId = classType
|
61
|
+
initType.details.constructorTypeVarScopeId = (0, typeUtils_1.getTypeVarScopeId)(classType);
|
62
62
|
// Generate both a __new__ and an __init__ method. The parameters of the
|
63
63
|
// __new__ method are based on field definitions for NamedTuple classes,
|
64
64
|
// and the parameters of the __init__ method are based on field definitions
|
@@ -143,7 +143,7 @@ function synthesizeDataClassMethods(evaluator, node, classType, isNamedTuple, sk
|
|
143
143
|
let aliasName;
|
144
144
|
let variableTypeEvaluator;
|
145
145
|
let hasDefaultValue = false;
|
146
|
-
let isKeywordOnly = types_1.ClassType.
|
146
|
+
let isKeywordOnly = types_1.ClassType.isDataClassKeywordOnly(classType) || sawKeywordOnlySeparator;
|
147
147
|
let defaultValueExpression;
|
148
148
|
let includeInInit = true;
|
149
149
|
let converter;
|
@@ -448,23 +448,23 @@ function synthesizeDataClassMethods(evaluator, node, classType, isNamedTuple, sk
|
|
448
448
|
}
|
449
449
|
};
|
450
450
|
// Synthesize comparison operators.
|
451
|
-
if (!types_1.ClassType.
|
451
|
+
if (!types_1.ClassType.isDataClassSkipGenerateEq(classType)) {
|
452
452
|
synthesizeComparisonMethod('__eq__', evaluator.getBuiltInObject(node, 'object'));
|
453
453
|
}
|
454
|
-
if (types_1.ClassType.
|
454
|
+
if (types_1.ClassType.isDataClassGenerateOrder(classType)) {
|
455
455
|
const objType = types_1.ClassType.cloneAsInstance(classType);
|
456
456
|
['__lt__', '__le__', '__gt__', '__ge__'].forEach((operator) => {
|
457
457
|
synthesizeComparisonMethod(operator, objType);
|
458
458
|
});
|
459
459
|
}
|
460
|
-
let synthesizeHashFunction = types_1.ClassType.
|
461
|
-
const synthesizeHashNone = !types_1.ClassType.
|
460
|
+
let synthesizeHashFunction = types_1.ClassType.isDataClassFrozen(classType);
|
461
|
+
const synthesizeHashNone = !isNamedTuple && !types_1.ClassType.isDataClassSkipGenerateEq(classType) && !types_1.ClassType.isDataClassFrozen(classType);
|
462
462
|
if (skipSynthesizeHash) {
|
463
463
|
synthesizeHashFunction = false;
|
464
464
|
}
|
465
465
|
// If the user has indicated that a hash function should be generated even if it's unsafe
|
466
466
|
// to do so or there is already a hash function present, override the default logic.
|
467
|
-
if (types_1.ClassType.
|
467
|
+
if (types_1.ClassType.isDataClassGenerateHash(classType)) {
|
468
468
|
synthesizeHashFunction = true;
|
469
469
|
}
|
470
470
|
if (synthesizeHashFunction) {
|
@@ -481,12 +481,14 @@ function synthesizeDataClassMethods(evaluator, node, classType, isNamedTuple, sk
|
|
481
481
|
dictType = types_1.ClassType.cloneAsInstance(types_1.ClassType.cloneForSpecialization(dictType, [evaluator.getBuiltInObject(node, 'str'), types_1.AnyType.create()],
|
482
482
|
/* isTypeArgumentExplicit */ true));
|
483
483
|
}
|
484
|
-
|
485
|
-
|
484
|
+
if (!isNamedTuple) {
|
485
|
+
symbolTable.set('__dataclass_fields__', symbol_1.Symbol.createWithType(4 /* SymbolFlags.ClassMember */ | 128 /* SymbolFlags.ClassVar */, dictType));
|
486
|
+
}
|
487
|
+
if (types_1.ClassType.isDataClassGenerateSlots(classType) && classType.details.localSlotsNames === undefined) {
|
486
488
|
classType.details.localSlotsNames = localDataClassEntries.map((entry) => entry.name);
|
487
489
|
}
|
488
490
|
// Should we synthesize a __slots__ symbol?
|
489
|
-
if (types_1.ClassType.
|
491
|
+
if (types_1.ClassType.isDataClassGenerateSlots(classType)) {
|
490
492
|
let iterableType = (_a = evaluator.getTypingType(node, 'Iterable')) !== null && _a !== void 0 ? _a : types_1.UnknownType.create();
|
491
493
|
if ((0, types_1.isInstantiableClass)(iterableType)) {
|
492
494
|
iterableType = types_1.ClassType.cloneAsInstance(types_1.ClassType.cloneForSpecialization(iterableType, [evaluator.getBuiltInObject(node, 'str')],
|
@@ -745,6 +747,7 @@ function addInheritedDataClassEntries(classType, entries) {
|
|
745
747
|
});
|
746
748
|
return allAncestorsAreKnown;
|
747
749
|
}
|
750
|
+
exports.addInheritedDataClassEntries = addInheritedDataClassEntries;
|
748
751
|
function isDataclassFieldConstructor(type, fieldDescriptorNames) {
|
749
752
|
let callName;
|
750
753
|
if ((0, types_1.isFunction)(type)) {
|
@@ -763,10 +766,14 @@ function isDataclassFieldConstructor(type, fieldDescriptorNames) {
|
|
763
766
|
}
|
764
767
|
function validateDataClassTransformDecorator(evaluator, node) {
|
765
768
|
const behaviors = {
|
766
|
-
|
767
|
-
|
769
|
+
skipGenerateInit: false,
|
770
|
+
skipGenerateEq: false,
|
768
771
|
generateOrder: false,
|
772
|
+
generateSlots: false,
|
773
|
+
generateHash: false,
|
774
|
+
keywordOnly: false,
|
769
775
|
frozen: false,
|
776
|
+
frozenDefault: false,
|
770
777
|
fieldDescriptorNames: [],
|
771
778
|
};
|
772
779
|
const fileInfo = AnalyzerNodeInfo.getFileInfo(node);
|
@@ -783,7 +790,7 @@ function validateDataClassTransformDecorator(evaluator, node) {
|
|
783
790
|
evaluator.addDiagnostic(diagnosticRules_1.DiagnosticRule.reportGeneralTypeIssues, localize_1.LocMessage.dataClassTransformExpectedBoolLiteral(), arg.valueExpression);
|
784
791
|
return;
|
785
792
|
}
|
786
|
-
behaviors.
|
793
|
+
behaviors.keywordOnly = value;
|
787
794
|
break;
|
788
795
|
}
|
789
796
|
case 'eq_default': {
|
@@ -792,7 +799,7 @@ function validateDataClassTransformDecorator(evaluator, node) {
|
|
792
799
|
evaluator.addDiagnostic(diagnosticRules_1.DiagnosticRule.reportGeneralTypeIssues, localize_1.LocMessage.dataClassTransformExpectedBoolLiteral(), arg.valueExpression);
|
793
800
|
return;
|
794
801
|
}
|
795
|
-
behaviors.
|
802
|
+
behaviors.skipGenerateEq = !value;
|
796
803
|
break;
|
797
804
|
}
|
798
805
|
case 'order_default': {
|
@@ -811,6 +818,10 @@ function validateDataClassTransformDecorator(evaluator, node) {
|
|
811
818
|
return;
|
812
819
|
}
|
813
820
|
behaviors.frozen = value;
|
821
|
+
// Store the frozen default separately because any class that
|
822
|
+
// doesn't explicitly specify a frozen value will inherit this
|
823
|
+
// value rather than the value from its parent.
|
824
|
+
behaviors.frozenDefault = value;
|
814
825
|
break;
|
815
826
|
}
|
816
827
|
// Earlier versions of the dataclass_transform spec used the name "field_descriptors"
|
@@ -831,9 +842,6 @@ function validateDataClassTransformDecorator(evaluator, node) {
|
|
831
842
|
}), arg.valueExpression);
|
832
843
|
return;
|
833
844
|
}
|
834
|
-
if (!behaviors.fieldDescriptorNames) {
|
835
|
-
behaviors.fieldDescriptorNames = [];
|
836
|
-
}
|
837
845
|
valueType.tupleTypeArguments.forEach((arg) => {
|
838
846
|
if ((0, types_1.isInstantiableClass)(arg.type) || (0, types_1.isFunction)(arg.type)) {
|
839
847
|
behaviors.fieldDescriptorNames.push(arg.type.details.fullName);
|
@@ -874,51 +882,38 @@ function getDataclassDecoratorBehaviors(type) {
|
|
874
882
|
// Is this the built-in dataclass? If so, return the default behaviors.
|
875
883
|
if (functionType.details.fullName === 'dataclasses.dataclass') {
|
876
884
|
return {
|
877
|
-
keywordOnlyParams: false,
|
878
|
-
generateEq: true,
|
879
|
-
generateOrder: false,
|
880
|
-
frozen: false,
|
881
885
|
fieldDescriptorNames: ['dataclasses.field', 'dataclasses.Field'],
|
882
886
|
};
|
883
887
|
}
|
884
888
|
return undefined;
|
885
889
|
}
|
886
890
|
exports.getDataclassDecoratorBehaviors = getDataclassDecoratorBehaviors;
|
887
|
-
function applyDataClassBehaviorOverride(evaluator, errorNode, classType, argName, argValueExpr) {
|
891
|
+
function applyDataClassBehaviorOverride(evaluator, errorNode, classType, argName, argValueExpr, behaviors) {
|
888
892
|
const fileInfo = AnalyzerNodeInfo.getFileInfo(errorNode);
|
889
893
|
const value = (0, staticExpressions_1.evaluateStaticBoolExpression)(argValueExpr, fileInfo.executionEnvironment, fileInfo.definedConstants);
|
890
|
-
applyDataClassBehaviorOverrideValue(evaluator, errorNode, classType, argName, value);
|
894
|
+
applyDataClassBehaviorOverrideValue(evaluator, errorNode, classType, argName, value, behaviors);
|
891
895
|
}
|
892
|
-
function applyDataClassBehaviorOverrideValue(evaluator, errorNode, classType, argName, argValue) {
|
896
|
+
function applyDataClassBehaviorOverrideValue(evaluator, errorNode, classType, argName, argValue, behaviors) {
|
893
897
|
switch (argName) {
|
894
898
|
case 'order':
|
895
|
-
if (argValue
|
896
|
-
|
897
|
-
}
|
898
|
-
else if (argValue === false) {
|
899
|
-
classType.details.flags &= ~64 /* ClassTypeFlags.SynthesizedDataClassOrder */;
|
899
|
+
if (argValue !== undefined) {
|
900
|
+
behaviors.generateOrder = argValue;
|
900
901
|
}
|
901
902
|
break;
|
902
903
|
case 'kw_only':
|
903
|
-
if (argValue
|
904
|
-
|
905
|
-
}
|
906
|
-
else if (argValue === true) {
|
907
|
-
classType.details.flags |= 4194304 /* ClassTypeFlags.DataClassKeywordOnlyParams */;
|
904
|
+
if (argValue !== undefined) {
|
905
|
+
behaviors.keywordOnly = argValue;
|
908
906
|
}
|
909
907
|
break;
|
910
908
|
case 'frozen': {
|
911
909
|
let hasUnfrozenBaseClass = false;
|
912
910
|
let hasFrozenBaseClass = false;
|
913
|
-
if (argValue
|
914
|
-
|
915
|
-
}
|
916
|
-
else if (argValue === true) {
|
917
|
-
classType.details.flags |= 8 /* ClassTypeFlags.FrozenDataClass */;
|
911
|
+
if (argValue !== undefined) {
|
912
|
+
behaviors.frozen = argValue;
|
918
913
|
}
|
919
914
|
classType.details.baseClasses.forEach((baseClass) => {
|
920
915
|
if ((0, types_1.isInstantiableClass)(baseClass) && types_1.ClassType.isDataClass(baseClass)) {
|
921
|
-
if (types_1.ClassType.
|
916
|
+
if (types_1.ClassType.isDataClassFrozen(baseClass)) {
|
922
917
|
hasFrozenBaseClass = true;
|
923
918
|
}
|
924
919
|
else if (!baseClass.details.classDataClassTransform &&
|
@@ -947,77 +942,59 @@ function applyDataClassBehaviorOverrideValue(evaluator, errorNode, classType, ar
|
|
947
942
|
break;
|
948
943
|
}
|
949
944
|
case 'init':
|
950
|
-
if (argValue
|
951
|
-
|
952
|
-
}
|
953
|
-
else if (argValue === true) {
|
954
|
-
classType.details.flags &= ~16 /* ClassTypeFlags.SkipSynthesizedDataClassInit */;
|
945
|
+
if (argValue !== undefined) {
|
946
|
+
behaviors.skipGenerateInit = !argValue;
|
955
947
|
}
|
956
948
|
break;
|
957
949
|
case 'eq':
|
958
|
-
if (argValue
|
959
|
-
|
960
|
-
}
|
961
|
-
else if (argValue === true) {
|
962
|
-
classType.details.flags &= ~32 /* ClassTypeFlags.SkipSynthesizedDataClassEq */;
|
950
|
+
if (argValue !== undefined) {
|
951
|
+
behaviors.skipGenerateEq = !argValue;
|
963
952
|
}
|
964
953
|
break;
|
965
954
|
case 'slots':
|
966
955
|
if (argValue === true) {
|
967
|
-
|
956
|
+
behaviors.generateSlots = true;
|
968
957
|
if (classType.details.localSlotsNames) {
|
969
958
|
evaluator.addDiagnostic(diagnosticRules_1.DiagnosticRule.reportGeneralTypeIssues, localize_1.LocMessage.dataClassSlotsOverwrite(), errorNode);
|
970
959
|
}
|
971
960
|
}
|
972
961
|
else if (argValue === false) {
|
973
|
-
|
962
|
+
behaviors.generateSlots = false;
|
974
963
|
}
|
975
964
|
break;
|
976
965
|
case 'hash':
|
977
966
|
case 'unsafe_hash':
|
978
967
|
if (argValue === true) {
|
979
|
-
|
968
|
+
behaviors.generateHash = true;
|
980
969
|
}
|
981
970
|
break;
|
982
971
|
}
|
983
972
|
}
|
984
973
|
function applyDataClassClassBehaviorOverrides(evaluator, errorNode, classType, args, defaultBehaviors) {
|
985
974
|
let sawFrozenArg = false;
|
975
|
+
const behaviors = { ...defaultBehaviors };
|
976
|
+
// The "frozen" behavior is not inherited from the parent class.
|
977
|
+
// Instead, it comes from the default.
|
978
|
+
behaviors.frozen = behaviors.frozenDefault;
|
979
|
+
classType.details.dataClassBehaviors = behaviors;
|
986
980
|
args.forEach((arg) => {
|
987
981
|
if (arg.valueExpression && arg.name) {
|
988
|
-
applyDataClassBehaviorOverride(evaluator, arg.name, classType, arg.name.value, arg.valueExpression);
|
982
|
+
applyDataClassBehaviorOverride(evaluator, arg.name, classType, arg.name.value, arg.valueExpression, behaviors);
|
989
983
|
if (arg.name.value === 'frozen') {
|
990
984
|
sawFrozenArg = true;
|
991
985
|
}
|
992
986
|
}
|
993
987
|
});
|
994
|
-
// If there was no frozen argument, it is implicitly
|
995
|
-
//
|
988
|
+
// If there was no frozen argument, it is implicitly set to the frozenDefault.
|
989
|
+
// This check validates that we're not overriding a frozen class with a
|
990
|
+
// non-frozen class or vice versa.
|
996
991
|
if (!sawFrozenArg) {
|
997
|
-
applyDataClassBehaviorOverrideValue(evaluator, errorNode, classType, 'frozen', defaultBehaviors.
|
992
|
+
applyDataClassBehaviorOverrideValue(evaluator, errorNode, classType, 'frozen', defaultBehaviors.frozenDefault, behaviors);
|
998
993
|
}
|
999
994
|
}
|
1000
995
|
exports.applyDataClassClassBehaviorOverrides = applyDataClassClassBehaviorOverrides;
|
1001
|
-
function applyDataClassDefaultBehaviors(classType, defaultBehaviors) {
|
1002
|
-
classType.details.dataClassBehaviors = defaultBehaviors;
|
1003
|
-
classType.details.flags |= 4 /* ClassTypeFlags.DataClass */;
|
1004
|
-
if (defaultBehaviors.keywordOnlyParams) {
|
1005
|
-
classType.details.flags |= 4194304 /* ClassTypeFlags.DataClassKeywordOnlyParams */;
|
1006
|
-
}
|
1007
|
-
if (!defaultBehaviors.generateEq) {
|
1008
|
-
classType.details.flags |= 32 /* ClassTypeFlags.SkipSynthesizedDataClassEq */;
|
1009
|
-
}
|
1010
|
-
if (defaultBehaviors.generateOrder) {
|
1011
|
-
classType.details.flags |= 64 /* ClassTypeFlags.SynthesizedDataClassOrder */;
|
1012
|
-
}
|
1013
|
-
if (defaultBehaviors.frozen) {
|
1014
|
-
classType.details.flags |= 8 /* ClassTypeFlags.FrozenDataClass */;
|
1015
|
-
}
|
1016
|
-
}
|
1017
|
-
exports.applyDataClassDefaultBehaviors = applyDataClassDefaultBehaviors;
|
1018
996
|
function applyDataClassDecorator(evaluator, errorNode, classType, defaultBehaviors, callNode) {
|
1019
997
|
var _a;
|
1020
|
-
applyDataClassDefaultBehaviors(classType, defaultBehaviors);
|
1021
998
|
applyDataClassClassBehaviorOverrides(evaluator, errorNode, classType, (_a = callNode === null || callNode === void 0 ? void 0 : callNode.arguments) !== null && _a !== void 0 ? _a : [], defaultBehaviors);
|
1022
999
|
}
|
1023
1000
|
exports.applyDataClassDecorator = applyDataClassDecorator;
|
@@ -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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"}
|
@@ -1,4 +1,4 @@
|
|
1
|
-
import { DecoratorNode, FunctionNode } from '../parser/parseNodes';
|
1
|
+
import { CallNode, DecoratorNode, FunctionNode } from '../parser/parseNodes';
|
2
2
|
import { TypeEvaluator } from './typeEvaluatorTypes';
|
3
3
|
import { ClassType, FunctionType, FunctionTypeFlags, Type } from './types';
|
4
4
|
export interface FunctionDecoratorInfo {
|
@@ -9,3 +9,4 @@ export declare function getFunctionInfoFromDecorators(evaluator: TypeEvaluator,
|
|
9
9
|
export declare function applyFunctionDecorator(evaluator: TypeEvaluator, inputFunctionType: Type, undecoratedType: FunctionType, decoratorNode: DecoratorNode, functionNode: FunctionNode): Type;
|
10
10
|
export declare function applyClassDecorator(evaluator: TypeEvaluator, inputClassType: Type, originalClassType: ClassType, decoratorNode: DecoratorNode): Type;
|
11
11
|
export declare function addOverloadsToFunctionType(evaluator: TypeEvaluator, node: FunctionNode, type: FunctionType): Type;
|
12
|
+
export declare function getDeprecatedMessageFromCall(node: CallNode): string;
|
@@ -9,7 +9,7 @@
|
|
9
9
|
* function or class decorators.
|
10
10
|
*/
|
11
11
|
Object.defineProperty(exports, "__esModule", { value: true });
|
12
|
-
exports.addOverloadsToFunctionType = exports.applyClassDecorator = exports.applyFunctionDecorator = exports.getFunctionInfoFromDecorators = void 0;
|
12
|
+
exports.getDeprecatedMessageFromCall = exports.addOverloadsToFunctionType = exports.applyClassDecorator = exports.applyFunctionDecorator = exports.getFunctionInfoFromDecorators = void 0;
|
13
13
|
const collectionUtils_1 = require("../common/collectionUtils");
|
14
14
|
const diagnosticRules_1 = require("../common/diagnosticRules");
|
15
15
|
const localize_1 = require("../localization/localize");
|
@@ -44,14 +44,6 @@ function getFunctionInfoFromDecorators(evaluator, node, isInClass) {
|
|
44
44
|
if (decoratorNode.expression.nodeType !== 9 /* ParseNodeType.Call */) {
|
45
45
|
evaluatorFlags |= 2 /* EvaluatorFlags.CallBaseDefaults */;
|
46
46
|
}
|
47
|
-
else {
|
48
|
-
if (decoratorNode.expression.nodeType === 9 /* ParseNodeType.Call */) {
|
49
|
-
const decoratorCallType = evaluator.getTypeOfExpression(decoratorNode.expression.leftExpression, evaluatorFlags | 2 /* EvaluatorFlags.CallBaseDefaults */).type;
|
50
|
-
if ((0, typeUtils_1.isBuiltInDeprecatedType)(decoratorCallType)) {
|
51
|
-
deprecationMessage = getCustomDeprecationMessage(decoratorNode);
|
52
|
-
}
|
53
|
-
}
|
54
|
-
}
|
55
47
|
const decoratorTypeResult = evaluator.getTypeOfExpression(decoratorNode.expression, evaluatorFlags);
|
56
48
|
const decoratorType = decoratorTypeResult.type;
|
57
49
|
if ((0, types_1.isFunction)(decoratorType)) {
|
@@ -76,21 +68,25 @@ function getFunctionInfoFromDecorators(evaluator, node, isInClass) {
|
|
76
68
|
flags |= 256 /* FunctionTypeFlags.Overloaded */;
|
77
69
|
}
|
78
70
|
}
|
79
|
-
else if ((0, types_1.
|
80
|
-
if (types_1.
|
81
|
-
if (
|
82
|
-
|
71
|
+
else if ((0, types_1.isClass)(decoratorType)) {
|
72
|
+
if (types_1.TypeBase.isInstantiable(decoratorType)) {
|
73
|
+
if (types_1.ClassType.isBuiltIn(decoratorType, 'staticmethod')) {
|
74
|
+
if (isInClass) {
|
75
|
+
flags |= 4 /* FunctionTypeFlags.StaticMethod */;
|
76
|
+
}
|
77
|
+
}
|
78
|
+
else if (types_1.ClassType.isBuiltIn(decoratorType, 'classmethod')) {
|
79
|
+
if (isInClass) {
|
80
|
+
flags |= 2 /* FunctionTypeFlags.ClassMethod */;
|
81
|
+
}
|
83
82
|
}
|
84
83
|
}
|
85
|
-
else
|
86
|
-
if (
|
87
|
-
|
84
|
+
else {
|
85
|
+
if (types_1.ClassType.isBuiltIn(decoratorType, 'deprecated')) {
|
86
|
+
deprecationMessage = decoratorType.deprecatedInstanceMessage;
|
88
87
|
}
|
89
88
|
}
|
90
89
|
}
|
91
|
-
if ((0, typeUtils_1.isBuiltInDeprecatedType)(decoratorType)) {
|
92
|
-
deprecationMessage = getCustomDeprecationMessage(decoratorNode);
|
93
|
-
}
|
94
90
|
}
|
95
91
|
return { flags, deprecationMessage };
|
96
92
|
}
|
@@ -125,9 +121,6 @@ function applyFunctionDecorator(evaluator, inputFunctionType, undecoratedType, d
|
|
125
121
|
return inputFunctionType;
|
126
122
|
}
|
127
123
|
}
|
128
|
-
if ((0, typeUtils_1.isBuiltInDeprecatedType)(decoratorCallType)) {
|
129
|
-
return inputFunctionType;
|
130
|
-
}
|
131
124
|
}
|
132
125
|
let returnType = getTypeOfDecorator(evaluator, decoratorNode, inputFunctionType);
|
133
126
|
// Check for some built-in decorator types with known semantics.
|
@@ -186,11 +179,11 @@ function applyFunctionDecorator(evaluator, inputFunctionType, undecoratedType, d
|
|
186
179
|
}
|
187
180
|
return inputFunctionType;
|
188
181
|
}
|
182
|
+
case 'decorator': {
|
183
|
+
return inputFunctionType;
|
184
|
+
}
|
189
185
|
}
|
190
186
|
}
|
191
|
-
if ((0, typeUtils_1.isBuiltInDeprecatedType)(decoratorType)) {
|
192
|
-
return inputFunctionType;
|
193
|
-
}
|
194
187
|
// Handle properties and subclasses of properties specially.
|
195
188
|
if (types_1.ClassType.isPropertyClass(decoratorType)) {
|
196
189
|
if ((0, types_1.isFunction)(inputFunctionType)) {
|
@@ -236,10 +229,6 @@ function applyClassDecorator(evaluator, inputClassType, originalClassType, decor
|
|
236
229
|
originalClassType.details.classDataClassTransform = (0, dataClasses_1.validateDataClassTransformDecorator)(evaluator, decoratorNode.expression);
|
237
230
|
}
|
238
231
|
}
|
239
|
-
if ((0, typeUtils_1.isBuiltInDeprecatedType)(decoratorCallType)) {
|
240
|
-
originalClassType.details.deprecatedMessage = getCustomDeprecationMessage(decoratorNode);
|
241
|
-
return inputClassType;
|
242
|
-
}
|
243
232
|
}
|
244
233
|
if ((0, types_1.isOverloadedFunction)(decoratorType)) {
|
245
234
|
const dataclassBehaviors = (0, dataClasses_1.getDataclassDecoratorBehaviors)(decoratorType);
|
@@ -251,18 +240,18 @@ function applyClassDecorator(evaluator, inputClassType, originalClassType, decor
|
|
251
240
|
}
|
252
241
|
else if ((0, types_1.isFunction)(decoratorType)) {
|
253
242
|
if (decoratorType.details.builtInName === 'final') {
|
254
|
-
originalClassType.details.flags |=
|
243
|
+
originalClassType.details.flags |= 256 /* ClassTypeFlags.Final */;
|
255
244
|
// Don't call getTypeOfDecorator for final. We'll hard-code its
|
256
245
|
// behavior because its function definition results in a cyclical
|
257
246
|
// dependency between builtins, typing and _typeshed stubs.
|
258
247
|
return inputClassType;
|
259
248
|
}
|
260
249
|
if (decoratorType.details.builtInName === 'type_check_only') {
|
261
|
-
originalClassType.details.flags |=
|
250
|
+
originalClassType.details.flags |= 1048576 /* ClassTypeFlags.TypeCheckOnly */;
|
262
251
|
return inputClassType;
|
263
252
|
}
|
264
253
|
if (decoratorType.details.builtInName === 'runtime_checkable') {
|
265
|
-
originalClassType.details.flags |=
|
254
|
+
originalClassType.details.flags |= 2048 /* ClassTypeFlags.RuntimeCheckable */;
|
266
255
|
// Don't call getTypeOfDecorator for runtime_checkable. It appears
|
267
256
|
// frequently in stubs, and it's a waste of time to validate its
|
268
257
|
// parameters.
|
@@ -285,6 +274,12 @@ function applyClassDecorator(evaluator, inputClassType, originalClassType, decor
|
|
285
274
|
return inputClassType;
|
286
275
|
}
|
287
276
|
}
|
277
|
+
else if ((0, types_1.isClassInstance)(decoratorType)) {
|
278
|
+
if (types_1.ClassType.isBuiltIn(decoratorType, 'deprecated')) {
|
279
|
+
originalClassType.details.deprecatedMessage = decoratorType.deprecatedInstanceMessage;
|
280
|
+
return inputClassType;
|
281
|
+
}
|
282
|
+
}
|
288
283
|
return getTypeOfDecorator(evaluator, decoratorNode, inputClassType);
|
289
284
|
}
|
290
285
|
exports.applyClassDecorator = applyClassDecorator;
|
@@ -437,17 +432,17 @@ function addOverloadsToFunctionType(evaluator, node, type) {
|
|
437
432
|
return type;
|
438
433
|
}
|
439
434
|
exports.addOverloadsToFunctionType = addOverloadsToFunctionType;
|
440
|
-
// Given a @typing.deprecated
|
435
|
+
// Given a @typing.deprecated call node, returns either '' or a custom
|
441
436
|
// deprecation message if one is provided.
|
442
|
-
function
|
443
|
-
if (
|
444
|
-
|
445
|
-
|
446
|
-
|
447
|
-
const stringListNode = decorator.expression.arguments[0].valueExpression;
|
437
|
+
function getDeprecatedMessageFromCall(node) {
|
438
|
+
if (node.arguments.length > 0 &&
|
439
|
+
node.arguments[0].argumentCategory === 0 /* ArgumentCategory.Simple */ &&
|
440
|
+
node.arguments[0].valueExpression.nodeType === 48 /* ParseNodeType.StringList */) {
|
441
|
+
const stringListNode = node.arguments[0].valueExpression;
|
448
442
|
const message = stringListNode.strings.map((s) => s.value).join('');
|
449
443
|
return (0, docStringConversion_1.convertDocStringToPlainText)(message);
|
450
444
|
}
|
451
445
|
return '';
|
452
446
|
}
|
447
|
+
exports.getDeprecatedMessageFromCall = getDeprecatedMessageFromCall;
|
453
448
|
//# sourceMappingURL=decorators.js.map
|