Print this page
2964 need POSIX 2008 locale object support

*** 30,39 **** --- 30,41 ---- #define _COLLATE_H_ #include <sys/types.h> #include <limits.h> + #include "xlocale_private.h" + #define COLLATE_STR_LEN 24 /* should be 64-bit multiple */ #define COLLATE_VERSION "IllumosCollate2\n" #define COLLATE_MAX_PRIORITY (0x7fffffff) /* max signed value */ #define COLLATE_SUBST_PRIORITY (0x40000000) /* bit indicates subst table */
*** 90,99 **** --- 92,109 ---- typedef struct collate_subst { int32_t key; int32_t pri[COLLATE_STR_LEN]; } collate_subst_t; + struct xlocale_collate { + struct xlocale_component header; + int __collate_load_error; + int __collate_substitute_nontrivial; + + /* XXX */ + }; + int _collate_load_tables(const char *); void _collate_lookup(const wchar_t *, int *, int *, int, int **); size_t _collate_wxfrm(const wchar_t *, wchar_t *, size_t); size_t _collate_sxfrm(const wchar_t *, char *, size_t); int _collate_range_cmp(wchar_t, wchar_t);