-/* $Id: snippet.h,v 1.3 2005-08-18 19:20:37 adam Exp $
- Copyright (C) 1995-2005
+/* $Id: snippet.h,v 1.10 2007-08-21 13:27:04 adam Exp $
+ Copyright (C) 1995-2007
Index Data ApS
This file is part of the Zebra server.
for more details.
You should have received a copy of the GNU General Public License
-along with Zebra; see the file LICENSE.zebra. If not, write to the
-Free Software Foundation, 59 Temple Place - Suite 330, Boston, MA
-02111-1307, USA.
+along with this program; if not, write to the Free Software
+Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
+
*/
-#ifndef SNIPPET_H
-#define SNIPPET_H
+#ifndef IDZEBRA_SNIPPET_H
+#define IDZEBRA_SNIPPET_H
#include <idzebra/util.h>
struct zebra_snippet_word {
zint seqno;
- int reg_type;
int ord;
char *term;
int match;
+ int mark;
+ int ws;
struct zebra_snippet_word *next;
+ struct zebra_snippet_word *prev;
};
typedef struct zebra_snippets zebra_snippets;
typedef struct zebra_snippet_word zebra_snippet_word;
YAZ_EXPORT
-zebra_snippets *zebra_snippets_create();
+zebra_snippets *zebra_snippets_create(void);
YAZ_EXPORT
void zebra_snippets_destroy(zebra_snippets *l);
YAZ_EXPORT
void zebra_snippets_append(zebra_snippets *l,
- zint seqno, int reg_type,
- int ord, const char *term);
+ zint seqno, int ws, int ord, const char *term);
+
+YAZ_EXPORT
+void zebra_snippets_appendn(zebra_snippets *l,
+ zint seqno, int ws, int ord,
+ const char *term, size_t term_len);
YAZ_EXPORT
void zebra_snippets_append_match(zebra_snippets *l,
- zint seqno, int reg_type,
- int ord, const char *term,
+ zint seqno, int ws, int ord,
+ const char *term, size_t term_len,
int match);
YAZ_EXPORT
zebra_snippet_word *zebra_snippets_list(zebra_snippets *l);
YAZ_EXPORT
-void zebra_snippets_log(zebra_snippets *l, int log_level);
+const zebra_snippet_word *zebra_snippets_constlist(const zebra_snippets *l);
YAZ_EXPORT
-zebra_snippets *zebra_snippets_window(zebra_snippets *doc, zebra_snippets *hit,
+void zebra_snippets_log(const zebra_snippets *l, int log_level, int all);
+
+YAZ_EXPORT
+zebra_snippets *zebra_snippets_window(const zebra_snippets *doc,
+ const zebra_snippets *hit,
int window_size);
+YAZ_EXPORT
+void zebra_snippets_ring(zebra_snippets *doc, const zebra_snippets *hit,
+ int before, int after);
+
+
+YAZ_EXPORT
+const struct zebra_snippet_word *zebra_snippets_lookup(
+ const zebra_snippets *doc, const zebra_snippets *hit);
+
YAZ_END_CDECL
#endif
+/*
+ * Local variables:
+ * c-basic-offset: 4
+ * indent-tabs-mode: nil
+ * End:
+ * vim: shiftwidth=4 tabstop=8 expandtab
+ */
+