diff options
author | Victor Stinner <vstinner@redhat.com> | 2018-11-06 23:44:03 (GMT) |
---|---|---|
committer | GitHub <noreply@github.com> | 2018-11-06 23:44:03 (GMT) |
commit | 9fc57a384825530635ef5ec093a31d864ea14f7c (patch) | |
tree | b081652318026bc437ddbbebff9ad2e59da5f454 | |
parent | bccacd19fa7b56dcf2fbfab15992b6b94ab6666b (diff) | |
download | cpython-9fc57a384825530635ef5ec093a31d864ea14f7c.zip cpython-9fc57a384825530635ef5ec093a31d864ea14f7c.tar.gz cpython-9fc57a384825530635ef5ec093a31d864ea14f7c.tar.bz2 |
bpo-35081: Add pycore_fileutils.h (GH-10371)
Move Py_BUILD_CORE code from Include/fileutils.h to a new
Include/internal/pycore_fileutils.h file.
-rw-r--r-- | Include/fileutils.h | 59 | ||||
-rw-r--r-- | Include/internal/pycore_fileutils.h | 36 | ||||
-rw-r--r-- | Modules/getpath.c | 1 | ||||
-rw-r--r-- | Objects/unicodeobject.c | 1 | ||||
-rw-r--r-- | Python/coreconfig.c | 1 | ||||
-rw-r--r-- | Python/fileutils.c | 1 | ||||
-rw-r--r-- | Python/pathconfig.c | 1 |
7 files changed, 54 insertions, 46 deletions
diff --git a/Include/fileutils.h b/Include/fileutils.h index 232d966..fdd60ff 100644 --- a/Include/fileutils.h +++ b/Include/fileutils.h @@ -1,28 +1,9 @@ #ifndef Py_FILEUTILS_H #define Py_FILEUTILS_H - #ifdef __cplusplus extern "C" { #endif - -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03080000 -typedef enum { - _Py_ERROR_UNKNOWN=0, - _Py_ERROR_STRICT, - _Py_ERROR_SURROGATEESCAPE, - _Py_ERROR_REPLACE, - _Py_ERROR_IGNORE, - _Py_ERROR_BACKSLASHREPLACE, - _Py_ERROR_SURROGATEPASS, - _Py_ERROR_XMLCHARREFREPLACE, - _Py_ERROR_OTHER -} _Py_error_handler; - -PyAPI_FUNC(_Py_error_handler) _Py_GetErrorHandler(const char *errors); -#endif - - #if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03050000 PyAPI_FUNC(wchar_t *) Py_DecodeLocale( const char *arg, @@ -37,30 +18,22 @@ PyAPI_FUNC(char*) _Py_EncodeLocaleRaw( size_t *error_pos); #endif -#ifdef Py_BUILD_CORE -PyAPI_FUNC(int) _Py_DecodeUTF8Ex( - const char *arg, - Py_ssize_t arglen, - wchar_t **wstr, - size_t *wlen, - const char **reason, - _Py_error_handler errors); - -PyAPI_FUNC(int) _Py_EncodeUTF8Ex( - const wchar_t *text, - char **str, - size_t *error_pos, - const char **reason, - int raw_malloc, - _Py_error_handler errors); -PyAPI_FUNC(wchar_t*) _Py_DecodeUTF8_surrogateescape( - const char *arg, - Py_ssize_t arglen); -#endif +#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03080000 +typedef enum { + _Py_ERROR_UNKNOWN=0, + _Py_ERROR_STRICT, + _Py_ERROR_SURROGATEESCAPE, + _Py_ERROR_REPLACE, + _Py_ERROR_IGNORE, + _Py_ERROR_BACKSLASHREPLACE, + _Py_ERROR_SURROGATEPASS, + _Py_ERROR_XMLCHARREFREPLACE, + _Py_ERROR_OTHER +} _Py_error_handler; +PyAPI_FUNC(_Py_error_handler) _Py_GetErrorHandler(const char *errors); -#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03080000 PyAPI_FUNC(int) _Py_DecodeLocaleEx( const char *arg, wchar_t **wstr, @@ -204,13 +177,7 @@ PyAPI_FUNC(int) _Py_GetLocaleconvNumeric( #endif /* Py_LIMITED_API */ - -#ifdef Py_BUILD_CORE -PyAPI_FUNC(int) _Py_GetForceASCII(void); -#endif - #ifdef __cplusplus } #endif - #endif /* !Py_FILEUTILS_H */ diff --git a/Include/internal/pycore_fileutils.h b/Include/internal/pycore_fileutils.h new file mode 100644 index 0000000..d577e09 --- /dev/null +++ b/Include/internal/pycore_fileutils.h @@ -0,0 +1,36 @@ +#ifndef Py_INTERNAL_FILEUTILS_H +#define Py_INTERNAL_FILEUTILS_H +#ifdef __cplusplus +extern "C" { +#endif + +#ifndef Py_BUILD_CORE +# error "Py_BUILD_CORE must be defined to include this header" +#endif + +PyAPI_FUNC(int) _Py_DecodeUTF8Ex( + const char *arg, + Py_ssize_t arglen, + wchar_t **wstr, + size_t *wlen, + const char **reason, + _Py_error_handler errors); + +PyAPI_FUNC(int) _Py_EncodeUTF8Ex( + const wchar_t *text, + char **str, + size_t *error_pos, + const char **reason, + int raw_malloc, + _Py_error_handler errors); + +PyAPI_FUNC(wchar_t*) _Py_DecodeUTF8_surrogateescape( + const char *arg, + Py_ssize_t arglen); + +PyAPI_FUNC(int) _Py_GetForceASCII(void); + +#ifdef __cplusplus +} +#endif +#endif /* !Py_INTERNAL_FILEUTILS_H */ diff --git a/Modules/getpath.c b/Modules/getpath.c index 0e21071..6b443f6 100644 --- a/Modules/getpath.c +++ b/Modules/getpath.c @@ -2,6 +2,7 @@ #include "Python.h" #include "osdefs.h" +#include "pycore_fileutils.h" #include "pycore_pathconfig.h" #include "pycore_state.h" diff --git a/Objects/unicodeobject.c b/Objects/unicodeobject.c index 3692da6..5338781 100644 --- a/Objects/unicodeobject.c +++ b/Objects/unicodeobject.c @@ -40,6 +40,7 @@ OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. #define PY_SSIZE_T_CLEAN #include "Python.h" +#include "pycore_fileutils.h" #include "pycore_state.h" #include "ucnhash.h" #include "bytes_methods.h" diff --git a/Python/coreconfig.c b/Python/coreconfig.c index b6fc33c..c81cd8b 100644 --- a/Python/coreconfig.c +++ b/Python/coreconfig.c @@ -1,4 +1,5 @@ #include "Python.h" +#include "pycore_fileutils.h" #include "pycore_lifecycle.h" #include "pycore_mem.h" #include "pycore_pathconfig.h" diff --git a/Python/fileutils.c b/Python/fileutils.c index 2c4061e..c9a8e58 100644 --- a/Python/fileutils.c +++ b/Python/fileutils.c @@ -1,4 +1,5 @@ #include "Python.h" +#include "pycore_fileutils.h" #include "osdefs.h" #include <locale.h> diff --git a/Python/pathconfig.c b/Python/pathconfig.c index f8bcc28..2d8b417 100644 --- a/Python/pathconfig.c +++ b/Python/pathconfig.c @@ -3,6 +3,7 @@ #include "Python.h" #include "osdefs.h" #include "pycore_mem.h" +#include "pycore_fileutils.h" #include "pycore_pathconfig.h" #include "pycore_state.h" #include <wchar.h> |