xapian-core  2.0.0
api_generated.cc
Go to the documentation of this file.
1 
4 /* Warning: This file is generated by ./generate-api_generated - do not modify directly! */
5 /* Copyright (C) 2007-2026 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, see
19  * <https://www.gnu.org/licenses/>.
20  */
21 
22 #include <config.h>
23 
24 #include "api_generated.h"
25 
26 #define XAPIAN_DEPRECATED(D) D
27 #include <xapian.h>
28 
29 #include "apitest.h"
30 #include "testutils.h"
31 
32 using namespace std;
33 
35 DEFINE_TESTCASE(defaultctor1, !backend) {
36  Xapian::BB2Weight bb2weight;
37  Xapian::BM25PlusWeight bm25plusweight;
38  Xapian::BM25Weight bm25weight;
39  Xapian::BoolWeight boolweight;
40  Xapian::CoordWeight coordweight;
41  Xapian::DLHWeight dlhweight;
42  Xapian::DPHWeight dphweight;
43  Xapian::DateRangeProcessor daterangeprocessor(0);
44  Xapian::DecreasingValueWeightPostingSource decreasingvalueweightpostingsource(0);
45  {
46  const string& desc = decreasingvalueweightpostingsource.get_description();
47  tout.clear();
48  tout << desc << '\n';
49  TEST(startswith(desc, "DecreasingValueWeightPostingSource(") ||
50  startswith(desc, "Xapian::DecreasingValueWeightPostingSource("));
51  TEST(desc.back() == ')');
52  }
53  Xapian::DiceWeight diceweight;
54  Xapian::FixedWeightPostingSource fixedweightpostingsource(0);
55  {
56  const string& desc = fixedweightpostingsource.get_description();
57  tout.clear();
58  tout << desc << '\n';
59  TEST(startswith(desc, "FixedWeightPostingSource(") ||
60  startswith(desc, "Xapian::FixedWeightPostingSource("));
61  TEST(desc.back() == ')');
62  }
63  Xapian::IfB2Weight ifb2weight;
64  Xapian::InL2Weight inl2weight;
65  Xapian::IneB2Weight ineb2weight;
66  Xapian::LM2StageWeight lm2stageweight;
67  Xapian::LMAbsDiscountWeight lmabsdiscountweight;
68  Xapian::LMDirichletWeight lmdirichletweight;
69  Xapian::LMJMWeight lmjmweight;
70  Xapian::MultiValueKeyMaker multivaluekeymaker;
71  Xapian::NumberRangeProcessor numberrangeprocessor(0, "");
72  Xapian::PL2PlusWeight pl2plusweight;
73  Xapian::PL2Weight pl2weight;
74  Xapian::RangeProcessor rangeprocessor;
75  Xapian::SimpleStopper simplestopper;
76  {
77  const string& desc = simplestopper.get_description();
78  tout.clear();
79  tout << desc << '\n';
80  TEST(startswith(desc, "SimpleStopper(") ||
81  startswith(desc, "Xapian::SimpleStopper("));
82  TEST(desc.back() == ')');
83  }
84  Xapian::TfIdfWeight tfidfweight;
85  Xapian::TradWeight tradweight;
86  Xapian::ValueCountMatchSpy valuecountmatchspy(0);
87  {
88  const string& desc = valuecountmatchspy.get_description();
89  tout.clear();
90  tout << desc << '\n';
91  TEST(startswith(desc, "ValueCountMatchSpy(") ||
92  startswith(desc, "Xapian::ValueCountMatchSpy("));
93  TEST(desc.back() == ')');
94  }
95  Xapian::ValueMapPostingSource valuemappostingsource(0);
96  {
97  const string& desc = valuemappostingsource.get_description();
98  tout.clear();
99  tout << desc << '\n';
100  TEST(startswith(desc, "ValueMapPostingSource(") ||
101  startswith(desc, "Xapian::ValueMapPostingSource("));
102  TEST(desc.back() == ')');
103  }
104  Xapian::ValuePostingSource valuepostingsource(0);
105  {
106  const string& desc = valuepostingsource.get_description();
107  tout.clear();
108  tout << desc << '\n';
109  TEST(startswith(desc, "ValuePostingSource(") ||
110  startswith(desc, "Xapian::ValuePostingSource("));
111  TEST(desc.back() == ')');
112  }
113  Xapian::ValueWeightPostingSource valueweightpostingsource(0);
114  {
115  const string& desc = valueweightpostingsource.get_description();
116  tout.clear();
117  tout << desc << '\n';
118  TEST(startswith(desc, "ValueWeightPostingSource(") ||
119  startswith(desc, "Xapian::ValueWeightPostingSource("));
120  TEST(desc.back() == ')');
121  }
122 }
123 
125 DEFINE_TESTCASE(copyassign1, !backend) {
126  Xapian::Database database;
127  TEST(!database.get_description().empty());
128  Xapian::Database copy_database(database);
129  TEST(!copy_database.get_description().empty());
130  Xapian::Database move_database(std::move(database));
131  TEST(!move_database.get_description().empty());
132  database = copy_database;
133  TEST(!database.get_description().empty());
134  copy_database = std::move(move_database);
135  TEST(!copy_database.get_description().empty());
136 
137  Xapian::Document document;
138  TEST(!document.get_description().empty());
139  Xapian::Document copy_document(document);
140  TEST(!copy_document.get_description().empty());
141  Xapian::Document move_document(std::move(document));
142  TEST(!move_document.get_description().empty());
143  document = copy_document;
144  TEST(!document.get_description().empty());
145  copy_document = std::move(move_document);
146  TEST(!copy_document.get_description().empty());
147 
148  Xapian::ESet eset;
149  TEST(!eset.get_description().empty());
150  Xapian::ESet copy_eset(eset);
151  TEST(!copy_eset.get_description().empty());
152  Xapian::ESet move_eset(std::move(eset));
153  TEST(!move_eset.get_description().empty());
154  eset = copy_eset;
155  TEST(!eset.get_description().empty());
156  copy_eset = std::move(move_eset);
157  TEST(!copy_eset.get_description().empty());
158 
159  Xapian::ESetIterator esetiterator;
160  TEST(!esetiterator.get_description().empty());
161  Xapian::ESetIterator copy_esetiterator(esetiterator);
162  TEST(!copy_esetiterator.get_description().empty());
163  Xapian::ESetIterator move_esetiterator(std::move(esetiterator));
164  TEST(!move_esetiterator.get_description().empty());
165  esetiterator = copy_esetiterator;
166  TEST(!esetiterator.get_description().empty());
167  copy_esetiterator = std::move(move_esetiterator);
168  TEST(!copy_esetiterator.get_description().empty());
169 
170 #ifdef XAPIAN_HAS_INMEMORY_BACKEND
172  TEST(!enquire.get_description().empty());
173  Xapian::Enquire copy_enquire(enquire);
174  TEST(!copy_enquire.get_description().empty());
175  Xapian::Enquire move_enquire(std::move(enquire));
176  TEST(!move_enquire.get_description().empty());
177  enquire = copy_enquire;
178  TEST(!enquire.get_description().empty());
179  copy_enquire = std::move(move_enquire);
180  TEST(!copy_enquire.get_description().empty());
181 #endif
182 
183  Xapian::MSet mset;
184  TEST(!mset.get_description().empty());
185  Xapian::MSet copy_mset(mset);
186  TEST(!copy_mset.get_description().empty());
187  Xapian::MSet move_mset(std::move(mset));
188  TEST(!move_mset.get_description().empty());
189  mset = copy_mset;
190  TEST(!mset.get_description().empty());
191  copy_mset = std::move(move_mset);
192  TEST(!copy_mset.get_description().empty());
193 
194  Xapian::MSetIterator msetiterator;
195  TEST(!msetiterator.get_description().empty());
196  Xapian::MSetIterator copy_msetiterator(msetiterator);
197  TEST(!copy_msetiterator.get_description().empty());
198  Xapian::MSetIterator move_msetiterator(std::move(msetiterator));
199  TEST(!move_msetiterator.get_description().empty());
200  msetiterator = copy_msetiterator;
201  TEST(!msetiterator.get_description().empty());
202  copy_msetiterator = std::move(move_msetiterator);
203  TEST(!copy_msetiterator.get_description().empty());
204 
205  Xapian::PositionIterator positioniterator;
206  TEST(!positioniterator.get_description().empty());
207  Xapian::PositionIterator copy_positioniterator(positioniterator);
208  TEST(!copy_positioniterator.get_description().empty());
209  Xapian::PositionIterator move_positioniterator(std::move(positioniterator));
210  TEST(!move_positioniterator.get_description().empty());
211  positioniterator = copy_positioniterator;
212  TEST(!positioniterator.get_description().empty());
213  copy_positioniterator = std::move(move_positioniterator);
214  TEST(!copy_positioniterator.get_description().empty());
215 
216  Xapian::PostingIterator postingiterator;
217  TEST(!postingiterator.get_description().empty());
218  Xapian::PostingIterator copy_postingiterator(postingiterator);
219  TEST(!copy_postingiterator.get_description().empty());
220  Xapian::PostingIterator move_postingiterator(std::move(postingiterator));
221  TEST(!move_postingiterator.get_description().empty());
222  postingiterator = copy_postingiterator;
223  TEST(!postingiterator.get_description().empty());
224  copy_postingiterator = std::move(move_postingiterator);
225  TEST(!copy_postingiterator.get_description().empty());
226 
228  TEST(!query.get_description().empty());
229  Xapian::Query copy_query(query);
230  TEST(!copy_query.get_description().empty());
231  Xapian::Query move_query(std::move(query));
232  TEST(!move_query.get_description().empty());
233  query = copy_query;
234  TEST(!query.get_description().empty());
235  copy_query = std::move(move_query);
236  TEST(!copy_query.get_description().empty());
237 
238  Xapian::QueryParser queryparser;
239  TEST(!queryparser.get_description().empty());
240  Xapian::QueryParser copy_queryparser(queryparser);
241  TEST(!copy_queryparser.get_description().empty());
242  Xapian::QueryParser move_queryparser(std::move(queryparser));
243  TEST(!move_queryparser.get_description().empty());
244  queryparser = copy_queryparser;
245  TEST(!queryparser.get_description().empty());
246  copy_queryparser = std::move(move_queryparser);
247  TEST(!copy_queryparser.get_description().empty());
248 
249  Xapian::RSet rset;
250  TEST(!rset.get_description().empty());
251  Xapian::RSet copy_rset(rset);
252  TEST(!copy_rset.get_description().empty());
253  Xapian::RSet move_rset(std::move(rset));
254  TEST(!move_rset.get_description().empty());
255  rset = copy_rset;
256  TEST(!rset.get_description().empty());
257  copy_rset = std::move(move_rset);
258  TEST(!copy_rset.get_description().empty());
259 
260  Xapian::Registry registry;
261  Xapian::Registry copy_registry(registry);
262  Xapian::Registry move_registry(std::move(registry));
263  registry = copy_registry;
264  copy_registry = std::move(move_registry);
265 
266  Xapian::Stem stem;
267  TEST(!stem.get_description().empty());
268  Xapian::Stem copy_stem(stem);
269  TEST(!copy_stem.get_description().empty());
270  Xapian::Stem move_stem(std::move(stem));
271  TEST(!move_stem.get_description().empty());
272  stem = copy_stem;
273  TEST(!stem.get_description().empty());
274  copy_stem = std::move(move_stem);
275  TEST(!copy_stem.get_description().empty());
276 
277  Xapian::TermGenerator termgenerator;
278  TEST(!termgenerator.get_description().empty());
279  Xapian::TermGenerator copy_termgenerator(termgenerator);
280  TEST(!copy_termgenerator.get_description().empty());
281  Xapian::TermGenerator move_termgenerator(std::move(termgenerator));
282  TEST(!move_termgenerator.get_description().empty());
283  termgenerator = copy_termgenerator;
284  TEST(!termgenerator.get_description().empty());
285  copy_termgenerator = std::move(move_termgenerator);
286  TEST(!copy_termgenerator.get_description().empty());
287 
288  Xapian::TermIterator termiterator;
289  TEST(!termiterator.get_description().empty());
290  Xapian::TermIterator copy_termiterator(termiterator);
291  TEST(!copy_termiterator.get_description().empty());
292  Xapian::TermIterator move_termiterator(std::move(termiterator));
293  TEST(!move_termiterator.get_description().empty());
294  termiterator = copy_termiterator;
295  TEST(!termiterator.get_description().empty());
296  copy_termiterator = std::move(move_termiterator);
297  TEST(!copy_termiterator.get_description().empty());
298 
299  Xapian::Utf8Iterator utf8iterator;
300  Xapian::Utf8Iterator copy_utf8iterator(utf8iterator);
301  Xapian::Utf8Iterator move_utf8iterator(std::move(utf8iterator));
302  utf8iterator = copy_utf8iterator;
303  copy_utf8iterator = std::move(move_utf8iterator);
304 
305  Xapian::ValueIterator valueiterator;
306  TEST(!valueiterator.get_description().empty());
307  Xapian::ValueIterator copy_valueiterator(valueiterator);
308  TEST(!copy_valueiterator.get_description().empty());
309  Xapian::ValueIterator move_valueiterator(std::move(valueiterator));
310  TEST(!move_valueiterator.get_description().empty());
311  valueiterator = copy_valueiterator;
312  TEST(!valueiterator.get_description().empty());
313  copy_valueiterator = std::move(move_valueiterator);
314  TEST(!copy_valueiterator.get_description().empty());
315 
316  Xapian::WritableDatabase writabledatabase;
317  TEST(!writabledatabase.get_description().empty());
318  Xapian::WritableDatabase copy_writabledatabase(writabledatabase);
319  TEST(!copy_writabledatabase.get_description().empty());
320  Xapian::WritableDatabase move_writabledatabase(std::move(writabledatabase));
321  TEST(!move_writabledatabase.get_description().empty());
322  writabledatabase = copy_writabledatabase;
323  TEST(!writabledatabase.get_description().empty());
324  copy_writabledatabase = std::move(move_writabledatabase);
325  TEST(!copy_writabledatabase.get_description().empty());
326 
327 }
328 
330 DEFINE_TESTCASE(itortraits1, !backend) {
331  {
332  using traits = iterator_traits<Xapian::ESetIterator>;
333  using pointer_base = std::remove_pointer<traits::pointer>::type;
334  using reference_base = std::remove_reference<traits::reference>::type;
335  static_assert(is_same<decltype(*std::declval<Xapian::ESetIterator>()),
336  pointer_base>::value,
337  "iterator_traits<ESetIterator>::pointer inconsistent with "
338  "type from dereferencing ESetIterator");
339  static_assert(is_same<decltype(*std::declval<Xapian::ESetIterator>()),
340  reference_base>::value,
341  "iterator_traits<ESetIterator>::reference inconsistent with "
342  "type from dereferencing ESetIterator");
343  }
344  {
345  using traits = iterator_traits<Xapian::MSetIterator>;
346  using pointer_base = std::remove_pointer<traits::pointer>::type;
347  using reference_base = std::remove_reference<traits::reference>::type;
348  static_assert(is_same<decltype(*std::declval<Xapian::MSetIterator>()),
349  pointer_base>::value,
350  "iterator_traits<MSetIterator>::pointer inconsistent with "
351  "type from dereferencing MSetIterator");
352  static_assert(is_same<decltype(*std::declval<Xapian::MSetIterator>()),
353  reference_base>::value,
354  "iterator_traits<MSetIterator>::reference inconsistent with "
355  "type from dereferencing MSetIterator");
356  }
357  {
358  using traits = iterator_traits<Xapian::PositionIterator>;
359  using pointer_base = std::remove_pointer<traits::pointer>::type;
360  using reference_base = std::remove_reference<traits::reference>::type;
361  static_assert(is_same<decltype(*std::declval<Xapian::PositionIterator>()),
362  pointer_base>::value,
363  "iterator_traits<PositionIterator>::pointer inconsistent with "
364  "type from dereferencing PositionIterator");
365  static_assert(is_same<decltype(*std::declval<Xapian::PositionIterator>()),
366  reference_base>::value,
367  "iterator_traits<PositionIterator>::reference inconsistent with "
368  "type from dereferencing PositionIterator");
369  }
370  {
371  using traits = iterator_traits<Xapian::PostingIterator>;
372  using pointer_base = std::remove_pointer<traits::pointer>::type;
373  using reference_base = std::remove_reference<traits::reference>::type;
374  static_assert(is_same<decltype(*std::declval<Xapian::PostingIterator>()),
375  pointer_base>::value,
376  "iterator_traits<PostingIterator>::pointer inconsistent with "
377  "type from dereferencing PostingIterator");
378  static_assert(is_same<decltype(*std::declval<Xapian::PostingIterator>()),
379  reference_base>::value,
380  "iterator_traits<PostingIterator>::reference inconsistent with "
381  "type from dereferencing PostingIterator");
382  }
383  {
384  using traits = iterator_traits<Xapian::TermIterator>;
385  using pointer_base = std::remove_pointer<traits::pointer>::type;
386  using reference_base = std::remove_reference<traits::reference>::type;
387  static_assert(is_same<decltype(*std::declval<Xapian::TermIterator>()),
388  pointer_base>::value,
389  "iterator_traits<TermIterator>::pointer inconsistent with "
390  "type from dereferencing TermIterator");
391  static_assert(is_same<decltype(*std::declval<Xapian::TermIterator>()),
392  reference_base>::value,
393  "iterator_traits<TermIterator>::reference inconsistent with "
394  "type from dereferencing TermIterator");
395  }
396  {
397  using traits = iterator_traits<Xapian::Utf8Iterator>;
398  using pointer_base = std::remove_pointer<traits::pointer>::type;
399  using reference_base = std::remove_reference<traits::reference>::type;
400  static_assert(is_same<decltype(*std::declval<Xapian::Utf8Iterator>()),
401  pointer_base>::value,
402  "iterator_traits<Utf8Iterator>::pointer inconsistent with "
403  "type from dereferencing Utf8Iterator");
404  static_assert(is_same<decltype(*std::declval<Xapian::Utf8Iterator>()),
405  reference_base>::value,
406  "iterator_traits<Utf8Iterator>::reference inconsistent with "
407  "type from dereferencing Utf8Iterator");
408  }
409  {
410  using traits = iterator_traits<Xapian::ValueIterator>;
411  using pointer_base = std::remove_pointer<traits::pointer>::type;
412  using reference_base = std::remove_reference<traits::reference>::type;
413  static_assert(is_same<decltype(*std::declval<Xapian::ValueIterator>()),
414  pointer_base>::value,
415  "iterator_traits<ValueIterator>::pointer inconsistent with "
416  "type from dereferencing ValueIterator");
417  static_assert(is_same<decltype(*std::declval<Xapian::ValueIterator>()),
418  reference_base>::value,
419  "iterator_traits<ValueIterator>::reference inconsistent with "
420  "type from dereferencing ValueIterator");
421  }
422 }
423 
425 DEFINE_TESTCASE(containertraits1, !backend) {
426  {
427  using pointer_base =
428  std::remove_pointer<Xapian::ESet::pointer>::type;
429  using reference_base =
430  std::remove_reference<Xapian::ESet::reference>::type;
431  using value_type = Xapian::ESet::value_type;
432  static_assert(is_same<value_type, pointer_base>::value,
433  "Xapian::ESet::pointer inconsistent with "
434  "Xapian::ESet::value_type");
435  static_assert(is_same<value_type, reference_base>::value,
436  "Xapian::ESet::reference inconsistent with "
437  "Xapian::ESet::value_type");
438  }
439  {
440  using pointer_base =
441  std::remove_pointer<Xapian::MSet::pointer>::type;
442  using reference_base =
443  std::remove_reference<Xapian::MSet::reference>::type;
444  using value_type = Xapian::MSet::value_type;
445  static_assert(is_same<value_type, pointer_base>::value,
446  "Xapian::MSet::pointer inconsistent with "
447  "Xapian::MSet::value_type");
448  static_assert(is_same<value_type, reference_base>::value,
449  "Xapian::MSet::reference inconsistent with "
450  "Xapian::MSet::value_type");
451  }
452 }
static Xapian::Query query(Xapian::Query::op op, const string &t1=string(), const string &t2=string(), const string &t3=string(), const string &t4=string(), const string &t5=string(), const string &t6=string(), const string &t7=string(), const string &t8=string(), const string &t9=string(), const string &t10=string())
Definition: api_anydb.cc:62
DEFINE_TESTCASE(defaultctor1, !backend)
Check uncopyable API classes which should have a default ctor actually do.
test functionality of the Xapian API
This class implements the BB2 weighting scheme.
Definition: weight.h:1540
Xapian::Weight subclass implementing the BM25+ probabilistic formula.
Definition: weight.h:1161
Xapian::Weight subclass implementing the BM25 probabilistic formula.
Definition: weight.h:1050
Class implementing a "boolean" weighting scheme.
Definition: weight.h:678
Xapian::Weight subclass implementing Coordinate Matching.
Definition: weight.h:2163
This class implements the DLH weighting scheme, which is a representative scheme of the Divergence fr...
Definition: weight.h:1615
This class implements the DPH weighting scheme.
Definition: weight.h:1826
An indexed database of documents.
Definition: database.h:75
virtual std::string get_description() const
Return a string describing this object.
Definition: database.cc:391
Handle a date range.
Definition: queryparser.h:254
Read weights from a value which is known to decrease as docid increases.
std::string get_description() const override
Return a string describing this object.
Xapian::Weight subclass implementing Dice Coefficient.
Definition: weight.h:2207
Class representing a document.
Definition: document.h:64
std::string get_description() const
Return a string describing this object.
Definition: document.cc:226
Iterator over a Xapian::ESet.
Definition: eset.h:157
std::string get_description() const
Return a string describing this object.
Class representing a list of search results.
Definition: eset.h:42
std::string get_description() const
Return a string describing this object.
Xapian::ESetIterator value_type
Definition: eset.h:122
Querying session.
Definition: enquire.h:57
std::string get_description() const
Return a string describing this object.
Definition: enquire.cc:241
A posting source which returns a fixed weight for all documents.
std::string get_description() const override
Return a string describing this object.
This class implements the IfB2 weighting scheme.
Definition: weight.h:1397
This class implements the InL2 weighting scheme.
Definition: weight.h:1327
This class implements the IneB2 weighting scheme.
Definition: weight.h:1469
Language Model weighting with Two Stage smoothing.
Definition: weight.h:2093
Language Model weighting with Absolute Discount smoothing.
Definition: weight.h:2024
Language Model weighting with Dirichlet or Dir+ smoothing.
Definition: weight.h:1948
Language Model weighting with Jelinek-Mercer smoothing.
Definition: weight.h:1875
Iterator over a Xapian::MSet.
Definition: mset.h:535
std::string get_description() const
Return a string describing this object.
Definition: msetiterator.cc:91
Class representing a list of search results.
Definition: mset.h:46
Xapian::MSetIterator value_type
Definition: mset.h:500
std::string get_description() const
Return a string describing this object.
Definition: mset.cc:394
KeyMaker subclass which combines several values.
Definition: keymaker.h:156
Handle a number range.
Definition: queryparser.h:361
Xapian::Weight subclass implementing the PL2+ probabilistic formula.
Definition: weight.h:1731
This class implements the PL2 weighting scheme.
Definition: weight.h:1671
Class for iterating over term positions.
std::string get_description() const
Return a string describing this object.
Class for iterating over a list of terms.
std::string get_description() const
Return a string describing this object.
Build a Xapian::Query object from a user query string.
Definition: queryparser.h:516
std::string get_description() const
Return a string describing this object.
Definition: queryparser.cc:260
Class representing a query.
Definition: query.h:45
std::string get_description() const
Return a string describing this object.
Definition: query.cc:307
Class representing a set of documents judged as relevant.
Definition: rset.h:39
std::string get_description() const
Return a string describing this object.
Definition: rset.cc:80
Base class for range processors.
Definition: queryparser.h:140
Registry for user subclasses.
Definition: registry.h:47
Simple implementation of Stopper class - this will suit most users.
Definition: queryparser.h:99
virtual std::string get_description() const
Return a string describing this object.
Definition: queryparser.cc:45
Class representing a stemming algorithm.
Definition: stem.h:74
std::string get_description() const
Return a string describing this object.
Definition: stem.cc:57
Parses a piece of text and generate terms.
Definition: termgenerator.h:49
std::string get_description() const
Return a string describing this object.
Class for iterating over a list of terms.
Definition: termiterator.h:41
std::string get_description() const
Return a string describing this object.
Xapian::Weight subclass implementing the tf-idf weighting scheme.
Definition: weight.h:704
Xapian::Weight subclass implementing the traditional probabilistic formula.
Definition: weight.h:1297
An iterator which returns Unicode character values from a UTF-8 encoded string.
Definition: unicode.h:39
Class for counting the frequencies of values in the matching documents.
Definition: matchspy.h:205
virtual std::string get_description() const
Return a string describing this object.
Definition: matchspy.cc:391
Class for iterating over document values.
Definition: valueiterator.h:39
std::string get_description() const
Return a string describing this object.
A posting source which looks up weights in a map using values as the key.
std::string get_description() const override
Return a string describing this object.
A posting source which generates weights from a value slot.
std::string get_description() const
Return a string describing this object.
A posting source which reads weights from a value slot.
std::string get_description() const
Return a string describing this object.
This class provides read/write access to a database.
Definition: database.h:964
std::string get_description() const
Return a string describing this object.
Definition: database.cc:643
const int DB_BACKEND_INMEMORY
Use the "in memory" backend.
Definition: constants.h:182
bool startswith(std::string_view s, char pfx)
Definition: stringutils.h:56
std::ostringstream tout
The debug printing stream.
Definition: testsuite.cc:104
#define TEST(a)
Test a condition, without an additional explanation for failure.
Definition: testsuite.h:273
Xapian-specific test helper functions and macros.
Public interfaces for the Xapian library.