| 
    xapian-core
    1.4.29
    
   | 
 
A PostList in an inmemory database. More...
#include <inmemory_database.h>
 Inheritance diagram for InMemoryPostList:
 Collaboration diagram for InMemoryPostList:Public Member Functions | |
| Xapian::doccount | get_termfreq () const | 
| Return the exact term frequency.  More... | |
| Xapian::docid | get_docid () const | 
| Return the current docid.  More... | |
| Xapian::termcount | get_doclength () const | 
| Return the length of current document.  More... | |
| Xapian::termcount | get_unique_terms () const | 
| Return the number of unique terms in the current document.  More... | |
| Xapian::termcount | get_wdf () const | 
| Return the wdf for the document at the current position.  More... | |
| PositionList * | read_position_list () | 
| Read the position list for the term in the current document and return a pointer to it (owned by the PostList).  More... | |
| PositionList * | open_position_list () const | 
| Read the position list for the term in the current document and return a pointer to it (not owned by the PostList).  More... | |
| PostList * | next (double w_min) | 
| Advance the current position to the next document in the postlist.  More... | |
| PostList * | skip_to (Xapian::docid did, double w_min) | 
| Skip forward to the specified docid.  More... | |
| bool | at_end () const | 
| Return true if the current position is past the last entry in this list.  More... | |
| Xapian::termcount | get_wdf_upper_bound () const | 
| string | get_description () const | 
| Return a string description of this object.  More... | |
  Public Member Functions inherited from LeafPostList | |
| ~LeafPostList () | |
| void | set_termweight (const Xapian::Weight *weight_) | 
| Set the weighting scheme to use during matching.  More... | |
| double | resolve_lazy_termweight (Xapian::Weight *weight_, Xapian::Weight::Internal *stats, Xapian::termcount qlen, Xapian::termcount wqf, double factor) | 
| Xapian::doccount | get_termfreq_min () const | 
| Get a lower bound on the number of documents indexed by this term.  More... | |
| Xapian::doccount | get_termfreq_max () const | 
| Get an upper bound on the number of documents indexed by this term.  More... | |
| Xapian::doccount | get_termfreq_est () const | 
| Get an estimate of the number of documents indexed by this term.  More... | |
| double | get_maxweight () const | 
| Return an upper bound on what get_weight() can return.  More... | |
| double | get_weight () const | 
| Return the weight contribution for the current position.  More... | |
| double | recalc_maxweight () | 
| Recalculate the upper bound on what get_weight() can return.  More... | |
| TermFreqs | get_termfreq_est_using_stats (const Xapian::Weight::Internal &stats) const | 
| Get an estimate for the termfreq and reltermfreq, given the stats.  More... | |
| Xapian::termcount | count_matching_subqs () const | 
| Count the number of leaf subqueries which match at the current position.  More... | |
| void | gather_position_lists (OrPositionList *orposlist) | 
| Gather PositionList* objects for a subtree.  More... | |
| virtual LeafPostList * | open_nearby_postlist (const std::string &term_) const | 
| Open another postlist from the same database.  More... | |
| void | set_term (const std::string &term_) | 
| Set the term name.  More... | |
  Public Member Functions inherited from Xapian::PostingIterator::Internal | |
| virtual | ~Internal () | 
| We have virtual methods and want to be able to delete derived classes using a pointer to the base class, so we need a virtual destructor.  More... | |
| virtual const std::string * | get_sort_key () const | 
| virtual const std::string * | get_collapse_key () const | 
| If the collapse key is already known, return it.  More... | |
| virtual Internal * | check (Xapian::docid did, double w_min, bool &valid) | 
| Check if the specified docid occurs in this postlist.  More... | |
| Internal * | next () | 
| Advance the current position to the next document in the postlist.  More... | |
| Internal * | skip_to (Xapian::docid did) | 
| Skip forward to the specified docid.  More... | |
  Public Member Functions inherited from Xapian::Internal::intrusive_base | |
| intrusive_base () | |
| Construct with no references.  More... | |
Private Member Functions | |
| InMemoryPostList (const InMemoryDatabase *db, const InMemoryTerm &imterm, const std::string &term_) | |
Private Attributes | |
| vector< InMemoryPosting >::const_iterator | pos | 
| vector< InMemoryPosting >::const_iterator | end | 
| Xapian::doccount | termfreq | 
| bool | started | 
| InMemoryPositionList | mypositions | 
| List of positions of the current term.  More... | |
| Xapian::Internal::intrusive_ptr< const InMemoryDatabase > | db | 
| Xapian::termcount | wdf_upper_bound | 
Friends | |
| class | InMemoryDatabase | 
Additional Inherited Members | |
  Public Attributes inherited from Xapian::Internal::intrusive_base | |
| unsigned | _refs | 
| Reference count.  More... | |
  Protected Member Functions inherited from LeafPostList | |
| LeafPostList (const std::string &term_) | |
| Only constructable as a base class for derived classes.  More... | |
  Protected Member Functions inherited from Xapian::PostingIterator::Internal | |
| Internal () | |
| Only constructable as a base class for derived classes.  More... | |
  Protected Attributes inherited from LeafPostList | |
| const Xapian::Weight * | weight | 
| bool | need_doclength | 
| bool | need_unique_terms | 
| std::string | term | 
| The term name for this postlist (empty for an alldocs postlist).  More... | |
A PostList in an inmemory database.
Definition at line 136 of file inmemory_database.h.
      
  | 
  private | 
