summaryrefslogtreecommitdiff
path: root/rep/usr/include/xapian/database.h.gcov.html
diff options
context:
space:
mode:
Diffstat (limited to 'rep/usr/include/xapian/database.h.gcov.html')
-rw-r--r--rep/usr/include/xapian/database.h.gcov.html803
1 files changed, 0 insertions, 803 deletions
diff --git a/rep/usr/include/xapian/database.h.gcov.html b/rep/usr/include/xapian/database.h.gcov.html
deleted file mode 100644
index 2a75331..0000000
--- a/rep/usr/include/xapian/database.h.gcov.html
+++ /dev/null
@@ -1,803 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
-
-<html lang="en">
-
-<head>
- <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
- <title>LCOV - lcov.info - /usr/include/xapian/database.h</title>
- <link rel="stylesheet" type="text/css" href="../../../gcov.css">
-</head>
-
-<body>
-
- <table width="100%" border=0 cellspacing=0 cellpadding=0>
- <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
- <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
-
- <tr>
- <td width="100%">
- <table cellpadding=1 border=0 width="100%">
- <tr>
- <td class="headerItem" width="20%">Current&nbsp;view:</td>
- <td class="headerValue" width="80%" colspan=4><a href="../../../index.html">directory</a> - <a href="index.html">usr/include/xapian</a> - database.h</td>
- </tr>
- <tr>
- <td class="headerItem" width="20%">Test:</td>
- <td class="headerValue" width="80%" colspan=4>lcov.info</td>
- </tr>
- <tr>
- <td class="headerItem" width="20%">Date:</td>
- <td class="headerValue" width="20%">2008-08-14</td>
- <td width="20%"></td>
- <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
- <td class="headerValue" width="20%">4</td>
- </tr>
- <tr>
- <td class="headerItem" width="20%">Code&nbsp;covered:</td>
- <td class="headerValue" width="20%">100.0 %</td>
- <td width="20%"></td>
- <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
- <td class="headerValue" width="20%">4</td>
- </tr>
- </table>
- </td>
- </tr>
- <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
- </table>
-
- <table cellpadding=0 cellspacing=0 border=0>
- <tr>
- <td><br></td>
- </tr>
- <tr>
- <td><pre class="source">
-<span class="lineNum"> 1 </span> : /** \file database.h
-<span class="lineNum"> 2 </span> : * \brief API for working with Xapian databases
-<span class="lineNum"> 3 </span> : */
-<span class="lineNum"> 4 </span> : /* Copyright 1999,2000,2001 BrightStation PLC
-<span class="lineNum"> 5 </span> : * Copyright 2002 Ananova Ltd
-<span class="lineNum"> 6 </span> : * Copyright 2002,2003,2004,2005,2006,2007 Olly Betts
-<span class="lineNum"> 7 </span> : * Copyright 2006 Richard Boulton
-<span class="lineNum"> 8 </span> : *
-<span class="lineNum"> 9 </span> : * This program is free software; you can redistribute it and/or
-<span class="lineNum"> 10 </span> : * modify it under the terms of the GNU General Public License as
-<span class="lineNum"> 11 </span> : * published by the Free Software Foundation; either version 2 of the
-<span class="lineNum"> 12 </span> : * License, or (at your option) any later version.
-<span class="lineNum"> 13 </span> : *
-<span class="lineNum"> 14 </span> : * This program is distributed in the hope that it will be useful,
-<span class="lineNum"> 15 </span> : * but WITHOUT ANY WARRANTY; without even the implied warranty of
-<span class="lineNum"> 16 </span> : * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-<span class="lineNum"> 17 </span> : * GNU General Public License for more details.
-<span class="lineNum"> 18 </span> : *
-<span class="lineNum"> 19 </span> : * You should have received a copy of the GNU General Public License
-<span class="lineNum"> 20 </span> : * along with this program; if not, write to the Free Software
-<span class="lineNum"> 21 </span> : * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301
-<span class="lineNum"> 22 </span> : * USA
-<span class="lineNum"> 23 </span> : */
-<span class="lineNum"> 24 </span> :
-<span class="lineNum"> 25 </span> : #ifndef XAPIAN_INCLUDED_DATABASE_H
-<span class="lineNum"> 26 </span> : #define XAPIAN_INCLUDED_DATABASE_H
-<span class="lineNum"> 27 </span> :
-<span class="lineNum"> 28 </span> : #include &lt;string&gt;
-<span class="lineNum"> 29 </span> : #include &lt;vector&gt;
-<span class="lineNum"> 30 </span> :
-<span class="lineNum"> 31 </span> : #include &lt;xapian/base.h&gt;
-<span class="lineNum"> 32 </span> : #include &lt;xapian/types.h&gt;
-<span class="lineNum"> 33 </span> : #include &lt;xapian/positioniterator.h&gt;
-<span class="lineNum"> 34 </span> : #include &lt;xapian/postingiterator.h&gt;
-<span class="lineNum"> 35 </span> : #include &lt;xapian/termiterator.h&gt;
-<span class="lineNum"> 36 </span> : #include &lt;xapian/visibility.h&gt;
-<span class="lineNum"> 37 </span> :
-<span class="lineNum"> 38 </span> : /// The Xapian library lives in the Xapian namespace.
-<span class="lineNum"> 39 </span> : namespace Xapian {
-<span class="lineNum"> 40 </span> :
-<span class="lineNum"> 41 </span> : class Document;
-<span class="lineNum"> 42 </span> :
-<span class="lineNum"> 43 </span> : /** This class is used to access a database, or a group of databases.
-<span class="lineNum"> 44 </span> : *
-<span class="lineNum"> 45 </span> : * For searching, this class is used in conjunction with an Enquire object.
-<span class="lineNum"> 46 </span> : *
-<span class="lineNum"> 47 </span> : * @exception InvalidArgumentError will be thrown if an invalid
-<span class="lineNum"> 48 </span> : * argument is supplied, for example, an unknown database type.
-<span class="lineNum"> 49 </span> : *
-<span class="lineNum"> 50 </span> : * @exception DatabaseOpeningError may be thrown if the database cannot
-<span class="lineNum"> 51 </span> : * be opened (for example, a required file cannot be found).
-<span class="lineNum"> 52 </span> : *
-<span class="lineNum"> 53 </span> : * @exception DatabaseVersionError may be thrown if the database is in an
-<span class="lineNum"> 54 </span> : * unsupported format (for example, created by a newer version of Xapian
-<span class="lineNum"> 55 </span> : * which uses an incompatible format).
-<span class="lineNum"> 56 </span> : */
-<span class="lineNum"> 57 </span> : class XAPIAN_VISIBILITY_DEFAULT Database {
-<span class="lineNum"> 58 </span> : public:
-<span class="lineNum"> 59 </span> : class Internal;
-<span class="lineNum"> 60 </span> : /// @private @internal Reference counted internals.
-<span class="lineNum"> 61 </span> : std::vector&lt;Xapian::Internal::RefCntPtr&lt;Internal&gt; &gt; internal;
-<span class="lineNum"> 62 </span> :
-<span class="lineNum"> 63 </span> : /** Add an existing database (or group of databases) to those
-<span class="lineNum"> 64 </span> : * accessed by this object.
-<span class="lineNum"> 65 </span> : *
-<span class="lineNum"> 66 </span> : * @param database the database(s) to add.
-<span class="lineNum"> 67 </span> : */
-<span class="lineNum"> 68 </span> : void add_database(const Database &amp; database);
-<span class="lineNum"> 69 </span> :
-<span class="lineNum"> 70 </span> : /** Create a Database with no databases in.
-<span class="lineNum"> 71 </span> : */
-<span class="lineNum"> 72 </span> : Database();
-<span class="lineNum"> 73 </span> :
-<span class="lineNum"> 74 </span> : /** Open a Database, automatically determining the database
-<span class="lineNum"> 75 </span> : * backend to use.
-<span class="lineNum"> 76 </span> : *
-<span class="lineNum"> 77 </span> : * @param path directory that the database is stored in.
-<span class="lineNum"> 78 </span> : */
-<span class="lineNum"> 79 </span> : explicit Database(const std::string &amp;path);
-<span class="lineNum"> 80 </span> :
-<span class="lineNum"> 81 </span> : /** @private @internal Create a Database from its internals.
-<span class="lineNum"> 82 </span> : */
-<span class="lineNum"> 83 </span> : explicit Database(Internal *internal);
-<span class="lineNum"> 84 </span> :
-<span class="lineNum"> 85 </span> : /** Destroy this handle on the database.
-<span class="lineNum"> 86 </span> : *
-<span class="lineNum"> 87 </span> : * If there are no copies of this object remaining, the database(s)
-<span class="lineNum"> 88 </span> : * will be closed.
-<span class="lineNum"> 89 </span> : */
-<span class="lineNum"> 90 </span> : virtual ~Database();
-<span class="lineNum"> 91 </span> :
-<span class="lineNum"> 92 </span> : /** Copying is allowed. The internals are reference counted, so
-<span class="lineNum"> 93 </span> : * copying is cheap.
-<span class="lineNum"> 94 </span> : */
-<span class="lineNum"> 95 </span> : Database(const Database &amp;other);
-<span class="lineNum"> 96 </span> :
-<span class="lineNum"> 97 </span> : /** Assignment is allowed. The internals are reference counted,
-<span class="lineNum"> 98 </span> : * so assignment is cheap.
-<span class="lineNum"> 99 </span> : */
-<span class="lineNum"> 100 </span> : void operator=(const Database &amp;other);
-<span class="lineNum"> 101 </span> :
-<span class="lineNum"> 102 </span> : /** Re-open the database.
-<span class="lineNum"> 103 </span> : * This re-opens the database(s) to the latest available version(s).
-<span class="lineNum"> 104 </span> : * It can be used either to make sure the latest results are
-<span class="lineNum"> 105 </span> : * returned, or to recover from a Xapian::DatabaseModifiedError.
-<span class="lineNum"> 106 </span> : */
-<span class="lineNum"> 107 </span> : void reopen();
-<span class="lineNum"> 108 </span> :
-<span class="lineNum"> 109 </span> : /// Return a string describing this object.
-<span class="lineNum"> 110 </span> : virtual std::string get_description() const;
-<span class="lineNum"> 111 </span> :
-<span class="lineNum"> 112 </span> : /** An iterator pointing to the start of the postlist
-<span class="lineNum"> 113 </span> : * for a given term.
-<span class="lineNum"> 114 </span> : *
-<span class="lineNum"> 115 </span> : * If the term name is the empty string, the iterator returned
-<span class="lineNum"> 116 </span> : * will list all the documents in the database. Such an iterator
-<span class="lineNum"> 117 </span> : * will always return a WDF value of 1, since there is no obvious
-<span class="lineNum"> 118 </span> : * meaning for this quantity in this case.
-<span class="lineNum"> 119 </span> : */
-<span class="lineNum"> 120 </span> : PostingIterator postlist_begin(const std::string &amp;tname) const;
-<span class="lineNum"> 121 </span> :
-<span class="lineNum"> 122 </span> : /** Corresponding end iterator to postlist_begin().
-<span class="lineNum"> 123 </span> : */
-<span class="lineNum"> 124 </span><span class="lineCov"> 10 : PostingIterator postlist_end(const std::string &amp;) const {</span>
-<span class="lineNum"> 125 </span><span class="lineCov"> 10 : return PostingIterator(NULL);</span>
-<span class="lineNum"> 126 </span> : }
-<span class="lineNum"> 127 </span> :
-<span class="lineNum"> 128 </span> : /** An iterator pointing to the start of the termlist
-<span class="lineNum"> 129 </span> : * for a given document.
-<span class="lineNum"> 130 </span> : */
-<span class="lineNum"> 131 </span> : TermIterator termlist_begin(Xapian::docid did) const;
-<span class="lineNum"> 132 </span> :
-<span class="lineNum"> 133 </span> : /** Corresponding end iterator to termlist_begin().
-<span class="lineNum"> 134 </span> : */
-<span class="lineNum"> 135 </span> : TermIterator termlist_end(Xapian::docid) const {
-<span class="lineNum"> 136 </span> : return TermIterator(NULL);
-<span class="lineNum"> 137 </span> : }
-<span class="lineNum"> 138 </span> :
-<span class="lineNum"> 139 </span> : /** Does this database have any positional information? */
-<span class="lineNum"> 140 </span> : bool has_positions() const;
-<span class="lineNum"> 141 </span> :
-<span class="lineNum"> 142 </span> : /** An iterator pointing to the start of the position list
-<span class="lineNum"> 143 </span> : * for a given term in a given document.
-<span class="lineNum"> 144 </span> : */
-<span class="lineNum"> 145 </span> : PositionIterator positionlist_begin(Xapian::docid did, const std::string &amp;tname) const;
-<span class="lineNum"> 146 </span> :
-<span class="lineNum"> 147 </span> : /** Corresponding end iterator to positionlist_begin().
-<span class="lineNum"> 148 </span> : */
-<span class="lineNum"> 149 </span> : PositionIterator positionlist_end(Xapian::docid, const std::string &amp;) const {
-<span class="lineNum"> 150 </span> : return PositionIterator(NULL);
-<span class="lineNum"> 151 </span> : }
-<span class="lineNum"> 152 </span> :
-<span class="lineNum"> 153 </span> : /** An iterator which runs across all terms in the database.
-<span class="lineNum"> 154 </span> : */
-<span class="lineNum"> 155 </span> : TermIterator allterms_begin() const;
-<span class="lineNum"> 156 </span> :
-<span class="lineNum"> 157 </span> : /** Corresponding end iterator to allterms_begin().
-<span class="lineNum"> 158 </span> : */
-<span class="lineNum"> 159 </span> : TermIterator allterms_end() const {
-<span class="lineNum"> 160 </span> : return TermIterator(NULL);
-<span class="lineNum"> 161 </span> : }
-<span class="lineNum"> 162 </span> :
-<span class="lineNum"> 163 </span> : /** An iterator which runs across all terms with a given prefix.
-<span class="lineNum"> 164 </span> : *
-<span class="lineNum"> 165 </span> : * This is functionally similar to getting an iterator with
-<span class="lineNum"> 166 </span> : * allterms_begin() and then calling skip_to(prefix) on that iterator
-<span class="lineNum"> 167 </span> : * to move to the start of the prefix, but is more convenient (because
-<span class="lineNum"> 168 </span> : * it detects the end of the prefixed terms), and may be more
-<span class="lineNum"> 169 </span> : * efficient than simply calling skip_to() after opening the iterator,
-<span class="lineNum"> 170 </span> : * particularly for network databases.
-<span class="lineNum"> 171 </span> : *
-<span class="lineNum"> 172 </span> : * @param prefix The prefix to restrict the returned terms to.
-<span class="lineNum"> 173 </span> : */
-<span class="lineNum"> 174 </span> : TermIterator allterms_begin(const std::string &amp; prefix) const;
-<span class="lineNum"> 175 </span> :
-<span class="lineNum"> 176 </span> : /** Corresponding end iterator to allterms_begin(prefix).
-<span class="lineNum"> 177 </span> : */
-<span class="lineNum"> 178 </span><span class="lineCov"> 1 : TermIterator allterms_end(const std::string &amp;) const {</span>
-<span class="lineNum"> 179 </span><span class="lineCov"> 1 : return TermIterator(NULL);</span>
-<span class="lineNum"> 180 </span> : }
-<span class="lineNum"> 181 </span> :
-<span class="lineNum"> 182 </span> : /// Get the number of documents in the database.
-<span class="lineNum"> 183 </span> : Xapian::doccount get_doccount() const;
-<span class="lineNum"> 184 </span> :
-<span class="lineNum"> 185 </span> : /// Get the highest document id which has been used in the database.
-<span class="lineNum"> 186 </span> : Xapian::docid get_lastdocid() const;
-<span class="lineNum"> 187 </span> :
-<span class="lineNum"> 188 </span> : /// Get the average length of the documents in the database.
-<span class="lineNum"> 189 </span> : Xapian::doclength get_avlength() const;
-<span class="lineNum"> 190 </span> :
-<span class="lineNum"> 191 </span> : /// Get the number of documents in the database indexed by a given term.
-<span class="lineNum"> 192 </span> : Xapian::doccount get_termfreq(const std::string &amp; tname) const;
-<span class="lineNum"> 193 </span> :
-<span class="lineNum"> 194 </span> : /** Check if a given term exists in the database.
-<span class="lineNum"> 195 </span> : *
-<span class="lineNum"> 196 </span> : * Return true if and only if the term exists in the database.
-<span class="lineNum"> 197 </span> : * This is the same as (get_termfreq(tname) != 0), but will often be
-<span class="lineNum"> 198 </span> : * more efficient.
-<span class="lineNum"> 199 </span> : */
-<span class="lineNum"> 200 </span> : bool term_exists(const std::string &amp; tname) const;
-<span class="lineNum"> 201 </span> :
-<span class="lineNum"> 202 </span> : /** Return the total number of occurrences of the given term.
-<span class="lineNum"> 203 </span> : *
-<span class="lineNum"> 204 </span> : * This is the sum of the number of occurrences of the term in each
-<span class="lineNum"> 205 </span> : * document it indexes: i.e., the sum of the within document
-<span class="lineNum"> 206 </span> : * frequencies of the term.
-<span class="lineNum"> 207 </span> : *
-<span class="lineNum"> 208 </span> : * @param tname The term whose collection frequency is being
-<span class="lineNum"> 209 </span> : * requested.
-<span class="lineNum"> 210 </span> : */
-<span class="lineNum"> 211 </span> : Xapian::termcount get_collection_freq(const std::string &amp; tname) const;
-<span class="lineNum"> 212 </span> :
-<span class="lineNum"> 213 </span> : /** Get the length of a document.
-<span class="lineNum"> 214 </span> : */
-<span class="lineNum"> 215 </span> : Xapian::doclength get_doclength(Xapian::docid did) const;
-<span class="lineNum"> 216 </span> :
-<span class="lineNum"> 217 </span> : /** Send a &quot;keep-alive&quot; to remote databases to stop them timing
-<span class="lineNum"> 218 </span> : * out.
-<span class="lineNum"> 219 </span> : */
-<span class="lineNum"> 220 </span> : void keep_alive();
-<span class="lineNum"> 221 </span> :
-<span class="lineNum"> 222 </span> : /** Get a document from the database, given its document id.
-<span class="lineNum"> 223 </span> : *
-<span class="lineNum"> 224 </span> : * This method returns a Xapian::Document object which provides the
-<span class="lineNum"> 225 </span> : * information about a document.
-<span class="lineNum"> 226 </span> : *
-<span class="lineNum"> 227 </span> : * @param did The document id for which to retrieve the data.
-<span class="lineNum"> 228 </span> : *
-<span class="lineNum"> 229 </span> : * @return A Xapian::Document object containing the document data
-<span class="lineNum"> 230 </span> : *
-<span class="lineNum"> 231 </span> : * @exception Xapian::DocNotFoundError The document specified
-<span class="lineNum"> 232 </span> : * could not be found in the database.
-<span class="lineNum"> 233 </span> : */
-<span class="lineNum"> 234 </span> : Xapian::Document get_document(Xapian::docid did) const;
-<span class="lineNum"> 235 </span> :
-<span class="lineNum"> 236 </span> : /** Suggest a spelling correction.
-<span class="lineNum"> 237 </span> : *
-<span class="lineNum"> 238 </span> : * @param word The potentially misspelled word.
-<span class="lineNum"> 239 </span> : * @param max_edit_distance Only consider words which are at most
-<span class="lineNum"> 240 </span> : * @a max_edit_distance edits from @a word. An edit is a
-<span class="lineNum"> 241 </span> : * character insertion, deletion, or the transposition of two
-<span class="lineNum"> 242 </span> : * adjacent characters (default is 2).
-<span class="lineNum"> 243 </span> : */
-<span class="lineNum"> 244 </span> : std::string get_spelling_suggestion(const std::string &amp;word,
-<span class="lineNum"> 245 </span> : unsigned max_edit_distance = 2) const;
-<span class="lineNum"> 246 </span> :
-<span class="lineNum"> 247 </span> : /** An iterator which returns all the spelling correction targets.
-<span class="lineNum"> 248 </span> : *
-<span class="lineNum"> 249 </span> : * This returns all the words which are considered as targets for the
-<span class="lineNum"> 250 </span> : * spelling correction algorithm. The frequency of each word is
-<span class="lineNum"> 251 </span> : * available as the term frequency of each entry in the returned
-<span class="lineNum"> 252 </span> : * iterator.
-<span class="lineNum"> 253 </span> : */
-<span class="lineNum"> 254 </span> : Xapian::TermIterator spellings_begin() const;
-<span class="lineNum"> 255 </span> :
-<span class="lineNum"> 256 </span> : /// Corresponding end iterator to spellings_begin().
-<span class="lineNum"> 257 </span> : Xapian::TermIterator spellings_end() const {
-<span class="lineNum"> 258 </span> : return Xapian::TermIterator(NULL);
-<span class="lineNum"> 259 </span> : }
-<span class="lineNum"> 260 </span> :
-<span class="lineNum"> 261 </span> : /** An iterator which returns all the synonyms for a given term.
-<span class="lineNum"> 262 </span> : *
-<span class="lineNum"> 263 </span> : * @param term The term to return synonyms for.
-<span class="lineNum"> 264 </span> : */
-<span class="lineNum"> 265 </span> : Xapian::TermIterator synonyms_begin(const std::string &amp;term) const;
-<span class="lineNum"> 266 </span> :
-<span class="lineNum"> 267 </span> : /// Corresponding end iterator to synonyms_begin(term).
-<span class="lineNum"> 268 </span> : Xapian::TermIterator synonyms_end(const std::string &amp;) const {
-<span class="lineNum"> 269 </span> : return Xapian::TermIterator(NULL);
-<span class="lineNum"> 270 </span> : }
-<span class="lineNum"> 271 </span> :
-<span class="lineNum"> 272 </span> : /** An iterator which returns all terms which have synonyms.
-<span class="lineNum"> 273 </span> : *
-<span class="lineNum"> 274 </span> : * @param prefix If non-empty, only terms with this prefix are
-<span class="lineNum"> 275 </span> : * returned.
-<span class="lineNum"> 276 </span> : */
-<span class="lineNum"> 277 </span> : Xapian::TermIterator synonym_keys_begin(const std::string &amp;prefix = &quot;&quot;) const;
-<span class="lineNum"> 278 </span> :
-<span class="lineNum"> 279 </span> : /// Corresponding end iterator to synonym_keys_begin(prefix).
-<span class="lineNum"> 280 </span> : Xapian::TermIterator synonym_keys_end(const std::string &amp; = &quot;&quot;) const {
-<span class="lineNum"> 281 </span> : return Xapian::TermIterator(NULL);
-<span class="lineNum"> 282 </span> : }
-<span class="lineNum"> 283 </span> :
-<span class="lineNum"> 284 </span> : /** Get the user-specified metadata associated with a given key.
-<span class="lineNum"> 285 </span> : *
-<span class="lineNum"> 286 </span> : * User-specified metadata allows you to store arbitrary information
-<span class="lineNum"> 287 </span> : * in the form of (key,tag) pairs. See @a
-<span class="lineNum"> 288 </span> : * WritableDatabase::set_metadata() for more information.
-<span class="lineNum"> 289 </span> : *
-<span class="lineNum"> 290 </span> : * When invoked on a Xapian::Database object representing multiple
-<span class="lineNum"> 291 </span> : * databases, currently only the metadata for the first is considered
-<span class="lineNum"> 292 </span> : * but this behaviour may change in the future.
-<span class="lineNum"> 293 </span> : *
-<span class="lineNum"> 294 </span> : * If there is no piece of metadata associated with the specified
-<span class="lineNum"> 295 </span> : * key, an empty string is returned (this applies even for backends
-<span class="lineNum"> 296 </span> : * which don't support metadata).
-<span class="lineNum"> 297 </span> : *
-<span class="lineNum"> 298 </span> : * Empty keys are not valid, and specifying one will cause an
-<span class="lineNum"> 299 </span> : * exception.
-<span class="lineNum"> 300 </span> : *
-<span class="lineNum"> 301 </span> : * @param key The key of the metadata item to access.
-<span class="lineNum"> 302 </span> : *
-<span class="lineNum"> 303 </span> : * @return The retrieved metadata item's value.
-<span class="lineNum"> 304 </span> : *
-<span class="lineNum"> 305 </span> : * @exception Xapian::InvalidArgumentError will be thrown if the
-<span class="lineNum"> 306 </span> : * key supplied is empty.
-<span class="lineNum"> 307 </span> : *
-<span class="lineNum"> 308 </span> : * @exception Xapian::UnimplementedError will be thrown if the
-<span class="lineNum"> 309 </span> : * database backend in use doesn't support user-specified
-<span class="lineNum"> 310 </span> : * metadata.
-<span class="lineNum"> 311 </span> : */
-<span class="lineNum"> 312 </span> : std::string get_metadata(const std::string &amp; key) const;
-<span class="lineNum"> 313 </span> : };
-<span class="lineNum"> 314 </span> :
-<span class="lineNum"> 315 </span> : /** This class provides read/write access to a database.
-<span class="lineNum"> 316 </span> : */
-<span class="lineNum"> 317 </span> : class XAPIAN_VISIBILITY_DEFAULT WritableDatabase : public Database {
-<span class="lineNum"> 318 </span> : public:
-<span class="lineNum"> 319 </span> : /** Destroy this handle on the database.
-<span class="lineNum"> 320 </span> : *
-<span class="lineNum"> 321 </span> : * If there are no copies of this object remaining, the database
-<span class="lineNum"> 322 </span> : * will be closed. If there are any transactions in progress
-<span class="lineNum"> 323 </span> : * these will be aborted as if cancel_transaction had been called.
-<span class="lineNum"> 324 </span> : */
-<span class="lineNum"> 325 </span> : virtual ~WritableDatabase();
-<span class="lineNum"> 326 </span> :
-<span class="lineNum"> 327 </span> : /** Create an empty WritableDatabase.
-<span class="lineNum"> 328 </span> : */
-<span class="lineNum"> 329 </span> : WritableDatabase();
-<span class="lineNum"> 330 </span> :
-<span class="lineNum"> 331 </span> : /** Open a database for update, automatically determining the database
-<span class="lineNum"> 332 </span> : * backend to use.
-<span class="lineNum"> 333 </span> : *
-<span class="lineNum"> 334 </span> : * If the database is to be created, Xapian will try
-<span class="lineNum"> 335 </span> : * to create the directory indicated by path if it doesn't already
-<span class="lineNum"> 336 </span> : * exist (but only the leaf directory, not recursively).
-<span class="lineNum"> 337 </span> : *
-<span class="lineNum"> 338 </span> : * @param path directory that the database is stored in.
-<span class="lineNum"> 339 </span> : * @param action one of:
-<span class="lineNum"> 340 </span> : * - Xapian::DB_CREATE_OR_OPEN open for read/write; create if no db
-<span class="lineNum"> 341 </span> : * exists
-<span class="lineNum"> 342 </span> : * - Xapian::DB_CREATE create new database; fail if db exists
-<span class="lineNum"> 343 </span> : * - Xapian::DB_CREATE_OR_OVERWRITE overwrite existing db; create if
-<span class="lineNum"> 344 </span> : * none exists
-<span class="lineNum"> 345 </span> : * - Xapian::DB_OPEN open for read/write; fail if no db exists
-<span class="lineNum"> 346 </span> : */
-<span class="lineNum"> 347 </span> : WritableDatabase(const std::string &amp;path, int action);
-<span class="lineNum"> 348 </span> :
-<span class="lineNum"> 349 </span> : /** @private @internal Create an WritableDatabase given its internals.
-<span class="lineNum"> 350 </span> : */
-<span class="lineNum"> 351 </span> : explicit WritableDatabase(Database::Internal *internal);
-<span class="lineNum"> 352 </span> :
-<span class="lineNum"> 353 </span> : /** Copying is allowed. The internals are reference counted, so
-<span class="lineNum"> 354 </span> : * copying is cheap.
-<span class="lineNum"> 355 </span> : */
-<span class="lineNum"> 356 </span> : WritableDatabase(const WritableDatabase &amp;other);
-<span class="lineNum"> 357 </span> :
-<span class="lineNum"> 358 </span> : /** Assignment is allowed. The internals are reference counted,
-<span class="lineNum"> 359 </span> : * so assignment is cheap.
-<span class="lineNum"> 360 </span> : *
-<span class="lineNum"> 361 </span> : * Note that only an WritableDatabase may be assigned to an
-<span class="lineNum"> 362 </span> : * WritableDatabase: an attempt to assign a Database is caught
-<span class="lineNum"> 363 </span> : * at compile-time.
-<span class="lineNum"> 364 </span> : */
-<span class="lineNum"> 365 </span> : void operator=(const WritableDatabase &amp;other);
-<span class="lineNum"> 366 </span> :
-<span class="lineNum"> 367 </span> : /** Flush to disk any modifications made to the database.
-<span class="lineNum"> 368 </span> : *
-<span class="lineNum"> 369 </span> : * For efficiency reasons, when performing multiple updates to a
-<span class="lineNum"> 370 </span> : * database it is best (indeed, almost essential) to make as many
-<span class="lineNum"> 371 </span> : * modifications as memory will permit in a single pass through
-<span class="lineNum"> 372 </span> : * the database. To ensure this, Xapian batches up modifications.
-<span class="lineNum"> 373 </span> : *
-<span class="lineNum"> 374 </span> : * Flush may be called at any time to
-<span class="lineNum"> 375 </span> : * ensure that the modifications which have been made are written to
-<span class="lineNum"> 376 </span> : * disk: if the flush succeeds, all the preceding modifications will
-<span class="lineNum"> 377 </span> : * have been written to disk.
-<span class="lineNum"> 378 </span> : *
-<span class="lineNum"> 379 </span> : * If any of the modifications fail, an exception will be thrown and
-<span class="lineNum"> 380 </span> : * the database will be left in a state in which each separate
-<span class="lineNum"> 381 </span> : * addition, replacement or deletion operation has either been fully
-<span class="lineNum"> 382 </span> : * performed or not performed at all: it is then up to the
-<span class="lineNum"> 383 </span> : * application to work out which operations need to be repeated.
-<span class="lineNum"> 384 </span> : *
-<span class="lineNum"> 385 </span> : * It's not valid to call flush within a transaction.
-<span class="lineNum"> 386 </span> : *
-<span class="lineNum"> 387 </span> : * Beware of calling flush too frequently: this will have a severe
-<span class="lineNum"> 388 </span> : * performance cost.
-<span class="lineNum"> 389 </span> : *
-<span class="lineNum"> 390 </span> : * Note that flush need not be called explicitly: it will be called
-<span class="lineNum"> 391 </span> : * automatically when the database is closed, or when a sufficient
-<span class="lineNum"> 392 </span> : * number of modifications have been made.
-<span class="lineNum"> 393 </span> : *
-<span class="lineNum"> 394 </span> : * @exception Xapian::DatabaseError will be thrown if a problem occurs
-<span class="lineNum"> 395 </span> : * while modifying the database.
-<span class="lineNum"> 396 </span> : *
-<span class="lineNum"> 397 </span> : * @exception Xapian::DatabaseCorruptError will be thrown if the
-<span class="lineNum"> 398 </span> : * database is in a corrupt state.
-<span class="lineNum"> 399 </span> : *
-<span class="lineNum"> 400 </span> : * @exception Xapian::DatabaseLockError will be thrown if a lock
-<span class="lineNum"> 401 </span> : * couldn't be acquired on the database.
-<span class="lineNum"> 402 </span> : */
-<span class="lineNum"> 403 </span> : void flush();
-<span class="lineNum"> 404 </span> :
-<span class="lineNum"> 405 </span> : /** Begin a transaction.
-<span class="lineNum"> 406 </span> : *
-<span class="lineNum"> 407 </span> : * In Xapian a transaction is a group of modifications to the database
-<span class="lineNum"> 408 </span> : * which are linked such that either all will be applied
-<span class="lineNum"> 409 </span> : * simultaneously or none will be applied at all. Even in the case of
-<span class="lineNum"> 410 </span> : * a power failure, this characteristic should be preserved (as long
-<span class="lineNum"> 411 </span> : * as the filesystem isn't corrupted, etc).
-<span class="lineNum"> 412 </span> : *
-<span class="lineNum"> 413 </span> : * A transaction is started with begin_transaction() and can
-<span class="lineNum"> 414 </span> : * either be committed by calling commit_transaction() or aborted
-<span class="lineNum"> 415 </span> : * by calling cancel_transaction().
-<span class="lineNum"> 416 </span> : *
-<span class="lineNum"> 417 </span> : * By default, a transaction implicitly calls flush before and after
-<span class="lineNum"> 418 </span> : * so that the modifications stand and fall without affecting
-<span class="lineNum"> 419 </span> : * modifications before or after.
-<span class="lineNum"> 420 </span> : *
-<span class="lineNum"> 421 </span> : * The downside of this flushing is that small transactions cause
-<span class="lineNum"> 422 </span> : * modifications to be frequently flushed which can harm indexing
-<span class="lineNum"> 423 </span> : * performance in the same way that explicitly calling flush
-<span class="lineNum"> 424 </span> : * frequently can.
-<span class="lineNum"> 425 </span> : *
-<span class="lineNum"> 426 </span> : * If you're applying atomic groups of changes and only wish to
-<span class="lineNum"> 427 </span> : * ensure that each group is either applied or not applied, then
-<span class="lineNum"> 428 </span> : * you can prevent the automatic flush before and after the
-<span class="lineNum"> 429 </span> : * transaction by starting the transaction with
-<span class="lineNum"> 430 </span> : * begin_transaction(false). However, if cancel_transaction is
-<span class="lineNum"> 431 </span> : * called (or if commit_transaction isn't called before the
-<span class="lineNum"> 432 </span> : * WritableDatabase object is destroyed) then any changes which
-<span class="lineNum"> 433 </span> : * were pending before the transaction began will also be discarded.
-<span class="lineNum"> 434 </span> : *
-<span class="lineNum"> 435 </span> : * Transactions aren't currently supported by the InMemory backend.
-<span class="lineNum"> 436 </span> : *
-<span class="lineNum"> 437 </span> : * @exception Xapian::UnimplementedError will be thrown if transactions
-<span class="lineNum"> 438 </span> : * are not available for this database type.
-<span class="lineNum"> 439 </span> : *
-<span class="lineNum"> 440 </span> : * @exception Xapian::InvalidOperationError will be thrown if this is
-<span class="lineNum"> 441 </span> : * called at an invalid time, such as when a transaction
-<span class="lineNum"> 442 </span> : * is already in progress.
-<span class="lineNum"> 443 </span> : */
-<span class="lineNum"> 444 </span> : void begin_transaction(bool flushed=true);
-<span class="lineNum"> 445 </span> :
-<span class="lineNum"> 446 </span> : /** Complete the transaction currently in progress.
-<span class="lineNum"> 447 </span> : *
-<span class="lineNum"> 448 </span> : * If this method completes successfully and this is a flushed
-<span class="lineNum"> 449 </span> : * transaction, all the database modifications
-<span class="lineNum"> 450 </span> : * made during the transaction will have been committed to the
-<span class="lineNum"> 451 </span> : * database.
-<span class="lineNum"> 452 </span> : *
-<span class="lineNum"> 453 </span> : * If an error occurs, an exception will be thrown, and none of
-<span class="lineNum"> 454 </span> : * the modifications made to the database during the transaction
-<span class="lineNum"> 455 </span> : * will have been applied to the database.
-<span class="lineNum"> 456 </span> : *
-<span class="lineNum"> 457 </span> : * In all cases the transaction will no longer be in progress.
-<span class="lineNum"> 458 </span> : *
-<span class="lineNum"> 459 </span> : * @exception Xapian::DatabaseError will be thrown if a problem occurs
-<span class="lineNum"> 460 </span> : * while modifying the database.
-<span class="lineNum"> 461 </span> : *
-<span class="lineNum"> 462 </span> : * @exception Xapian::DatabaseCorruptError will be thrown if the
-<span class="lineNum"> 463 </span> : * database is in a corrupt state.
-<span class="lineNum"> 464 </span> : *
-<span class="lineNum"> 465 </span> : * @exception Xapian::InvalidOperationError will be thrown if a
-<span class="lineNum"> 466 </span> : * transaction is not currently in progress.
-<span class="lineNum"> 467 </span> : *
-<span class="lineNum"> 468 </span> : * @exception Xapian::UnimplementedError will be thrown if transactions
-<span class="lineNum"> 469 </span> : * are not available for this database type.
-<span class="lineNum"> 470 </span> : */
-<span class="lineNum"> 471 </span> : void commit_transaction();
-<span class="lineNum"> 472 </span> :
-<span class="lineNum"> 473 </span> : /** Abort the transaction currently in progress, discarding the
-<span class="lineNum"> 474 </span> : * potential modifications made to the database.
-<span class="lineNum"> 475 </span> : *
-<span class="lineNum"> 476 </span> : * If an error occurs in this method, an exception will be thrown,
-<span class="lineNum"> 477 </span> : * but the transaction will be cancelled anyway.
-<span class="lineNum"> 478 </span> : *
-<span class="lineNum"> 479 </span> : * @exception Xapian::DatabaseError will be thrown if a problem occurs
-<span class="lineNum"> 480 </span> : * while modifying the database.
-<span class="lineNum"> 481 </span> : *
-<span class="lineNum"> 482 </span> : * @exception Xapian::DatabaseCorruptError will be thrown if the
-<span class="lineNum"> 483 </span> : * database is in a corrupt state.
-<span class="lineNum"> 484 </span> : *
-<span class="lineNum"> 485 </span> : * @exception Xapian::InvalidOperationError will be thrown if a
-<span class="lineNum"> 486 </span> : * transaction is not currently in progress.
-<span class="lineNum"> 487 </span> : *
-<span class="lineNum"> 488 </span> : * @exception Xapian::UnimplementedError will be thrown if transactions
-<span class="lineNum"> 489 </span> : * are not available for this database type.
-<span class="lineNum"> 490 </span> : */
-<span class="lineNum"> 491 </span> : void cancel_transaction();
-<span class="lineNum"> 492 </span> :
-<span class="lineNum"> 493 </span> : /** Add a new document to the database.
-<span class="lineNum"> 494 </span> : *
-<span class="lineNum"> 495 </span> : * This method adds the specified document to the database,
-<span class="lineNum"> 496 </span> : * returning a newly allocated document ID. Automatically allocated
-<span class="lineNum"> 497 </span> : * document IDs come from a per-database monotonically increasing
-<span class="lineNum"> 498 </span> : * counter, so IDs from deleted documents won't be reused.
-<span class="lineNum"> 499 </span> : *
-<span class="lineNum"> 500 </span> : * If you want to specify the document ID to be used, you should
-<span class="lineNum"> 501 </span> : * call replace_document() instead.
-<span class="lineNum"> 502 </span> : *
-<span class="lineNum"> 503 </span> : * Note that changes to the database won't be immediately committed to
-<span class="lineNum"> 504 </span> : * disk; see flush() for more details.
-<span class="lineNum"> 505 </span> : *
-<span class="lineNum"> 506 </span> : * As with all database modification operations, the effect is
-<span class="lineNum"> 507 </span> : * atomic: the document will either be fully added, or the document
-<span class="lineNum"> 508 </span> : * fails to be added and an exception is thrown (possibly at a
-<span class="lineNum"> 509 </span> : * later time when flush is called or the database is closed).
-<span class="lineNum"> 510 </span> : *
-<span class="lineNum"> 511 </span> : * @param document The new document to be added.
-<span class="lineNum"> 512 </span> : *
-<span class="lineNum"> 513 </span> : * @return The document ID of the newly added document.
-<span class="lineNum"> 514 </span> : *
-<span class="lineNum"> 515 </span> : * @exception Xapian::DatabaseError will be thrown if a problem occurs
-<span class="lineNum"> 516 </span> : * while writing to the database.
-<span class="lineNum"> 517 </span> : *
-<span class="lineNum"> 518 </span> : * @exception Xapian::DatabaseCorruptError will be thrown if the
-<span class="lineNum"> 519 </span> : * database is in a corrupt state.
-<span class="lineNum"> 520 </span> : */
-<span class="lineNum"> 521 </span> : Xapian::docid add_document(const Xapian::Document &amp; document);
-<span class="lineNum"> 522 </span> :
-<span class="lineNum"> 523 </span> : /** Delete a document from the database.
-<span class="lineNum"> 524 </span> : *
-<span class="lineNum"> 525 </span> : * This method removes the document with the specified document ID
-<span class="lineNum"> 526 </span> : * from the database.
-<span class="lineNum"> 527 </span> : *
-<span class="lineNum"> 528 </span> : * Note that changes to the database won't be immediately committed to
-<span class="lineNum"> 529 </span> : * disk; see flush() for more details.
-<span class="lineNum"> 530 </span> : *
-<span class="lineNum"> 531 </span> : * As with all database modification operations, the effect is
-<span class="lineNum"> 532 </span> : * atomic: the document will either be fully removed, or the document
-<span class="lineNum"> 533 </span> : * fails to be removed and an exception is thrown (possibly at a
-<span class="lineNum"> 534 </span> : * later time when flush is called or the database is closed).
-<span class="lineNum"> 535 </span> : *
-<span class="lineNum"> 536 </span> : * @param did The document ID of the document to be removed.
-<span class="lineNum"> 537 </span> : *
-<span class="lineNum"> 538 </span> : * @exception Xapian::DatabaseError will be thrown if a problem occurs
-<span class="lineNum"> 539 </span> : * while writing to the database.
-<span class="lineNum"> 540 </span> : *
-<span class="lineNum"> 541 </span> : * @exception Xapian::DatabaseCorruptError will be thrown if the
-<span class="lineNum"> 542 </span> : * database is in a corrupt state.
-<span class="lineNum"> 543 </span> : */
-<span class="lineNum"> 544 </span> : void delete_document(Xapian::docid did);
-<span class="lineNum"> 545 </span> :
-<span class="lineNum"> 546 </span> : /** Delete any documents indexed by a term from the database.
-<span class="lineNum"> 547 </span> : *
-<span class="lineNum"> 548 </span> : * This method removes any documents indexed by the specified term
-<span class="lineNum"> 549 </span> : * from the database.
-<span class="lineNum"> 550 </span> : *
-<span class="lineNum"> 551 </span> : * A major use is for convenience when UIDs from another system are
-<span class="lineNum"> 552 </span> : * mapped to terms in Xapian, although this method has other uses
-<span class="lineNum"> 553 </span> : * (for example, you could add a &quot;deletion date&quot; term to documents at
-<span class="lineNum"> 554 </span> : * index time and use this method to delete all documents due for
-<span class="lineNum"> 555 </span> : * deletion on a particular date).
-<span class="lineNum"> 556 </span> : *
-<span class="lineNum"> 557 </span> : * @param unique_term The term to remove references to.
-<span class="lineNum"> 558 </span> : *
-<span class="lineNum"> 559 </span> : * @exception Xapian::DatabaseError will be thrown if a problem occurs
-<span class="lineNum"> 560 </span> : * while writing to the database.
-<span class="lineNum"> 561 </span> : *
-<span class="lineNum"> 562 </span> : * @exception Xapian::DatabaseCorruptError will be thrown if the
-<span class="lineNum"> 563 </span> : * database is in a corrupt state.
-<span class="lineNum"> 564 </span> : */
-<span class="lineNum"> 565 </span> : void delete_document(const std::string &amp; unique_term);
-<span class="lineNum"> 566 </span> :
-<span class="lineNum"> 567 </span> : /** Replace a given document in the database.
-<span class="lineNum"> 568 </span> : *
-<span class="lineNum"> 569 </span> : * This method replaces the document with the specified document ID.
-<span class="lineNum"> 570 </span> : * If document ID @a did isn't currently used, the document will be
-<span class="lineNum"> 571 </span> : * added with document ID @a did.
-<span class="lineNum"> 572 </span> : *
-<span class="lineNum"> 573 </span> : * The monotonic counter used for automatically allocating document
-<span class="lineNum"> 574 </span> : * IDs is increased so that the next automatically allocated document
-<span class="lineNum"> 575 </span> : * ID will be did + 1. Be aware that if you use this method to
-<span class="lineNum"> 576 </span> : * specify a high document ID for a new document, and also use
-<span class="lineNum"> 577 </span> : * WritableDatabase::add_document(), Xapian may get to a state where
-<span class="lineNum"> 578 </span> : * this counter wraps around and will be unable to automatically
-<span class="lineNum"> 579 </span> : * allocate document IDs!
-<span class="lineNum"> 580 </span> : *
-<span class="lineNum"> 581 </span> : * Note that changes to the database won't be immediately committed to
-<span class="lineNum"> 582 </span> : * disk; see flush() for more details.
-<span class="lineNum"> 583 </span> : *
-<span class="lineNum"> 584 </span> : * As with all database modification operations, the effect is
-<span class="lineNum"> 585 </span> : * atomic: the document will either be fully replaced, or the document
-<span class="lineNum"> 586 </span> : * fails to be replaced and an exception is thrown (possibly at a
-<span class="lineNum"> 587 </span> : * later time when flush is called or the database is closed).
-<span class="lineNum"> 588 </span> : *
-<span class="lineNum"> 589 </span> : * @param did The document ID of the document to be replaced.
-<span class="lineNum"> 590 </span> : * @param document The new document.
-<span class="lineNum"> 591 </span> : *
-<span class="lineNum"> 592 </span> : * @exception Xapian::DatabaseError will be thrown if a problem occurs
-<span class="lineNum"> 593 </span> : * while writing to the database.
-<span class="lineNum"> 594 </span> : *
-<span class="lineNum"> 595 </span> : * @exception Xapian::DatabaseCorruptError will be thrown if the
-<span class="lineNum"> 596 </span> : * database is in a corrupt state.
-<span class="lineNum"> 597 </span> : */
-<span class="lineNum"> 598 </span> : void replace_document(Xapian::docid did,
-<span class="lineNum"> 599 </span> : const Xapian::Document &amp; document);
-<span class="lineNum"> 600 </span> :
-<span class="lineNum"> 601 </span> : /** Replace any documents matching a term.
-<span class="lineNum"> 602 </span> : *
-<span class="lineNum"> 603 </span> : * This method replaces any documents indexed by the specified term
-<span class="lineNum"> 604 </span> : * with the specified document. If any documents are indexed by the
-<span class="lineNum"> 605 </span> : * term, the lowest document ID will be used for the document,
-<span class="lineNum"> 606 </span> : * otherwise a new document ID will be generated as for add_document.
-<span class="lineNum"> 607 </span> : *
-<span class="lineNum"> 608 </span> : * The intended use is to allow UIDs from another system to easily
-<span class="lineNum"> 609 </span> : * be mapped to terms in Xapian, although this method probably has
-<span class="lineNum"> 610 </span> : * other uses.
-<span class="lineNum"> 611 </span> : *
-<span class="lineNum"> 612 </span> : * Note that changes to the database won't be immediately committed to
-<span class="lineNum"> 613 </span> : * disk; see flush() for more details.
-<span class="lineNum"> 614 </span> : *
-<span class="lineNum"> 615 </span> : * As with all database modification operations, the effect is
-<span class="lineNum"> 616 </span> : * atomic: the document(s) will either be fully replaced, or the
-<span class="lineNum"> 617 </span> : * document(s) fail to be replaced and an exception is thrown
-<span class="lineNum"> 618 </span> : * (possibly at a
-<span class="lineNum"> 619 </span> : * later time when flush is called or the database is closed).
-<span class="lineNum"> 620 </span> : *
-<span class="lineNum"> 621 </span> : * @param unique_term The &quot;unique&quot; term.
-<span class="lineNum"> 622 </span> : * @param document The new document.
-<span class="lineNum"> 623 </span> : *
-<span class="lineNum"> 624 </span> : * @return The document ID that document was given.
-<span class="lineNum"> 625 </span> : *
-<span class="lineNum"> 626 </span> : * @exception Xapian::DatabaseError will be thrown if a problem occurs
-<span class="lineNum"> 627 </span> : * while writing to the database.
-<span class="lineNum"> 628 </span> : *
-<span class="lineNum"> 629 </span> : * @exception Xapian::DatabaseCorruptError will be thrown if the
-<span class="lineNum"> 630 </span> : * database is in a corrupt state.
-<span class="lineNum"> 631 </span> : */
-<span class="lineNum"> 632 </span> : Xapian::docid replace_document(const std::string &amp; unique_term,
-<span class="lineNum"> 633 </span> : const Xapian::Document &amp; document);
-<span class="lineNum"> 634 </span> :
-<span class="lineNum"> 635 </span> : /** Add a word to the spelling dictionary.
-<span class="lineNum"> 636 </span> : *
-<span class="lineNum"> 637 </span> : * If the word is already present, its frequency is increased.
-<span class="lineNum"> 638 </span> : *
-<span class="lineNum"> 639 </span> : * @param word The word to add.
-<span class="lineNum"> 640 </span> : * @param freqinc How much to increase its frequency by (default 1).
-<span class="lineNum"> 641 </span> : */
-<span class="lineNum"> 642 </span> : void add_spelling(const std::string &amp; word,
-<span class="lineNum"> 643 </span> : Xapian::termcount freqinc = 1) const;
-<span class="lineNum"> 644 </span> :
-<span class="lineNum"> 645 </span> : /** Remove a word from the spelling dictionary.
-<span class="lineNum"> 646 </span> : *
-<span class="lineNum"> 647 </span> : * The word's frequency is decreased, and if would become zero or less
-<span class="lineNum"> 648 </span> : * then the word is removed completely.
-<span class="lineNum"> 649 </span> : *
-<span class="lineNum"> 650 </span> : * @param word The word to remove.
-<span class="lineNum"> 651 </span> : * @param freqdec How much to decrease its frequency by (default 1).
-<span class="lineNum"> 652 </span> : */
-<span class="lineNum"> 653 </span> : void remove_spelling(const std::string &amp; word,
-<span class="lineNum"> 654 </span> : Xapian::termcount freqdec = 1) const;
-<span class="lineNum"> 655 </span> :
-<span class="lineNum"> 656 </span> : /** Add a synonym for a term.
-<span class="lineNum"> 657 </span> : *
-<span class="lineNum"> 658 </span> : * If @a synonym is already a synonym for @a term, then no action is
-<span class="lineNum"> 659 </span> : * taken.
-<span class="lineNum"> 660 </span> : */
-<span class="lineNum"> 661 </span> : void add_synonym(const std::string &amp; term,
-<span class="lineNum"> 662 </span> : const std::string &amp; synonym) const;
-<span class="lineNum"> 663 </span> :
-<span class="lineNum"> 664 </span> : /** Remove a synonym for a term.
-<span class="lineNum"> 665 </span> : *
-<span class="lineNum"> 666 </span> : * If @a synonym isn't a synonym for @a term, then no action is taken.
-<span class="lineNum"> 667 </span> : */
-<span class="lineNum"> 668 </span> : void remove_synonym(const std::string &amp; term,
-<span class="lineNum"> 669 </span> : const std::string &amp; synonym) const;
-<span class="lineNum"> 670 </span> :
-<span class="lineNum"> 671 </span> : /** Remove all synonyms for a term.
-<span class="lineNum"> 672 </span> : *
-<span class="lineNum"> 673 </span> : * If @a term has no synonyms, no action is taken.
-<span class="lineNum"> 674 </span> : */
-<span class="lineNum"> 675 </span> : void clear_synonyms(const std::string &amp; term) const;
-<span class="lineNum"> 676 </span> :
-<span class="lineNum"> 677 </span> : /** Set the user-specified metadata associated with a given key.
-<span class="lineNum"> 678 </span> : *
-<span class="lineNum"> 679 </span> : * This method sets the metadata value associated with a given key.
-<span class="lineNum"> 680 </span> : * If there is already a metadata value stored in the database with
-<span class="lineNum"> 681 </span> : * the same key, the old value is replaced. If you want to delete an
-<span class="lineNum"> 682 </span> : * existing item of metadata, just set its value to the empty string.
-<span class="lineNum"> 683 </span> : *
-<span class="lineNum"> 684 </span> : * User-specified metadata allows you to store arbitrary information
-<span class="lineNum"> 685 </span> : * in the form of (key,tag) pairs.
-<span class="lineNum"> 686 </span> : *
-<span class="lineNum"> 687 </span> : * There's no hard limit on the number of metadata items, or the size
-<span class="lineNum"> 688 </span> : * of the metadata values. Metadata keys have a limited length, which
-<span class="lineNum"> 689 </span> : * depends on the backend. We recommend limiting them to 200 bytes.
-<span class="lineNum"> 690 </span> : * Empty keys are not valid, and specifying one will cause an
-<span class="lineNum"> 691 </span> : * exception.
-<span class="lineNum"> 692 </span> : *
-<span class="lineNum"> 693 </span> : * Metadata modifications are committed to disk in the same way as
-<span class="lineNum"> 694 </span> : * modifications to the documents in the database are: i.e.,
-<span class="lineNum"> 695 </span> : * modifications are atomic, and won't be committed to disk
-<span class="lineNum"> 696 </span> : * immediately (see flush() for more details). This allows metadata
-<span class="lineNum"> 697 </span> : * to be used to link databases with versioned external resources
-<span class="lineNum"> 698 </span> : * by storing the appropriate version number in a metadata item.
-<span class="lineNum"> 699 </span> : *
-<span class="lineNum"> 700 </span> : * You can also use the metadata to store arbitrary extra information
-<span class="lineNum"> 701 </span> : * associated with terms, documents, or postings by encoding the
-<span class="lineNum"> 702 </span> : * termname and/or document id into the metadata key.
-<span class="lineNum"> 703 </span> : *
-<span class="lineNum"> 704 </span> : * @param key The key of the metadata item to set.
-<span class="lineNum"> 705 </span> : *
-<span class="lineNum"> 706 </span> : * @param value The value of the metadata item to set.
-<span class="lineNum"> 707 </span> : *
-<span class="lineNum"> 708 </span> : * @exception Xapian::DatabaseError will be thrown if a problem occurs
-<span class="lineNum"> 709 </span> : * while writing to the database.
-<span class="lineNum"> 710 </span> : *
-<span class="lineNum"> 711 </span> : * @exception Xapian::DatabaseCorruptError will be thrown if the
-<span class="lineNum"> 712 </span> : * database is in a corrupt state.
-<span class="lineNum"> 713 </span> : *
-<span class="lineNum"> 714 </span> : * @exception Xapian::InvalidArgumentError will be thrown if the
-<span class="lineNum"> 715 </span> : * key supplied is empty.
-<span class="lineNum"> 716 </span> : */
-<span class="lineNum"> 717 </span> : void set_metadata(const std::string &amp; key, const std::string &amp; value);
-<span class="lineNum"> 718 </span> :
-<span class="lineNum"> 719 </span> : /// Return a string describing this object.
-<span class="lineNum"> 720 </span> : std::string get_description() const;
-<span class="lineNum"> 721 </span> : };
-<span class="lineNum"> 722 </span> :
-<span class="lineNum"> 723 </span> : /** Open for read/write; create if no db exists. */
-<span class="lineNum"> 724 </span> : const int DB_CREATE_OR_OPEN = 1;
-<span class="lineNum"> 725 </span> : /** Create a new database; fail if db exists. */
-<span class="lineNum"> 726 </span> : const int DB_CREATE = 2;
-<span class="lineNum"> 727 </span> : /** Overwrite existing db; create if none exists. */
-<span class="lineNum"> 728 </span> : const int DB_CREATE_OR_OVERWRITE = 3;
-<span class="lineNum"> 729 </span> : /** Open for read/write; fail if no db exists. */
-<span class="lineNum"> 730 </span> : const int DB_OPEN = 4;
-<span class="lineNum"> 731 </span> : // Can't see any sensible use for this one
-<span class="lineNum"> 732 </span> : // const int DB_OVERWRITE = XXX;
-<span class="lineNum"> 733 </span> :
-<span class="lineNum"> 734 </span> : }
-<span class="lineNum"> 735 </span> :
-<span class="lineNum"> 736 </span> : #endif /* XAPIAN_INCLUDED_DATABASE_H */
-</pre>
- </td>
- </tr>
- </table>
- <br>
-
- <table width="100%" border=0 cellspacing=0 cellpadding=0>
- <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
- <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
- </table>
- <br>
-
-</body>
-</html>