diff options
author | Philip Van Hoof <philip@codeminded.be> | 2014-12-01 14:07:16 +0100 |
---|---|---|
committer | Philip Van Hoof <philip@codeminded.be> | 2014-12-01 14:07:16 +0100 |
commit | 5d05f68da10ef5a2c25fba4246120ce525035d51 (patch) | |
tree | f40db3e46953ef15f0dc7db5a5685711cbd79f18 /src/libtracker-common/tracker-parser.h | |
parent | 8d64b9783d3aebff2d9259068c402a9e1c1a81e4 (diff) | |
download | tracker-5d05f68da10ef5a2c25fba4246120ce525035d51.tar.gz |
Refactor tracker-parser to be located in libtracker-common
This also fixes the unaccenting SPARQL function in case of --disable-tracker-fts
Diffstat (limited to 'src/libtracker-common/tracker-parser.h')
-rw-r--r-- | src/libtracker-common/tracker-parser.h | 60 |
1 files changed, 60 insertions, 0 deletions
diff --git a/src/libtracker-common/tracker-parser.h b/src/libtracker-common/tracker-parser.h new file mode 100644 index 000000000..e6cb10e06 --- /dev/null +++ b/src/libtracker-common/tracker-parser.h @@ -0,0 +1,60 @@ +/* + * Copyright (C) 2006, Jamie McCracken <jamiemcc@gnome.org> + * Copyright (C) 2008, Nokia <ivan.frade@nokia.com> + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA + * 02110-1301 USA + */ + +#ifndef __LIBTRACKER_FTS_PARSER_H__ +#define __LIBTRACKER_FTS_PARSER_H__ + +#include <glib.h> + +#include <libtracker-common/tracker-language.h> + +G_BEGIN_DECLS + +typedef struct TrackerParser TrackerParser; + +TrackerParser *tracker_parser_new (TrackerLanguage *language); + +void tracker_parser_reset (TrackerParser *parser, + const gchar *txt, + gint txt_size, + guint max_word_length, + gboolean enable_stemmer, + gboolean enable_unaccent, + gboolean ignore_stop_words, + gboolean ignore_reserved_words, + gboolean ignore_numbers); + +const gchar * tracker_parser_next (TrackerParser *parser, + gint *position, + gint *byte_offset_start, + gint *byte_offset_end, + gboolean *stop_word, + gint *word_length); + +void tracker_parser_free (TrackerParser *parser); + +/* Other helper methods */ + +gboolean tracker_parser_unaccent_nfkd_string (gpointer str, + gsize *str_length); + +G_END_DECLS + +#endif /* __LIBTRACKER_FTS_PARSER_H__ */ |