()
| 132 | # CancelledError, so every cancellation crossing an async context manager surfaces as the wrong exception. |
| 133 | @asynccontextmanager |
| 134 | async def gate() -> AsyncIterator[None]: |
| 135 | await _Suspend() |
| 136 | yield |
| 137 | |
| 138 | async def body() -> None: |
| 139 | async with gate(): |