OLD | NEW |
1 /* | 1 /* |
2 ** 2006 July 10 | 2 ** 2006 July 10 |
3 ** | 3 ** |
4 ** The author disclaims copyright to this source code. | 4 ** The author disclaims copyright to this source code. |
5 ** | 5 ** |
6 ************************************************************************* | 6 ************************************************************************* |
7 ** Defines the interface to tokenizers used by fulltext-search. There | 7 ** Defines the interface to tokenizers used by fulltext-search. There |
8 ** are three basic components: | 8 ** are three basic components: |
9 ** | 9 ** |
10 ** sqlite3_tokenizer_module is a singleton defining the tokenizer | 10 ** sqlite3_tokenizer_module is a singleton defining the tokenizer |
(...skipping 52 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
63 ** the following SQL is executed: | 63 ** the following SQL is executed: |
64 ** | 64 ** |
65 ** CREATE .. USING fts2( ... , tokenizer <tokenizer-name> arg1 arg2) | 65 ** CREATE .. USING fts2( ... , tokenizer <tokenizer-name> arg1 arg2) |
66 ** | 66 ** |
67 ** then argc is set to 2, and the argv[] array contains pointers | 67 ** then argc is set to 2, and the argv[] array contains pointers |
68 ** to the strings "arg1" and "arg2". | 68 ** to the strings "arg1" and "arg2". |
69 ** | 69 ** |
70 ** This method should return either SQLITE_OK (0), or an SQLite error | 70 ** This method should return either SQLITE_OK (0), or an SQLite error |
71 ** code. If SQLITE_OK is returned, then *ppTokenizer should be set | 71 ** code. If SQLITE_OK is returned, then *ppTokenizer should be set |
72 ** to point at the newly created tokenizer structure. The generic | 72 ** to point at the newly created tokenizer structure. The generic |
73 ** sqlite3_tokenizer.pModule variable should not be initialised by | 73 ** sqlite3_tokenizer.pModule variable should not be initialized by |
74 ** this callback. The caller will do so. | 74 ** this callback. The caller will do so. |
75 */ | 75 */ |
76 int (*xCreate)( | 76 int (*xCreate)( |
77 int argc, /* Size of argv array */ | 77 int argc, /* Size of argv array */ |
78 const char *const*argv, /* Tokenizer argument strings */ | 78 const char *const*argv, /* Tokenizer argument strings */ |
79 sqlite3_tokenizer **ppTokenizer /* OUT: Created tokenizer */ | 79 sqlite3_tokenizer **ppTokenizer /* OUT: Created tokenizer */ |
80 ); | 80 ); |
81 | 81 |
82 /* | 82 /* |
83 ** Destroy an existing tokenizer. The fts2 module calls this method | 83 ** Destroy an existing tokenizer. The fts2 module calls this method |
(...skipping 52 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
136 const sqlite3_tokenizer_module *pModule; /* The module for this tokenizer */ | 136 const sqlite3_tokenizer_module *pModule; /* The module for this tokenizer */ |
137 /* Tokenizer implementations will typically add additional fields */ | 137 /* Tokenizer implementations will typically add additional fields */ |
138 }; | 138 }; |
139 | 139 |
140 struct sqlite3_tokenizer_cursor { | 140 struct sqlite3_tokenizer_cursor { |
141 sqlite3_tokenizer *pTokenizer; /* Tokenizer for this cursor. */ | 141 sqlite3_tokenizer *pTokenizer; /* Tokenizer for this cursor. */ |
142 /* Tokenizer implementations will typically add additional fields */ | 142 /* Tokenizer implementations will typically add additional fields */ |
143 }; | 143 }; |
144 | 144 |
145 #endif /* _FTS2_TOKENIZER_H_ */ | 145 #endif /* _FTS2_TOKENIZER_H_ */ |
OLD | NEW |