mirror of
https://github.com/postgres/postgres.git
synced 2025-11-21 00:42:43 +03:00
Add wchar -> mb conversion routines.
This is infrastructure for Alexander Korotkov's work on indexing regular expression searches. Alexander Korotkov, with a bit of further hackery on the MULE conversion by me
This commit is contained in:
@@ -710,6 +710,28 @@ pg_encoding_mb2wchar_with_len(int encoding,
|
||||
return (*pg_wchar_table[encoding].mb2wchar_with_len) ((const unsigned char *) from, to, len);
|
||||
}
|
||||
|
||||
/* convert a wchar string to a multibyte */
|
||||
int
|
||||
pg_wchar2mb(const pg_wchar *from, char *to)
|
||||
{
|
||||
return (*pg_wchar_table[DatabaseEncoding->encoding].wchar2mb_with_len) (from, (unsigned char *)to, pg_wchar_strlen(from));
|
||||
}
|
||||
|
||||
/* convert a wchar string to a multibyte with a limited length */
|
||||
int
|
||||
pg_wchar2mb_with_len(const pg_wchar *from, char *to, int len)
|
||||
{
|
||||
return (*pg_wchar_table[DatabaseEncoding->encoding].wchar2mb_with_len) (from, (unsigned char *)to, len);
|
||||
}
|
||||
|
||||
/* same, with any encoding */
|
||||
int
|
||||
pg_encoding_wchar2mb_with_len(int encoding,
|
||||
const pg_wchar *from, char *to, int len)
|
||||
{
|
||||
return (*pg_wchar_table[encoding].wchar2mb_with_len) (from, (unsigned char *)to, len);
|
||||
}
|
||||
|
||||
/* returns the byte length of a multibyte character */
|
||||
int
|
||||
pg_mblen(const char *mbstr)
|
||||
|
||||
Reference in New Issue
Block a user