28#define OBP_FTPARSER_INTERFACE_VERSION OBP_MAKE_VERSION(0, 1, 0)
30#define OBP_FTPARSER_INTERFACE_VERSION_0_2_0 OBP_MAKE_VERSION(0, 2, 0)
36#define OBP_FTPARSER_INTERFACE_VERSION_CURRENT OBP_FTPARSER_INTERFACE_VERSION_0_2_0
84 int (*get_add_word_flag)(uint64_t *flag);
144 int64_t ftparser_sizeof,
145 const char *description);
147#define OBP_REGISTER_FTPARSER(param, name, descriptor, description) \
148 obp_register_plugin_ftparser(param, \
150 OBP_FTPARSER_INTERFACE_VERSION_CURRENT, \
152 (int64_t)sizeof(descriptor), \
OBP_PUBLIC_API ObPluginCharsetInfoPtr obp_ftparser_charset_info(ObPluginFTParserParamPtr param)
OBP_PUBLIC_API void obp_ftparser_set_user_data(ObPluginFTParserParamPtr param, ObPluginDatum user_data)
set user data
OBP_PUBLIC_API ObPluginDatum obp_ftparser_user_data(ObPluginFTParserParamPtr param)
The user data of fulltext parameter
OBP_PUBLIC_API uint64_t obp_ftparser_parser_version(ObPluginFTParserParamPtr param)
ObPluginFTPaserAddWordFlag
OBP_PUBLIC_API const char * obp_ftparser_fulltext(ObPluginFTParserParamPtr param)
the fulltext is the text you should split it to tokens @NOTE the fulltext is not terminated by '\0'.
OBP_PUBLIC_API int obp_register_plugin_ftparser(ObPluginParamPtr param, const char *name, ObPluginVersion version, ObPluginFTParser *ftparser, int64_t ftparser_sizeof, const char *description)
register fulltext parser plugin @NOTE use OBP_REGISTER_FTPARSER instead
OBP_PUBLIC_API int64_t obp_ftparser_fulltext_length(ObPluginFTParserParamPtr param)
get the charsetinfo object from param
ObPluginDatum ObPluginFTParserParamPtr
full text parser add word flag
OBP_PUBLIC_API ObPluginParamPtr obp_ftparser_plugin_param(ObPluginFTParserParamPtr param)
get the plugin parameter through fulltext parser parameter
@ OBP_FTPARSER_AWF_NONE
filter words that are less than a minimum or greater than a maximum word length.
@ OBP_FTPARSER_AWF_STOPWORD
convert characters from uppercase to lowercase.
@ OBP_FTPARSER_AWF_GROUPBY_WORD
@ OBP_FTPARSER_AWF_MIN_MAX_WORD
filter by sotp word table.
@ OBP_FTPARSER_AWF_CASEDOWN
distinct and word aggregation
ObPluginDatum ObPluginCharsetInfoPtr
uint64_t ObPluginVersion
The version type
ObPluginDatum ObPluginParamPtr
@NOTE all API should be declared as C interface
void * ObPluginDatum
Used for param type
fulltext parser descriptor interface for domain index splitting a document into many tokenizations....