Move USE_WIDE_UPPER_LOWER define to c.h, and remove TS_USE_WIDE and use
USE_WIDE_UPPER_LOWER instead.
This commit is contained in:
parent
2e835a4961
commit
dc69c0362f
|
@ -7,7 +7,7 @@
|
||||||
*
|
*
|
||||||
*
|
*
|
||||||
* IDENTIFICATION
|
* IDENTIFICATION
|
||||||
* $PostgreSQL: pgsql/src/backend/tsearch/regis.c,v 1.4 2008/01/21 02:46:10 tgl Exp $
|
* $PostgreSQL: pgsql/src/backend/tsearch/regis.c,v 1.5 2008/06/17 16:09:06 momjian Exp $
|
||||||
*
|
*
|
||||||
*-------------------------------------------------------------------------
|
*-------------------------------------------------------------------------
|
||||||
*/
|
*/
|
||||||
|
@ -178,7 +178,7 @@ RS_free(Regis *r)
|
||||||
r->node = NULL;
|
r->node = NULL;
|
||||||
}
|
}
|
||||||
|
|
||||||
#ifdef TS_USE_WIDE
|
#ifdef USE_WIDE_UPPER_LOWER
|
||||||
static bool
|
static bool
|
||||||
mb_strchr(char *str, char *c)
|
mb_strchr(char *str, char *c)
|
||||||
{
|
{
|
||||||
|
|
|
@ -7,7 +7,7 @@
|
||||||
*
|
*
|
||||||
*
|
*
|
||||||
* IDENTIFICATION
|
* IDENTIFICATION
|
||||||
* $PostgreSQL: pgsql/src/backend/tsearch/ts_locale.c,v 1.7 2008/01/01 19:45:52 momjian Exp $
|
* $PostgreSQL: pgsql/src/backend/tsearch/ts_locale.c,v 1.8 2008/06/17 16:09:06 momjian Exp $
|
||||||
*
|
*
|
||||||
*-------------------------------------------------------------------------
|
*-------------------------------------------------------------------------
|
||||||
*/
|
*/
|
||||||
|
@ -17,7 +17,7 @@
|
||||||
#include "tsearch/ts_public.h"
|
#include "tsearch/ts_public.h"
|
||||||
|
|
||||||
|
|
||||||
#ifdef TS_USE_WIDE
|
#ifdef USE_WIDE_UPPER_LOWER
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* wchar2char --- convert wide characters to multibyte format
|
* wchar2char --- convert wide characters to multibyte format
|
||||||
|
@ -190,7 +190,7 @@ t_isprint(const char *ptr)
|
||||||
|
|
||||||
return iswprint((wint_t) character[0]);
|
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)
|
if (len == 0)
|
||||||
return pstrdup("");
|
return pstrdup("");
|
||||||
|
|
||||||
#ifdef TS_USE_WIDE
|
#ifdef USE_WIDE_UPPER_LOWER
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Use wide char code only when max encoding length > 1 and ctype != C.
|
* 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);
|
Assert(wlen < len);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
#endif /* TS_USE_WIDE */
|
#endif /* USE_WIDE_UPPER_LOWER */
|
||||||
{
|
{
|
||||||
const char *ptr = str;
|
const char *ptr = str;
|
||||||
char *outptr;
|
char *outptr;
|
||||||
|
|
|
@ -7,7 +7,7 @@
|
||||||
*
|
*
|
||||||
*
|
*
|
||||||
* IDENTIFICATION
|
* IDENTIFICATION
|
||||||
* $PostgreSQL: pgsql/src/backend/tsearch/wparser_def.c,v 1.14 2008/01/01 19:45:52 momjian Exp $
|
* $PostgreSQL: pgsql/src/backend/tsearch/wparser_def.c,v 1.15 2008/06/17 16:09:06 momjian Exp $
|
||||||
*
|
*
|
||||||
*-------------------------------------------------------------------------
|
*-------------------------------------------------------------------------
|
||||||
*/
|
*/
|
||||||
|
@ -238,7 +238,7 @@ typedef struct TParser
|
||||||
/* string and position information */
|
/* string and position information */
|
||||||
char *str; /* multibyte string */
|
char *str; /* multibyte string */
|
||||||
int lenstr; /* length of mbstring */
|
int lenstr; /* length of mbstring */
|
||||||
#ifdef TS_USE_WIDE
|
#ifdef USE_WIDE_UPPER_LOWER
|
||||||
wchar_t *wstr; /* wide character string */
|
wchar_t *wstr; /* wide character string */
|
||||||
int lenwstr; /* length of wsting */
|
int lenwstr; /* length of wsting */
|
||||||
#endif
|
#endif
|
||||||
|
@ -291,7 +291,7 @@ TParserInit(char *str, int len)
|
||||||
prs->str = str;
|
prs->str = str;
|
||||||
prs->lenstr = len;
|
prs->lenstr = len;
|
||||||
|
|
||||||
#ifdef TS_USE_WIDE
|
#ifdef USE_WIDE_UPPER_LOWER
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Use wide char code only when max encoding length > 1.
|
* Use wide char code only when max encoding length > 1.
|
||||||
|
@ -328,7 +328,7 @@ TParserClose(TParser *prs)
|
||||||
prs->state = ptr;
|
prs->state = ptr;
|
||||||
}
|
}
|
||||||
|
|
||||||
#ifdef TS_USE_WIDE
|
#ifdef USE_WIDE_UPPER_LOWER
|
||||||
if (prs->wstr)
|
if (prs->wstr)
|
||||||
pfree(prs->wstr);
|
pfree(prs->wstr);
|
||||||
#endif
|
#endif
|
||||||
|
@ -344,7 +344,7 @@ TParserClose(TParser *prs)
|
||||||
* often are used for Asian languages
|
* often are used for Asian languages
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#ifdef TS_USE_WIDE
|
#ifdef USE_WIDE_UPPER_LOWER
|
||||||
|
|
||||||
#define p_iswhat(type) \
|
#define p_iswhat(type) \
|
||||||
static int \
|
static int \
|
||||||
|
@ -439,7 +439,7 @@ p_iseq(TParser *prs, char c)
|
||||||
Assert(prs->state);
|
Assert(prs->state);
|
||||||
return ((prs->state->charlen == 1 && *(prs->str + prs->state->posbyte) == c)) ? 1 : 0;
|
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) \
|
#define p_iswhat(type) \
|
||||||
static int \
|
static int \
|
||||||
|
@ -463,7 +463,7 @@ p_iseq(TParser *prs, char c)
|
||||||
|
|
||||||
p_iswhat(alnum)
|
p_iswhat(alnum)
|
||||||
p_iswhat(alpha)
|
p_iswhat(alpha)
|
||||||
#endif /* TS_USE_WIDE */
|
#endif /* USE_WIDE_UPPER_LOWER */
|
||||||
|
|
||||||
p_iswhat(digit)
|
p_iswhat(digit)
|
||||||
p_iswhat(lower)
|
p_iswhat(lower)
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
/* -----------------------------------------------------------------------
|
/* -----------------------------------------------------------------------
|
||||||
* formatting.c
|
* formatting.c
|
||||||
*
|
*
|
||||||
* $PostgreSQL: pgsql/src/backend/utils/adt/formatting.c,v 1.141 2008/05/20 01:41:02 momjian Exp $
|
* $PostgreSQL: pgsql/src/backend/utils/adt/formatting.c,v 1.142 2008/06/17 16:09:06 momjian Exp $
|
||||||
*
|
*
|
||||||
*
|
*
|
||||||
* Portions Copyright (c) 1999-2008, PostgreSQL Global Development Group
|
* Portions Copyright (c) 1999-2008, PostgreSQL Global Development Group
|
||||||
|
@ -948,8 +948,7 @@ static NUMCacheEntry *NUM_cache_search(char *str);
|
||||||
static NUMCacheEntry *NUM_cache_getnew(char *str);
|
static NUMCacheEntry *NUM_cache_getnew(char *str);
|
||||||
static void NUM_cache_remove(NUMCacheEntry *ent);
|
static void NUM_cache_remove(NUMCacheEntry *ent);
|
||||||
|
|
||||||
#if defined(HAVE_WCSTOMBS) && defined(HAVE_TOWLOWER)
|
#ifdef USE_WIDE_UPPER_LOWER
|
||||||
#define USE_WIDE_UPPER_LOWER
|
|
||||||
/* externs are in oracle_compat.c */
|
/* externs are in oracle_compat.c */
|
||||||
extern char *wstring_upper(char *str);
|
extern char *wstring_upper(char *str);
|
||||||
extern char *wstring_lower(char *str);
|
extern char *wstring_lower(char *str);
|
||||||
|
|
|
@ -9,7 +9,7 @@
|
||||||
*
|
*
|
||||||
*
|
*
|
||||||
* IDENTIFICATION
|
* IDENTIFICATION
|
||||||
* $PostgreSQL: pgsql/src/backend/utils/adt/oracle_compat.c,v 1.79 2008/05/19 18:08:16 tgl Exp $
|
* $PostgreSQL: pgsql/src/backend/utils/adt/oracle_compat.c,v 1.80 2008/06/17 16:09:06 momjian Exp $
|
||||||
*
|
*
|
||||||
*-------------------------------------------------------------------------
|
*-------------------------------------------------------------------------
|
||||||
*/
|
*/
|
||||||
|
@ -40,12 +40,8 @@
|
||||||
* functions, which of course will not work as desired in multibyte character
|
* functions, which of course will not work as desired in multibyte character
|
||||||
* sets. Note that in either case we are effectively assuming that the
|
* sets. Note that in either case we are effectively assuming that the
|
||||||
* database character encoding matches the encoding implied by LC_CTYPE.
|
* 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)
|
#ifdef USE_WIDE_UPPER_LOWER
|
||||||
#define USE_WIDE_UPPER_LOWER
|
|
||||||
char *wstring_lower(char *str);
|
char *wstring_lower(char *str);
|
||||||
char *wstring_upper(char *str);
|
char *wstring_upper(char *str);
|
||||||
wchar_t *texttowcs(const text *txt);
|
wchar_t *texttowcs(const text *txt);
|
||||||
|
|
|
@ -12,7 +12,7 @@
|
||||||
* Portions Copyright (c) 1996-2008, PostgreSQL Global Development Group
|
* Portions Copyright (c) 1996-2008, PostgreSQL Global Development Group
|
||||||
* Portions Copyright (c) 1994, Regents of the University of California
|
* Portions Copyright (c) 1994, Regents of the University of California
|
||||||
*
|
*
|
||||||
* $PostgreSQL: pgsql/src/include/c.h,v 1.226 2008/04/21 00:26:46 tgl Exp $
|
* $PostgreSQL: pgsql/src/include/c.h,v 1.227 2008/06/17 16:09:06 momjian Exp $
|
||||||
*
|
*
|
||||||
*-------------------------------------------------------------------------
|
*-------------------------------------------------------------------------
|
||||||
*/
|
*/
|
||||||
|
@ -813,6 +813,14 @@ extern int fdatasync(int fildes);
|
||||||
#define HAVE_STRTOULL 1
|
#define HAVE_STRTOULL 1
|
||||||
#endif
|
#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 */
|
/* EXEC_BACKEND defines */
|
||||||
#ifdef EXEC_BACKEND
|
#ifdef EXEC_BACKEND
|
||||||
#define NON_EXEC_STATIC
|
#define NON_EXEC_STATIC
|
||||||
|
|
|
@ -5,7 +5,7 @@
|
||||||
*
|
*
|
||||||
* Copyright (c) 1998-2008, PostgreSQL Global Development Group
|
* Copyright (c) 1998-2008, PostgreSQL Global Development Group
|
||||||
*
|
*
|
||||||
* $PostgreSQL: pgsql/src/include/tsearch/ts_locale.h,v 1.5 2008/01/01 19:45:59 momjian Exp $
|
* $PostgreSQL: pgsql/src/include/tsearch/ts_locale.h,v 1.6 2008/06/17 16:09:06 momjian Exp $
|
||||||
*
|
*
|
||||||
*-------------------------------------------------------------------------
|
*-------------------------------------------------------------------------
|
||||||
*/
|
*/
|
||||||
|
@ -29,13 +29,9 @@
|
||||||
#include <wctype.h>
|
#include <wctype.h>
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#if defined(HAVE_WCSTOMBS) && defined(HAVE_TOWLOWER)
|
|
||||||
#define TS_USE_WIDE
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#define TOUCHAR(x) (*((const unsigned char *) (x)))
|
#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 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);
|
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 t_iseq(x,c) (TOUCHAR(x) == (unsigned char) (c))
|
||||||
|
|
||||||
#define COPYCHAR(d,s) memcpy(d, s, pg_mblen(s))
|
#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_isdigit(x) isdigit(TOUCHAR(x))
|
||||||
#define t_isspace(x) isspace(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 t_iseq(x,c) (TOUCHAR(x) == (unsigned char) (c))
|
||||||
|
|
||||||
#define COPYCHAR(d,s) (*((unsigned char *) (d)) = TOUCHAR(s))
|
#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(const char *str);
|
||||||
extern char *lowerstr_with_len(const char *str, int len);
|
extern char *lowerstr_with_len(const char *str, int len);
|
||||||
|
|
Loading…
Reference in New Issue