1 | /* PickleBuffer object. This is built-in for ease of use from third-party |
2 | * C extensions. |
3 | */ |
4 | |
5 | #ifndef Py_PICKLEBUFOBJECT_H |
6 | #define Py_PICKLEBUFOBJECT_H |
7 | #ifdef __cplusplus |
8 | extern "C" { |
9 | #endif |
10 | |
11 | #ifndef Py_LIMITED_API |
12 | |
13 | PyAPI_DATA(PyTypeObject) PyPickleBuffer_Type; |
14 | |
15 | #define PyPickleBuffer_Check(op) Py_IS_TYPE(op, &PyPickleBuffer_Type) |
16 | |
17 | /* Create a PickleBuffer redirecting to the given buffer-enabled object */ |
18 | PyAPI_FUNC(PyObject *) PyPickleBuffer_FromObject(PyObject *); |
19 | /* Get the PickleBuffer's underlying view to the original object |
20 | * (NULL if released) |
21 | */ |
22 | PyAPI_FUNC(const Py_buffer *) PyPickleBuffer_GetBuffer(PyObject *); |
23 | /* Release the PickleBuffer. Returns 0 on success, -1 on error. */ |
24 | PyAPI_FUNC(int) PyPickleBuffer_Release(PyObject *); |
25 | |
26 | #endif /* !Py_LIMITED_API */ |
27 | |
28 | #ifdef __cplusplus |
29 | } |
30 | #endif |
31 | #endif /* !Py_PICKLEBUFOBJECT_H */ |
32 | |