Definition at line 113 of file inmemory_database.cc.
References InMemoryTerm::collection_freq, end, pos, and wdf_upper_bound.
      
  | 
  virtual | 
Return true if the current position is past the last entry in this list.
Implements Xapian::PostingIterator::Internal.
Definition at line 181 of file inmemory_database.cc.
References db, end, InMemoryDatabase::is_closed(), pos, and InMemoryDatabase::throw_database_closed().
Referenced by get_docid(), next(), and skip_to().
      
  | 
  virtual | 
Return a string description of this object.
Implements Xapian::PostingIterator::Internal.
Definition at line 188 of file inmemory_database.cc.
References Xapian::Internal::str(), and termfreq.
      
  | 
  virtual | 
Return the current docid.
Implements Xapian::PostingIterator::Internal.
Definition at line 138 of file inmemory_database.cc.
References Assert, at_end(), db, InMemoryDatabase::is_closed(), started, and InMemoryDatabase::throw_database_closed().
Referenced by get_doclength(), and get_unique_terms().
      
  | 
  virtual | 
Return the length of current document.
Implements Xapian::PostingIterator::Internal.
Definition at line 194 of file inmemory_database.cc.
References db, get_docid(), InMemoryDatabase::get_doclength(), InMemoryDatabase::is_closed(), and InMemoryDatabase::throw_database_closed().
      
  | 
  virtual | 
Return the exact term frequency.
Leaf postlists have an exact termfreq, which get_termfreq_min(), get_termfreq_max(), and get_termfreq_est() all report.
Implements LeafPostList.
Definition at line 132 of file inmemory_database.cc.
References termfreq.
      
  | 
  virtual | 
Return the number of unique terms in the current document.
Implements Xapian::PostingIterator::Internal.
Definition at line 201 of file inmemory_database.cc.
References db, get_docid(), and InMemoryDatabase::get_unique_terms().
      
  | 
  virtual | 
Return the wdf for the document at the current position.
The default implementation throws Xapian::UnimplementedError.
Reimplemented from Xapian::PostingIterator::Internal.
Definition at line 222 of file inmemory_database.cc.
References db, InMemoryDatabase::is_closed(), and InMemoryDatabase::throw_database_closed().
      
  | 
  virtual | 
Implements LeafPostList.
Definition at line 229 of file inmemory_database.cc.
References db, InMemoryDatabase::is_closed(), InMemoryDatabase::throw_database_closed(), and wdf_upper_bound.
      
  | 
  virtual | 
Advance the current position to the next document in the postlist.
The list starts before the first entry in the list, so next(), skip_to() or check() must be called before any methods which need the context of the current position.
| w_min | The minimum weight contribution that is needed (this is just a hint which PostList subclasses may ignore). | 
Implements Xapian::PostingIterator::Internal.
Definition at line 147 of file inmemory_database.cc.
References Assert, at_end(), db, end, InMemoryDatabase::is_closed(), pos, started, and InMemoryDatabase::throw_database_closed().
      
  | 
  virtual | 
Read the position list for the term in the current document and return a pointer to it (not owned by the PostList).
The default implementation throws Xapian::UnimplementedError.
Reimplemented from Xapian::PostingIterator::Internal.
Definition at line 215 of file inmemory_database.cc.
References db, InMemoryDatabase::is_closed(), pos, and InMemoryDatabase::throw_database_closed().
      
  | 
  virtual | 
Read the position list for the term in the current document and return a pointer to it (owned by the PostList).
The default implementation throws Xapian::UnimplementedError.
Reimplemented from Xapian::PostingIterator::Internal.
Definition at line 207 of file inmemory_database.cc.
References db, InMemoryDatabase::is_closed(), mypositions, pos, InMemoryPositionList::set_data(), and InMemoryDatabase::throw_database_closed().
      
  | 
  virtual | 
Skip forward to the specified docid.
If the specified docid isn't in the list, position ourselves on the first document after it (or at_end() if no greater docids are present).
| w_min | The minimum weight contribution that is needed (this is just a hint which PostList subclasses may ignore). | 
Implements Xapian::PostingIterator::Internal.
Definition at line 161 of file inmemory_database.cc.
References Assert, at_end(), db, InMemoryDatabase::is_closed(), Xapian::PostingIterator::Internal::next(), started, and InMemoryDatabase::throw_database_closed().
      
  | 
  friend | 
Definition at line 137 of file inmemory_database.h.
      
  | 
  private | 
Definition at line 150 of file inmemory_database.h.
Referenced by at_end(), get_docid(), get_doclength(), get_unique_terms(), get_wdf(), get_wdf_upper_bound(), next(), open_position_list(), read_position_list(), and skip_to().
      
  | 
  private | 
Definition at line 141 of file inmemory_database.h.
Referenced by at_end(), InMemoryPostList(), and next().
      
  | 
  private | 
List of positions of the current term.
This list is populated when read_position_list() is called.
Definition at line 148 of file inmemory_database.h.
Referenced by read_position_list().
      
  | 
  private | 
Definition at line 140 of file inmemory_database.h.
Referenced by at_end(), InMemoryPostList(), next(), open_position_list(), and read_position_list().
      
  | 
  private | 
Definition at line 143 of file inmemory_database.h.
Referenced by get_docid(), next(), and skip_to().
      
  | 
  private | 
Definition at line 142 of file inmemory_database.h.
Referenced by get_description(), and get_termfreq().
      
  | 
  private | 
Definition at line 152 of file inmemory_database.h.
Referenced by get_wdf_upper_bound(), and InMemoryPostList().