| OLD | NEW | 
|---|
| 1 | 1 | 
| 2 1. FTS3 Tokenizers | 2 1. FTS3 Tokenizers | 
| 3 | 3 | 
| 4   When creating a new full-text table, FTS3 allows the user to select | 4   When creating a new full-text table, FTS3 allows the user to select | 
| 5   the text tokenizer implementation to be used when indexing text | 5   the text tokenizer implementation to be used when indexing text | 
| 6   by specifying a "tokenize" clause as part of the CREATE VIRTUAL TABLE | 6   by specifying a "tokenize" clause as part of the CREATE VIRTUAL TABLE | 
| 7   statement: | 7   statement: | 
| 8 | 8 | 
| 9     CREATE VIRTUAL TABLE <table-name> USING fts3( | 9     CREATE VIRTUAL TABLE <table-name> USING fts3( | 
| 10       <columns ...> [, tokenize <tokenizer-name> [<tokenizer-args>]] | 10       <columns ...> [, tokenize <tokenizer-name> [<tokenizer-args>]] | 
| 11     ); | 11     ); | 
| 12 | 12 | 
| 13   The built-in tokenizers (valid values to pass as <tokenizer name>) are | 13   The built-in tokenizers (valid values to pass as <tokenizer name>) are | 
| 14   "simple" and "porter". | 14   "simple", "porter" and "unicode". | 
| 15 | 15 | 
| 16   <tokenizer-args> should consist of zero or more white-space separated | 16   <tokenizer-args> should consist of zero or more white-space separated | 
| 17   arguments to pass to the selected tokenizer implementation. The | 17   arguments to pass to the selected tokenizer implementation. The | 
| 18   interpretation of the arguments, if any, depends on the individual | 18   interpretation of the arguments, if any, depends on the individual | 
| 19   tokenizer. | 19   tokenizer. | 
| 20 | 20 | 
| 21 2. Custom Tokenizers | 21 2. Custom Tokenizers | 
| 22 | 22 | 
| 23   FTS3 allows users to provide custom tokenizer implementations. The | 23   FTS3 allows users to provide custom tokenizer implementations. The | 
| 24   interface used to create a new tokenizer is defined and described in | 24   interface used to create a new tokenizer is defined and described in | 
| (...skipping 99 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
| 124 | 124 | 
| 125         sqlite3_bind_text(pStmt, 1, zName, -1, SQLITE_STATIC); | 125         sqlite3_bind_text(pStmt, 1, zName, -1, SQLITE_STATIC); | 
| 126         if( SQLITE_ROW==sqlite3_step(pStmt) ){ | 126         if( SQLITE_ROW==sqlite3_step(pStmt) ){ | 
| 127           if( sqlite3_column_type(pStmt, 0)==SQLITE_BLOB ){ | 127           if( sqlite3_column_type(pStmt, 0)==SQLITE_BLOB ){ | 
| 128             memcpy(pp, sqlite3_column_blob(pStmt, 0), sizeof(*pp)); | 128             memcpy(pp, sqlite3_column_blob(pStmt, 0), sizeof(*pp)); | 
| 129           } | 129           } | 
| 130         } | 130         } | 
| 131 | 131 | 
| 132         return sqlite3_finalize(pStmt); | 132         return sqlite3_finalize(pStmt); | 
| 133       } | 133       } | 
| OLD | NEW | 
|---|