Where Online Learning is simpler!
The C and C++ Include Header Files
/usr/include/python3.12/internal/pycore_unicodeobject.h
$ cat -n /usr/include/python3.12/internal/pycore_unicodeobject.h 1 #ifndef Py_INTERNAL_UNICODEOBJECT_H 2 #define Py_INTERNAL_UNICODEOBJECT_H 3 #ifdef __cplusplus 4 extern "C" { 5 #endif 6 7 #ifndef Py_BUILD_CORE 8 # error "this header requires Py_BUILD_CORE define" 9 #endif 10 11 #include "pycore_fileutils.h" // _Py_error_handler 12 #include "pycore_ucnhash.h" // _PyUnicode_Name_CAPI 13 14 void _PyUnicode_ExactDealloc(PyObject *op); 15 Py_ssize_t _PyUnicode_InternedSize(void); 16 17 /* runtime lifecycle */ 18 19 extern void _PyUnicode_InitState(PyInterpreterState *); 20 extern PyStatus _PyUnicode_InitGlobalObjects(PyInterpreterState *); 21 extern PyStatus _PyUnicode_InitTypes(PyInterpreterState *); 22 extern void _PyUnicode_Fini(PyInterpreterState *); 23 extern void _PyUnicode_FiniTypes(PyInterpreterState *); 24 25 extern PyTypeObject _PyUnicodeASCIIIter_Type; 26 27 /* other API */ 28 29 struct _Py_unicode_runtime_ids { 30 PyThread_type_lock lock; 31 // next_index value must be preserved when Py_Initialize()/Py_Finalize() 32 // is called multiple times: see _PyUnicode_FromId() implementation. 33 Py_ssize_t next_index; 34 }; 35 36 struct _Py_unicode_runtime_state { 37 struct _Py_unicode_runtime_ids ids; 38 }; 39 40 /* fs_codec.encoding is initialized to NULL. 41 Later, it is set to a non-NULL string by _PyUnicode_InitEncodings(). */ 42 struct _Py_unicode_fs_codec { 43 char *encoding; // Filesystem encoding (encoded to UTF-8) 44 int utf8; // encoding=="utf-8"? 45 char *errors; // Filesystem errors (encoded to UTF-8) 46 _Py_error_handler error_handler; 47 }; 48 49 struct _Py_unicode_ids { 50 Py_ssize_t size; 51 PyObject **array; 52 }; 53 54 struct _Py_unicode_state { 55 struct _Py_unicode_fs_codec fs_codec; 56 57 _PyUnicode_Name_CAPI *ucnhash_capi; 58 59 // Unicode identifiers (_Py_Identifier): see _PyUnicode_FromId() 60 struct _Py_unicode_ids ids; 61 }; 62 63 extern void _PyUnicode_InternInPlace(PyInterpreterState *interp, PyObject **p); 64 extern void _PyUnicode_ClearInterned(PyInterpreterState *interp); 65 66 67 #ifdef __cplusplus 68 } 69 #endif 70 #endif /* !Py_INTERNAL_UNICODEOBJECT_H */
Contact us
|
About us
|
Term of use
|
Copyright © 2000-2025 MyWebUniversity.com ™