I think the natural way to do this is keying it off the like= argument, and wrap the standard implementation for each await/iteration... if that works with the inferred-return-type logic. We do need to branch on the result from inspect.is* at some point, to define functions with the same characteristics!
Maybe @proxies should also do this? We'd still need to handle the yielding of generators...
This would technically be a compatibility break, almost only of things that don't work at the moment, but we'll want to check that before shipping it in a non-major version.
I think the natural way to do this is keying it off the
like=
argument, and wrap the standard implementation for each await/iteration... if that works with the inferred-return-type logic. We do need to branch on the result frominspect.is*
at some point, to define functions with the same characteristics!Maybe
@proxies
should also do this? We'd still need to handle theyield
ing of generators...This would technically be a compatibility break, almost only of things that don't work at the moment, but we'll want to check that before shipping it in a non-major version.