def __enter__(self) -> SyncPlaywright: g_self = greenlet.getcurrent() def callback_wrapper(playwright_impl: Playwright) -> None: self._playwright = SyncPlaywright(playwright_impl) g_self.switch() self._connection.call_on_object_with_known_name("Playwright", callback_wrapper) set_dispatcher_fiber(greenlet(lambda: self._connection.run_sync())) dispatcher_fiber().switch() return self._playwright
def stop_sync(self) -> None: self._transport.stop() dispatcher_fiber().switch()