Nick Coghlan added the comment:

I started a local PR at https://github.com/ncoghlan/cpython/pull/1/files to 
explore what this might look like in practice.

I think that what I've done so far shows that generic __frame__ and __running__ 
attributes would be sufficient to extend the inspect module's state 
introspection support to also cover async generators, while also allowing for 
the soft (i.e. documentation only) deprecation of the generator and coroutine 
specific variants of those APIs.

Issue 31183 already showed the potential value of a __code__ attribute, since 
it would allow all of the asynchronous operations to be handled by the same 
code path that already handles functions.

I'm less sure about __delegated_to__/__returns_to__, since we don't have *any* 
code in the standard library that reads gi_yieldfrom, and the only code that 
reads cr_await is a Python 3.5 compatibility hack in asyncio.

----------

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

Reply via email to