Eric V. Smith <e...@trueblade.com> added the comment:

I'm not sure what can be done with this. The problem is that the decorator 
doesn't know what's in the caller's namespace. The type being added is 
"typing.Any". If the caller doesn't import typing, then get_type_hints will 
fail (as demonstrated here).

The only thing I can think of is using a type that's in builtins. "object" 
springs to mine, but of course that's semantically incorrect.

Or, maybe I could use "dataclasses.sys.modules['typing'].Any". I don't 
currently import sys (I don't think), but this should be a cheap import. Then 
if typing.get_type_hints() is called, we know typing will have already been 
importing.

But what if "dataclasses" isn't in the caller's namespace? I guess if I could 
find some way to navigate to sys.modules from __builtins__, that would largely 
work, absent playing games with builtins.

----------

_______________________________________
Python tracker <rep...@bugs.python.org>
<https://bugs.python.org/issue37948>
_______________________________________
_______________________________________________
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com

Reply via email to