This graph shows which files directly or indirectly include this file:

Go to the source code of this file.
Classes | |
| struct | _ft_vft |
| struct | st_ft_info |
Defines | |
| #define | HA_FT_MAXBYTELEN 254 |
| #define | HA_FT_MAXCHARLEN (HA_FT_MAXBYTELEN/3) |
| #define | FT_NL 0 |
| #define | FT_BOOL 1 |
| #define | FT_SORTED 2 |
| #define | FT_EXPAND 4 |
Typedefs | |
| typedef st_ft_info | FT_INFO |
Functions | |
| int | ft_init_stopwords (void) |
| void | ft_free_stopwords (void) |
| FT_INFO * | ft_init_search (uint, void *, uint, byte *, uint, CHARSET_INFO *, byte *) |
| my_bool | ft_boolean_check_syntax_string (const byte *) |
Variables | |
| const char * | ft_stopword_file |
| const char * | ft_precompiled_stopwords [] |
| ulong | ft_min_word_len |
| ulong | ft_max_word_len |
| ulong | ft_query_expansion_limit |
| char | ft_boolean_syntax [15] |
| st_mysql_ftparser | ft_default_parser |
| #define FT_BOOL 1 |
Definition at line 62 of file ft_global.h.
Referenced by Item_func_match::fix_fields(), Item_func_match::fix_index(), ft_init_search(), and Item_func_match::print().
| #define FT_EXPAND 4 |
Definition at line 64 of file ft_global.h.
Referenced by ft_init_nlq_search(), and Item_func_match::print().
| #define FT_NL 0 |
Definition at line 61 of file ft_global.h.
| #define FT_SORTED 2 |
Definition at line 63 of file ft_global.h.
Referenced by ft_init_nlq_search(), and Item_func_match::init_search().
| #define HA_FT_MAXBYTELEN 254 |
Definition at line 29 of file ft_global.h.
Referenced by _create_index_by_sort(), _ft_make_key(), mi_repair_by_sort(), mi_repair_parallel(), and mi_too_big_key_for_sort().
| #define HA_FT_MAXCHARLEN (HA_FT_MAXBYTELEN/3) |
Definition at line 30 of file ft_global.h.
| typedef struct st_ft_info FT_INFO |
Definition at line 32 of file ft_global.h.
Definition at line 82 of file ft_parser.c.
References default_charset_info, ft_boolean_syntax, my_isalnum, and strlen().
Referenced by get_one_option(), and sys_check_ftb_syntax().
00083 { 00084 uint i, j; 00085 00086 if (!str || 00087 (strlen(str)+1 != sizeof(ft_boolean_syntax)) || 00088 (str[0] != ' ' && str[1] != ' ')) 00089 return 1; 00090 for (i=0; i<sizeof(ft_boolean_syntax); i++) 00091 { 00092 /* limiting to 7-bit ascii only */ 00093 if ((unsigned char)(str[i]) > 127 || my_isalnum(default_charset_info, str[i])) 00094 return 1; 00095 for (j=0; j<i; j++) 00096 if (str[i] == str[j] && (i != 11 || j != 10)) 00097 return 1; 00098 } 00099 return 0; 00100 }
Here is the call graph for this function:

Here is the caller graph for this function:

| void ft_free_stopwords | ( | void | ) |
Definition at line 120 of file ft_stopwords.c.
References delete_tree(), ft_stopword_file, my_free, MYF, and stopwords3.
Referenced by main(), and mi_panic().
00121 { 00122 if (stopwords3) 00123 { 00124 delete_tree(stopwords3); /* purecov: inspected */ 00125 my_free((char*) stopwords3,MYF(0)); 00126 stopwords3=0; 00127 } 00128 ft_stopword_file= 0; 00129 }
Here is the call graph for this function:

Here is the caller graph for this function:

Definition at line 59 of file ft_static.c.
References FT_BOOL, ft_init_boolean_search(), and ft_init_nlq_search().
Referenced by ha_myisam::ft_init_ext().
00062 { 00063 FT_INFO *res; 00064 if (flags & FT_BOOL) 00065 res= ft_init_boolean_search((MI_INFO *)info, keynr, query, query_len,cs); 00066 else 00067 res= ft_init_nlq_search((MI_INFO *)info, keynr, query, query_len, flags, 00068 record); 00069 return res; 00070 }
Here is the call graph for this function:

