/
UCS
/
pybind11
Обзор
Документация
Войти
/
UCS
/
pybind11
Код
Запросы
0
Пакеты
0
Релизы
0
CI/CD
Аналитика
Безопасность
master
tests/test_async.cpp
25 строк
855 B
Ralf W. Grosse-Kunstleve
Fully-automatic clang-format with include reordering (#3713)
10 фев 2022, 23:17
Не верифицирован
10 фев 2022, 23:17
ec24786
Код
Авторство
О чём код?
/* tests/test_async.cpp -- __await__ support Copyright (c) 2019 Google Inc. All rights reserved. Use of this source code is governed by a BSD-style license that can be found in the LICENSE file. */ #include "pybind11_tests.h" TEST_SUBMODULE(async_module, m) { struct DoesNotSupportAsync {}; py::class_<DoesNotSupportAsync>(m, "DoesNotSupportAsync").def(py::init<>()); struct SupportsAsync {}; py::class_<SupportsAsync>(m, "SupportsAsync") .def(py::init<>()) .def("__await__", [](const SupportsAsync &self) -> py::object { static_cast<void>(self); py::object loop = py::module_::import("asyncio.events").attr("get_event_loop")(); py::object f = loop.attr("create_future")(); f.attr("set_result")(5); return f.attr("__await__")(); }); }