summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorunknown <bar@bar.mysql.r18.ru>2003-03-14 18:08:12 +0400
committerunknown <bar@bar.mysql.r18.ru>2003-03-14 18:08:12 +0400
commitaeb47edbbc10addaf7b551b8f2de17142f3ad269 (patch)
treeda8de3c08ddcdfb12acc6f34445b02a681926a01 /include
parent13d28097e7174546409f8757cbed937d9c1ab5a6 (diff)
downloadmariadb-git-aeb47edbbc10addaf7b551b8f2de17142f3ad269.tar.gz
Every charset now have its own parser state arrays
Diffstat (limited to 'include')
-rw-r--r--include/m_ctype.h18
1 files changed, 18 insertions, 0 deletions
diff --git a/include/m_ctype.h b/include/m_ctype.h
index 19c7d315f4a..43338c1942d 100644
--- a/include/m_ctype.h
+++ b/include/m_ctype.h
@@ -74,6 +74,22 @@ typedef struct my_uni_idx_st
} MY_UNI_IDX;
+enum my_lex_states
+{
+ MY_LEX_START, MY_LEX_CHAR, MY_LEX_IDENT,
+ MY_LEX_IDENT_SEP, MY_LEX_IDENT_START,
+ MY_LEX_FOUND_IDENT, MY_LEX_SIGNED_NUMBER, MY_LEX_REAL, MY_LEX_HEX_NUMBER,
+ MY_LEX_CMP_OP, MY_LEX_LONG_CMP_OP, MY_LEX_STRING, MY_LEX_COMMENT, MY_LEX_END,
+ MY_LEX_OPERATOR_OR_IDENT, MY_LEX_NUMBER_IDENT, MY_LEX_INT_OR_REAL,
+ MY_LEX_REAL_OR_POINT, MY_LEX_BOOL, MY_LEX_EOL, MY_LEX_ESCAPE,
+ MY_LEX_LONG_COMMENT, MY_LEX_END_LONG_COMMENT, MY_LEX_COLON,
+ MY_LEX_SET_VAR, MY_LEX_USER_END, MY_LEX_HOSTNAME, MY_LEX_SKIP,
+ MY_LEX_USER_VARIABLE_DELIMITER, MY_LEX_SYSTEM_VAR,
+ MY_LEX_IDENT_OR_KEYWORD, MY_LEX_IDENT_OR_HEX, MY_LEX_IDENT_OR_BIN,
+ MY_LEX_STRING_OR_DELIMITER
+};
+
+
typedef struct charset_info_st
{
uint number;
@@ -89,6 +105,8 @@ typedef struct charset_info_st
uchar *sort_order;
uint16 *tab_to_uni;
MY_UNI_IDX *tab_from_uni;
+ uchar state_map[256];
+ uchar ident_map[256];
/* Collation routines */
uint strxfrm_multiply;