blob: 674a7d9cce29784bc8218ddd35eb4448e9984a91 [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.Searchable Interface 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="interface_lucene_1_1_net_1_1_search_1_1_searchable.html">Searchable</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="summary">
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="#properties">Properties</a> &#124;
<a href="interface_lucene_1_1_net_1_1_search_1_1_searchable-members.html">List of all members</a> </div>
<div class="headertitle">
<div class="title">Lucene.Net.Search.Searchable Interface Reference</div> </div>
</div><!--header-->
<div class="contents">
<p>The interface for search implementations.
<a href="interface_lucene_1_1_net_1_1_search_1_1_searchable.html#details">More...</a></p>
<p>Inherits IDisposable.</p>
<p>Inherited by <a class="el" href="class_lucene_1_1_net_1_1_search_1_1_searcher.html">Lucene.Net.Search.Searcher</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:a6dd7e803847ea0ba2940544d2bad395a"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="interface_lucene_1_1_net_1_1_search_1_1_searchable.html#a6dd7e803847ea0ba2940544d2bad395a">Search</a> (<a class="el" href="class_lucene_1_1_net_1_1_search_1_1_weight.html">Weight</a> weight, <a class="el" href="class_lucene_1_1_net_1_1_search_1_1_filter.html">Filter</a> filter, <a class="el" href="class_lucene_1_1_net_1_1_search_1_1_collector.html">Collector</a> collector)</td></tr>
<tr class="memdesc:a6dd7e803847ea0ba2940544d2bad395a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Lower-level search API. <a href="#a6dd7e803847ea0ba2940544d2bad395a"></a><br/></td></tr>
<tr class="separator:a6dd7e803847ea0ba2940544d2bad395a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aba8647c2a392d32c43d0c3e14f30971a"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="interface_lucene_1_1_net_1_1_search_1_1_searchable.html#aba8647c2a392d32c43d0c3e14f30971a">Close</a> ()</td></tr>
<tr class="memdesc:aba8647c2a392d32c43d0c3e14f30971a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Frees resources associated with this <a class="el" href="class_lucene_1_1_net_1_1_search_1_1_searcher.html" title="An abstract base class for search implementations. Implements the main search methods.">Searcher</a>. Be careful not to call this method while you are still using objects that reference this searchable <a href="#aba8647c2a392d32c43d0c3e14f30971a"></a><br/></td></tr>
<tr class="separator:aba8647c2a392d32c43d0c3e14f30971a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:adb9058d34b28163dc98936719413dbc1"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="interface_lucene_1_1_net_1_1_search_1_1_searchable.html#adb9058d34b28163dc98936719413dbc1">DocFreq</a> (<a class="el" href="_more_like_this_8cs.html#a8797eb30ce21b31829d3e3a43a20e3b9">Term</a> term)</td></tr>
<tr class="memdesc:adb9058d34b28163dc98936719413dbc1"><td class="mdescLeft">&#160;</td><td class="mdescRight">Expert: Returns the number of documents containing <code>term</code>. Called by search code to compute term weights. <a href="#adb9058d34b28163dc98936719413dbc1"></a><br/></td></tr>
<tr class="separator:adb9058d34b28163dc98936719413dbc1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad63e2e208985cbadbd6e7c8ac60d32ae"><td class="memItemLeft" align="right" valign="top">int[]&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="interface_lucene_1_1_net_1_1_search_1_1_searchable.html#ad63e2e208985cbadbd6e7c8ac60d32ae">DocFreqs</a> (<a class="el" href="_more_like_this_8cs.html#a8797eb30ce21b31829d3e3a43a20e3b9">Term</a>[] terms)</td></tr>
<tr class="memdesc:ad63e2e208985cbadbd6e7c8ac60d32ae"><td class="mdescLeft">&#160;</td><td class="mdescRight">Expert: For each term in the terms array, calculates the number of documents containing <code>term</code>. Returns an array with these document frequencies. Used to minimize number of remote calls. <a href="#ad63e2e208985cbadbd6e7c8ac60d32ae"></a><br/></td></tr>
<tr class="separator:ad63e2e208985cbadbd6e7c8ac60d32ae"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3b9253cdba0db538f8688c2602d8ecbd"><td class="memItemLeft" align="right" valign="top"><a class="el" href="class_lucene_1_1_net_1_1_search_1_1_top_docs.html">TopDocs</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="interface_lucene_1_1_net_1_1_search_1_1_searchable.html#a3b9253cdba0db538f8688c2602d8ecbd">Search</a> (<a class="el" href="class_lucene_1_1_net_1_1_search_1_1_weight.html">Weight</a> weight, <a class="el" href="class_lucene_1_1_net_1_1_search_1_1_filter.html">Filter</a> filter, int n)</td></tr>
<tr class="memdesc:a3b9253cdba0db538f8688c2602d8ecbd"><td class="mdescLeft">&#160;</td><td class="mdescRight">Expert: Low-level search implementation. Finds the top <code>n</code> hits for <code>query</code>, applying <code>filter</code> if non-null. <a href="#a3b9253cdba0db538f8688c2602d8ecbd"></a><br/></td></tr>
<tr class="separator:a3b9253cdba0db538f8688c2602d8ecbd"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad337f078eaf116a639d03961711b04ba"><td class="memItemLeft" align="right" valign="top"><a class="el" href="class_lucene_1_1_net_1_1_documents_1_1_document.html">Document</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="interface_lucene_1_1_net_1_1_search_1_1_searchable.html#ad337f078eaf116a639d03961711b04ba">Doc</a> (int i)</td></tr>
<tr class="memdesc:ad337f078eaf116a639d03961711b04ba"><td class="mdescLeft">&#160;</td><td class="mdescRight">Expert: Returns the stored fields of document <code>i</code>. <a href="#ad337f078eaf116a639d03961711b04ba"></a><br/></td></tr>
<tr class="separator:ad337f078eaf116a639d03961711b04ba"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3e09e801f83f691064dcf0592728a57e"><td class="memItemLeft" align="right" valign="top"><a class="el" href="class_lucene_1_1_net_1_1_documents_1_1_document.html">Document</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="interface_lucene_1_1_net_1_1_search_1_1_searchable.html#a3e09e801f83f691064dcf0592728a57e">Doc</a> (int n, <a class="el" href="interface_lucene_1_1_net_1_1_documents_1_1_field_selector.html">FieldSelector</a> fieldSelector)</td></tr>
<tr class="memdesc:a3e09e801f83f691064dcf0592728a57e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the <a class="el" href="class_lucene_1_1_net_1_1_documents_1_1_document.html" title="Documents are the unit of indexing and search.">Lucene.Net.Documents.Document</a>at the <code>n</code><sup>th</sup> position. The <a class="el" href="interface_lucene_1_1_net_1_1_documents_1_1_field_selector.html" title="Similar to a java.io.FileFilter, the FieldSelector allows one to make decisions about what Fields get...">Lucene.Net.Documents.FieldSelector</a> may be used to determine what <a class="el" href="class_lucene_1_1_net_1_1_documents_1_1_field.html" title="A field is a section of a Document. Each field has two parts, a name and a value. Values may be free ...">Lucene.Net.Documents.Field</a>s to load and how they should be loaded. <a href="#a3e09e801f83f691064dcf0592728a57e"></a><br/></td></tr>
<tr class="separator:a3e09e801f83f691064dcf0592728a57e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af24e1ca4bae5cf3f7288e34b7bfa338d"><td class="memItemLeft" align="right" valign="top"><a class="el" href="class_lucene_1_1_net_1_1_search_1_1_query.html">Query</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="interface_lucene_1_1_net_1_1_search_1_1_searchable.html#af24e1ca4bae5cf3f7288e34b7bfa338d">Rewrite</a> (<a class="el" href="class_lucene_1_1_net_1_1_search_1_1_query.html">Query</a> query)</td></tr>
<tr class="memdesc:af24e1ca4bae5cf3f7288e34b7bfa338d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Expert: called to re-write queries into primitive queries. <a href="#af24e1ca4bae5cf3f7288e34b7bfa338d"></a><br/></td></tr>
<tr class="separator:af24e1ca4bae5cf3f7288e34b7bfa338d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a90aac4d5fcec55170bdc2ec40e7dd8d4"><td class="memItemLeft" align="right" valign="top"><a class="el" href="class_lucene_1_1_net_1_1_search_1_1_explanation.html">Explanation</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="interface_lucene_1_1_net_1_1_search_1_1_searchable.html#a90aac4d5fcec55170bdc2ec40e7dd8d4">Explain</a> (<a class="el" href="class_lucene_1_1_net_1_1_search_1_1_weight.html">Weight</a> weight, int doc)</td></tr>
<tr class="memdesc:a90aac4d5fcec55170bdc2ec40e7dd8d4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Expert: low-level implementation method Returns an <a class="el" href="class_lucene_1_1_net_1_1_search_1_1_explanation.html" title="Expert: Describes the score computation for document and query. ">Explanation</a> that describes how <code>doc</code> scored against <code>weight</code>. <a href="#a90aac4d5fcec55170bdc2ec40e7dd8d4"></a><br/></td></tr>
<tr class="separator:a90aac4d5fcec55170bdc2ec40e7dd8d4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2a73eddc4f8cdd04b08eee7206a04081"><td class="memItemLeft" align="right" valign="top"><a class="el" href="class_lucene_1_1_net_1_1_search_1_1_top_field_docs.html">TopFieldDocs</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="interface_lucene_1_1_net_1_1_search_1_1_searchable.html#a2a73eddc4f8cdd04b08eee7206a04081">Search</a> (<a class="el" href="class_lucene_1_1_net_1_1_search_1_1_weight.html">Weight</a> weight, <a class="el" href="class_lucene_1_1_net_1_1_search_1_1_filter.html">Filter</a> filter, int n, <a class="el" href="class_lucene_1_1_net_1_1_search_1_1_sort.html">Sort</a> sort)</td></tr>
<tr class="memdesc:a2a73eddc4f8cdd04b08eee7206a04081"><td class="mdescLeft">&#160;</td><td class="mdescRight">Expert: Low-level search implementation with arbitrary sorting. Finds the top <code>n</code> hits for <code>query</code>, applying <code>filter</code> if non-null, and sorting the hits by the criteria in <code>sort</code>. <a href="#a2a73eddc4f8cdd04b08eee7206a04081"></a><br/></td></tr>
<tr class="separator:a2a73eddc4f8cdd04b08eee7206a04081"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="properties"></a>
Properties</h2></td></tr>
<tr class="memitem:a7396b749dc7342fed0cac9ee9f1bac7f"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="interface_lucene_1_1_net_1_1_search_1_1_searchable.html#a7396b749dc7342fed0cac9ee9f1bac7f">MaxDoc</a><code> [get]</code></td></tr>
<tr class="memdesc:a7396b749dc7342fed0cac9ee9f1bac7f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Expert: Returns one greater than the largest possible document number. Called by search code to compute term weights. <a href="#a7396b749dc7342fed0cac9ee9f1bac7f"></a><br/></td></tr>
<tr class="separator:a7396b749dc7342fed0cac9ee9f1bac7f"><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>The interface for search implementations. </p>
<p><a class="el" href="interface_lucene_1_1_net_1_1_search_1_1_searchable.html" title="The interface for search implementations.">Searchable</a> is the abstract network protocol for searching. Implementations provide search over a single index, over multiple indices, and over indices on remote servers.</p>
<p>Queries, filters and sort criteria are designed to be compact so that they may be efficiently passed to a remote index, with only the top-scoring hits being returned, rather than every matching hit.</p>
<p><b>NOTE:</b> this interface is kept public for convenience. Since it is not expected to be implemented directly, it may be changed unexpectedly between releases. </p>
<p>Definition at line <a class="el" href="_searchable_8cs_source.html#l00044">44</a> of file <a class="el" href="_searchable_8cs_source.html">Searchable.cs</a>.</p>
</div><h2 class="groupheader">Member Function Documentation</h2>
<a class="anchor" id="aba8647c2a392d32c43d0c3e14f30971a"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void Lucene.Net.Search.Searchable.Close </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Frees resources associated with this <a class="el" href="class_lucene_1_1_net_1_1_search_1_1_searcher.html" title="An abstract base class for search implementations. Implements the main search methods.">Searcher</a>. Be careful not to call this method while you are still using objects that reference this searchable </p>
<p>Implemented in <a class="el" href="class_lucene_1_1_net_1_1_search_1_1_searcher.html#a9d91c9cf8a2a1eca24096df18403985f">Lucene.Net.Search.Searcher</a>.</p>
</div>
</div>
<a class="anchor" id="ad337f078eaf116a639d03961711b04ba"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="class_lucene_1_1_net_1_1_documents_1_1_document.html">Document</a> Lucene.Net.Search.Searchable.Doc </td>
<td>(</td>
<td class="paramtype">int&#160;</td>
<td class="paramname"><em>i</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Expert: Returns the stored fields of document <code>i</code>.</p>
<dl class="section see"><dt>See Also</dt><dd><a class="el" href="class_lucene_1_1_net_1_1_index_1_1_index_reader.html#ae5a8698ada40868908ea27f502337ee2" title="Returns the stored fields of the nth Document in this index. NOTE: for performance reasons...">Lucene.Net.Index.IndexReader.Document(int)</a></dd></dl>
<p>&lt;throws&gt; CorruptIndexException if the index is corrupt &lt;/throws&gt; &lt;throws&gt; IOException if there is a low-level IO error &lt;/throws&gt; </p>
<p>Implemented in <a class="el" href="class_lucene_1_1_net_1_1_search_1_1_multi_searcher.html#a81bfb715fff5914a312e758fa9d9a570">Lucene.Net.Search.MultiSearcher</a>, <a class="el" href="class_lucene_1_1_net_1_1_search_1_1_searcher.html#a9d0023e8f18632fe0709e9c40155dbca">Lucene.Net.Search.Searcher</a>, and <a class="el" href="class_lucene_1_1_net_1_1_search_1_1_index_searcher.html#aed5283dc1e8c56fa09bb2c82337e9d8b">Lucene.Net.Search.IndexSearcher</a>.</p>
</div>
</div>
<a class="anchor" id="a3e09e801f83f691064dcf0592728a57e"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="class_lucene_1_1_net_1_1_documents_1_1_document.html">Document</a> Lucene.Net.Search.Searchable.Doc </td>
<td>(</td>
<td class="paramtype">int&#160;</td>
<td class="paramname"><em>n</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="interface_lucene_1_1_net_1_1_documents_1_1_field_selector.html">FieldSelector</a>&#160;</td>
<td class="paramname"><em>fieldSelector</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Get the <a class="el" href="class_lucene_1_1_net_1_1_documents_1_1_document.html" title="Documents are the unit of indexing and search.">Lucene.Net.Documents.Document</a>at the <code>n</code><sup>th</sup> position. The <a class="el" href="interface_lucene_1_1_net_1_1_documents_1_1_field_selector.html" title="Similar to a java.io.FileFilter, the FieldSelector allows one to make decisions about what Fields get...">Lucene.Net.Documents.FieldSelector</a> may be used to determine what <a class="el" href="class_lucene_1_1_net_1_1_documents_1_1_field.html" title="A field is a section of a Document. Each field has two parts, a name and a value. Values may be free ...">Lucene.Net.Documents.Field</a>s to load and how they should be loaded. </p>
<p><b>NOTE:</b> If the underlying Reader (more specifically, the underlying <code>FieldsReader</code>) is closed before the lazy <a class="el" href="class_lucene_1_1_net_1_1_documents_1_1_field.html" title="A field is a section of a Document. Each field has two parts, a name and a value. Values may be free ...">Lucene.Net.Documents.Field</a> is loaded an exception may be thrown. If you want the value of a lazy <a class="el" href="class_lucene_1_1_net_1_1_documents_1_1_field.html" title="A field is a section of a Document. Each field has two parts, a name and a value. Values may be free ...">Lucene.Net.Documents.Field</a> to be available after closing you must explicitly load it or fetch the Document again with a new loader.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">n</td><td>Get the document at the <code>n</code><sup>th</sup> position </td></tr>
<tr><td class="paramname">fieldSelector</td><td>The <a class="el" href="interface_lucene_1_1_net_1_1_documents_1_1_field_selector.html" title="Similar to a java.io.FileFilter, the FieldSelector allows one to make decisions about what Fields get...">Lucene.Net.Documents.FieldSelector</a> to use to determine what Fields should be loaded on the Document. May be null, in which case all Fields will be loaded. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>The stored fields of the <a class="el" href="class_lucene_1_1_net_1_1_documents_1_1_document.html" title="Documents are the unit of indexing and search.">Lucene.Net.Documents.Document</a> at the nth position </dd></dl>
<p>&lt;throws&gt; CorruptIndexException if the index is corrupt &lt;/throws&gt; &lt;throws&gt; IOException if there is a low-level IO error &lt;/throws&gt; </p>
<dl class="section see"><dt>See Also</dt><dd><a class="el" href="class_lucene_1_1_net_1_1_index_1_1_index_reader.html#a99b1172ed4efbc8c652bffd267cef2e9" title="Get the Lucene.Net.Documents.Document at the n th position. The FieldSelector may be used to determin...">Lucene.Net.Index.IndexReader.Document(int, FieldSelector)</a></dd></dl>
<dl class="section see"><dt>See Also</dt><dd>IFieldable</dd></dl>
<dl class="section see"><dt>See Also</dt><dd><a class="el" href="interface_lucene_1_1_net_1_1_documents_1_1_field_selector.html" title="Similar to a java.io.FileFilter, the FieldSelector allows one to make decisions about what Fields get...">Lucene.Net.Documents.FieldSelector</a></dd></dl>
<dl class="section see"><dt>See Also</dt><dd><a class="el" href="class_lucene_1_1_net_1_1_documents_1_1_set_based_field_selector.html" title="Declare what fields to load normally and what fields to load lazily">Lucene.Net.Documents.SetBasedFieldSelector</a></dd></dl>
<dl class="section see"><dt>See Also</dt><dd><a class="el" href="class_lucene_1_1_net_1_1_documents_1_1_load_first_field_selector.html" title="Load the First field and break. See FieldSelectorResult.LOAD_AND_BREAK ">Lucene.Net.Documents.LoadFirstFieldSelector</a></dd></dl>
<p>Implemented in <a class="el" href="class_lucene_1_1_net_1_1_search_1_1_multi_searcher.html#a359975e1a07fee81ba9e129365f50e35">Lucene.Net.Search.MultiSearcher</a>, <a class="el" href="class_lucene_1_1_net_1_1_search_1_1_searcher.html#aaf7182082d19f57efad539131ff36dd6">Lucene.Net.Search.Searcher</a>, and <a class="el" href="class_lucene_1_1_net_1_1_search_1_1_index_searcher.html#aca502cee0c60f02dad219ef8a09bff15">Lucene.Net.Search.IndexSearcher</a>.</p>
</div>
</div>
<a class="anchor" id="adb9058d34b28163dc98936719413dbc1"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int Lucene.Net.Search.Searchable.DocFreq </td>
<td>(</td>
<td class="paramtype"><a class="el" href="_more_like_this_8cs.html#a8797eb30ce21b31829d3e3a43a20e3b9">Term</a>&#160;</td>
<td class="paramname"><em>term</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Expert: Returns the number of documents containing <code>term</code>. Called by search code to compute term weights. </p>
<dl class="section see"><dt>See Also</dt><dd><a class="el" href="class_lucene_1_1_net_1_1_index_1_1_index_reader.html#a64a1dd38f0e39bd79e5f46ce59ce967b" title="Returns the number of documents containing the term t.">Lucene.Net.Index.IndexReader.DocFreq(Term)</a></dd></dl>
<p>Implemented in <a class="el" href="class_lucene_1_1_net_1_1_search_1_1_multi_searcher.html#ad486770ff42ee30fc01646f4cd4f9f03">Lucene.Net.Search.MultiSearcher</a>, <a class="el" href="class_lucene_1_1_net_1_1_search_1_1_searcher.html#a1a9a74d509b4531b52c11d6678c50259">Lucene.Net.Search.Searcher</a>, <a class="el" href="class_lucene_1_1_net_1_1_search_1_1_index_searcher.html#ae8fc8c3d082677d990936d2a86fd7a99">Lucene.Net.Search.IndexSearcher</a>, and <a class="el" href="class_lucene_1_1_net_1_1_search_1_1_parallel_multi_searcher.html#a913714dc49a95b700737a0c3d56383d3">Lucene.Net.Search.ParallelMultiSearcher</a>.</p>
</div>
</div>
<a class="anchor" id="ad63e2e208985cbadbd6e7c8ac60d32ae"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int [] Lucene.Net.Search.Searchable.DocFreqs </td>
<td>(</td>
<td class="paramtype"><a class="el" href="_more_like_this_8cs.html#a8797eb30ce21b31829d3e3a43a20e3b9">Term</a>[]&#160;</td>
<td class="paramname"><em>terms</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Expert: For each term in the terms array, calculates the number of documents containing <code>term</code>. Returns an array with these document frequencies. Used to minimize number of remote calls. </p>
<p>Implemented in <a class="el" href="class_lucene_1_1_net_1_1_search_1_1_searcher.html#a1a221e8d02e47a3ab1d06978760dbf2e">Lucene.Net.Search.Searcher</a>.</p>
</div>
</div>
<a class="anchor" id="a90aac4d5fcec55170bdc2ec40e7dd8d4"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="class_lucene_1_1_net_1_1_search_1_1_explanation.html">Explanation</a> Lucene.Net.Search.Searchable.Explain </td>
<td>(</td>
<td class="paramtype"><a class="el" href="class_lucene_1_1_net_1_1_search_1_1_weight.html">Weight</a>&#160;</td>
<td class="paramname"><em>weight</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int&#160;</td>
<td class="paramname"><em>doc</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Expert: low-level implementation method Returns an <a class="el" href="class_lucene_1_1_net_1_1_search_1_1_explanation.html" title="Expert: Describes the score computation for document and query. ">Explanation</a> that describes how <code>doc</code> scored against <code>weight</code>. </p>
<p>This is intended to be used in developing <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> implementations, and, for good performance, should not be displayed with every hit. Computing an explanation is as expensive as executing the query over the entire index. </p>
<p>Applications should call <a class="el" href="class_lucene_1_1_net_1_1_search_1_1_searcher.html#a508fb2346b1fb8d4d5313304b4fc66fd" title="Returns an Explanation that describes how doc scored against query.">Searcher.Explain(Query, int)</a>. </p>
<p>&lt;throws&gt; <a class="el" href="class_lucene_1_1_net_1_1_search_1_1_boolean_query_1_1_too_many_clauses.html" title="Thrown when an attempt is made to add more than MaxClauseCount clauses. This typically happens if a P...">BooleanQuery.TooManyClauses</a> &lt;/throws&gt; </p>
<p>Implemented in <a class="el" href="class_lucene_1_1_net_1_1_search_1_1_multi_searcher.html#adff536f8b1b4543d3e69ec62ee8c36c3">Lucene.Net.Search.MultiSearcher</a>, <a class="el" href="class_lucene_1_1_net_1_1_search_1_1_index_searcher.html#af4b90c9e877499a589d3866be97eb710">Lucene.Net.Search.IndexSearcher</a>, and <a class="el" href="class_lucene_1_1_net_1_1_search_1_1_searcher.html#afc6d4b6f086212446b5f0513a8db5c3f">Lucene.Net.Search.Searcher</a>.</p>
</div>
</div>
<a class="anchor" id="af24e1ca4bae5cf3f7288e34b7bfa338d"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="class_lucene_1_1_net_1_1_search_1_1_query.html">Query</a> Lucene.Net.Search.Searchable.Rewrite </td>
<td>(</td>
<td class="paramtype"><a class="el" href="class_lucene_1_1_net_1_1_search_1_1_query.html">Query</a>&#160;</td>
<td class="paramname"><em>query</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Expert: called to re-write queries into primitive queries.</p>
<p>&lt;throws&gt; <a class="el" href="class_lucene_1_1_net_1_1_search_1_1_boolean_query_1_1_too_many_clauses.html" title="Thrown when an attempt is made to add more than MaxClauseCount clauses. This typically happens if a P...">BooleanQuery.TooManyClauses</a> &lt;/throws&gt; </p>
<p>Implemented in <a class="el" href="class_lucene_1_1_net_1_1_search_1_1_multi_searcher.html#a60b59bd2004ae30006eb36ce390934f2">Lucene.Net.Search.MultiSearcher</a>, <a class="el" href="class_lucene_1_1_net_1_1_search_1_1_index_searcher.html#a9771fbcd3c599c6fc25e7f59cfc0a0a6">Lucene.Net.Search.IndexSearcher</a>, and <a class="el" href="class_lucene_1_1_net_1_1_search_1_1_searcher.html#ab5df2c95611970cce4acfe077dd3bb7d">Lucene.Net.Search.Searcher</a>.</p>
</div>
</div>
<a class="anchor" id="a6dd7e803847ea0ba2940544d2bad395a"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void Lucene.Net.Search.Searchable.Search </td>
<td>(</td>
<td class="paramtype"><a class="el" href="class_lucene_1_1_net_1_1_search_1_1_weight.html">Weight</a>&#160;</td>
<td class="paramname"><em>weight</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="class_lucene_1_1_net_1_1_search_1_1_filter.html">Filter</a>&#160;</td>
<td class="paramname"><em>filter</em>, </td>
</tr>
<tr>
<td class="paramkey"></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>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Lower-level search API. </p>
<p><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> is called for every document. <br/>
Collector-based access to remote indexes is discouraged.</p>
<p>Applications should only use this if they need <em>all</em> of the matching documents. The high-level search API (<a class="el" href="class_lucene_1_1_net_1_1_search_1_1_searcher.html#a15a44f147c6f8a9a9cf56e47dd560c05" title="Finds the top n hits for query.">Searcher.Search(Query,int)</a>) is usually more efficient, as it skips non-high-scoring hits.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">weight</td><td>to match documents </td></tr>
<tr><td class="paramname">filter</td><td>if non-null, used to permit documents to be collected. </td></tr>
<tr><td class="paramname">collector</td><td>to receive hits </td></tr>
</table>
</dd>
</dl>
<p>&lt;throws&gt; <a class="el" href="class_lucene_1_1_net_1_1_search_1_1_boolean_query_1_1_too_many_clauses.html" title="Thrown when an attempt is made to add more than MaxClauseCount clauses. This typically happens if a P...">BooleanQuery.TooManyClauses</a> &lt;/throws&gt; </p>
<p>Implemented in <a class="el" href="class_lucene_1_1_net_1_1_search_1_1_multi_searcher.html#acf2296cc2982acff6565c204931afbb8">Lucene.Net.Search.MultiSearcher</a>, <a class="el" href="class_lucene_1_1_net_1_1_search_1_1_index_searcher.html#afec19567d857370aeb009824239eee90">Lucene.Net.Search.IndexSearcher</a>, <a class="el" href="class_lucene_1_1_net_1_1_search_1_1_parallel_multi_searcher.html#a1688189adf31ec3809d984799ee899f8">Lucene.Net.Search.ParallelMultiSearcher</a>, and <a class="el" href="class_lucene_1_1_net_1_1_search_1_1_searcher.html#a50f09f6bf527aa3a1e28c120b1dc58ac">Lucene.Net.Search.Searcher</a>.</p>
</div>
</div>
<a class="anchor" id="a3b9253cdba0db538f8688c2602d8ecbd"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="class_lucene_1_1_net_1_1_search_1_1_top_docs.html">TopDocs</a> Lucene.Net.Search.Searchable.Search </td>
<td>(</td>
<td class="paramtype"><a class="el" href="class_lucene_1_1_net_1_1_search_1_1_weight.html">Weight</a>&#160;</td>
<td class="paramname"><em>weight</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="class_lucene_1_1_net_1_1_search_1_1_filter.html">Filter</a>&#160;</td>
<td class="paramname"><em>filter</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int&#160;</td>
<td class="paramname"><em>n</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Expert: Low-level search implementation. Finds the top <code>n</code> hits for <code>query</code>, applying <code>filter</code> if non-null. </p>
<p>Applications should usually call <a class="el" href="class_lucene_1_1_net_1_1_search_1_1_searcher.html#a15a44f147c6f8a9a9cf56e47dd560c05" title="Finds the top n hits for query.">Searcher.Search(Query, int)</a> or <a class="el" href="class_lucene_1_1_net_1_1_search_1_1_searcher.html#aa266a774d95218869ce300bd74444151" title="Finds the top n hits for query, applying filter if non-null.">Searcher.Search(Query,Filter,int)</a> instead. </p>
<p>&lt;throws&gt; <a class="el" href="class_lucene_1_1_net_1_1_search_1_1_boolean_query_1_1_too_many_clauses.html" title="Thrown when an attempt is made to add more than MaxClauseCount clauses. This typically happens if a P...">BooleanQuery.TooManyClauses</a> &lt;/throws&gt; </p>
<p>Implemented in <a class="el" href="class_lucene_1_1_net_1_1_search_1_1_multi_searcher.html#aa4983b934008fea5ce7b652e98ed193f">Lucene.Net.Search.MultiSearcher</a>, <a class="el" href="class_lucene_1_1_net_1_1_search_1_1_searcher.html#a31f4ce3d1f9af381a110ec45c837fe6a">Lucene.Net.Search.Searcher</a>, <a class="el" href="class_lucene_1_1_net_1_1_search_1_1_index_searcher.html#abf7c93a75b6328ce85bb40ef1146e86d">Lucene.Net.Search.IndexSearcher</a>, and <a class="el" href="class_lucene_1_1_net_1_1_search_1_1_parallel_multi_searcher.html#af4dc08f3c6179e079d9fb2a1366090ae">Lucene.Net.Search.ParallelMultiSearcher</a>.</p>
</div>
</div>
<a class="anchor" id="a2a73eddc4f8cdd04b08eee7206a04081"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="class_lucene_1_1_net_1_1_search_1_1_top_field_docs.html">TopFieldDocs</a> Lucene.Net.Search.Searchable.Search </td>
<td>(</td>
<td class="paramtype"><a class="el" href="class_lucene_1_1_net_1_1_search_1_1_weight.html">Weight</a>&#160;</td>
<td class="paramname"><em>weight</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="class_lucene_1_1_net_1_1_search_1_1_filter.html">Filter</a>&#160;</td>
<td class="paramname"><em>filter</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int&#160;</td>
<td class="paramname"><em>n</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="class_lucene_1_1_net_1_1_search_1_1_sort.html">Sort</a>&#160;</td>
<td class="paramname"><em>sort</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Expert: Low-level search implementation with arbitrary sorting. Finds the top <code>n</code> hits for <code>query</code>, applying <code>filter</code> if non-null, and sorting the hits by the criteria in <code>sort</code>. </p>
<p>Applications should usually call <a class="el" href="class_lucene_1_1_net_1_1_search_1_1_searcher.html#a4fa776037fe41a7fccc3c9d32057c258" title="Search implementation with arbitrary sorting. Finds the top n hits for query, applying filter if non-...">Searcher.Search(Query,Filter,int,Sort)</a> instead.</p>
<p>&lt;throws&gt; <a class="el" href="class_lucene_1_1_net_1_1_search_1_1_boolean_query_1_1_too_many_clauses.html" title="Thrown when an attempt is made to add more than MaxClauseCount clauses. This typically happens if a P...">BooleanQuery.TooManyClauses</a> &lt;/throws&gt; </p>
<p>Implemented in <a class="el" href="class_lucene_1_1_net_1_1_search_1_1_multi_searcher.html#af5491ad187698c65edf7dec57ef959b7">Lucene.Net.Search.MultiSearcher</a>, <a class="el" href="class_lucene_1_1_net_1_1_search_1_1_index_searcher.html#a85593087d18fb176fb8e944f8726f0ff">Lucene.Net.Search.IndexSearcher</a>, <a class="el" href="class_lucene_1_1_net_1_1_search_1_1_searcher.html#a28406e27804d35ec6d0d727b02bb44cd">Lucene.Net.Search.Searcher</a>, and <a class="el" href="class_lucene_1_1_net_1_1_search_1_1_parallel_multi_searcher.html#a85bd44cf5e613aaf902d9284c2190ca4">Lucene.Net.Search.ParallelMultiSearcher</a>.</p>
</div>
</div>
<h2 class="groupheader">Property Documentation</h2>
<a class="anchor" id="a7396b749dc7342fed0cac9ee9f1bac7f"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">int Lucene.Net.Search.Searchable.MaxDoc</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">get</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Expert: Returns one greater than the largest possible document number. Called by search code to compute term weights. </p>
<dl class="section see"><dt>See Also</dt><dd><a class="el" href="class_lucene_1_1_net_1_1_index_1_1_index_reader.html#ac7694e685dde51863b8974da924fa439" title="Returns one greater than the largest possible document number. This may be used to, e.g., determine how big to allocate an array which will have an element for every document number in an index. ">Lucene.Net.Index.IndexReader.MaxDoc</a></dd></dl>
<p>Definition at line <a class="el" href="_searchable_8cs_source.html#l00091">91</a> of file <a class="el" href="_searchable_8cs_source.html">Searchable.cs</a>.</p>
</div>
</div>
<hr/>The documentation for this interface was generated from the following file:<ul>
<li>core/Search/<a class="el" href="_searchable_8cs_source.html">Searchable.cs</a></li>
</ul>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Thu Jan 3 2013 02:12:57 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>