diff options
author | unknown <bar@bar.mysql.r18.ru> | 2003-03-14 18:08:12 +0400 |
---|---|---|
committer | unknown <bar@bar.mysql.r18.ru> | 2003-03-14 18:08:12 +0400 |
commit | aeb47edbbc10addaf7b551b8f2de17142f3ad269 (patch) | |
tree | da8de3c08ddcdfb12acc6f34445b02a681926a01 /include | |
parent | 13d28097e7174546409f8757cbed937d9c1ab5a6 (diff) | |
download | mariadb-git-aeb47edbbc10addaf7b551b8f2de17142f3ad269.tar.gz |
Every charset now have its own parser state arrays
Diffstat (limited to 'include')
-rw-r--r-- | include/m_ctype.h | 18 |
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; |