*
* Returns the i'th text in the collection.
* The numbering starts from 0.
+ *
+ * Call DeleteText() for each pointer returned by GetText()
+ * to avoid possible memory leaks.
*/
virtual uchar* GetText(DocId) const = 0;
+ virtual void DeleteText(uchar *text) const = 0;
+
+ /**
+ * Returns a pointer to the beginning of texts i, i+1, ..., j.
+ * Texts are separated by a '\0' byte.
+ *
+ * Call DeleteText() for each pointer returned by GetText()
+ * to avoid possible memory leaks.
+ */
+ virtual uchar * GetText(DocId i, DocId j) const = 0;
+
/**
* Returns substring [i, j] of k'th text
*
virtual document_result Equal(uchar const *) const = 0;
virtual document_result Contains(uchar const *) const = 0;
virtual document_result LessThan(uchar const *) const = 0;
- virtual document_result Kmismaches(uchar const *, unsigned) const = 0;
- virtual document_result Kerrors(uchar const *, unsigned) const = 0;
+ virtual document_result KMismaches(uchar const *, unsigned) const = 0;
+ virtual document_result KErrors(uchar const *, unsigned) const = 0;
/**
* Document reporting queries for given DocId interval.
// Full reporting query for given DocId interval
virtual full_result FullContains(uchar const *, DocId, DocId) const = 0;
- virtual full_result FullKmismatches(uchar const *, unsigned) const = 0;
- virtual full_result FullKerrors(uchar const *, unsigned) const = 0;
+ virtual full_result FullKMismatches(uchar const *, unsigned) const = 0;
+ virtual full_result FullKErrors(uchar const *, unsigned) const = 0;
protected:
// Protected constructor; use TextCollectionBuilder