mirror of
https://github.com/microsoft/pyright.git
synced 2024-10-26 10:55:06 +03:00
Changed implementation for @typing.deprecated
so the code doesn't assume it is declared as an overloaded function. This was changed in typeshed recently.
This commit is contained in:
parent
dd9fa29f9e
commit
da2498b0e7
@ -16867,6 +16867,9 @@ export function createTypeEvaluator(importLookup: ImportLookup, evaluatorOptions
|
||||
evaluatorInterface,
|
||||
decoratorNode.expression
|
||||
);
|
||||
} else if (decoratorCallType.details.name === 'deprecated') {
|
||||
originalClassType.details.deprecatedMessage = getCustomDeprecationMessage(decoratorNode);
|
||||
return inputClassType;
|
||||
}
|
||||
}
|
||||
|
||||
@ -16908,6 +16911,11 @@ export function createTypeEvaluator(importLookup: ImportLookup, evaluatorOptions
|
||||
return inputClassType;
|
||||
}
|
||||
|
||||
if (decoratorType.details.builtInName === 'deprecated') {
|
||||
originalClassType.details.deprecatedMessage = getCustomDeprecationMessage(decoratorNode);
|
||||
return inputClassType;
|
||||
}
|
||||
|
||||
if (decoratorType.details.builtInName === 'runtime_checkable') {
|
||||
originalClassType.details.flags |= ClassTypeFlags.RuntimeCheckable;
|
||||
|
||||
@ -17943,6 +17951,11 @@ export function createTypeEvaluator(importLookup: ImportLookup, evaluatorOptions
|
||||
);
|
||||
return inputFunctionType;
|
||||
}
|
||||
|
||||
if (decoratorCallType.details.name === 'deprecated') {
|
||||
undecoratedType.details.deprecatedMessage = getCustomDeprecationMessage(decoratorNode);
|
||||
return inputFunctionType;
|
||||
}
|
||||
}
|
||||
|
||||
if (isOverloadedFunction(decoratorCallType)) {
|
||||
@ -17964,6 +17977,11 @@ export function createTypeEvaluator(importLookup: ImportLookup, evaluatorOptions
|
||||
return inputFunctionType;
|
||||
}
|
||||
|
||||
if (decoratorType.details.builtInName === 'deprecated') {
|
||||
undecoratedType.details.deprecatedMessage = getCustomDeprecationMessage(decoratorNode);
|
||||
return inputFunctionType;
|
||||
}
|
||||
|
||||
// Handle property setters and deleters.
|
||||
if (decoratorNode.expression.nodeType === ParseNodeType.MemberAccess) {
|
||||
const baseType = getTypeOfExpression(
|
||||
|
Loading…
Reference in New Issue
Block a user