10#include <pybind11/functional.h>
31 py::class_<VirtClass, PyVirtClass>(m,
"VirtClass")
36 m.def(
"test_callback_py_obj", [](py::object &func) { func(); });
37 m.def(
"test_callback_std_func", [](
const std::function<
void()> &func) { func(); });
40 m.def(
"test_cross_module_gil", []() {
41 auto cm = py::module_::import(
"cross_module_gil_utils");
42 auto gil_acquire =
reinterpret_cast<void (*)()
>(
43 PyLong_AsVoidPtr(cm.attr(
"gil_acquire_funcaddr").ptr()));
44 py::gil_scoped_release gil_release;
void pure_virtual_func() override
void virtual_func() override
virtual void virtual_func()
virtual void pure_virtual_func()=0
virtual ~VirtClass()=default
VirtClass(const VirtClass &)=delete
#define PYBIND11_OVERRIDE_PURE(ret_type, cname, fn,...)
\rst Macro for pure virtual functions, this function is identical to :c:macro:PYBIND11_OVERRIDE,...
#define PYBIND11_OVERRIDE(ret_type, cname, fn,...)
\rst Macro to populate the virtual method in the trampoline class.
#define TEST_SUBMODULE(name, variable)