Sophie

Sophie

distrib > Fedora > 13 > i386 > by-pkgid > 2dc7ae7102ce788eb8a15dec0caf7708 > files > 138

xapian-core-devel-1.0.21-1.fc13.i686.rpm

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head>
<title>Xapian: API Documentation: xapian-core: Xapian::Query Class Reference</title>
<link href="doxygen.css" rel="stylesheet" type="text/css">
<link href="tabs.css" rel="stylesheet" type="text/css">
</head>
<body bgcolor="#ffffff">
<!-- Generated by Doxygen 1.5.2 -->
<div class="tabs">
  <ul>
    <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
    <li><a href="namespaces.html"><span>Namespaces</span></a></li>
    <li class="current"><a href="classes.html"><span>Classes</span></a></li>
    <li><a href="files.html"><span>Files</span></a></li>
    <li><a href="pages.html"><span>Related&nbsp;Pages</span></a></li>
  </ul>
</div>
<div class="tabs">
  <ul>
    <li><a href="classes.html"><span>Alphabetical&nbsp;List</span></a></li>
    <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
    <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
    <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
  </ul>
</div>
<div class="nav">
<a class="el" href="namespaceXapian.html">Xapian</a>::<a class="el" href="classXapian_1_1Query.html">Query</a></div>
<h1>Xapian::Query Class Reference</h1><!-- doxytag: class="Xapian::Query" -->Class representing a query.  
<a href="#_details">More...</a>
<p>
<a href="classXapian_1_1Query-members.html">List of all members.</a><table border="0" cellpadding="0" cellspacing="0">
<tr><td></td></tr>
<tr><td colspan="2"><br><h2>Public Types</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">enum &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classXapian_1_1Query.html#df6014fe7725e5427be7210771919f62">op</a> { <br>
&nbsp;&nbsp;<a class="el" href="classXapian_1_1Query.html#df6014fe7725e5427be7210771919f6219fe995e29748a4324108b2f859f8607">OP_AND</a>, 
<a class="el" href="classXapian_1_1Query.html#df6014fe7725e5427be7210771919f6282e33801d897b974065a281e1c34e39d">OP_OR</a>, 
<a class="el" href="classXapian_1_1Query.html#df6014fe7725e5427be7210771919f62628d78f6a8c58ae69c199cb7445e253f">OP_AND_NOT</a>, 
<a class="el" href="classXapian_1_1Query.html#df6014fe7725e5427be7210771919f62fb785b057135260846ad4bb15382c8aa">OP_XOR</a>, 
<br>
&nbsp;&nbsp;<a class="el" href="classXapian_1_1Query.html#df6014fe7725e5427be7210771919f621ccba3a594d0839c865821ce7efad045">OP_AND_MAYBE</a>, 
<a class="el" href="classXapian_1_1Query.html#df6014fe7725e5427be7210771919f622140c62093d4a2ecacee2fd69f70b17e">OP_FILTER</a>, 
<a class="el" href="classXapian_1_1Query.html#df6014fe7725e5427be7210771919f62bf13c7398786b689b252f63ac70192b2">OP_NEAR</a>, 
<a class="el" href="classXapian_1_1Query.html#df6014fe7725e5427be7210771919f62f281df1d7267dfdfa668cec984464a46">OP_PHRASE</a>, 
<br>
&nbsp;&nbsp;<a class="el" href="classXapian_1_1Query.html#df6014fe7725e5427be7210771919f6295a992b9e530841d59f8ad98c2c73732">OP_VALUE_RANGE</a>, 
<a class="el" href="classXapian_1_1Query.html#df6014fe7725e5427be7210771919f62fc2596866d3b45c930ce83939b54830e">OP_SCALE_WEIGHT</a>, 
<a class="el" href="classXapian_1_1Query.html#df6014fe7725e5427be7210771919f62954b0153394312bec98044730d693efb">OP_ELITE_SET</a>, 
<a class="el" href="classXapian_1_1Query.html#df6014fe7725e5427be7210771919f62609e2f1e1647ba549b10856e38c91c3e">OP_VALUE_GE</a>, 
<br>
&nbsp;&nbsp;<a class="el" href="classXapian_1_1Query.html#df6014fe7725e5427be7210771919f6258d8bd9fa6cad1608766060ec8c59e08">OP_VALUE_LE</a>
<br>
 }</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Enum of possible query operations.  <a href="classXapian_1_1Query.html#df6014fe7725e5427be7210771919f62">More...</a><br></td></tr>
