bool IsContains(uchar const *) const;
bool IsLessThan(uchar const *) const;
+ bool IsPrefix(uchar const *, DocId, DocId) const;
+ bool IsSuffix(uchar const *, DocId, DocId) const;
+ bool IsEqual(uchar const *, DocId, DocId) const;
+ bool IsContains(uchar const *, DocId, DocId) const;
+ bool IsLessThan(uchar const *, DocId, DocId) const;
+
ulong Count(uchar const *) const;
unsigned CountPrefix(uchar const *) const;
unsigned CountSuffix(uchar const *) const;
unsigned CountEqual(uchar const *) const;
unsigned CountContains(uchar const *) const;
unsigned CountLessThan(const unsigned char*) const;
+
+ unsigned CountPrefix(uchar const *, DocId, DocId) const;
+ unsigned CountSuffix(uchar const *, DocId, DocId) const;
+ unsigned CountEqual(uchar const *, DocId, DocId) const;
+ unsigned CountContains(uchar const *, DocId, DocId) const;
+ unsigned CountLessThan(uchar const *, DocId, DocId) const;
- // document_result is inherited from SXSI::TextCollection.
+ // Definition of document_result is inherited from SXSI::TextCollection.
document_result Prefix(uchar const *) const;
document_result Suffix(uchar const *) const;
document_result Equal(uchar const *) const;
document_result Contains(uchar const *) const;
document_result LessThan(uchar const *) const;
- // full_result is inherited from SXSI::TextCollection.
+ document_result Prefix(uchar const *, DocId, DocId) const;
+ document_result Suffix(uchar const *, DocId, DocId) const;
+ document_result Equal(uchar const *, DocId, DocId) const;
+ document_result Contains(uchar const *, DocId, DocId) const;
+ document_result LessThan(uchar const *, DocId, DocId) const;
+
+ // Definition of full_result is inherited from SXSI::TextCollection.
full_result FullContains(uchar const *) const;
+ full_result FullContains(uchar const *, DocId, DocId) const;
// Index from/to disk
void Load(FILE *, unsigned);
void maketables();
DocId DocIdAtTextPos(BlockArray*, TextPosition) const;
ulong Search(uchar const *, TextPosition, TextPosition *, TextPosition *) const;
+ ulong Search(uchar const *, TextPosition, TextPosition *, TextPosition *, DocId, DocId) const;
ulong SearchLessThan(uchar const *, TextPosition, TextPosition *, TextPosition *) const;
// TextPosition Inverse(TextPosition) const;
// TextPosition LF(uchar c, TextPosition &sp, TextPosition &ep) const;
return alphabetrank->rank(0, ep) - ranksp;
}
+ unsigned CountEndmarkers(TextPosition, TextPosition, DocId, DocId) const;
}; // class CSA
} // namespace SXSI