| 141 | |
| 142 | template<typename T> |
| 143 | py::array_t<T> MoveToNumpyArray( Array<T> &a ) |
| 144 | { |
| 145 | if(a.Size()) { |
| 146 | py::capsule free_when_done(&a[0], [](void *f) { |
| 147 | delete [] reinterpret_cast<T *>(f); |
| 148 | }); |
| 149 | a.NothingToDelete(); |
| 150 | return py::array_t<T>(a.Size(), &a[0], free_when_done); |
| 151 | } |
| 152 | else |
| 153 | return py::array_t<T>(0, nullptr); |
| 154 | } |
| 155 | |
| 156 | |
| 157 | template<typename ... Args> |
no test coverage detected