mirror of
https://github.com/python/cpython.git
synced 2025-10-05 22:51:56 +00:00
[3.6] bpo-28556: Update to typing: treat subscripted generics as proxies (GH-265) (GH-268)
(cherry picked from commitabb3b8ad94
) (cherry picked from commit365cb5bb90
)
This commit is contained in:
parent
f28db60179
commit
bea9d2f648
2 changed files with 45 additions and 0 deletions
|
@ -1158,6 +1158,16 @@ class GenericMeta(TypingMeta, abc.ABCMeta):
|
|||
self.__parameters__, self.__args__, self.__origin__,
|
||||
self.__extra__, self.__orig_bases__)
|
||||
|
||||
def __setattr__(self, attr, value):
|
||||
# We consider all the subscripted genrics as proxies for original class
|
||||
if (
|
||||
attr.startswith('__') and attr.endswith('__') or
|
||||
attr.startswith('_abc_')
|
||||
):
|
||||
super(GenericMeta, self).__setattr__(attr, value)
|
||||
else:
|
||||
super(GenericMeta, _gorg(self)).__setattr__(attr, value)
|
||||
|
||||
|
||||
# Prevent checks for Generic to crash when defining Generic.
|
||||
Generic = None
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue