On 4/26/2015 4:32 PM, Paul Sokolovsky wrote:
> Then, is the only logic for proposing __aenter__ is to reinsure against> a situation that someone starts to write async context manager, forgets> that they write async context manager, and make an __enter__ method> there. Then your implementation will announce that "async context> manager lacks __aenter__", whereas "my" approach would announce> "Async's manager __enter__ did not return awaitable value".>> Again, is that the distinction you're shooting for, or do I miss> something?
Seems like the missing __aenter__ can easily be detected by the
interpreter at compile time, but the wrong type returned would be at run
time, or after a complex type-analysis done at compile time (unlikely to
be practical).
So I think you've nailed the distinction... but I'm not the expert.
_______________________________________________
Python-Dev mailing list
Pyth...@python.org
https://mail.python.org/mailman/listinfo/python-dev
Unsubscribe: https://mail.python.org/mailman/options/python-dev/python-dev-ml%40activestate.com