diff options
author | unknown <bar@gw.udmsearch.izhnet.ru> | 2002-03-06 20:04:13 +0400 |
---|---|---|
committer | unknown <bar@gw.udmsearch.izhnet.ru> | 2002-03-06 20:04:13 +0400 |
commit | 654db69b8247a7e6be4e039a558f635af9abae57 (patch) | |
tree | c6287ade2a44504c39beaf6f8b3da5437184fae4 /regex/regex.h | |
parent | 325c22a784e54c0c26271d55896b60538c211724 (diff) | |
download | mariadb-git-654db69b8247a7e6be4e039a558f635af9abae57.tar.gz |
Regex library is switched to use new ctype tools
to allow usage of many character sets at a time.
include/m_ctype.h:
Added condition to simplify migrating from old ctype
Added new style toupper, tolower which accepts charset in first argument
regex/debug.c:
Added charset argument
regex/debug.ih:
added charset argument
regex/engine.c:
added charset argument
regex/engine.ih:
added charset arguent
regex/main.c:
added charset argument
regex/regcomp.c:
added CHARSET_INFO field
regex/regcomp.ih:
Added charset argument
regex/regex.h:
Added #include <m_ctype.h> for CHARSET_INFO
Added charset argument for regcomp()
regex/regex2.h:
New charset argument for ISWORD()
regex/regexec.c:
New charset argument
regex/reginit.c:
Move to new style ctype.
However still needs fixes:
instead of single static cclass variable,
each charset must have it's own variable.
sql/item_cmpfunc.cc:
Pass charset field into regcomp()
This will be fixed tommorow to use String->charset
instead of default_charset_info
Diffstat (limited to 'regex/regex.h')
-rw-r--r-- | regex/regex.h | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/regex/regex.h b/regex/regex.h index 99a0077251e..1602f66d190 100644 --- a/regex/regex.h +++ b/regex/regex.h @@ -5,6 +5,8 @@ extern "C" { #endif +#include "m_ctype.h" + /* === regex2.h === */ #ifdef _WIN64 typedef __int64 regoff_t; @@ -17,6 +19,7 @@ typedef struct { size_t re_nsub; /* number of parenthesized subexpressions */ const char *re_endp; /* end pointer for REG_PEND */ struct re_guts *re_g; /* none of your business :-) */ + CHARSET_INFO *charset; /* For ctype things */ } regex_t; typedef struct { regoff_t rm_so; /* start of match */ @@ -25,7 +28,7 @@ typedef struct { /* === regcomp.c === */ -extern int regcomp(regex_t *, const char *, int); +extern int regcomp(regex_t *, const char *, int, CHARSET_INFO *charset); #define REG_BASIC 0000 #define REG_EXTENDED 0001 #define REG_ICASE 0002 |