2001-01-19 09:45:02 +00:00
|
|
|
/* Unicode name database interface */
|
2020-10-26 15:43:47 +00:00
|
|
|
#ifndef Py_INTERNAL_UCNHASH_H
|
|
|
|
#define Py_INTERNAL_UCNHASH_H
|
2001-01-19 09:45:02 +00:00
|
|
|
#ifdef __cplusplus
|
|
|
|
extern "C" {
|
|
|
|
#endif
|
2000-06-28 16:37:24 +00:00
|
|
|
|
2020-10-26 15:43:47 +00:00
|
|
|
#ifndef Py_BUILD_CORE
|
|
|
|
# error "this header requires Py_BUILD_CORE define"
|
|
|
|
#endif
|
|
|
|
|
2009-05-05 22:31:58 +00:00
|
|
|
/* revised ucnhash CAPI interface (exported through a "wrapper") */
|
|
|
|
|
2020-10-27 03:36:22 +00:00
|
|
|
#define PyUnicodeData_CAPSULE_NAME "unicodedata._ucnhash_CAPI"
|
2001-01-19 09:45:02 +00:00
|
|
|
|
|
|
|
typedef struct {
|
|
|
|
|
2020-10-26 18:19:36 +00:00
|
|
|
/* Get name for a given character code.
|
|
|
|
Returns non-zero if success, zero if not.
|
|
|
|
Does not set Python exceptions. */
|
|
|
|
int (*getname)(Py_UCS4 code, char* buffer, int buflen,
|
2011-10-21 18:57:36 +00:00
|
|
|
int with_alias_and_seq);
|
2001-01-19 09:45:02 +00:00
|
|
|
|
2020-10-26 18:19:36 +00:00
|
|
|
/* Get character code for a given name.
|
|
|
|
Same error handling as for getname(). */
|
|
|
|
int (*getcode)(const char* name, int namelen, Py_UCS4* code,
|
2011-10-21 18:57:36 +00:00
|
|
|
int with_named_seq);
|
2001-01-19 09:45:02 +00:00
|
|
|
|
|
|
|
} _PyUnicode_Name_CAPI;
|
|
|
|
|
2023-11-30 10:12:49 +00:00
|
|
|
extern _PyUnicode_Name_CAPI* _PyUnicode_GetNameCAPI(void);
|
|
|
|
|
2001-01-19 09:45:02 +00:00
|
|
|
#ifdef __cplusplus
|
|
|
|
}
|
|
|
|
#endif
|
2020-10-26 15:43:47 +00:00
|
|
|
#endif /* !Py_INTERNAL_UCNHASH_H */
|