|
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