blob: a4b890df41b074f1aba7c6c3167f6d5591e01322 [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: Package Lucene.Net.Analysis</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 class="current"><a href="namespaces.html"><span>Packages</span></a></li>
<li><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="namespaces.html"><span>Packages</span></a></li>
<li><a href="namespacemembers.html"><span>Package&#160;Functions</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_analysis.html">Analysis</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="summary">
<a href="#namespaces">Namespaces</a> &#124;
<a href="#nested-classes">Classes</a> </div>
<div class="headertitle">
<div class="title">Package Lucene.Net.Analysis</div> </div>
</div><!--header-->
<div class="contents">
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="namespaces"></a>
Namespaces</h2></td></tr>
<tr class="memitem:namespace_lucene_1_1_net_1_1_analysis_1_1_a_r"><td class="memItemLeft" align="right" valign="top">package &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespace_lucene_1_1_net_1_1_analysis_1_1_a_r.html">AR</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:namespace_lucene_1_1_net_1_1_analysis_1_1_b_r"><td class="memItemLeft" align="right" valign="top">package &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespace_lucene_1_1_net_1_1_analysis_1_1_b_r.html">BR</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:namespace_lucene_1_1_net_1_1_analysis_1_1_c_j_k"><td class="memItemLeft" align="right" valign="top">package &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespace_lucene_1_1_net_1_1_analysis_1_1_c_j_k.html">CJK</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:namespace_lucene_1_1_net_1_1_analysis_1_1_cn"><td class="memItemLeft" align="right" valign="top">package &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespace_lucene_1_1_net_1_1_analysis_1_1_cn.html">Cn</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:namespace_lucene_1_1_net_1_1_analysis_1_1_compound"><td class="memItemLeft" align="right" valign="top">package &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespace_lucene_1_1_net_1_1_analysis_1_1_compound.html">Compound</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:namespace_lucene_1_1_net_1_1_analysis_1_1_cz"><td class="memItemLeft" align="right" valign="top">package &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespace_lucene_1_1_net_1_1_analysis_1_1_cz.html">Cz</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:namespace_lucene_1_1_net_1_1_analysis_1_1_de"><td class="memItemLeft" align="right" valign="top">package &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespace_lucene_1_1_net_1_1_analysis_1_1_de.html">De</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:namespace_lucene_1_1_net_1_1_analysis_1_1_el"><td class="memItemLeft" align="right" valign="top">package &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespace_lucene_1_1_net_1_1_analysis_1_1_el.html">El</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:namespace_lucene_1_1_net_1_1_analysis_1_1_ext"><td class="memItemLeft" align="right" valign="top">package &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespace_lucene_1_1_net_1_1_analysis_1_1_ext.html">Ext</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:namespace_lucene_1_1_net_1_1_analysis_1_1_fa"><td class="memItemLeft" align="right" valign="top">package &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespace_lucene_1_1_net_1_1_analysis_1_1_fa.html">Fa</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:namespace_lucene_1_1_net_1_1_analysis_1_1_fr"><td class="memItemLeft" align="right" valign="top">package &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespace_lucene_1_1_net_1_1_analysis_1_1_fr.html">Fr</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:namespace_lucene_1_1_net_1_1_analysis_1_1_hunspell"><td class="memItemLeft" align="right" valign="top">package &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespace_lucene_1_1_net_1_1_analysis_1_1_hunspell.html">Hunspell</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:namespace_lucene_1_1_net_1_1_analysis_1_1_miscellaneous"><td class="memItemLeft" align="right" valign="top">package &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespace_lucene_1_1_net_1_1_analysis_1_1_miscellaneous.html">Miscellaneous</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:namespace_lucene_1_1_net_1_1_analysis_1_1_n_gram"><td class="memItemLeft" align="right" valign="top">package &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespace_lucene_1_1_net_1_1_analysis_1_1_n_gram.html">NGram</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:namespace_lucene_1_1_net_1_1_analysis_1_1_nl"><td class="memItemLeft" align="right" valign="top">package &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespace_lucene_1_1_net_1_1_analysis_1_1_nl.html">Nl</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:namespace_lucene_1_1_net_1_1_analysis_1_1_payloads"><td class="memItemLeft" align="right" valign="top">package &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespace_lucene_1_1_net_1_1_analysis_1_1_payloads.html">Payloads</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:namespace_lucene_1_1_net_1_1_analysis_1_1_position"><td class="memItemLeft" align="right" valign="top">package &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespace_lucene_1_1_net_1_1_analysis_1_1_position.html">Position</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:namespace_lucene_1_1_net_1_1_analysis_1_1_query"><td class="memItemLeft" align="right" valign="top">package &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespace_lucene_1_1_net_1_1_analysis_1_1_query.html">Query</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:namespace_lucene_1_1_net_1_1_analysis_1_1_reverse"><td class="memItemLeft" align="right" valign="top">package &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespace_lucene_1_1_net_1_1_analysis_1_1_reverse.html">Reverse</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:namespace_lucene_1_1_net_1_1_analysis_1_1_ru"><td class="memItemLeft" align="right" valign="top">package &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespace_lucene_1_1_net_1_1_analysis_1_1_ru.html">Ru</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:namespace_lucene_1_1_net_1_1_analysis_1_1_shingle"><td class="memItemLeft" align="right" valign="top">package &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespace_lucene_1_1_net_1_1_analysis_1_1_shingle.html">Shingle</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:namespace_lucene_1_1_net_1_1_analysis_1_1_sinks"><td class="memItemLeft" align="right" valign="top">package &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespace_lucene_1_1_net_1_1_analysis_1_1_sinks.html">Sinks</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:namespace_lucene_1_1_net_1_1_analysis_1_1_snowball"><td class="memItemLeft" align="right" valign="top">package &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespace_lucene_1_1_net_1_1_analysis_1_1_snowball.html">Snowball</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:namespace_lucene_1_1_net_1_1_analysis_1_1_standard"><td class="memItemLeft" align="right" valign="top">package &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespace_lucene_1_1_net_1_1_analysis_1_1_standard.html">Standard</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:namespace_lucene_1_1_net_1_1_analysis_1_1_th"><td class="memItemLeft" align="right" valign="top">package &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespace_lucene_1_1_net_1_1_analysis_1_1_th.html">Th</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:namespace_lucene_1_1_net_1_1_analysis_1_1_tokenattributes"><td class="memItemLeft" align="right" valign="top">package &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespace_lucene_1_1_net_1_1_analysis_1_1_tokenattributes.html">Tokenattributes</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
Classes</h2></td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_lucene_1_1_net_1_1_analysis_1_1_chained_filter.html">ChainedFilter</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight"> <a href="class_lucene_1_1_net_1_1_analysis_1_1_chained_filter.html#details">More...</a><br/></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_lucene_1_1_net_1_1_analysis_1_1_analyzer.html">Analyzer</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">An <a class="el" href="class_lucene_1_1_net_1_1_analysis_1_1_analyzer.html" title="An Analyzer builds TokenStreams, which analyze text. It thus represents a policy for extracting index...">Analyzer</a> builds TokenStreams, which analyze text. It thus represents a policy for extracting index terms from text. Typical implementations first build a <a class="el" href="class_lucene_1_1_net_1_1_analysis_1_1_tokenizer.html" title="A Tokenizer is a TokenStream whose input is a Reader. This is an abstract class; subclasses must over...">Tokenizer</a>, which breaks the stream of characters from the Reader into raw Tokens. One or more TokenFilters may then be applied to the output of the <a class="el" href="class_lucene_1_1_net_1_1_analysis_1_1_tokenizer.html" title="A Tokenizer is a TokenStream whose input is a Reader. This is an abstract class; subclasses must over...">Tokenizer</a>. <a href="class_lucene_1_1_net_1_1_analysis_1_1_analyzer.html#details">More...</a><br/></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_lucene_1_1_net_1_1_analysis_1_1_a_s_c_i_i_folding_filter.html">ASCIIFoldingFilter</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">This class converts alphabetic, numeric, and symbolic Unicode characters which are not in the first 127 ASCII characters (the "Basic Latin" Unicode block) into their ASCII equivalents, if one exists. <a href="class_lucene_1_1_net_1_1_analysis_1_1_a_s_c_i_i_folding_filter.html#details">More...</a><br/></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_lucene_1_1_net_1_1_analysis_1_1_base_char_filter.html">BaseCharFilter</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight"> <a href="class_lucene_1_1_net_1_1_analysis_1_1_base_char_filter.html#details">More...</a><br/></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_lucene_1_1_net_1_1_analysis_1_1_caching_token_filter.html">CachingTokenFilter</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">This class can be used if the token attributes of a <a class="el" href="class_lucene_1_1_net_1_1_analysis_1_1_token_stream.html" title="A TokenStream enumerates the sequence of tokens, either from Fields of a Document or from query text...">TokenStream</a> are intended to be consumed more than once. It caches all token attribute states locally in a List. <a href="class_lucene_1_1_net_1_1_analysis_1_1_caching_token_filter.html#details">More...</a><br/></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_lucene_1_1_net_1_1_analysis_1_1_char_array_set.html">CharArraySet</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">A simple class that stores Strings as char[]'s in a hash table. Note that this is not a general purpose class. For example, it cannot remove items from the set, nor does it resize its hash table to be smaller, etc. It is designed to be quick to test if a char[] is in the set without the necessity of converting it to a String first. <em>Please note:</em> This class implements System.Collections.Generic.ISet{T} but does not behave like it should in all cases. The generic type is System.Collections.Generic.ICollection{T}, because you can add any object to it, that has a string representation. The add methods will use object.ToString() and store the result using a char buffer. The same behaviour have the <a class="el" href="class_lucene_1_1_net_1_1_analysis_1_1_char_array_set.html#abf77beb45c6427764f938f1e761450d9">Contains(object)</a> methods. The <a class="el" href="class_lucene_1_1_net_1_1_analysis_1_1_char_array_set.html#ac21aaba3d60121ebd7c4acd140bae9bd">GetEnumerator</a> method returns an string IEnumerable. For type safety also <a class="el" href="">stringIterator()</a> is provided. <a href="class_lucene_1_1_net_1_1_analysis_1_1_char_array_set.html#details">More...</a><br/></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_lucene_1_1_net_1_1_analysis_1_1_char_filter.html">CharFilter</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Subclasses of <a class="el" href="class_lucene_1_1_net_1_1_analysis_1_1_char_filter.html" title="Subclasses of CharFilter can be chained to filter CharStream. They can be used as System...">CharFilter</a> can be chained to filter <a class="el" href="class_lucene_1_1_net_1_1_analysis_1_1_char_stream.html" title="CharStream adds CorrectOffset functionality over System.IO.TextReader. All Tokenizers accept a CharSt...">CharStream</a>. They can be used as System.IO.TextReader with additional offset correction. <a class="el" href="class_lucene_1_1_net_1_1_analysis_1_1_tokenizer.html" title="A Tokenizer is a TokenStream whose input is a Reader. This is an abstract class; subclasses must over...">Tokenizer</a>s will automatically use <a class="el" href="class_lucene_1_1_net_1_1_analysis_1_1_char_filter.html#a3af22962a9d940595eb9cf4ed46e2991" title="Chains the corrected offset through the input CharFilter. ">CorrectOffset</a> if a CharFilter/CharStream subclass is used. <a href="class_lucene_1_1_net_1_1_analysis_1_1_char_filter.html#details">More...</a><br/></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_lucene_1_1_net_1_1_analysis_1_1_char_reader.html">CharReader</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="class_lucene_1_1_net_1_1_analysis_1_1_char_reader.html" title="CharReader is a Reader wrapper. It reads chars from Reader and outputs CharStream, defining an identify function CorrectOffset method that simply returns the provided offset. ">CharReader</a> is a Reader wrapper. It reads chars from Reader and outputs <a class="el" href="class_lucene_1_1_net_1_1_analysis_1_1_char_stream.html" title="CharStream adds CorrectOffset functionality over System.IO.TextReader. All Tokenizers accept a CharSt...">CharStream</a>, defining an identify function <a class="el" href="class_lucene_1_1_net_1_1_analysis_1_1_char_reader.html#aa1062e55b9e8d9c66792ebb1a7d2ccc9" title="Called by CharFilter(s) and Tokenizer to correct token offset.">CorrectOffset</a> method that simply returns the provided offset. <a href="class_lucene_1_1_net_1_1_analysis_1_1_char_reader.html#details">More...</a><br/></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_lucene_1_1_net_1_1_analysis_1_1_char_stream.html">CharStream</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="class_lucene_1_1_net_1_1_analysis_1_1_char_stream.html" title="CharStream adds CorrectOffset functionality over System.IO.TextReader. All Tokenizers accept a CharSt...">CharStream</a> adds <a class="el" href="class_lucene_1_1_net_1_1_analysis_1_1_char_stream.html#aebdf487a8ce758f5539026a85cd5903d" title="Called by CharFilter(s) and Tokenizer to correct token offset.">CorrectOffset</a> functionality over System.IO.TextReader. All Tokenizers accept a <a class="el" href="class_lucene_1_1_net_1_1_analysis_1_1_char_stream.html" title="CharStream adds CorrectOffset functionality over System.IO.TextReader. All Tokenizers accept a CharSt...">CharStream</a> instead of System.IO.TextReader as input, which enables arbitrary character based filtering before tokenization. The <a class="el" href="class_lucene_1_1_net_1_1_analysis_1_1_char_stream.html#aebdf487a8ce758f5539026a85cd5903d" title="Called by CharFilter(s) and Tokenizer to correct token offset.">CorrectOffset</a> method fixed offsets to account for removal or insertion of characters, so that the offsets reported in the tokens match the character offsets of the original Reader. <a href="class_lucene_1_1_net_1_1_analysis_1_1_char_stream.html#details">More...</a><br/></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_lucene_1_1_net_1_1_analysis_1_1_char_tokenizer.html">CharTokenizer</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">An abstract base class for simple, character-oriented tokenizers. <a href="class_lucene_1_1_net_1_1_analysis_1_1_char_tokenizer.html#details">More...</a><br/></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_lucene_1_1_net_1_1_analysis_1_1_i_s_o_latin1_accent_filter.html">ISOLatin1AccentFilter</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">A filter that replaces accented characters in the ISO Latin 1 character set (ISO-8859-1) by their unaccented equivalent. The case will not be altered. For instance, '&amp;#192;' will be replaced by 'a'. <a href="class_lucene_1_1_net_1_1_analysis_1_1_i_s_o_latin1_accent_filter.html#details">More...</a><br/></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_lucene_1_1_net_1_1_analysis_1_1_keyword_analyzer.html">KeywordAnalyzer</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">"Tokenizes" the entire stream as a single token. This is useful for data like zip codes, ids, and some product names. <a href="class_lucene_1_1_net_1_1_analysis_1_1_keyword_analyzer.html#details">More...</a><br/></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_lucene_1_1_net_1_1_analysis_1_1_keyword_tokenizer.html">KeywordTokenizer</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Emits the entire input as a single token. <a href="class_lucene_1_1_net_1_1_analysis_1_1_keyword_tokenizer.html#details">More...</a><br/></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_lucene_1_1_net_1_1_analysis_1_1_length_filter.html">LengthFilter</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Removes words that are too long or too short from the stream. <a href="class_lucene_1_1_net_1_1_analysis_1_1_length_filter.html#details">More...</a><br/></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_lucene_1_1_net_1_1_analysis_1_1_letter_tokenizer.html">LetterTokenizer</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">A <a class="el" href="class_lucene_1_1_net_1_1_analysis_1_1_letter_tokenizer.html" title="A LetterTokenizer is a tokenizer that divides text at non-letters. That&#39;s to say, it defines tokens a...">LetterTokenizer</a> is a tokenizer that divides text at non-letters. That's to say, it defines tokens as maximal strings of adjacent letters, as defined by java.lang.Character.isLetter() predicate. Note: this does a decent job for most European languages, but does a terrible job for some Asian languages, where words are not separated by spaces. <a href="class_lucene_1_1_net_1_1_analysis_1_1_letter_tokenizer.html#details">More...</a><br/></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_lucene_1_1_net_1_1_analysis_1_1_lower_case_filter.html">LowerCaseFilter</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Normalizes token text to lower case. <a href="class_lucene_1_1_net_1_1_analysis_1_1_lower_case_filter.html#details">More...</a><br/></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_lucene_1_1_net_1_1_analysis_1_1_lower_case_tokenizer.html">LowerCaseTokenizer</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="class_lucene_1_1_net_1_1_analysis_1_1_lower_case_tokenizer.html" title="LowerCaseTokenizer performs the function of LetterTokenizer and LowerCaseFilter together. It divides text at non-letters and converts them to lower case. While it is functionally equivalent to the combination of LetterTokenizer and LowerCaseFilter, there is a performance advantage to doing the two tasks at once, hence this (redundant) implementation. Note: this does a decent job for most European languages, but does a terrible job for some Asian languages, where words are not separated by spaces. ">LowerCaseTokenizer</a> performs the function of <a class="el" href="class_lucene_1_1_net_1_1_analysis_1_1_letter_tokenizer.html" title="A LetterTokenizer is a tokenizer that divides text at non-letters. That&#39;s to say, it defines tokens a...">LetterTokenizer</a> and <a class="el" href="class_lucene_1_1_net_1_1_analysis_1_1_lower_case_filter.html" title="Normalizes token text to lower case.">LowerCaseFilter</a> together. It divides text at non-letters and converts them to lower case. While it is functionally equivalent to the combination of <a class="el" href="class_lucene_1_1_net_1_1_analysis_1_1_letter_tokenizer.html" title="A LetterTokenizer is a tokenizer that divides text at non-letters. That&#39;s to say, it defines tokens a...">LetterTokenizer</a> and <a class="el" href="class_lucene_1_1_net_1_1_analysis_1_1_lower_case_filter.html" title="Normalizes token text to lower case.">LowerCaseFilter</a>, there is a performance advantage to doing the two tasks at once, hence this (redundant) implementation. Note: this does a decent job for most European languages, but does a terrible job for some Asian languages, where words are not separated by spaces. <a href="class_lucene_1_1_net_1_1_analysis_1_1_lower_case_tokenizer.html#details">More...</a><br/></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_lucene_1_1_net_1_1_analysis_1_1_mapping_char_filter.html">MappingCharFilter</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Simplistic <a class="el" href="class_lucene_1_1_net_1_1_analysis_1_1_char_filter.html" title="Subclasses of CharFilter can be chained to filter CharStream. They can be used as System...">CharFilter</a> that applies the mappings contained in a <a class="el" href="class_lucene_1_1_net_1_1_analysis_1_1_normalize_char_map.html" title="Holds a map of String input to String output, to be used with MappingCharFilter. ">NormalizeCharMap</a> to the character stream, and correcting the resulting changes to the offsets. <a href="class_lucene_1_1_net_1_1_analysis_1_1_mapping_char_filter.html#details">More...</a><br/></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_lucene_1_1_net_1_1_analysis_1_1_normalize_char_map.html">NormalizeCharMap</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Holds a map of String input to String output, to be used with <a class="el" href="class_lucene_1_1_net_1_1_analysis_1_1_mapping_char_filter.html" title="Simplistic CharFilter that applies the mappings contained in a NormalizeCharMap to the character stre...">MappingCharFilter</a>. <a href="class_lucene_1_1_net_1_1_analysis_1_1_normalize_char_map.html#details">More...</a><br/></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_lucene_1_1_net_1_1_analysis_1_1_numeric_token_stream.html">NumericTokenStream</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight"><b>Expert:</b> This class provides a <a class="el" href="class_lucene_1_1_net_1_1_analysis_1_1_token_stream.html" title="A TokenStream enumerates the sequence of tokens, either from Fields of a Document or from query text...">TokenStream</a> for indexing numeric values that can be used by NumericRangeQuery{T} or NumericRangeFilter{T}. <a href="class_lucene_1_1_net_1_1_analysis_1_1_numeric_token_stream.html#details">More...</a><br/></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_lucene_1_1_net_1_1_analysis_1_1_per_field_analyzer_wrapper.html">PerFieldAnalyzerWrapper</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">This analyzer is used to facilitate scenarios where different fields require different analysis techniques. Use <a class="el" href="class_lucene_1_1_net_1_1_analysis_1_1_per_field_analyzer_wrapper.html#a1514347baf306a36c41f3d2bbae3c8d4" title="Defines an analyzer to use for the specified field.">AddAnalyzer</a> to add a non-default analyzer on a field name basis. <a href="class_lucene_1_1_net_1_1_analysis_1_1_per_field_analyzer_wrapper.html#details">More...</a><br/></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_lucene_1_1_net_1_1_analysis_1_1_porter_stem_filter.html">PorterStemFilter</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Transforms the token stream as per the Porter stemming algorithm. Note: the input to the stemming filter must already be in lower case, so you will need to use <a class="el" href="class_lucene_1_1_net_1_1_analysis_1_1_lower_case_filter.html" title="Normalizes token text to lower case.">LowerCaseFilter</a> or <a class="el" href="class_lucene_1_1_net_1_1_analysis_1_1_lower_case_tokenizer.html" title="LowerCaseTokenizer performs the function of LetterTokenizer and LowerCaseFilter together. It divides text at non-letters and converts them to lower case. While it is functionally equivalent to the combination of LetterTokenizer and LowerCaseFilter, there is a performance advantage to doing the two tasks at once, hence this (redundant) implementation. Note: this does a decent job for most European languages, but does a terrible job for some Asian languages, where words are not separated by spaces. ">LowerCaseTokenizer</a> farther down the <a class="el" href="class_lucene_1_1_net_1_1_analysis_1_1_tokenizer.html" title="A Tokenizer is a TokenStream whose input is a Reader. This is an abstract class; subclasses must over...">Tokenizer</a> chain in order for this to work properly! To use this filter with other analyzers, you'll want to write an <a class="el" href="class_lucene_1_1_net_1_1_analysis_1_1_analyzer.html" title="An Analyzer builds TokenStreams, which analyze text. It thus represents a policy for extracting index...">Analyzer</a> class that sets up the <a class="el" href="class_lucene_1_1_net_1_1_analysis_1_1_token_stream.html" title="A TokenStream enumerates the sequence of tokens, either from Fields of a Document or from query text...">TokenStream</a> chain as you want it. To use this with <a class="el" href="class_lucene_1_1_net_1_1_analysis_1_1_lower_case_tokenizer.html" title="LowerCaseTokenizer performs the function of LetterTokenizer and LowerCaseFilter together. It divides text at non-letters and converts them to lower case. While it is functionally equivalent to the combination of LetterTokenizer and LowerCaseFilter, there is a performance advantage to doing the two tasks at once, hence this (redundant) implementation. Note: this does a decent job for most European languages, but does a terrible job for some Asian languages, where words are not separated by spaces. ">LowerCaseTokenizer</a>, for example, you'd write an analyzer like this: <a href="class_lucene_1_1_net_1_1_analysis_1_1_porter_stem_filter.html#details">More...</a><br/></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_lucene_1_1_net_1_1_analysis_1_1_porter_stemmer.html">PorterStemmer</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Stemmer, implementing the Porter Stemming Algorithm <a href="class_lucene_1_1_net_1_1_analysis_1_1_porter_stemmer.html#details">More...</a><br/></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_lucene_1_1_net_1_1_analysis_1_1_simple_analyzer.html">SimpleAnalyzer</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">An <a class="el" href="class_lucene_1_1_net_1_1_analysis_1_1_analyzer.html" title="An Analyzer builds TokenStreams, which analyze text. It thus represents a policy for extracting index...">Analyzer</a> that filters <a class="el" href="class_lucene_1_1_net_1_1_analysis_1_1_letter_tokenizer.html" title="A LetterTokenizer is a tokenizer that divides text at non-letters. That&#39;s to say, it defines tokens a...">LetterTokenizer</a> with <a class="el" href="class_lucene_1_1_net_1_1_analysis_1_1_lower_case_filter.html" title="Normalizes token text to lower case.">LowerCaseFilter</a> <a href="class_lucene_1_1_net_1_1_analysis_1_1_simple_analyzer.html#details">More...</a><br/></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_lucene_1_1_net_1_1_analysis_1_1_stop_analyzer.html">StopAnalyzer</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Filters <a class="el" href="class_lucene_1_1_net_1_1_analysis_1_1_letter_tokenizer.html" title="A LetterTokenizer is a tokenizer that divides text at non-letters. That&#39;s to say, it defines tokens a...">LetterTokenizer</a> with <a class="el" href="class_lucene_1_1_net_1_1_analysis_1_1_lower_case_filter.html" title="Normalizes token text to lower case.">LowerCaseFilter</a> and <a class="el" href="class_lucene_1_1_net_1_1_analysis_1_1_stop_filter.html" title="Removes stop words from a token stream.">StopFilter</a>. <a href="class_lucene_1_1_net_1_1_analysis_1_1_stop_analyzer.html#details">More...</a><br/></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_lucene_1_1_net_1_1_analysis_1_1_stop_filter.html">StopFilter</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Removes stop words from a token stream. <a href="class_lucene_1_1_net_1_1_analysis_1_1_stop_filter.html#details">More...</a><br/></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_lucene_1_1_net_1_1_analysis_1_1_tee_sink_token_filter.html">TeeSinkTokenFilter</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">This <a class="el" href="class_lucene_1_1_net_1_1_analysis_1_1_token_filter.html" title="A TokenFilter is a TokenStream whose input is another TokenStream. This is an abstract class; subclas...">TokenFilter</a> provides the ability to set aside attribute states that have already been analyzed. This is useful in situations where multiple fields share many common analysis steps and then go their separate ways. It is also useful for doing things like entity extraction or proper noun analysis as part of the analysis workflow and saving off those tokens for use in another field. <a href="class_lucene_1_1_net_1_1_analysis_1_1_tee_sink_token_filter.html#details">More...</a><br/></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_lucene_1_1_net_1_1_analysis_1_1_token.html">Token</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">A <a class="el" href="class_lucene_1_1_net_1_1_analysis_1_1_token.html" title="A Token is an occurrence of a term from the text of a field. It consists of a term&#39;s text...">Token</a> is an occurrence of a term from the text of a field. It consists of a term's text, the start and end offset of the term in the text of the field, and a type string. The start and end offsets permit applications to re-associate a token with its source text, e.g., to display highlighted query terms in a document browser, or to show matching text fragments in a &lt;abbr title="KeyWord In Context"&gt;KWIC&lt;/abbr&gt; display, etc. The type is a string, assigned by a lexical analyzer (a.k.a. tokenizer), naming the lexical or syntactic class that the token belongs to. For example an end of sentence marker token might be implemented with type "eos". The default token type is "word". A <a class="el" href="class_lucene_1_1_net_1_1_analysis_1_1_token.html" title="A Token is an occurrence of a term from the text of a field. It consists of a term&#39;s text...">Token</a> can optionally have metadata (a.k.a. Payload) in the form of a variable length byte array. Use TermPositions.PayloadLength and TermPositions.GetPayload(byte[], int) to retrieve the payloads from the index. <a href="class_lucene_1_1_net_1_1_analysis_1_1_token.html#details">More...</a><br/></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_lucene_1_1_net_1_1_analysis_1_1_token_filter.html">TokenFilter</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">A <a class="el" href="class_lucene_1_1_net_1_1_analysis_1_1_token_filter.html" title="A TokenFilter is a TokenStream whose input is another TokenStream. This is an abstract class; subclas...">TokenFilter</a> is a <a class="el" href="class_lucene_1_1_net_1_1_analysis_1_1_token_stream.html" title="A TokenStream enumerates the sequence of tokens, either from Fields of a Document or from query text...">TokenStream</a> whose input is another <a class="el" href="class_lucene_1_1_net_1_1_analysis_1_1_token_stream.html" title="A TokenStream enumerates the sequence of tokens, either from Fields of a Document or from query text...">TokenStream</a>. This is an abstract class; subclasses must override <a class="el" href="class_lucene_1_1_net_1_1_analysis_1_1_token_stream.html#a358a544108511440a57b134e722f6027" title="Consumers (i.e., IndexWriter) use this method to advance the stream to the next token. Implementing classes must implement this method and update the appropriate Util.Attributes with the attributes of the next token.">TokenStream.IncrementToken()</a>. <a href="class_lucene_1_1_net_1_1_analysis_1_1_token_filter.html#details">More...</a><br/></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_lucene_1_1_net_1_1_analysis_1_1_tokenizer.html">Tokenizer</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">A <a class="el" href="class_lucene_1_1_net_1_1_analysis_1_1_tokenizer.html" title="A Tokenizer is a TokenStream whose input is a Reader. This is an abstract class; subclasses must over...">Tokenizer</a> is a <a class="el" href="class_lucene_1_1_net_1_1_analysis_1_1_token_stream.html" title="A TokenStream enumerates the sequence of tokens, either from Fields of a Document or from query text...">TokenStream</a> whose input is a Reader. This is an abstract class; subclasses must override <a class="el" href="class_lucene_1_1_net_1_1_analysis_1_1_token_stream.html#a358a544108511440a57b134e722f6027" title="Consumers (i.e., IndexWriter) use this method to advance the stream to the next token. Implementing classes must implement this method and update the appropriate Util.Attributes with the attributes of the next token.">TokenStream.IncrementToken()</a> NOTE: Subclasses overriding <a class="el" href="class_lucene_1_1_net_1_1_analysis_1_1_token_stream.html#a358a544108511440a57b134e722f6027" title="Consumers (i.e., IndexWriter) use this method to advance the stream to the next token. Implementing classes must implement this method and update the appropriate Util.Attributes with the attributes of the next token.">TokenStream.IncrementToken()</a> must call AttributeSource.ClearAttributes() before setting attributes. <a href="class_lucene_1_1_net_1_1_analysis_1_1_tokenizer.html#details">More...</a><br/></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_lucene_1_1_net_1_1_analysis_1_1_token_stream.html">TokenStream</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">A <code><a class="el" href="class_lucene_1_1_net_1_1_analysis_1_1_token_stream.html" title="A TokenStream enumerates the sequence of tokens, either from Fields of a Document or from query text...">TokenStream</a></code> enumerates the sequence of tokens, either from <a class="el" href="_token_stream_8cs.html#a6d7b175c6799cf1d18e9493727d23fc6">Field</a>s of a <a class="el" href="_searcher_8cs.html#a2ad6aef8641c7b7a6cf9277f7d54b2cd">Document</a> or from query text. This is an abstract class. Concrete subclasses are: </p>
<ul>
<li>
<a class="el" href="class_lucene_1_1_net_1_1_analysis_1_1_tokenizer.html" title="A Tokenizer is a TokenStream whose input is a Reader. This is an abstract class; subclasses must over...">Tokenizer</a>, a <code><a class="el" href="class_lucene_1_1_net_1_1_analysis_1_1_token_stream.html" title="A TokenStream enumerates the sequence of tokens, either from Fields of a Document or from query text...">TokenStream</a></code> whose input is a Reader; and </li>
<li>
<a class="el" href="class_lucene_1_1_net_1_1_analysis_1_1_token_filter.html" title="A TokenFilter is a TokenStream whose input is another TokenStream. This is an abstract class; subclas...">TokenFilter</a>, a <code><a class="el" href="class_lucene_1_1_net_1_1_analysis_1_1_token_stream.html" title="A TokenStream enumerates the sequence of tokens, either from Fields of a Document or from query text...">TokenStream</a></code> whose input is another <code><a class="el" href="class_lucene_1_1_net_1_1_analysis_1_1_token_stream.html" title="A TokenStream enumerates the sequence of tokens, either from Fields of a Document or from query text...">TokenStream</a></code>. </li>
</ul>
<p>A new <code><a class="el" href="class_lucene_1_1_net_1_1_analysis_1_1_token_stream.html" title="A TokenStream enumerates the sequence of tokens, either from Fields of a Document or from query text...">TokenStream</a></code> API has been introduced with <a class="el" href="namespace_lucene.html">Lucene</a> 2.9. This API has moved from being <a class="el" href="class_lucene_1_1_net_1_1_analysis_1_1_token.html" title="A Token is an occurrence of a term from the text of a field. It consists of a term&#39;s text...">Token</a> based to IAttribute based. While <a class="el" href="class_lucene_1_1_net_1_1_analysis_1_1_token.html" title="A Token is an occurrence of a term from the text of a field. It consists of a term&#39;s text...">Token</a> still exists in 2.9 as a convenience class, the preferred way to store the information of a <a class="el" href="class_lucene_1_1_net_1_1_analysis_1_1_token.html" title="A Token is an occurrence of a term from the text of a field. It consists of a term&#39;s text...">Token</a> is to use <a class="el" href="class_lucene_1_1_net_1_1_util_1_1_attribute.html" title="Base class for Attributes that can be added to a Lucene.Net.Util.AttributeSource. Attributes are used...">Util.Attribute</a>s. <code><a class="el" href="class_lucene_1_1_net_1_1_analysis_1_1_token_stream.html" title="A TokenStream enumerates the sequence of tokens, either from Fields of a Document or from query text...">TokenStream</a></code> now extends <a class="el" href="class_lucene_1_1_net_1_1_util_1_1_attribute_source.html#af8654555ddde74d7e463266371f3508c" title="An AttributeSource using the default attribute factory AttributeSource.AttributeFactory.DEFAULT_ATTRIBUTE_FACTORY.">AttributeSource</a>, which provides access to all of the token IAttributes for the <code><a class="el" href="class_lucene_1_1_net_1_1_analysis_1_1_token_stream.html" title="A TokenStream enumerates the sequence of tokens, either from Fields of a Document or from query text...">TokenStream</a></code>. Note that only one instance per <a class="el" href="class_lucene_1_1_net_1_1_util_1_1_attribute.html" title="Base class for Attributes that can be added to a Lucene.Net.Util.AttributeSource. Attributes are used...">Util.Attribute</a> is created and reused for every token. This approach reduces object creation and allows local caching of references to the <a class="el" href="class_lucene_1_1_net_1_1_util_1_1_attribute.html" title="Base class for Attributes that can be added to a Lucene.Net.Util.AttributeSource. Attributes are used...">Util.Attribute</a>s. See <a class="el" href="class_lucene_1_1_net_1_1_analysis_1_1_token_stream.html#a358a544108511440a57b134e722f6027" title="Consumers (i.e., IndexWriter) use this method to advance the stream to the next token. Implementing classes must implement this method and update the appropriate Util.Attributes with the attributes of the next token.">IncrementToken()</a> for further details. <b>The workflow of the new <code><a class="el" href="class_lucene_1_1_net_1_1_analysis_1_1_token_stream.html" title="A TokenStream enumerates the sequence of tokens, either from Fields of a Document or from query text...">TokenStream</a></code> API is as follows:</b> </p>
<ul>
<li>
Instantiation of <code><a class="el" href="class_lucene_1_1_net_1_1_analysis_1_1_token_stream.html" title="A TokenStream enumerates the sequence of tokens, either from Fields of a Document or from query text...">TokenStream</a></code>/<a class="el" href="class_lucene_1_1_net_1_1_analysis_1_1_token_filter.html" title="A TokenFilter is a TokenStream whose input is another TokenStream. This is an abstract class; subclas...">TokenFilter</a>s which add/get attributes to/from the <a class="el" href="class_lucene_1_1_net_1_1_util_1_1_attribute_source.html#af8654555ddde74d7e463266371f3508c" title="An AttributeSource using the default attribute factory AttributeSource.AttributeFactory.DEFAULT_ATTRIBUTE_FACTORY.">AttributeSource</a>. </li>
<li>
The consumer calls <a class="el" href="class_lucene_1_1_net_1_1_analysis_1_1_token_stream.html#af7c4a3464dc78b1d0451492d9c520965" title="Resets this stream to the beginning. This is an optional operation, so subclasses may or may not impl...">TokenStream.Reset()</a>. </li>
<li>
The consumer retrieves attributes from the stream and stores local references to all attributes it wants to access </li>
<li>
The consumer calls <a class="el" href="class_lucene_1_1_net_1_1_analysis_1_1_token_stream.html#a358a544108511440a57b134e722f6027" title="Consumers (i.e., IndexWriter) use this method to advance the stream to the next token. Implementing classes must implement this method and update the appropriate Util.Attributes with the attributes of the next token.">IncrementToken()</a> until it returns false and consumes the attributes after each call. </li>
<li>
The consumer calls <a class="el" href="class_lucene_1_1_net_1_1_analysis_1_1_token_stream.html#a92b3c4eab12fbf83daa07b7684cfbcaf" title="This method is called by the consumer after the last token has been consumed, after IncrementToken re...">End()</a> so that any end-of-stream operations can be performed. </li>
<li>
The consumer calls <a class="el" href="class_lucene_1_1_net_1_1_analysis_1_1_token_stream.html#a5f66ac4c37218611b4a13f81f98332cd" title="Releases resources associated with this stream. ">Close()</a> to release any resource when finished using the <code><a class="el" href="class_lucene_1_1_net_1_1_analysis_1_1_token_stream.html" title="A TokenStream enumerates the sequence of tokens, either from Fields of a Document or from query text...">TokenStream</a></code> </li>
</ul>
<p>To make sure that filters and consumers know which attributes are available, the attributes must be added during instantiation. Filters and consumers are not required to check for availability of attributes in <a class="el" href="class_lucene_1_1_net_1_1_analysis_1_1_token_stream.html#a358a544108511440a57b134e722f6027" title="Consumers (i.e., IndexWriter) use this method to advance the stream to the next token. Implementing classes must implement this method and update the appropriate Util.Attributes with the attributes of the next token.">IncrementToken()</a>. You can find some example code for the new API in the analysis package level Javadoc. Sometimes it is desirable to capture a current state of a <code><a class="el" href="class_lucene_1_1_net_1_1_analysis_1_1_token_stream.html" title="A TokenStream enumerates the sequence of tokens, either from Fields of a Document or from query text...">TokenStream</a></code> , e. g. for buffering purposes (see <a class="el" href="class_lucene_1_1_net_1_1_analysis_1_1_caching_token_filter.html" title="This class can be used if the token attributes of a TokenStream are intended to be consumed more than...">CachingTokenFilter</a>, <a class="el" href="class_lucene_1_1_net_1_1_analysis_1_1_tee_sink_token_filter.html" title="This TokenFilter provides the ability to set aside attribute states that have already been analyzed...">TeeSinkTokenFilter</a>). For this usecase AttributeSource.CaptureState and AttributeSource.RestoreState can be used. <a href="class_lucene_1_1_net_1_1_analysis_1_1_token_stream.html#details">More...</a><br/></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_lucene_1_1_net_1_1_analysis_1_1_whitespace_analyzer.html">WhitespaceAnalyzer</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">An <a class="el" href="class_lucene_1_1_net_1_1_analysis_1_1_analyzer.html" title="An Analyzer builds TokenStreams, which analyze text. It thus represents a policy for extracting index...">Analyzer</a> that uses <a class="el" href="class_lucene_1_1_net_1_1_analysis_1_1_whitespace_tokenizer.html" title="A WhitespaceTokenizer is a tokenizer that divides text at whitespace. Adjacent sequences of non-White...">WhitespaceTokenizer</a>. <a href="class_lucene_1_1_net_1_1_analysis_1_1_whitespace_analyzer.html#details">More...</a><br/></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_lucene_1_1_net_1_1_analysis_1_1_whitespace_tokenizer.html">WhitespaceTokenizer</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">A <a class="el" href="class_lucene_1_1_net_1_1_analysis_1_1_whitespace_tokenizer.html" title="A WhitespaceTokenizer is a tokenizer that divides text at whitespace. Adjacent sequences of non-White...">WhitespaceTokenizer</a> is a tokenizer that divides text at whitespace. Adjacent sequences of non-Whitespace characters form tokens. <a href="class_lucene_1_1_net_1_1_analysis_1_1_whitespace_tokenizer.html#details">More...</a><br/></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_lucene_1_1_net_1_1_analysis_1_1_wordlist_loader.html">WordlistLoader</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Loader for text files that represent a list of stopwords. <a href="class_lucene_1_1_net_1_1_analysis_1_1_wordlist_loader.html#details">More...</a><br/></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Thu Jan 3 2013 02:12:47 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>