blob: da65c9e5491af42decb31bb1f718f025de82dfa8 [file] [log] [blame]
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.3"/>
<title>Lucene.Net: Lucene.Net.Search.BooleanScorer2 Class Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
$(document).ready(function() { searchBox.OnSelectItem(0); });
</script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr style="height: 56px;">
<td id="projectlogo"><img alt="Logo" src="lucene-net-icon-128x128.png"/></td>
<td style="padding-left: 0.5em;">
<div id="projectname">Lucene.Net
&#160;<span id="projectnumber">3.0.3</span>
</div>
<div id="projectbrief">Lucene.Net is a .NET port of the Java Lucene Indexing Library</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.3 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="Index.html"><span>Main&#160;Page</span></a></li>
<li><a href="namespaces.html"><span>Packages</span></a></li>
<li class="current"><a href="annotated.html"><span>Classes</span></a></li>
<li><a href="files.html"><span>Files</span></a></li>
<li>
<div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</span>
</div>
</li>
</ul>
</div>
<div id="navrow2" class="tabs2">
<ul class="tablist">
<li><a href="annotated.html"><span>Class&#160;List</span></a></li>
<li><a href="classes.html"><span>Class&#160;Index</span></a></li>
<li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
<li><a href="functions.html"><span>Class&#160;Members</span></a></li>
</ul>
</div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Classes</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Properties</a></div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="namespace_lucene.html">Lucene</a></li><li class="navelem"><a class="el" href="namespace_lucene_1_1_net.html">Net</a></li><li class="navelem"><a class="el" href="namespace_lucene_1_1_net_1_1_search.html">Search</a></li><li class="navelem"><a class="el" href="class_lucene_1_1_net_1_1_search_1_1_boolean_scorer2.html">BooleanScorer2</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="summary">
<a href="#nested-classes">Classes</a> &#124;
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="class_lucene_1_1_net_1_1_search_1_1_boolean_scorer2-members.html">List of all members</a> </div>
<div class="headertitle">
<div class="title">Lucene.Net.Search.BooleanScorer2 Class Reference</div> </div>
</div><!--header-->
<div class="contents">
<p>An alternative to <a class="el" href="class_lucene_1_1_net_1_1_search_1_1_boolean_scorer.html">BooleanScorer</a> that also allows a minimum number of optional scorers that should match. <br/>
Implements skipTo(), and has no limitations on the numbers of added scorers. <br/>
Uses <a class="el" href="class_lucene_1_1_net_1_1_search_1_1_conjunction_scorer.html" title="Scorer for conjunctions, sets of queries, all of which are required. ">ConjunctionScorer</a>, DisjunctionScorer, ReqOptScorer and <a class="el" href="class_lucene_1_1_net_1_1_search_1_1_req_excl_scorer.html" title="A Scorer for queries with a required subscorer and an excluding (prohibited) sub DocIdSetIterator. This Scorer implements DocIdSetIterator.Advance(int), and it uses the skipTo() on the given scorers. ">ReqExclScorer</a>.
<a href="class_lucene_1_1_net_1_1_search_1_1_boolean_scorer2.html#details">More...</a></p>
<p>Inherits <a class="el" href="class_lucene_1_1_net_1_1_search_1_1_scorer.html">Lucene.Net.Search.Scorer</a>.</p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:a65da49a7bbee6ee0ac717678d7bbf4d5"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_lucene_1_1_net_1_1_search_1_1_boolean_scorer2.html#a65da49a7bbee6ee0ac717678d7bbf4d5">BooleanScorer2</a> (<a class="el" href="class_lucene_1_1_net_1_1_search_1_1_similarity.html">Similarity</a> similarity, int minNrShouldMatch, System.Collections.Generic.List&lt; <a class="el" href="class_lucene_1_1_net_1_1_search_1_1_scorer.html">Scorer</a> &gt; required, System.Collections.Generic.List&lt; <a class="el" href="class_lucene_1_1_net_1_1_search_1_1_scorer.html">Scorer</a> &gt; prohibited, System.Collections.Generic.List&lt; <a class="el" href="class_lucene_1_1_net_1_1_search_1_1_scorer.html">Scorer</a> &gt; optional)</td></tr>
<tr class="memdesc:a65da49a7bbee6ee0ac717678d7bbf4d5"><td class="mdescLeft">&#160;</td><td class="mdescRight">Creates a <a class="el" href="class_lucene_1_1_net_1_1_search_1_1_scorer.html" title="Expert: Common scoring functionality for different types of queries.">Scorer</a> with the given similarity and lists of required, prohibited and optional scorers. In no required scorers are added, at least one of the optional scorers will have to match during the search. <a href="#a65da49a7bbee6ee0ac717678d7bbf4d5"></a><br/></td></tr>
<tr class="separator:a65da49a7bbee6ee0ac717678d7bbf4d5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3d314b502f02e4383b0fe3c16f92586f"><td class="memItemLeft" align="right" valign="top">override void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_lucene_1_1_net_1_1_search_1_1_boolean_scorer2.html#a3d314b502f02e4383b0fe3c16f92586f">Score</a> (<a class="el" href="class_lucene_1_1_net_1_1_search_1_1_collector.html">Collector</a> collector)</td></tr>
<tr class="memdesc:a3d314b502f02e4383b0fe3c16f92586f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Scores and collects all matching documents. <a href="#a3d314b502f02e4383b0fe3c16f92586f"></a><br/></td></tr>
<tr class="separator:a3d314b502f02e4383b0fe3c16f92586f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7096843cf5d0c88f9dfef2e68434f993"><td class="memItemLeft" align="right" valign="top">override bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_lucene_1_1_net_1_1_search_1_1_boolean_scorer2.html#a7096843cf5d0c88f9dfef2e68434f993">Score</a> (<a class="el" href="class_lucene_1_1_net_1_1_search_1_1_collector.html">Collector</a> collector, int max, int firstDocID)</td></tr>
<tr class="memdesc:a7096843cf5d0c88f9dfef2e68434f993"><td class="mdescLeft">&#160;</td><td class="mdescRight">Expert: Collects matching documents in a range. Hook for optimization. Note, <em>firstDocID</em> is added to ensure that <a class="el" href="class_lucene_1_1_net_1_1_search_1_1_doc_id_set_iterator.html#a70f16616e044ffd57b07dbc426c34e0d" title="Advances to the next document in the set and returns the doc it is currently on, or NO_MORE_DOCS if t...">DocIdSetIterator.NextDoc()</a> was called before this method. <a href="#a7096843cf5d0c88f9dfef2e68434f993"></a><br/></td></tr>
<tr class="separator:a7096843cf5d0c88f9dfef2e68434f993"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4fc19513e51818c2ff15c4847380d9ff"><td class="memItemLeft" align="right" valign="top">override int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_lucene_1_1_net_1_1_search_1_1_boolean_scorer2.html#a4fc19513e51818c2ff15c4847380d9ff">DocID</a> ()</td></tr>
<tr class="memdesc:a4fc19513e51818c2ff15c4847380d9ff"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the following: </p>
<ul>
<li>
-1 or <a class="el" href="class_lucene_1_1_net_1_1_search_1_1_doc_id_set_iterator.html#ac005b14762e519ad644745031fac2ad4" title="When returned by NextDoc(), Advance(int) and DocID() it means there are no more docs in the iterator...">NO_MORE_DOCS</a> if <a class="el" href="class_lucene_1_1_net_1_1_search_1_1_boolean_scorer2.html#aeb54005e33c1212dc8427e23443116ac" title="Advances to the next document in the set and returns the doc it is currently on, or NO_MORE_DOCS if t...">NextDoc()</a> or <a class="el" href="class_lucene_1_1_net_1_1_search_1_1_boolean_scorer2.html#a84ed363f84038762d9ebb041874b1359" title="Advances to the first beyond the current whose document number is greater than or equal to target...">Advance(int)</a> were not called yet. </li>
<li>
<a class="el" href="class_lucene_1_1_net_1_1_search_1_1_doc_id_set_iterator.html#ac005b14762e519ad644745031fac2ad4" title="When returned by NextDoc(), Advance(int) and DocID() it means there are no more docs in the iterator...">NO_MORE_DOCS</a> if the iterator has exhausted. </li>
<li>
Otherwise it should return the doc ID it is currently on. </li>
</ul>
<a href="#a4fc19513e51818c2ff15c4847380d9ff"></a><br/></td></tr>
<tr class="separator:a4fc19513e51818c2ff15c4847380d9ff"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aeb54005e33c1212dc8427e23443116ac"><td class="memItemLeft" align="right" valign="top">override int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_lucene_1_1_net_1_1_search_1_1_boolean_scorer2.html#aeb54005e33c1212dc8427e23443116ac">NextDoc</a> ()</td></tr>
<tr class="memdesc:aeb54005e33c1212dc8427e23443116ac"><td class="mdescLeft">&#160;</td><td class="mdescRight">Advances to the next document in the set and returns the doc it is currently on, or <a class="el" href="class_lucene_1_1_net_1_1_search_1_1_doc_id_set_iterator.html#ac005b14762e519ad644745031fac2ad4" title="When returned by NextDoc(), Advance(int) and DocID() it means there are no more docs in the iterator...">NO_MORE_DOCS</a> if there are no more docs in the set.<br/>
<a href="#aeb54005e33c1212dc8427e23443116ac"></a><br/></td></tr>
<tr class="separator:aeb54005e33c1212dc8427e23443116ac"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a549abc961134268952da5e31ed071699"><td class="memItemLeft" align="right" valign="top">override float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_lucene_1_1_net_1_1_search_1_1_boolean_scorer2.html#a549abc961134268952da5e31ed071699">Score</a> ()</td></tr>
<tr class="memdesc:a549abc961134268952da5e31ed071699"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the score of the current document matching the query. Initially invalid, until <a class="el" href="class_lucene_1_1_net_1_1_search_1_1_doc_id_set_iterator.html#a70f16616e044ffd57b07dbc426c34e0d" title="Advances to the next document in the set and returns the doc it is currently on, or NO_MORE_DOCS if t...">DocIdSetIterator.NextDoc()</a> or <a class="el" href="class_lucene_1_1_net_1_1_search_1_1_doc_id_set_iterator.html#a4ea4804a0dd948a55077e1dde86b0983" title="Advances to the first beyond the current whose document number is greater than or equal to target...">DocIdSetIterator.Advance(int)</a> is called the first time, or when called from within <a class="el" href="class_lucene_1_1_net_1_1_search_1_1_collector.html#a125e477dc1b59bbdb22fa71eeac4fd8b" title="Called once for every document matching a query, with the unbased document number.">Collector.Collect(int)</a>. <a href="#a549abc961134268952da5e31ed071699"></a><br/></td></tr>
<tr class="separator:a549abc961134268952da5e31ed071699"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a84ed363f84038762d9ebb041874b1359"><td class="memItemLeft" align="right" valign="top">override int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_lucene_1_1_net_1_1_search_1_1_boolean_scorer2.html#a84ed363f84038762d9ebb041874b1359">Advance</a> (int target)</td></tr>
<tr class="memdesc:a84ed363f84038762d9ebb041874b1359"><td class="mdescLeft">&#160;</td><td class="mdescRight">Advances to the first beyond the current whose document number is greater than or equal to <em>target</em>. Returns the current document number or <a class="el" href="class_lucene_1_1_net_1_1_search_1_1_doc_id_set_iterator.html#ac005b14762e519ad644745031fac2ad4" title="When returned by NextDoc(), Advance(int) and DocID() it means there are no more docs in the iterator...">NO_MORE_DOCS</a> if there are no more docs in the set. Behaves as if written: <a href="#a84ed363f84038762d9ebb041874b1359"></a><br/></td></tr>
<tr class="separator:a84ed363f84038762d9ebb041874b1359"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="inherited"></a>
Additional Inherited Members</h2></td></tr>
<tr class="inherit_header pub_static_attribs_class_lucene_1_1_net_1_1_search_1_1_doc_id_set_iterator"><td colspan="2" onclick="javascript:toggleInherit('pub_static_attribs_class_lucene_1_1_net_1_1_search_1_1_doc_id_set_iterator')"><img src="closed.png" alt="-"/>&#160;Static Public Attributes inherited from <a class="el" href="class_lucene_1_1_net_1_1_search_1_1_doc_id_set_iterator.html">Lucene.Net.Search.DocIdSetIterator</a></td></tr>
<tr class="memitem:ac005b14762e519ad644745031fac2ad4 inherit pub_static_attribs_class_lucene_1_1_net_1_1_search_1_1_doc_id_set_iterator"><td class="memItemLeft" align="right" valign="top">static readonly int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_lucene_1_1_net_1_1_search_1_1_doc_id_set_iterator.html#ac005b14762e519ad644745031fac2ad4">NO_MORE_DOCS</a> = System.Int32.MaxValue</td></tr>
<tr class="memdesc:ac005b14762e519ad644745031fac2ad4 inherit pub_static_attribs_class_lucene_1_1_net_1_1_search_1_1_doc_id_set_iterator"><td class="mdescLeft">&#160;</td><td class="mdescRight">When returned by <a class="el" href="class_lucene_1_1_net_1_1_search_1_1_doc_id_set_iterator.html#a70f16616e044ffd57b07dbc426c34e0d" title="Advances to the next document in the set and returns the doc it is currently on, or NO_MORE_DOCS if t...">NextDoc()</a>, <a class="el" href="class_lucene_1_1_net_1_1_search_1_1_doc_id_set_iterator.html#a4ea4804a0dd948a55077e1dde86b0983" title="Advances to the first beyond the current whose document number is greater than or equal to target...">Advance(int)</a> and <a class="el" href="class_lucene_1_1_net_1_1_search_1_1_doc_id_set_iterator.html#a617cbe6c07c261cc2cc86ad3d255152f" title="Returns the following: -1 or NO_MORE_DOCS if NextDoc() or Advance(int) were not called yet...">DocID()</a> it means there are no more docs in the iterator. <a href="#ac005b14762e519ad644745031fac2ad4"></a><br/></td></tr>
<tr class="separator:ac005b14762e519ad644745031fac2ad4 inherit pub_static_attribs_class_lucene_1_1_net_1_1_search_1_1_doc_id_set_iterator"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header properties_class_lucene_1_1_net_1_1_search_1_1_scorer"><td colspan="2" onclick="javascript:toggleInherit('properties_class_lucene_1_1_net_1_1_search_1_1_scorer')"><img src="closed.png" alt="-"/>&#160;Properties inherited from <a class="el" href="class_lucene_1_1_net_1_1_search_1_1_scorer.html">Lucene.Net.Search.Scorer</a></td></tr>
<tr class="memitem:aa2d07dddba4ce149cbd46abbfc139d8a inherit properties_class_lucene_1_1_net_1_1_search_1_1_scorer"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="class_lucene_1_1_net_1_1_search_1_1_similarity.html">Similarity</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_lucene_1_1_net_1_1_search_1_1_scorer.html#aa2d07dddba4ce149cbd46abbfc139d8a">Similarity</a><code> [get]</code></td></tr>
<tr class="memdesc:aa2d07dddba4ce149cbd46abbfc139d8a inherit properties_class_lucene_1_1_net_1_1_search_1_1_scorer"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the <a class="el" href="class_lucene_1_1_net_1_1_search_1_1_similarity.html" title="Expert: Scoring API. Subclasses implement search scoring.">Similarity</a> implementation used by this scorer. <a href="#aa2d07dddba4ce149cbd46abbfc139d8a"></a><br/></td></tr>
<tr class="separator:aa2d07dddba4ce149cbd46abbfc139d8a inherit properties_class_lucene_1_1_net_1_1_search_1_1_scorer"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>An alternative to <a class="el" href="class_lucene_1_1_net_1_1_search_1_1_boolean_scorer.html">BooleanScorer</a> that also allows a minimum number of optional scorers that should match. <br/>
Implements skipTo(), and has no limitations on the numbers of added scorers. <br/>
Uses <a class="el" href="class_lucene_1_1_net_1_1_search_1_1_conjunction_scorer.html" title="Scorer for conjunctions, sets of queries, all of which are required. ">ConjunctionScorer</a>, DisjunctionScorer, ReqOptScorer and <a class="el" href="class_lucene_1_1_net_1_1_search_1_1_req_excl_scorer.html" title="A Scorer for queries with a required subscorer and an excluding (prohibited) sub DocIdSetIterator. This Scorer implements DocIdSetIterator.Advance(int), and it uses the skipTo() on the given scorers. ">ReqExclScorer</a>. </p>
<p>Definition at line <a class="el" href="_boolean_scorer2_8cs_source.html#l00031">31</a> of file <a class="el" href="_boolean_scorer2_8cs_source.html">BooleanScorer2.cs</a>.</p>
</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
<a class="anchor" id="a65da49a7bbee6ee0ac717678d7bbf4d5"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">Lucene.Net.Search.BooleanScorer2.BooleanScorer2 </td>
<td>(</td>
<td class="paramtype"><a class="el" href="class_lucene_1_1_net_1_1_search_1_1_similarity.html">Similarity</a>&#160;</td>
<td class="paramname"><em>similarity</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int&#160;</td>
<td class="paramname"><em>minNrShouldMatch</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">System.Collections.Generic.List&lt; <a class="el" href="class_lucene_1_1_net_1_1_search_1_1_scorer.html">Scorer</a> &gt;&#160;</td>
<td class="paramname"><em>required</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">System.Collections.Generic.List&lt; <a class="el" href="class_lucene_1_1_net_1_1_search_1_1_scorer.html">Scorer</a> &gt;&#160;</td>
<td class="paramname"><em>prohibited</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">System.Collections.Generic.List&lt; <a class="el" href="class_lucene_1_1_net_1_1_search_1_1_scorer.html">Scorer</a> &gt;&#160;</td>
<td class="paramname"><em>optional</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Creates a <a class="el" href="class_lucene_1_1_net_1_1_search_1_1_scorer.html" title="Expert: Common scoring functionality for different types of queries.">Scorer</a> with the given similarity and lists of required, prohibited and optional scorers. In no required scorers are added, at least one of the optional scorers will have to match during the search. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">similarity</td><td>The similarity to be used. </td></tr>
<tr><td class="paramname">minNrShouldMatch</td><td>The minimum number of optional added scorers that should match during the search. In case no required scorers are added, at least one of the optional scorers will have to match during the search. </td></tr>
<tr><td class="paramname">required</td><td>the list of required scorers. </td></tr>
<tr><td class="paramname">prohibited</td><td>the list of prohibited scorers. </td></tr>
<tr><td class="paramname">optional</td><td>the list of optional scorers. </td></tr>
</table>
</dd>
</dl>
<p>Definition at line <a class="el" href="_boolean_scorer2_8cs_source.html#l00186">186</a> of file <a class="el" href="_boolean_scorer2_8cs_source.html">BooleanScorer2.cs</a>.</p>
</div>
</div>
<h2 class="groupheader">Member Function Documentation</h2>
<a class="anchor" id="a84ed363f84038762d9ebb041874b1359"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">override int Lucene.Net.Search.BooleanScorer2.Advance </td>
<td>(</td>
<td class="paramtype">int&#160;</td>
<td class="paramname"><em>target</em></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Advances to the first beyond the current whose document number is greater than or equal to <em>target</em>. Returns the current document number or <a class="el" href="class_lucene_1_1_net_1_1_search_1_1_doc_id_set_iterator.html#ac005b14762e519ad644745031fac2ad4" title="When returned by NextDoc(), Advance(int) and DocID() it means there are no more docs in the iterator...">NO_MORE_DOCS</a> if there are no more docs in the set. Behaves as if written: </p>
<p><code> int advance(int target) { int doc; while ((doc = nextDoc()) &lt; target) { } return doc; } </code></p>
<p>Some implementations are considerably more efficient than that. </p>
<p><b>NOTE:</b> certain implemenations may return a different value (each time) if called several times in a row with the same target. </p>
<p><b>NOTE:</b> this method may be called with <a class="el" href="class_lucene_1_1_net_1_1_search_1_1_doc_id_set_iterator.html#ac005b14762e519ad644745031fac2ad4" title="When returned by NextDoc(), Advance(int) and DocID() it means there are no more docs in the iterator...">NO_MORE_DOCS</a> for efficiency by some Scorers. If your implementation cannot efficiently determine that it should exhaust, it is recommended that you check for that value in each call to this method. </p>
<p><b>NOTE:</b> after the iterator has exhausted you should not call this method, as it may result in unpredicted behavior. </p>
<p>&lt;since&gt;2.9&lt;/since&gt; </p>
<p>Implements <a class="el" href="class_lucene_1_1_net_1_1_search_1_1_doc_id_set_iterator.html#a4ea4804a0dd948a55077e1dde86b0983">Lucene.Net.Search.DocIdSetIterator</a>.</p>
<p>Definition at line <a class="el" href="_boolean_scorer2_8cs_source.html#l00407">407</a> of file <a class="el" href="_boolean_scorer2_8cs_source.html">BooleanScorer2.cs</a>.</p>
</div>
</div>
<a class="anchor" id="a4fc19513e51818c2ff15c4847380d9ff"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">override int Lucene.Net.Search.BooleanScorer2.DocID </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Returns the following: </p>
<ul>
<li>
-1 or <a class="el" href="class_lucene_1_1_net_1_1_search_1_1_doc_id_set_iterator.html#ac005b14762e519ad644745031fac2ad4" title="When returned by NextDoc(), Advance(int) and DocID() it means there are no more docs in the iterator...">NO_MORE_DOCS</a> if <a class="el" href="class_lucene_1_1_net_1_1_search_1_1_boolean_scorer2.html#aeb54005e33c1212dc8427e23443116ac" title="Advances to the next document in the set and returns the doc it is currently on, or NO_MORE_DOCS if t...">NextDoc()</a> or <a class="el" href="class_lucene_1_1_net_1_1_search_1_1_boolean_scorer2.html#a84ed363f84038762d9ebb041874b1359" title="Advances to the first beyond the current whose document number is greater than or equal to target...">Advance(int)</a> were not called yet. </li>
<li>
<a class="el" href="class_lucene_1_1_net_1_1_search_1_1_doc_id_set_iterator.html#ac005b14762e519ad644745031fac2ad4" title="When returned by NextDoc(), Advance(int) and DocID() it means there are no more docs in the iterator...">NO_MORE_DOCS</a> if the iterator has exhausted. </li>
<li>
Otherwise it should return the doc ID it is currently on. </li>
</ul>
</p>
<p>Implements <a class="el" href="class_lucene_1_1_net_1_1_search_1_1_doc_id_set_iterator.html#a617cbe6c07c261cc2cc86ad3d255152f">Lucene.Net.Search.DocIdSetIterator</a>.</p>
<p>Definition at line <a class="el" href="_boolean_scorer2_8cs_source.html#l00390">390</a> of file <a class="el" href="_boolean_scorer2_8cs_source.html">BooleanScorer2.cs</a>.</p>
</div>
</div>
<a class="anchor" id="aeb54005e33c1212dc8427e23443116ac"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">override int Lucene.Net.Search.BooleanScorer2.NextDoc </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Advances to the next document in the set and returns the doc it is currently on, or <a class="el" href="class_lucene_1_1_net_1_1_search_1_1_doc_id_set_iterator.html#ac005b14762e519ad644745031fac2ad4" title="When returned by NextDoc(), Advance(int) and DocID() it means there are no more docs in the iterator...">NO_MORE_DOCS</a> if there are no more docs in the set.<br/>
</p>
<p><b>NOTE:</b> after the iterator has exhausted you should not call this method, as it may result in unpredicted behavior.</p>
<p>Implements <a class="el" href="class_lucene_1_1_net_1_1_search_1_1_doc_id_set_iterator.html#a70f16616e044ffd57b07dbc426c34e0d">Lucene.Net.Search.DocIdSetIterator</a>.</p>
<p>Definition at line <a class="el" href="_boolean_scorer2_8cs_source.html#l00395">395</a> of file <a class="el" href="_boolean_scorer2_8cs_source.html">BooleanScorer2.cs</a>.</p>
</div>
</div>
<a class="anchor" id="a3d314b502f02e4383b0fe3c16f92586f"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">override void Lucene.Net.Search.BooleanScorer2.Score </td>
<td>(</td>
<td class="paramtype"><a class="el" href="class_lucene_1_1_net_1_1_search_1_1_collector.html">Collector</a>&#160;</td>
<td class="paramname"><em>collector</em></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Scores and collects all matching documents.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">collector</td><td>The collector to which all matching documents are passed through. </td></tr>
</table>
</dd>
</dl>
<p>Reimplemented from <a class="el" href="class_lucene_1_1_net_1_1_search_1_1_scorer.html#a23e72c598a4e46bd528ed19b272fc687">Lucene.Net.Search.Scorer</a>.</p>
<p>Definition at line <a class="el" href="_boolean_scorer2_8cs_source.html#l00369">369</a> of file <a class="el" href="_boolean_scorer2_8cs_source.html">BooleanScorer2.cs</a>.</p>
</div>
</div>
<a class="anchor" id="a7096843cf5d0c88f9dfef2e68434f993"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">override bool Lucene.Net.Search.BooleanScorer2.Score </td>
<td>(</td>
<td class="paramtype"><a class="el" href="class_lucene_1_1_net_1_1_search_1_1_collector.html">Collector</a>&#160;</td>
<td class="paramname"><em>collector</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int&#160;</td>
<td class="paramname"><em>max</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int&#160;</td>
<td class="paramname"><em>firstDocID</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Expert: Collects matching documents in a range. Hook for optimization. Note, <em>firstDocID</em> is added to ensure that <a class="el" href="class_lucene_1_1_net_1_1_search_1_1_doc_id_set_iterator.html#a70f16616e044ffd57b07dbc426c34e0d" title="Advances to the next document in the set and returns the doc it is currently on, or NO_MORE_DOCS if t...">DocIdSetIterator.NextDoc()</a> was called before this method. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">collector</td><td>The collector to which all matching documents are passed. </td></tr>
<tr><td class="paramname">max</td><td>Do not score documents past this. </td></tr>
<tr><td class="paramname">firstDocID</td><td>The first document ID (ensures <a class="el" href="class_lucene_1_1_net_1_1_search_1_1_doc_id_set_iterator.html#a70f16616e044ffd57b07dbc426c34e0d" title="Advances to the next document in the set and returns the doc it is currently on, or NO_MORE_DOCS if t...">DocIdSetIterator.NextDoc()</a> is called before this method. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>true if more matching documents may remain. </dd></dl>
<p>Reimplemented from <a class="el" href="class_lucene_1_1_net_1_1_search_1_1_scorer.html#afbae24b7b3053a0e489fc8f18664f6a9">Lucene.Net.Search.Scorer</a>.</p>
<p>Definition at line <a class="el" href="_boolean_scorer2_8cs_source.html#l00378">378</a> of file <a class="el" href="_boolean_scorer2_8cs_source.html">BooleanScorer2.cs</a>.</p>
</div>
</div>
<a class="anchor" id="a549abc961134268952da5e31ed071699"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">override float Lucene.Net.Search.BooleanScorer2.Score </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Returns the score of the current document matching the query. Initially invalid, until <a class="el" href="class_lucene_1_1_net_1_1_search_1_1_doc_id_set_iterator.html#a70f16616e044ffd57b07dbc426c34e0d" title="Advances to the next document in the set and returns the doc it is currently on, or NO_MORE_DOCS if t...">DocIdSetIterator.NextDoc()</a> or <a class="el" href="class_lucene_1_1_net_1_1_search_1_1_doc_id_set_iterator.html#a4ea4804a0dd948a55077e1dde86b0983" title="Advances to the first beyond the current whose document number is greater than or equal to target...">DocIdSetIterator.Advance(int)</a> is called the first time, or when called from within <a class="el" href="class_lucene_1_1_net_1_1_search_1_1_collector.html#a125e477dc1b59bbdb22fa71eeac4fd8b" title="Called once for every document matching a query, with the unbased document number.">Collector.Collect(int)</a>. </p>
<p>Implements <a class="el" href="class_lucene_1_1_net_1_1_search_1_1_scorer.html#a9e45575b3a407f5cb224b51405893c3f">Lucene.Net.Search.Scorer</a>.</p>
<p>Definition at line <a class="el" href="_boolean_scorer2_8cs_source.html#l00400">400</a> of file <a class="el" href="_boolean_scorer2_8cs_source.html">BooleanScorer2.cs</a>.</p>
</div>
</div>
<hr/>The documentation for this class was generated from the following file:<ul>
<li>core/Search/<a class="el" href="_boolean_scorer2_8cs_source.html">BooleanScorer2.cs</a></li>
</ul>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Thu Jan 3 2013 02:12:56 for Lucene.Net by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.3
</small></address>
</body>
</html>