#include <string.h>
#define KINO_USE_SHORT_NAMES
#include "KinoSearch/Util/ToolSet.h"
#define KINO_WANT_POSTINGLIST_VTABLE
#include "KinoSearch/Index/PostingList.r"
#include "KinoSearch/Posting.r"
#include "KinoSearch/Index/Term.r"
#include "KinoSearch/Index/Lexicon.r"
#include "KinoSearch/Util/ByteBuf.r"
#include "KinoSearch/Util/Carp.h"
#include "KinoSearch/Util/MemManager.h"
Posting*
PList_get_posting(PostingList *self)
{
ABSTRACT_DEATH(self, "Get_Posting");
UNREACHABLE_RETURN(Posting*);
}
u32_t
PList_get_doc_freq(PostingList *self)
{
ABSTRACT_DEATH(self, "Get_Doc_Freq");
UNREACHABLE_RETURN(u32_t);
}
u32_t
PList_get_doc_num(PostingList *self)
{
ABSTRACT_DEATH(self, "Get_Doc_Num");
UNREACHABLE_RETURN(u32_t);
}
void
PList_seek(PostingList *self, Term *target)
{
UNUSED_VAR(target);
ABSTRACT_DEATH(self, "Seek");
}
void
PList_seek_lex(PostingList *self, Lexicon *lexicon)
{
UNUSED_VAR(lexicon);
ABSTRACT_DEATH(self, "Seek_Lex");
}
bool_t
PList_next(PostingList *self)
{
ABSTRACT_DEATH(self, "Next");
UNREACHABLE_RETURN(bool_t);
}
bool_t
PList_skip_to(PostingList *self, u32_t target)
{
do {
if ( !PList_Next(self) )
return false;
} while (target > (PList_Get_Posting(self))->doc_num);
return true;
}
struct kino_Scorer*
PList_make_scorer(PostingList *self, struct kino_Similarity *sim,
void *weight, float weight_val)
{
UNUSED_VAR(sim);
UNUSED_VAR(weight);
UNUSED_VAR(weight_val);
ABSTRACT_DEATH(self, "Make_Scorer");
UNREACHABLE_RETURN(struct kino_Scorer*);
}
/* Copyright 2007 Marvin Humphrey
*
* This program is free software; you can redistribute it and/or modify
* under the same terms as Perl itself.
*/