Skip to content

Commit f962e1e

Browse files
authored
gh-79315: Add Include/cpython/marshal.h header (#139725)
1 parent 25edfa7 commit f962e1e

File tree

4 files changed

+24
-18
lines changed

4 files changed

+24
-18
lines changed

Include/cpython/marshal.h

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
#ifndef _Py_CPYTHON_MARSHAL_H
2+
# error "this header file must not be included directly"
3+
#endif
4+
5+
PyAPI_FUNC(PyObject *) PyMarshal_ReadObjectFromString(const char *,
6+
Py_ssize_t);
7+
PyAPI_FUNC(PyObject *) PyMarshal_WriteObjectToString(PyObject *, int);
8+
9+
#define Py_MARSHAL_VERSION 5
10+
11+
PyAPI_FUNC(long) PyMarshal_ReadLongFromFile(FILE *);
12+
PyAPI_FUNC(int) PyMarshal_ReadShortFromFile(FILE *);
13+
PyAPI_FUNC(PyObject *) PyMarshal_ReadObjectFromFile(FILE *);
14+
PyAPI_FUNC(PyObject *) PyMarshal_ReadLastObjectFromFile(FILE *);
15+
16+
PyAPI_FUNC(void) PyMarshal_WriteLongToFile(long, FILE *, int);
17+
PyAPI_FUNC(void) PyMarshal_WriteObjectToFile(PyObject *, FILE *, int);

Include/marshal.h

Lines changed: 5 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -1,31 +1,18 @@
1-
21
/* Interface for marshal.c */
32

43
#ifndef Py_MARSHAL_H
54
#define Py_MARSHAL_H
6-
#ifndef Py_LIMITED_API
7-
85
#ifdef __cplusplus
96
extern "C" {
107
#endif
118

12-
PyAPI_FUNC(PyObject *) PyMarshal_ReadObjectFromString(const char *,
13-
Py_ssize_t);
14-
PyAPI_FUNC(PyObject *) PyMarshal_WriteObjectToString(PyObject *, int);
15-
16-
#define Py_MARSHAL_VERSION 5
17-
18-
PyAPI_FUNC(long) PyMarshal_ReadLongFromFile(FILE *);
19-
PyAPI_FUNC(int) PyMarshal_ReadShortFromFile(FILE *);
20-
PyAPI_FUNC(PyObject *) PyMarshal_ReadObjectFromFile(FILE *);
21-
PyAPI_FUNC(PyObject *) PyMarshal_ReadLastObjectFromFile(FILE *);
22-
23-
PyAPI_FUNC(void) PyMarshal_WriteLongToFile(long, FILE *, int);
24-
PyAPI_FUNC(void) PyMarshal_WriteObjectToFile(PyObject *, FILE *, int);
9+
#ifndef Py_LIMITED_API
10+
# define _Py_CPYTHON_MARSHAL_H
11+
# include "cpython/marshal.h"
12+
# undef _Py_CPYTHON_MARSHAL_H
13+
#endif
2514

2615
#ifdef __cplusplus
2716
}
2817
#endif
29-
30-
#endif /* Py_LIMITED_API */
3118
#endif /* !Py_MARSHAL_H */

Makefile.pre.in

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1271,6 +1271,7 @@ PYTHON_HEADERS= \
12711271
$(srcdir)/Include/cpython/pylock.h \
12721272
$(srcdir)/Include/cpython/longintrepr.h \
12731273
$(srcdir)/Include/cpython/longobject.h \
1274+
$(srcdir)/Include/cpython/marshal.h \
12741275
$(srcdir)/Include/cpython/memoryobject.h \
12751276
$(srcdir)/Include/cpython/methodobject.h \
12761277
$(srcdir)/Include/cpython/modsupport.h \

PCbuild/pythoncore.vcxproj

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -168,6 +168,7 @@
168168
<ClInclude Include="..\Include\cpython\pylock.h" />
169169
<ClInclude Include="..\Include\cpython\longintrepr.h" />
170170
<ClInclude Include="..\Include\cpython\longobject.h" />
171+
<ClInclude Include="..\Include\cpython\marshal.h" />
171172
<ClInclude Include="..\Include\cpython\memoryobject.h" />
172173
<ClInclude Include="..\Include\cpython\methodobject.h" />
173174
<ClInclude Include="..\Include\cpython\modsupport.h" />

0 commit comments

Comments
 (0)