|
2 | 2 |
|
3 | 3 | #include "pybind11_tests.h" |
4 | 4 |
|
5 | | -#include <vector> |
6 | | - |
7 | 5 | namespace test_return_value_policy_override { |
8 | 6 |
|
9 | 7 | struct some_type {}; |
10 | 8 |
|
11 | | -struct data_field { |
12 | | - int value = -99; |
13 | | - |
14 | | - explicit data_field(int v) : value(v) {} |
15 | | -}; |
16 | | - |
17 | | -struct data_fields_holder { |
18 | | - std::vector<data_field> vec; |
19 | | - |
20 | | - explicit data_fields_holder(std::size_t vec_size) { |
21 | | - for (std::size_t i = 0; i < vec_size; i++) { |
22 | | - vec.emplace_back(13 + static_cast<int>(i) * 11); |
23 | | - } |
24 | | - } |
25 | | - |
26 | | - data_field *vec_at(std::size_t index) { |
27 | | - if (index >= vec.size()) { |
28 | | - return nullptr; |
29 | | - } |
30 | | - return &vec[index]; |
31 | | - } |
32 | | - |
33 | | - const data_field *vec_at_const_ptr(std::size_t index) { return vec_at(index); } |
34 | | -}; |
35 | | - |
36 | 9 | // cp = copyable, mv = movable, 1 = yes, 0 = no |
37 | 10 | struct type_cp1_mv1 { |
38 | 11 | std::string mtxt; |
@@ -183,8 +156,6 @@ std::unique_ptr<type_cp0_mv0> return_unique_pointer_nocopy_nomove() { |
183 | 156 |
|
184 | 157 | } // namespace test_return_value_policy_override |
185 | 158 |
|
186 | | -using test_return_value_policy_override::data_field; |
187 | | -using test_return_value_policy_override::data_fields_holder; |
188 | 159 | using test_return_value_policy_override::some_type; |
189 | 160 | using test_return_value_policy_override::type_cp0_mv0; |
190 | 161 | using test_return_value_policy_override::type_cp0_mv1; |
@@ -234,8 +205,6 @@ struct type_caster<some_type> : type_caster_base<some_type> { |
234 | 205 | } // namespace detail |
235 | 206 | } // namespace pybind11 |
236 | 207 |
|
237 | | -PYBIND11_SMART_HOLDER_TYPE_CASTERS(data_field) |
238 | | -PYBIND11_SMART_HOLDER_TYPE_CASTERS(data_fields_holder) |
239 | 208 | PYBIND11_SMART_HOLDER_TYPE_CASTERS(type_cp1_mv1) |
240 | 209 | PYBIND11_SMART_HOLDER_TYPE_CASTERS(type_cp0_mv1) |
241 | 210 | PYBIND11_SMART_HOLDER_TYPE_CASTERS(type_cp1_mv0) |
@@ -270,21 +239,6 @@ TEST_SUBMODULE(return_value_policy_override, m) { |
270 | 239 | }, |
271 | 240 | py::return_value_policy::_clif_automatic); |
272 | 241 |
|
273 | | - py::classh<data_field>(m, "data_field").def_readwrite("value", &data_field::value); |
274 | | - py::classh<data_fields_holder>(m, "data_fields_holder") |
275 | | - .def(py::init<std::size_t>()) |
276 | | - .def("vec_at", |
277 | | - [](const py::object &self_py, std::size_t index) { |
278 | | - auto *self = py::cast<data_fields_holder *>(self_py); |
279 | | - return py::cast( |
280 | | - self->vec_at(index), py::return_value_policy::_clif_automatic, self_py); |
281 | | - }) |
282 | | - .def("vec_at_const_ptr", [](const py::object &self_py, std::size_t index) { |
283 | | - auto *self = py::cast<data_fields_holder *>(self_py); |
284 | | - return py::cast( |
285 | | - self->vec_at_const_ptr(index), py::return_value_policy::_clif_automatic, self_py); |
286 | | - }); |
287 | | - |
288 | 242 | py::classh<type_cp1_mv1>(m, "type_cp1_mv1") |
289 | 243 | .def(py::init<std::string>()) |
290 | 244 | .def_readonly("mtxt", &type_cp1_mv1::mtxt); |
|
0 commit comments