1/* Unicode name database interface */ 2#ifndef Py_INTERNAL_UCNHASH_H 3#define Py_INTERNAL_UCNHASH_H 4#ifdef __cplusplus 5extern "C" { 6#endif 7 8#ifndef Py_BUILD_CORE 9# error "this header requires Py_BUILD_CORE define" 10#endif 11 12/* revised ucnhash CAPI interface (exported through a "wrapper") */ 13 14#define PyUnicodeData_CAPSULE_NAME "unicodedata._ucnhash_CAPI" 15 16typedef struct { 17 18 /* Get name for a given character code. 19 Returns non-zero if success, zero if not. 20 Does not set Python exceptions. */ 21 int (*getname)(Py_UCS4 code, char* buffer, int buflen, 22 int with_alias_and_seq); 23 24 /* Get character code for a given name. 25 Same error handling as for getname(). */ 26 int (*getcode)(const char* name, int namelen, Py_UCS4* code, 27 int with_named_seq); 28 29} _PyUnicode_Name_CAPI; 30 31#ifdef __cplusplus 32} 33#endif 34#endif /* !Py_INTERNAL_UCNHASH_H */ 35