<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classXapian_1_1Query.html#1a7f467518f97673f9ac831c112f1d96">Query</a> (const <a class="el" href="classXapian_1_1Query.html">Query</a> &amp;copyme)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Copy constructor.  <a href="#1a7f467518f97673f9ac831c112f1d96"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classXapian_1_1Query.html">Query</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classXapian_1_1Query.html#38d4e62da5f73ce816bf15169c5eae4e">operator=</a> (const <a class="el" href="classXapian_1_1Query.html">Query</a> &amp;copyme)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Assignment.  <a href="#38d4e62da5f73ce816bf15169c5eae4e"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classXapian_1_1Query.html#511a52db2f886b670a3fa654a6051e2c">Query</a> ()</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Default constructor: makes an empty query which matches no documents.  <a href="#511a52db2f886b670a3fa654a6051e2c"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classXapian_1_1Query.html#822a93e9fb44943cee531ff8431bfc8f">~Query</a> ()</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Destructor.  <a href="#822a93e9fb44943cee531ff8431bfc8f"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classXapian_1_1Query.html#49f88b626f271ca04184783bd8124119">Query</a> (const std::string &amp;tname_, <a class="el" href="namespaceXapian.html#3261017447607738e49eae6a2a4f5eec">Xapian::termcount</a> wqf_=1, <a class="el" href="namespaceXapian.html#2de139bd007f8cbe058d526cb311ebe4">Xapian::termpos</a> pos_=0)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">A query consisting of a single term.  <a href="#49f88b626f271ca04184783bd8124119"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classXapian_1_1Query.html#9c1212fa31451d19ba5525cf1f51ae86">Query</a> (<a class="el" href="classXapian_1_1Query.html#df6014fe7725e5427be7210771919f62">Query::op</a> op_, const <a class="el" href="classXapian_1_1Query.html">Query</a> &amp;left, const <a class="el" href="classXapian_1_1Query.html">Query</a> &amp;right)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">A query consisting of two subqueries, opp-ed together.  <a href="#9c1212fa31451d19ba5525cf1f51ae86"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classXapian_1_1Query.html#d550bc65788d60530f4c412d0277d9b4">Query</a> (<a class="el" href="classXapian_1_1Query.html#df6014fe7725e5427be7210771919f62">Query::op</a> op_, const std::string &amp;left, const std::string &amp;right)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">A query consisting of two termnames opp-ed together.  <a href="#d550bc65788d60530f4c412d0277d9b4"></a><br></td></tr>
<tr><td class="memTemplParams" nowrap colspan="2">template&lt;class Iterator&gt; </td></tr>
<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classXapian_1_1Query.html#801f9cd13f00ced0bd2615409878d6c1">Query</a> (<a class="el" href="classXapian_1_1Query.html#df6014fe7725e5427be7210771919f62">Query::op</a> op_, Iterator qbegin, Iterator qend, <a class="el" href="namespaceXapian.html#3261017447607738e49eae6a2a4f5eec">Xapian::termcount</a> parameter=0)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Combine a number of <a class="el" href="classXapian_1_1Query.html" title="Class representing a query.">Xapian::Query</a>-s with the specified operator.  <a href="#801f9cd13f00ced0bd2615409878d6c1"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classXapian_1_1Query.html#1edb5ace8ad933320b30b6485ffc9152">Query</a> (<a class="el" href="classXapian_1_1Query.html#df6014fe7725e5427be7210771919f62">Query::op</a> op_, <a class="el" href="classXapian_1_1Query.html">Xapian::Query</a> q)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Apply the specified operator to a single <a class="el" href="classXapian_1_1Query.html" title="Class representing a query.">Xapian::Query</a> object.  <a href="#1edb5ace8ad933320b30b6485ffc9152"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classXapian_1_1Query.html#254b4f0020e17937f8e208428b6124c4">Query</a> (<a class="el" href="classXapian_1_1Query.html#df6014fe7725e5427be7210771919f62">Query::op</a> op_, <a class="el" href="classXapian_1_1Query.html">Xapian::Query</a> q, double parameter)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Apply the specified operator to a single <a class="el" href="classXapian_1_1Query.html" title="Class representing a query.">Xapian::Query</a> object, with a double parameter.  <a href="#254b4f0020e17937f8e208428b6124c4"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classXapian_1_1Query.html#51b218a89f699a641edf144e97b8a019">Query</a> (<a class="el" href="classXapian_1_1Query.html#df6014fe7725e5427be7210771919f62">Query::op</a> op_, <a class="el" href="namespaceXapian.html#e163c06958fa73cfac44a38c3eea5c10">Xapian::valueno</a> valno, const std::string &amp;begin, const std::string &amp;end)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Construct a value range query on a document value.  <a href="#51b218a89f699a641edf144e97b8a019"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classXapian_1_1Query.html#4f80eb4ee2a31722a5833d62f47c4960">Query</a> (<a class="el" href="classXapian_1_1Query.html#df6014fe7725e5427be7210771919f62">Query::op</a> op_, <a class="el" href="namespaceXapian.html#e163c06958fa73cfac44a38c3eea5c10">Xapian::valueno</a> valno, const std::string &amp;value)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Construct a value comparison query on a document value.  <a href="#4f80eb4ee2a31722a5833d62f47c4960"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="namespaceXapian.html#3261017447607738e49eae6a2a4f5eec">Xapian::termcount</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classXapian_1_1Query.html#d6369887c17a72e698410c1e5946b50b">get_length</a> () const</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get the length of the query, used by some ranking formulae.  <a href="#d6369887c17a72e698410c1e5946b50b"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classXapian_1_1TermIterator.html">TermIterator</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classXapian_1_1Query.html#36bc0e8adb70ce801405db2b521f67fc">get_terms_begin</a> () const</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Return a <a class="el" href="classXapian_1_1TermIterator.html" title="An iterator pointing to items in a list of terms.">Xapian::TermIterator</a> returning all the terms in the query, in order of termpos.  <a href="#36bc0e8adb70ce801405db2b521f67fc"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classXapian_1_1TermIterator.html">TermIterator</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classXapian_1_1Query.html#4086ec29620668521615c631d3aa5f4b">get_terms_end</a> () const</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Return a <a class="el" href="classXapian_1_1TermIterator.html" title="An iterator pointing to items in a list of terms.">Xapian::TermIterator</a> to the end of the list of terms in the query.  <a href="#4086ec29620668521615c631d3aa5f4b"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classXapian_1_1Query.html#7e24bd18f65f5a2d155c5a1bf2487915">empty</a> () const</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Test if the query is empty (i.e.  <a href="#7e24bd18f65f5a2d155c5a1bf2487915"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">std::string&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classXapian_1_1Query.html#0daf30847a39622789f5eef8e34efc1c">get_description</a> () const</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Return a string describing this object.  <a href="#0daf30847a39622789f5eef8e34efc1c"></a><br></td></tr>
<tr><td colspan="2"><br><h2>Static Public Attributes</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">static <a class="el" href="classXapian_1_1Query.html">Xapian::Query</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classXapian_1_1Query.html#ac48850ba07885adc2deeb3261e9672a">MatchAll</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">A query which matches all documents in the database.  <a href="#ac48850ba07885adc2deeb3261e9672a"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">static <a class="el" href="classXapian_1_1Query.html">Xapian::Query</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classXapian_1_1Query.html#c5f1b15eaabf2822af601a338b029fb2">MatchNothing</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">A query which matches no documents.  <a href="#c5f1b15eaabf2822af601a338b029fb2"></a><br></td></tr>
</table>
<hr><a name="_details"></a><h2>Detailed Description</h2>
Class representing a query. 
<p>
Queries are represented as a tree of objects. 
<p>
<hr><h2>Member Enumeration Documentation</h2>
<a class="anchor" name="df6014fe7725e5427be7210771919f62"></a><!-- doxytag: member="Xapian::Query::op" ref="df6014fe7725e5427be7210771919f62" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">enum <a class="el" href="classXapian_1_1Query.html#df6014fe7725e5427be7210771919f62">Xapian::Query::op</a>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Enum of possible query operations. 
<p>
<dl compact><dt><b>Enumerator: </b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
<tr><td valign="top"><em><a class="anchor" name="df6014fe7725e5427be7210771919f6219fe995e29748a4324108b2f859f8607"></a><!-- doxytag: member="OP_AND" ref="df6014fe7725e5427be7210771919f6219fe995e29748a4324108b2f859f8607" args="" -->OP_AND</em>&nbsp;</td><td>
Return iff both subqueries are satisfied. </td></tr>
<tr><td valign="top"><em><a class="anchor" name="df6014fe7725e5427be7210771919f6282e33801d897b974065a281e1c34e39d"></a><!-- doxytag: member="OP_OR" ref="df6014fe7725e5427be7210771919f6282e33801d897b974065a281e1c34e39d" args="" -->OP_OR</em>&nbsp;</td><td>
Return if either subquery is satisfied. </td></tr>
<tr><td valign="top"><em><a class="anchor" name="df6014fe7725e5427be7210771919f62628d78f6a8c58ae69c199cb7445e253f"></a><!-- doxytag: member="OP_AND_NOT" ref="df6014fe7725e5427be7210771919f62628d78f6a8c58ae69c199cb7445e253f" args="" -->OP_AND_NOT</em>&nbsp;</td><td>
Return if left but not right satisfied. </td></tr>
<tr><td valign="top"><em><a class="anchor" name="df6014fe7725e5427be7210771919f62fb785b057135260846ad4bb15382c8aa"></a><!-- doxytag: member="OP_XOR" ref="df6014fe7725e5427be7210771919f62fb785b057135260846ad4bb15382c8aa" args="" -->OP_XOR</em>&nbsp;</td><td>
Return if one query satisfied, but not both. </td></tr>
<tr><td valign="top"><em><a class="anchor" name="df6014fe7725e5427be7210771919f621ccba3a594d0839c865821ce7efad045"></a><!-- doxytag: member="OP_AND_MAYBE" ref="df6014fe7725e5427be7210771919f621ccba3a594d0839c865821ce7efad045" args="" -->OP_AND_MAYBE</em>&nbsp;</td><td>
Return iff left satisfied, but use weights from both. </td></tr>
<tr><td valign="top"><em><a class="anchor" name="df6014fe7725e5427be7210771919f622140c62093d4a2ecacee2fd69f70b17e"></a><!-- doxytag: member="OP_FILTER" ref="df6014fe7725e5427be7210771919f622140c62093d4a2ecacee2fd69f70b17e" args="" -->OP_FILTER</em>&nbsp;</td><td>
As AND, but use only weights from left subquery. </td></tr>
<tr><td valign="top"><em><a class="anchor" name="df6014fe7725e5427be7210771919f62bf13c7398786b689b252f63ac70192b2"></a><!-- doxytag: member="OP_NEAR" ref="df6014fe7725e5427be7210771919f62bf13c7398786b689b252f63ac70192b2" args="" -->OP_NEAR</em>&nbsp;</td><td>
Find occurrences of a list of terms with all the terms occurring within a specified window of positions. 
<p>
Each occurrence of a term must be at a different position, but the order they appear in is irrelevant.<p>
The window parameter should be specified for this operation, but will default to the number of terms in the list. </td></tr>
<tr><td valign="top"><em><a class="anchor" name="df6014fe7725e5427be7210771919f62f281df1d7267dfdfa668cec984464a46"></a><!-- doxytag: member="OP_PHRASE" ref="df6014fe7725e5427be7210771919f62f281df1d7267dfdfa668cec984464a46" args="" -->OP_PHRASE</em>&nbsp;</td><td>
Find occurrences of a list of terms with all the terms occurring within a specified window of positions, and all the terms appearing in the order specified. 
<p>
Each occurrence of a term must be at a different position.<p>
The window parameter should be specified for this operation, but will default to the number of terms in the list. </td></tr>
<tr><td valign="top"><em><a class="anchor" name="df6014fe7725e5427be7210771919f6295a992b9e530841d59f8ad98c2c73732"></a><!-- doxytag: member="OP_VALUE_RANGE" ref="df6014fe7725e5427be7210771919f6295a992b9e530841d59f8ad98c2c73732" args="" -->OP_VALUE_RANGE</em>&nbsp;</td><td>
Filter by a range test on a document value. 
<p>
</td></tr>
<tr><td valign="top"><em><a class="anchor" name="df6014fe7725e5427be7210771919f62fc2596866d3b45c930ce83939b54830e"></a><!-- doxytag: member="OP_SCALE_WEIGHT" ref="df6014fe7725e5427be7210771919f62fc2596866d3b45c930ce83939b54830e" args="" -->OP_SCALE_WEIGHT</em>&nbsp;</td><td>
Scale the weight of a subquery by the specified factor. 
<p>
A factor of 0 means this subquery will contribute no weight to the query - it will act as a purely boolean subquery.<p>
If the factor is negative, <a class="el" href="classXapian_1_1InvalidArgumentError.html" title="InvalidArgumentError indicates an invalid parameter value was passed to the API.">Xapian::InvalidArgumentError</a> will be thrown. </td></tr>
<tr><td valign="top"><em><a class="anchor" name="df6014fe7725e5427be7210771919f62954b0153394312bec98044730d693efb"></a><!-- doxytag: member="OP_ELITE_SET" ref="df6014fe7725e5427be7210771919f62954b0153394312bec98044730d693efb" args="" -->OP_ELITE_SET</em>&nbsp;</td><td>
Select an elite set from the subqueries, and perform a query with these combined as an OR query. </td></tr>
<tr><td valign="top"><em><a class="anchor" name="df6014fe7725e5427be7210771919f62609e2f1e1647ba549b10856e38c91c3e"></a><!-- doxytag: member="OP_VALUE_GE" ref="df6014fe7725e5427be7210771919f62609e2f1e1647ba549b10856e38c91c3e" args="" -->OP_VALUE_GE</em>&nbsp;</td><td>
Filter by a greater-than-or-equal test on a document value. 
<p>
</td></tr>
<tr><td valign="top"><em><a class="anchor" name="df6014fe7725e5427be7210771919f6258d8bd9fa6cad1608766060ec8c59e08"></a><!-- doxytag: member="OP_VALUE_LE" ref="df6014fe7725e5427be7210771919f6258d8bd9fa6cad1608766060ec8c59e08" args="" -->OP_VALUE_LE</em>&nbsp;</td><td>
Filter by a less-than-or-equal test on a document value. 
<p>
</td></tr>
</table>
</dl>

