summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBruce Momjian2008-06-17 16:09:06 +0000
committerBruce Momjian2008-06-17 16:09:06 +0000
commite23c2307efdcc02aaa5ea749a69af27c5f179e0d (patch)
tree6eeee5d8f045efb81dfddec94ec6feeb00101c21
parent23058c10af4e5c854dee0a08a2c8726985067b8b (diff)
Move USE_WIDE_UPPER_LOWER define to c.h, and remove TS_USE_WIDE and use
USE_WIDE_UPPER_LOWER instead.
-rw-r--r--src/backend/tsearch/regis.c2
-rw-r--r--src/backend/tsearch/ts_locale.c8
-rw-r--r--src/backend/tsearch/wparser_def.c12
-rw-r--r--src/backend/utils/adt/formatting.c3
-rw-r--r--src/backend/utils/adt/oracle_compat.c6
-rw-r--r--src/include/c.h8
-rw-r--r--src/include/tsearch/ts_locale.h10
7 files changed, 24 insertions, 25 deletions
diff --git a/src/backend/tsearch/regis.c b/src/backend/tsearch/regis.c
index 3f4a7754c4..1350475bac 100644
--- a/src/backend/tsearch/regis.c
+++ b/src/backend/tsearch/regis.c
@@ -178,7 +178,7 @@ RS_free(Regis *r)
r->node = NULL;
}
-#ifdef TS_USE_WIDE
+#ifdef USE_WIDE_UPPER_LOWER
static bool
mb_strchr(char *str, char *c)
{
diff --git a/src/backend/tsearch/ts_locale.c b/src/backend/tsearch/ts_locale.c
index a656e34e21..7ed6522e7a 100644
--- a/src/backend/tsearch/ts_locale.c
+++ b/src/backend/tsearch/ts_locale.c
@@ -17,7 +17,7 @@
#include "tsearch/ts_public.h"
-#ifdef TS_USE_WIDE
+#ifdef USE_WIDE_UPPER_LOWER
/*
* wchar2char --- convert wide characters to multibyte format
@@ -190,7 +190,7 @@ t_isprint(const char *ptr)
return iswprint((wint_t) character[0]);
}
-#endif /* TS_USE_WIDE */
+#endif /* USE_WIDE_UPPER_LOWER */
/*
@@ -260,7 +260,7 @@ lowerstr_with_len(const char *str, int len)
if (len == 0)
return pstrdup("");
-#ifdef TS_USE_WIDE
+#ifdef USE_WIDE_UPPER_LOWER
/*
* Use wide char code only when max encoding length > 1 and ctype != C.
@@ -307,7 +307,7 @@ lowerstr_with_len(const char *str, int len)
Assert(wlen < len);
}
else
-#endif /* TS_USE_WIDE */
+#endif /* USE_WIDE_UPPER_LOWER */
{
const char *ptr = str;
char *outptr;
diff --git a/src/backend/tsearch/wparser_def.c b/src/backend/tsearch/wparser_def.c
index 4400e6489b..9934e467cd 100644
--- a/src/backend/tsearch/wparser_def.c
+++ b/src/backend/tsearch/wparser_def.c
@@ -238,7 +238,7 @@ typedef struct TParser
/* string and position information */
char *str; /* multibyte string */
int lenstr; /* length of mbstring */
-#ifdef TS_USE_WIDE
+#ifdef USE_WIDE_UPPER_LOWER
wchar_t *wstr; /* wide character string */
int lenwstr; /* length of wsting */
#endif
@@ -291,7 +291,7 @@ TParserInit(char *str, int len)
prs->str = str;
prs->lenstr = len;
-#ifdef TS_USE_WIDE
+#ifdef USE_WIDE_UPPER_LOWER
/*
* Use wide char code only when max encoding length > 1.
@@ -328,7 +328,7 @@ TParserClose(TParser *prs)
prs->state = ptr;
}
-#ifdef TS_USE_WIDE
+#ifdef USE_WIDE_UPPER_LOWER
if (prs->wstr)
pfree(prs->wstr);
#endif
@@ -344,7 +344,7 @@ TParserClose(TParser *prs)
* often are used for Asian languages
*/
-#ifdef TS_USE_WIDE
+#ifdef USE_WIDE_UPPER_LOWER
#define p_iswhat(type) \
static int \
@@ -439,7 +439,7 @@ p_iseq(TParser *prs, char c)
Assert(prs->state);
return ((prs->state->charlen == 1 && *(prs->str + prs->state->posbyte) == c)) ? 1 : 0;
}
-#else /* TS_USE_WIDE */
+#else /* USE_WIDE_UPPER_LOWER */
#define p_iswhat(type) \
static int \
@@ -463,7 +463,7 @@ p_iseq(TParser *prs, char c)
p_iswhat(alnum)
p_iswhat(alpha)
-#endif /* TS_USE_WIDE */
+#endif /* USE_WIDE_UPPER_LOWER */
p_iswhat(digit)
p_iswhat(lower)
diff --git a/src/backend/utils/adt/formatting.c b/src/backend/utils/adt/formatting.c
index 80f6203ba1..303b3055c3 100644
--- a/src/backend/utils/adt/formatting.c
+++ b/src/backend/utils/adt/formatting.c
@@ -948,8 +948,7 @@ static NUMCacheEntry *NUM_cache_search(char *str);
static NUMCacheEntry *NUM_cache_getnew(char *str);
static void NUM_cache_remove(NUMCacheEntry *ent);
-#if defined(HAVE_WCSTOMBS) && defined(HAVE_TOWLOWER)
-#define USE_WIDE_UPPER_LOWER
+#ifdef USE_WIDE_UPPER_LOWER
/* externs are in oracle_compat.c */
extern char *wstring_upper(char *str);
extern char *wstring_lower(char *str);
diff --git a/src/backend/utils/adt/oracle_compat.c b/src/backend/utils/adt/oracle_compat.c
index 64fa39dfa2..fb76e3f04f 100644
--- a/src/backend/utils/adt/oracle_compat.c
+++ b/src/backend/utils/adt/oracle_compat.c
@@ -40,12 +40,8 @@
* functions, which of course will not work as desired in multibyte character
* sets. Note that in either case we are effectively assuming that the
* database character encoding matches the encoding implied by LC_CTYPE.
- *
- * We assume if we have these two functions, we have their friends too, and
- * can use the wide-character method.
*/
-#if defined(HAVE_WCSTOMBS) && defined(HAVE_TOWLOWER)
-#define USE_WIDE_UPPER_LOWER
+#ifdef USE_WIDE_UPPER_LOWER
char *wstring_lower(char *str);
char *wstring_upper(char *str);
wchar_t *texttowcs(const text *txt);
diff --git a/src/include/c.h b/src/include/c.h
index e0717249c1..1a00309281 100644
--- a/src/include/c.h
+++ b/src/include/c.h
@@ -813,6 +813,14 @@ extern int fdatasync(int fildes);
#define HAVE_STRTOULL 1
#endif
+/*
+ * We assume if we have these two functions, we have their friends too, and
+ * can use the wide-character functions.
+ */
+#if defined(HAVE_WCSTOMBS) && defined(HAVE_TOWLOWER)
+#define USE_WIDE_UPPER_LOWER
+#endif
+
/* EXEC_BACKEND defines */
#ifdef EXEC_BACKEND
#define NON_EXEC_STATIC
diff --git a/src/include/tsearch/ts_locale.h b/src/include/tsearch/ts_locale.h
index 07cd9ee686..2beb3a5f92 100644
--- a/src/include/tsearch/ts_locale.h
+++ b/src/include/tsearch/ts_locale.h
@@ -29,13 +29,9 @@
#include <wctype.h>
#endif
-#if defined(HAVE_WCSTOMBS) && defined(HAVE_TOWLOWER)
-#define TS_USE_WIDE
-#endif
-
#define TOUCHAR(x) (*((const unsigned char *) (x)))
-#ifdef TS_USE_WIDE
+#ifdef USE_WIDE_UPPER_LOWER
extern size_t wchar2char(char *to, const wchar_t *from, size_t tolen);
extern size_t char2wchar(wchar_t *to, size_t tolen, const char *from, size_t fromlen);
@@ -49,7 +45,7 @@ extern int t_isprint(const char *ptr);
#define t_iseq(x,c) (TOUCHAR(x) == (unsigned char) (c))
#define COPYCHAR(d,s) memcpy(d, s, pg_mblen(s))
-#else /* not TS_USE_WIDE */
+#else /* not USE_WIDE_UPPER_LOWER */
#define t_isdigit(x) isdigit(TOUCHAR(x))
#define t_isspace(x) isspace(TOUCHAR(x))
@@ -58,7 +54,7 @@ extern int t_isprint(const char *ptr);
#define t_iseq(x,c) (TOUCHAR(x) == (unsigned char) (c))
#define COPYCHAR(d,s) (*((unsigned char *) (d)) = TOUCHAR(s))
-#endif /* TS_USE_WIDE */
+#endif /* USE_WIDE_UPPER_LOWER */
extern char *lowerstr(const char *str);
extern char *lowerstr_with_len(const char *str, int len);