parcel KinoSearch cnick Kino;
/** Default posting type.
*
* ScorePosting is the default posting format in KinoSearch. The
* term-document pairing used by MatchPosting is supplemented by additional
* frequency, position, and weighting information.
*/
class KinoSearch::Index::Posting::ScorePosting cnick ScorePost
inherits KinoSearch::Index::Posting::MatchPosting {
float weight;
float *norm_decoder;
uint32_t *prox;
uint32_t prox_cap;
inert incremented ScorePosting*
new(Similarity *similarity);
inert ScorePosting*
init(ScorePosting *self, Similarity *similarity);
public void
Destroy(ScorePosting *self);
void
Read_Record(ScorePosting *self, InStream *instream);
incremented RawPosting*
Read_Raw(ScorePosting *self, InStream *instream, int32_t last_doc_id,
CharBuf *term_text, MemoryPool *mem_pool);
void
Add_Inversion_To_Pool(ScorePosting *self, PostingPool *post_pool,
Inversion *inversion, FieldType *type,
int32_t doc_id, float doc_boost,
float length_norm);
public void
Reset(ScorePosting *self);
incremented ScorePostingScorer*
Make_Matcher(ScorePosting *self, Similarity *sim, PostingList *plist,
Compiler *compiler, bool_t need_score);
nullable uint32_t*
Get_Prox(ScorePosting *self);
}
class KinoSearch::Index::Posting::ScorePostingScorer cnick ScorePostScorer
inherits KinoSearch::Search::TermScorer {
float *score_cache;
inert ScorePostingScorer*
init(ScorePostingScorer *self, Similarity *sim, PostingList *plist,
Compiler *compiler);
public float
Score(ScorePostingScorer* self);
public void
Destroy(ScorePostingScorer *self);
}
/* Copyright 2007-2011 Marvin Humphrey
*
* This program is free software; you can redistribute it and/or modify
* under the same terms as Perl itself.
*/