</div>
</div><p>
<hr><h2>Constructor &amp; Destructor Documentation</h2>
<a class="anchor" name="1a7f467518f97673f9ac831c112f1d96"></a><!-- doxytag: member="Xapian::Query::Query" ref="1a7f467518f97673f9ac831c112f1d96" args="(const Query &amp;copyme)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">Xapian::Query::Query           </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classXapian_1_1Query.html">Query</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>copyme</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Copy constructor. 
<p>

</div>
</div><p>
<a class="anchor" name="511a52db2f886b670a3fa654a6051e2c"></a><!-- doxytag: member="Xapian::Query::Query" ref="511a52db2f886b670a3fa654a6051e2c" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">Xapian::Query::Query           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Default constructor: makes an empty query which matches no documents. 
<p>
Also useful for defining a <a class="el" href="classXapian_1_1Query.html" title="Class representing a query.">Query</a> object to be assigned to later.<p>
An exception will be thrown if an attempt is made to use an undefined query when building up a composite query. 
</div>
</div><p>
<a class="anchor" name="822a93e9fb44943cee531ff8431bfc8f"></a><!-- doxytag: member="Xapian::Query::~Query" ref="822a93e9fb44943cee531ff8431bfc8f" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">Xapian::Query::~Query           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Destructor. 
<p>