Here is the caller graph for this function:

| int ft_init_stopwords | ( | void | ) |
Definition at line 53 of file ft_stopwords.c.
References buffer, default_charset_info, error, ft_add_stopword(), ft_precompiled_stopwords, ft_simple_get_word(), FT_STOPWORD_cmp(), ft_stopword_file, FT_STOPWORD_free(), init_tree(), st_ft_word::len, my_close(), my_free, my_malloc(), my_open(), my_read, my_seek(), MY_SEEK_END, MY_SEEK_SET, my_strndup(), MY_WME, MYF, NULL, st_ft_word::pos, start(), stopwords3, and TRUE.
Referenced by init_server_components(), main(), myisamchk(), and run_test().
00054 { 00055 if (!stopwords3) 00056 { 00057 if (!(stopwords3=(TREE *)my_malloc(sizeof(TREE),MYF(0)))) 00058 return -1; 00059 init_tree(stopwords3,0,0,sizeof(FT_STOPWORD),(qsort_cmp2)&FT_STOPWORD_cmp, 00060 0, 00061 (ft_stopword_file ? (tree_element_free)&FT_STOPWORD_free : 0), 00062 NULL); 00063 } 00064 00065 if (ft_stopword_file) 00066 { 00067 File fd; 00068 uint len; 00069 byte *buffer, *start, *end; 00070 FT_WORD w; 00071 int error=-1; 00072 00073 if (!*ft_stopword_file) 00074 return 0; 00075 00076 if ((fd=my_open(ft_stopword_file, O_RDONLY, MYF(MY_WME))) == -1) 00077 return -1; 00078 len=(uint)my_seek(fd, 0L, MY_SEEK_END, MYF(0)); 00079 my_seek(fd, 0L, MY_SEEK_SET, MYF(0)); 00080 if (!(start=buffer=my_malloc(len+1, MYF(MY_WME)))) 00081 goto err0; 00082 len=my_read(fd, buffer, len, MYF(MY_WME)); 00083 end=start+len; 00084 while (ft_simple_get_word(default_charset_info, &start, end, &w, TRUE)) 00085 { 00086 if (ft_add_stopword(my_strndup(w.pos, w.len, MYF(0)))) 00087 goto err1; 00088 } 00089 error=0; 00090 err1: 00091 my_free(buffer, MYF(0)); 00092 err0: 00093 my_close(fd, MYF(MY_WME)); 00094 return error; 00095 } 00096 else 00097 { 00098 /* compatibility mode: to be removed */ 00099 char **sws=(char **)ft_precompiled_stopwords; 00100 00101 for (;*sws;sws++) 00102 { 00103 if (ft_add_stopword(*sws)) 00104 return -1; 00105 } 00106 ft_stopword_file="(built-in)"; /* for SHOW VARIABLES */ 00107 } 00108 return 0; 00109 }
Here is the call graph for this function:

Here is the caller graph for this function:

| char ft_boolean_syntax[15] |
Definition at line 24 of file ft_static.c.
Referenced by ft_boolean_check_syntax_string(), get_one_option(), get_options(), sys_default_ftb_syntax(), and sys_update_ftb_syntax().
Definition at line 635 of file ft_static.c.
Referenced by _ftb_climb_the_tree(), ft_boolean_find_relevance(), ft_init_boolean_search(), and mi_keydef_read().
Definition at line 21 of file ft_static.c.
Referenced by ft_add_stopword(), ft_get_word(), ft_simple_get_word(), and mi_repair_by_sort().
| const char* ft_precompiled_stopwords[] |
Definition at line 73 of file ft_static.c.
Referenced by ft_init_stopwords(), get_one_option(), and run_test().
| const char* ft_stopword_file |
Definition at line 72 of file ft_static.c.
Referenced by ft_free_stopwords(), and ft_init_stopwords().
1.4.7

