@@ -61,21 +61,28 @@ struct vector_buffer {
6161namespace PYBIND11_NAMESPACE {
6262class cbuffer : public buffer {
6363public:
64- PYBIND11_OBJECT_DEFAULT (cbuffer, buffer, PyObject_CheckBuffer)
65-
66- buffer_info request_contiguous (bool writable = false ) const {
67- int flags = PyBUF_STRIDES | PyBUF_FORMAT | PyBUF_C_CONTIGUOUS;
68- if (writable) {
69- flags |= PyBUF_WRITABLE;
70- }
71- auto *view = new Py_buffer ();
72- if (PyObject_GetBuffer (m_ptr, view, flags) != 0 ) {
73- delete view;
74- throw error_already_set ();
75- }
76- return buffer_info (view);
77- }
64+ PYBIND11_OBJECT_DEFAULT (cbuffer, buffer, PyObject_CheckBuffer)
65+
66+ buffer_info request_contiguous (bool writable = false ) const {
67+ int flags = PyBUF_STRIDES | PyBUF_FORMAT | PyBUF_C_CONTIGUOUS;
68+ if (writable) {
69+ flags |= PyBUF_WRITABLE;
70+ }
71+ auto *view = new Py_buffer ();
72+ if (PyObject_GetBuffer (m_ptr, view, flags) != 0 ) {
73+ delete view;
74+ throw error_already_set ();
75+ }
76+ return buffer_info (view);
77+ }
7878};
79+
80+ namespace detail {
81+ template <>
82+ struct handle_type_name <cbuffer> {
83+ static constexpr auto name = const_name(" Buffer" );
84+ };
85+ }
7986}
8087
8188// Check buffer format for valid types
0 commit comments