</div>
</div><p>
<a class="anchor" name="49f88b626f271ca04184783bd8124119"></a><!-- doxytag: member="Xapian::Query::Query" ref="49f88b626f271ca04184783bd8124119" args="(const std::string &amp;tname_, Xapian::termcount wqf_=1, Xapian::termpos pos_=0)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">Xapian::Query::Query           </td>
          <td>(</td>
          <td class="paramtype">const std::string &amp;&nbsp;</td>
          <td class="paramname"> <em>tname_</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="namespaceXapian.html#3261017447607738e49eae6a2a4f5eec">Xapian::termcount</a>&nbsp;</td>
          <td class="paramname"> <em>wqf_</em> = <code>1</code>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="namespaceXapian.html#2de139bd007f8cbe058d526cb311ebe4">Xapian::termpos</a>&nbsp;</td>
          <td class="paramname"> <em>pos_</em> = <code>0</code></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
A query consisting of a single term. 
<p>

</div>
</div><p>
<a class="anchor" name="9c1212fa31451d19ba5525cf1f51ae86"></a><!-- doxytag: member="Xapian::Query::Query" ref="9c1212fa31451d19ba5525cf1f51ae86" args="(Query::op op_, const Query &amp;left, const Query &amp;right)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">Xapian::Query::Query           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classXapian_1_1Query.html#df6014fe7725e5427be7210771919f62">Query::op</a>&nbsp;</td>
          <td class="paramname"> <em>op_</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classXapian_1_1Query.html">Query</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>left</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classXapian_1_1Query.html">Query</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>right</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
A query consisting of two subqueries, opp-ed together. 
<p>

</div>
</div><p>
<a class="anchor" name="d550bc65788d60530f4c412d0277d9b4"></a><!-- doxytag: member="Xapian::Query::Query" ref="d550bc65788d60530f4c412d0277d9b4" args="(Query::op op_, const std::string &amp;left, const std::string &amp;right)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">Xapian::Query::Query           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classXapian_1_1Query.html#df6014fe7725e5427be7210771919f62">Query::op</a>&nbsp;</td>
          <td class="paramname"> <em>op_</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const std::string &amp;&nbsp;</td>
          <td class="paramname"> <em>left</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const std::string &amp;&nbsp;</td>
          <td class="paramname"> <em>right</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
A query consisting of two termnames opp-ed together. 
<p>

</div>
</div><p>
<a class="anchor" name="801f9cd13f00ced0bd2615409878d6c1"></a><!-- doxytag: member="Xapian::Query::Query" ref="801f9cd13f00ced0bd2615409878d6c1" args="(Query::op op_, Iterator qbegin, Iterator qend, Xapian::termcount parameter=0)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class Iterator&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">Xapian::Query::Query           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classXapian_1_1Query.html#df6014fe7725e5427be7210771919f62">Query::op</a>&nbsp;</td>
          <td class="paramname"> <em>op_</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">Iterator&nbsp;</td>
          <td class="paramname"> <em>qbegin</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">Iterator&nbsp;</td>
          <td class="paramname"> <em>qend</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="namespaceXapian.html#3261017447607738e49eae6a2a4f5eec">Xapian::termcount</a>&nbsp;</td>
          <td class="paramname"> <em>parameter</em> = <code>0</code></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td width="100%"><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Combine a number of <a class="el" href="classXapian_1_1Query.html" title="Class representing a query.">Xapian::Query</a>-s with the specified operator. 
<p>
The <a class="el" href="classXapian_1_1Query.html" title="Class representing a query.">Xapian::Query</a> objects are specified with begin and end iterators.<p>
AND, OR, NEAR and PHRASE can take any number of subqueries. Other operators take exactly two subqueries.<p>
The iterators may be to <a class="el" href="classXapian_1_1Query.html" title="Class representing a query.">Xapian::Query</a> objects, pointers to <a class="el" href="classXapian_1_1Query.html" title="Class representing a query.">Xapian::Query</a> objects, or termnames (std::string-s).<p>
For NEAR and PHRASE, a window size can be specified in parameter.<p>
For ELITE_SET, the elite set size can be specified in parameter. 
</div>
</div><p>
<a class="anchor" name="1edb5ace8ad933320b30b6485ffc9152"></a><!-- doxytag: member="Xapian::Query::Query" ref="1edb5ace8ad933320b30b6485ffc9152" args="(Query::op op_, Xapian::Query q)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">Xapian::Query::Query           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classXapian_1_1Query.html#df6014fe7725e5427be7210771919f62">Query::op</a>&nbsp;</td>
          <td class="paramname"> <em>op_</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classXapian_1_1Query.html">Xapian::Query</a>&nbsp;</td>
          <td class="paramname"> <em>q</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Apply the specified operator to a single <a class="el" href="classXapian_1_1Query.html" title="Class representing a query.">Xapian::Query</a> object. 
<p>
<dl compact><dt><b><a class="el" href="deprecated.html#_deprecated000003">Deprecated:</a></b></dt><dd>This method is deprecated because it isn't useful, since none of the current query operators can be usefully applied to a single subquery without a parameter value. </dd></dl>

</div>
</div><p>
<a class="anchor" name="254b4f0020e17937f8e208428b6124c4"></a><!-- doxytag: member="Xapian::Query::Query" ref="254b4f0020e17937f8e208428b6124c4" args="(Query::op op_, Xapian::Query q, double parameter)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">Xapian::Query::Query           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classXapian_1_1Query.html#df6014fe7725e5427be7210771919f62">Query::op</a>&nbsp;</td>
          <td class="paramname"> <em>op_</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classXapian_1_1Query.html">Xapian::Query</a>&nbsp;</td>
          <td class="paramname"> <em>q</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">double&nbsp;</td>
          <td class="paramname"> <em>parameter</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Apply the specified operator to a single <a class="el" href="classXapian_1_1Query.html" title="Class representing a query.">Xapian::Query</a> object, with a double parameter. 
<p>

</div>
</div><p>
<a class="anchor" name="51b218a89f699a641edf144e97b8a019"></a><!-- doxytag: member="Xapian::Query::Query" ref="51b218a89f699a641edf144e97b8a019" args="(Query::op op_, Xapian::valueno valno, const std::string &amp;begin, const std::string &amp;end)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">Xapian::Query::Query           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classXapian_1_1Query.html#df6014fe7725e5427be7210771919f62">Query::op</a>&nbsp;</td>
          <td class="paramname"> <em>op_</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="namespaceXapian.html#e163c06958fa73cfac44a38c3eea5c10">Xapian::valueno</a>&nbsp;</td>
          <td class="paramname"> <em>valno</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const std::string &amp;&nbsp;</td>
          <td class="paramname"> <em>begin</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const std::string &amp;&nbsp;</td>
          <td class="paramname"> <em>end</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Construct a value range query on a document value. 
<p>
A value range query matches those documents which have a value stored in the slot given by <em>valno</em> which is in the range specified by <em>begin</em> and <em>end</em> (in lexicographical order), including the endpoints.<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>op_</em>&nbsp;</td><td>The operator to use for the query. Currently, must be OP_VALUE_RANGE. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>valno</em>&nbsp;</td><td>The slot number to get the value from. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>begin</em>&nbsp;</td><td>The start of the range. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>end</em>&nbsp;</td><td>The end of the range. </td></tr>
  </table>
</dl>

</div>
</div><p>
<a class="anchor" name="4f80eb4ee2a31722a5833d62f47c4960"></a><!-- doxytag: member="Xapian::Query::Query" ref="4f80eb4ee2a31722a5833d62f47c4960" args="(Query::op op_, Xapian::valueno valno, const std::string &amp;value)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">Xapian::Query::Query           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classXapian_1_1Query.html#df6014fe7725e5427be7210771919f62">Query::op</a>&nbsp;</td>
          <td class="paramname"> <em>op_</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="namespaceXapian.html#e163c06958fa73cfac44a38c3eea5c10">Xapian::valueno</a>&nbsp;</td>
          <td class="paramname"> <em>valno</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const std::string &amp;&nbsp;</td>
          <td class="paramname"> <em>value</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Construct a value comparison query on a document value. 
<p>
This query matches those documents which have a value stored in the slot given by <em>valno</em> which compares, as specified by the operator, to <em>value</em>.<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>op_</em>&nbsp;</td><td>The operator to use for the query. Currently, must be OP_VALUE_GE or OP_VALUE_LE. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>valno</em>&nbsp;</td><td>The slot number to get the value from. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>value</em>&nbsp;</td><td>The value to compare. </td></tr>
  </table>
</dl>

</div>
</div><p>
<hr><h2>Member Function Documentation</h2>
<a class="anchor" name="38d4e62da5f73ce816bf15169c5eae4e"></a><!-- doxytag: member="Xapian::Query::operator=" ref="38d4e62da5f73ce816bf15169c5eae4e" args="(const Query &amp;copyme)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classXapian_1_1Query.html">Query</a>&amp; Xapian::Query::operator=           </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classXapian_1_1Query.html">Query</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>copyme</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Assignment. 
<p>

</div>
</div><p>
<a class="anchor" name="d6369887c17a72e698410c1e5946b50b"></a><!-- doxytag: member="Xapian::Query::get_length" ref="d6369887c17a72e698410c1e5946b50b" args="() const" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="namespaceXapian.html#3261017447607738e49eae6a2a4f5eec">Xapian::termcount</a> Xapian::Query::get_length           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"> const</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Get the length of the query, used by some ranking formulae. 
<p>
This value is calculated automatically - if you want to override it you can pass a different value to <a class="el" href="classXapian_1_1Enquire.html#8c154816b78c5a1e6b6c68db9b71fd49" title="Set the query to run.">Enquire::set_query()</a>. 
</div>
</div><p>
<a class="anchor" name="36bc0e8adb70ce801405db2b521f67fc"></a><!-- doxytag: member="Xapian::Query::get_terms_begin" ref="36bc0e8adb70ce801405db2b521f67fc" args="() const" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classXapian_1_1TermIterator.html">TermIterator</a> Xapian::Query::get_terms_begin           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"> const</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Return a <a class="el" href="classXapian_1_1TermIterator.html" title="An iterator pointing to items in a list of terms.">Xapian::TermIterator</a> returning all the terms in the query, in order of termpos. 
<p>
If multiple terms have the same term position, their order is unspecified. Duplicates (same term and termpos) will be removed. 
</div>
</div><p>
<a class="anchor" name="4086ec29620668521615c631d3aa5f4b"></a><!-- doxytag: member="Xapian::Query::get_terms_end" ref="4086ec29620668521615c631d3aa5f4b" args="() const" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classXapian_1_1TermIterator.html">TermIterator</a> Xapian::Query::get_terms_end           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Return a <a class="el" href="classXapian_1_1TermIterator.html" title="An iterator pointing to items in a list of terms.">Xapian::TermIterator</a> to the end of the list of terms in the query. 
<p>

</div>
</div><p>
<a class="anchor" name="7e24bd18f65f5a2d155c5a1bf2487915"></a><!-- doxytag: member="Xapian::Query::empty" ref="7e24bd18f65f5a2d155c5a1bf2487915" args="() const" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool Xapian::Query::empty           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"> const</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Test if the query is empty (i.e. 
<p>
was constructed using the default ctor or with an empty iterator ctor). 
</div>
</div><p>
<a class="anchor" name="0daf30847a39622789f5eef8e34efc1c"></a><!-- doxytag: member="Xapian::Query::get_description" ref="0daf30847a39622789f5eef8e34efc1c" args="() const" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">std::string Xapian::Query::get_description           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"> const</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Return a string describing this object. 
<p>

