1 /* this is sort of a hack. there's at least one place (formatting 2 floats) where some stringlib code takes a different path if it's 3 compiled as unicode. */ 4 #define STRINGLIB_IS_UNICODE 1 5 6 #define FASTSEARCH ucs4lib_fastsearch 7 #define STRINGLIB(F) ucs4lib_##F 8 #define STRINGLIB_OBJECT PyUnicodeObject 9 #define STRINGLIB_SIZEOF_CHAR 4 10 #define STRINGLIB_MAX_CHAR 0x10FFFFu 11 #define STRINGLIB_CHAR Py_UCS4 12 #define STRINGLIB_TYPE_NAME "unicode" 13 #define STRINGLIB_PARSE_CODE "U" 14 #define STRINGLIB_ISSPACE Py_UNICODE_ISSPACE 15 #define STRINGLIB_ISLINEBREAK BLOOM_LINEBREAK 16 #define STRINGLIB_ISDECIMAL Py_UNICODE_ISDECIMAL 17 #define STRINGLIB_TODECIMAL Py_UNICODE_TODECIMAL 18 #define STRINGLIB_STR PyUnicode_4BYTE_DATA 19 #define STRINGLIB_LEN PyUnicode_GET_LENGTH 20 #define STRINGLIB_NEW _PyUnicode_FromUCS4 21 #define STRINGLIB_CHECK PyUnicode_Check 22 #define STRINGLIB_CHECK_EXACT PyUnicode_CheckExact 23 24 #define STRINGLIB_TOSTR PyObject_Str 25 #define STRINGLIB_TOASCII PyObject_ASCII 26 27