xapian-core  1.4.21
chert_alldocsmodifiedpostlist.h
Go to the documentation of this file.
1 
4 /* Copyright (C) 2008 Lemur Consulting Ltd
5  * Copyright (C) 2009,2011,2015 Olly Betts
6  *
7  * This program is free software; you can redistribute it and/or modify
8  * it under the terms of the GNU General Public License as published by
9  * the Free Software Foundation; either version 2 of the License, or
10  * (at your option) any later version.
11  *
12  * This program is distributed in the hope that it will be useful,
13  * but WITHOUT ANY WARRANTY; without even the implied warranty of
14  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15  * GNU General Public License for more details.
16  *
17  * You should have received a copy of the GNU General Public License
18  * along with this program; if not, write to the Free Software
19  * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
20  */
21 
22 #ifndef XAPIAN_INCLUDED_CHERT_ALLDOCSMODIFIEDPOSTLIST_H
23 #define XAPIAN_INCLUDED_CHERT_ALLDOCSMODIFIEDPOSTLIST_H
24 
25 #include <string>
26 
27 #include "chert_alldocspostlist.h"
28 
31  map<Xapian::docid, Xapian::termcount> doclens;
32 
34  map<Xapian::docid, Xapian::termcount>::const_iterator doclens_it;
35 
38 
41 
43  void skip_deletes(double w_min);
44 
45  public:
47  Xapian::doccount doccount_,
48  const map<Xapian::docid, Xapian::termcount> & doclens_);
49 
50  Xapian::docid get_docid() const;
51 
53 
55 
56  PostList * next(double w_min);
57 
58  PostList * skip_to(Xapian::docid desired_did, double w_min);
59 
60  bool at_end() const;
61 
62  std::string get_description() const;
63 };
64 
65 #endif // XAPIAN_INCLUDED_CHERT_ALLDOCSMODIFIEDPOSTLIST_H
A PostList which iterates over all documents in a ChertDatabase.
Abstract base class for postlists.
Definition: postlist.h:37
void skip_deletes(double w_min)
Skip over deleted documents after a next() or skip_to().
map< Xapian::docid, Xapian::termcount >::const_iterator doclens_it
Current position in the doclens list.
map< Xapian::docid, Xapian::termcount > doclens
Modifications to apply to the ChertAllDocsPostList.
Xapian::docid get_docid() const
Return the current docid.
Xapian::termcount get_unique_terms() const
Return the number of unique terms in the current document.
unsigned XAPIAN_TERMCOUNT_BASE_TYPE termcount
A counts of terms.
Definition: types.h:72
ChertAllDocsModifiedPostList(const ChertAllDocsModifiedPostList &)
Don&#39;t allow copying.
PostList * skip_to(Xapian::docid desired_did, double w_min)
Skip forward to the specified docid.
Internal * next()
Advance the current position to the next document in the postlist.
Definition: postlist.h:194
bool at_end() const
Return true if the current position is past the last entry in this list.
void operator=(const ChertAllDocsModifiedPostList &)
Don&#39;t allow assignment.
unsigned XAPIAN_DOCID_BASE_TYPE doccount
A count of documents.
Definition: types.h:38
std::string get_description() const
Return a string description of this object.
unsigned XAPIAN_DOCID_BASE_TYPE docid
A unique identifier for a document.
Definition: types.h:52
Xapian::termcount get_doclength() const
Return the length of current document.