</div>
</div><p>
<hr><h2>Member Data Documentation</h2>
<a class="anchor" name="ac48850ba07885adc2deeb3261e9672a"></a><!-- doxytag: member="Xapian::Query::MatchAll" ref="ac48850ba07885adc2deeb3261e9672a" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classXapian_1_1Query.html">Xapian::Query</a> <a class="el" href="classXapian_1_1Query.html#ac48850ba07885adc2deeb3261e9672a">Xapian::Query::MatchAll</a><code> [static]</code>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
A query which matches all documents in the database. 
<p>

</div>
</div><p>
<a class="anchor" name="c5f1b15eaabf2822af601a338b029fb2"></a><!-- doxytag: member="Xapian::Query::MatchNothing" ref="c5f1b15eaabf2822af601a338b029fb2" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classXapian_1_1Query.html">Xapian::Query</a> <a class="el" href="classXapian_1_1Query.html#c5f1b15eaabf2822af601a338b029fb2">Xapian::Query::MatchNothing</a><code> [static]</code>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
A query which matches no documents. 
<p>

</div>
</div><p>
<hr>The documentation for this class was generated from the following file:<ul>
<li>xapian/<a class="el" href="query_8h.html">query.h</a></ul>
<hr>
<address><small>
Documentation for Xapian (version 1.0.21).<br>
Generated on 18 Jun 2010 by
<a href="http://www.doxygen.org/">Doxygen 1.5.2</a>.
</small></address>
</body>
</html>