﻿<!DOCTYPE html>
<!--[if IE]><![endif]-->
<html>
  
  <head>
    <meta charset="utf-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
    <title>Class ReverseOrdFieldSource
   | Apache Lucene.NET 4.8.0-beta00008 Documentation </title>
    <meta name="viewport" content="width=device-width">
    <meta name="title" content="Class ReverseOrdFieldSource
   | Apache Lucene.NET 4.8.0-beta00008 Documentation ">
    <meta name="generator" content="docfx 2.50.0.0">
    
    <link rel="shortcut icon" href="../../logo/favicon.ico">
    <link rel="stylesheet" href="../../styles/docfx.vendor.css">
    <link rel="stylesheet" href="../../styles/docfx.css">
    <link rel="stylesheet" href="../../styles/main.css">
    <meta property="docfx:navrel" content="../../toc.html">
    <meta property="docfx:tocrel" content="../toc.html">
    
    <meta property="docfx:rel" content="../../">
    
  </head>
  <body data-spy="scroll" data-target="#affix" data-offset="120">
    <div id="wrapper">
      <header>
        
        <nav id="autocollapse" class="navbar ng-scope" role="navigation">
          <div class="container">
            <div class="navbar-header">
              <button type="button" class="navbar-toggle" data-toggle="collapse" data-target="#navbar">
                <span class="sr-only">Toggle navigation</span>
                <span class="icon-bar"></span>
                <span class="icon-bar"></span>
                <span class="icon-bar"></span>
              </button>
              
              <a class="navbar-brand" href="../../index.html">
                <img id="logo" class="svg" src="../../logo/lucene-net-color.png" alt="">
              </a>
            </div>
            <div class="collapse navbar-collapse" id="navbar">
              <form class="navbar-form navbar-right" role="search" id="search">
                <div class="form-group">
                  <input type="text" class="form-control" id="search-query" placeholder="Search" autocomplete="off">
                </div>
              </form>
            </div>
          </div>
        </nav>
        
        <div class="subnav navbar navbar-default">
          <div class="container hide-when-search" id="breadcrumb">
            <ul class="breadcrumb">
              <li></li>
            </ul>
          </div>
        </div>
      </header>
      <div class="container body-content">
        
        <div id="search-results">
          <div class="search-list"></div>
          <div class="sr-items">
            <p><i class="glyphicon glyphicon-refresh index-loading"></i></p>
          </div>
          <ul id="pagination"></ul>
        </div>
      </div>
      <div role="main" class="container body-content hide-when-search">
        
        <div class="sidenav hide-when-search">
          <a class="btn toc-toggle collapse" data-toggle="collapse" href="#sidetoggle" aria-expanded="false" aria-controls="sidetoggle">Show / Hide Table of Contents</a>
          <div class="sidetoggle collapse" id="sidetoggle">
            <div id="sidetoc"></div>
          </div>
        </div>
        <div class="article row grid-right">
          <div class="col-md-10">
            <article class="content wrap" id="_content" data-uid="Lucene.Net.Queries.Function.ValueSources.ReverseOrdFieldSource">
  
  
  <h1 id="Lucene_Net_Queries_Function_ValueSources_ReverseOrdFieldSource" data-uid="Lucene.Net.Queries.Function.ValueSources.ReverseOrdFieldSource" class="text-break">Class ReverseOrdFieldSource
  </h1>
  <div class="markdown level0 summary"><p>Obtains the ordinal of the field value from the default Lucene <a class="xref" href="../Lucene.Net/Lucene.Net.Search.FieldCache.html">FieldCache</a> using <a class="xref" href="../Lucene.Net/Lucene.Net.Search.IFieldCache.html#Lucene_Net_Search_IFieldCache_GetTermsIndex_Lucene_Net_Index_AtomicReader_System_String_System_Single_">GetTermsIndex(AtomicReader, String, Single)</a>
and reverses the order.
<p>
The native lucene index order is used to assign an ordinal value for each field value.
<p>Field values (terms) are lexicographically ordered by unicode value, and numbered starting at 1.
<p>
Example of reverse ordinal (rord):</p>
<pre><code>    If there were only three field values: &quot;apple&quot;,&quot;banana&quot;,&quot;pear&quot;
    then rord(&quot;apple&quot;)=3, rord(&quot;banana&quot;)=2, ord(&quot;pear&quot;)=1</code></pre>
<p><p>
 WARNING: Ord depends on the position in an index and can thus change when other documents are inserted or deleted,
 or if a MultiSearcher is used.
<p>
 WARNING: as of Solr 1.4, ord() and rord() can cause excess memory use since they must use a FieldCache entry
at the top level reader, while sorting and function queries now use entries at the segment level.  Hence sorting
or using a different function query, in addition to ord()/rord() will double memory use.</p>
</div>
  <div class="markdown level0 conceptual"></div>
  <div class="inheritance">
    <h5>Inheritance</h5>
    <div class="level0"><span class="xref">System.Object</span></div>
    <div class="level1"><a class="xref" href="Lucene.Net.Queries.Function.ValueSource.html">ValueSource</a></div>
    <div class="level2"><span class="xref">ReverseOrdFieldSource</span></div>
  </div>
  <div class="inheritedMembers">
    <h5>Inherited Members</h5>
    <div>
      <a class="xref" href="Lucene.Net.Queries.Function.ValueSource.html#Lucene_Net_Queries_Function_ValueSource_ToString">ValueSource.ToString()</a>
    </div>
    <div>
      <a class="xref" href="Lucene.Net.Queries.Function.ValueSource.html#Lucene_Net_Queries_Function_ValueSource_CreateWeight_System_Collections_IDictionary_Lucene_Net_Search_IndexSearcher_">ValueSource.CreateWeight(IDictionary, IndexSearcher)</a>
    </div>
    <div>
      <a class="xref" href="Lucene.Net.Queries.Function.ValueSource.html#Lucene_Net_Queries_Function_ValueSource_NewContext_Lucene_Net_Search_IndexSearcher_">ValueSource.NewContext(IndexSearcher)</a>
    </div>
    <div>
      <a class="xref" href="Lucene.Net.Queries.Function.ValueSource.html#Lucene_Net_Queries_Function_ValueSource_GetSortField_System_Boolean_">ValueSource.GetSortField(Boolean)</a>
    </div>
    <div>
      <span class="xref">System.Object.Equals(System.Object, System.Object)</span>
    </div>
    <div>
      <span class="xref">System.Object.GetType()</span>
    </div>
    <div>
      <span class="xref">System.Object.MemberwiseClone()</span>
    </div>
    <div>
      <span class="xref">System.Object.ReferenceEquals(System.Object, System.Object)</span>
    </div>
  </div>
  <h6><strong>Namespace</strong>: <a class="xref" href="Lucene.Net.Queries.Function.ValueSources.html">Lucene.Net.Queries.Function.ValueSources</a></h6>
  <h6><strong>Assembly</strong>: Lucene.Net.Queries.dll</h6>
  <h5 id="Lucene_Net_Queries_Function_ValueSources_ReverseOrdFieldSource_syntax">Syntax</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public class ReverseOrdFieldSource : ValueSource</code></pre>
  </div>
  <h3 id="constructors">Constructors
  </h3>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/apache/lucenenet/new/docs/4.8.0-beta00008/websites/apidocs/apiSpec/new?filename=Lucene_Net_Queries_Function_ValueSources_ReverseOrdFieldSource__ctor_System_String_.md&amp;value=---%0Auid%3A%20Lucene.Net.Queries.Function.ValueSources.ReverseOrdFieldSource.%23ctor(System.String)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/Shazwazza/lucenenet/blob/docs-may/src/Lucene.Net.Queries/Function/ValueSources/ReverseOrdFieldSource.cs/#L55">View Source</a>
  </span>
  <a id="Lucene_Net_Queries_Function_ValueSources_ReverseOrdFieldSource__ctor_" data-uid="Lucene.Net.Queries.Function.ValueSources.ReverseOrdFieldSource.#ctor*"></a>
  <h4 id="Lucene_Net_Queries_Function_ValueSources_ReverseOrdFieldSource__ctor_System_String_" data-uid="Lucene.Net.Queries.Function.ValueSources.ReverseOrdFieldSource.#ctor(System.String)">ReverseOrdFieldSource(String)</h4>
  <div class="markdown level1 summary"></div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public ReverseOrdFieldSource(string field)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.String</span></td>
        <td><span class="parametername">field</span></td>
        <td></td>
      </tr>
    </tbody>
  </table>
  <h3 id="properties">Properties
  </h3>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/apache/lucenenet/new/docs/4.8.0-beta00008/websites/apidocs/apiSpec/new?filename=Lucene_Net_Queries_Function_ValueSources_ReverseOrdFieldSource_Field.md&amp;value=---%0Auid%3A%20Lucene.Net.Queries.Function.ValueSources.ReverseOrdFieldSource.Field%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/Shazwazza/lucenenet/blob/docs-may/src/Lucene.Net.Queries/Function/ValueSources/ReverseOrdFieldSource.cs/#L50">View Source</a>
  </span>
  <a id="Lucene_Net_Queries_Function_ValueSources_ReverseOrdFieldSource_Field_" data-uid="Lucene.Net.Queries.Function.ValueSources.ReverseOrdFieldSource.Field*"></a>
  <h4 id="Lucene_Net_Queries_Function_ValueSources_ReverseOrdFieldSource_Field" data-uid="Lucene.Net.Queries.Function.ValueSources.ReverseOrdFieldSource.Field">Field</h4>
  <div class="markdown level1 summary"></div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public string Field { get; }</code></pre>
  </div>
  <h5 class="propertyValue">Property Value</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.String</span></td>
        <td></td>
      </tr>
    </tbody>
  </table>
  <h3 id="methods">Methods
  </h3>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/apache/lucenenet/new/docs/4.8.0-beta00008/websites/apidocs/apiSpec/new?filename=Lucene_Net_Queries_Function_ValueSources_ReverseOrdFieldSource_Equals_System_Object_.md&amp;value=---%0Auid%3A%20Lucene.Net.Queries.Function.ValueSources.ReverseOrdFieldSource.Equals(System.Object)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/Shazwazza/lucenenet/blob/docs-may/src/Lucene.Net.Queries/Function/ValueSources/ReverseOrdFieldSource.cs/#L104">View Source</a>
  </span>
  <a id="Lucene_Net_Queries_Function_ValueSources_ReverseOrdFieldSource_Equals_" data-uid="Lucene.Net.Queries.Function.ValueSources.ReverseOrdFieldSource.Equals*"></a>
  <h4 id="Lucene_Net_Queries_Function_ValueSources_ReverseOrdFieldSource_Equals_System_Object_" data-uid="Lucene.Net.Queries.Function.ValueSources.ReverseOrdFieldSource.Equals(System.Object)">Equals(Object)</h4>
  <div class="markdown level1 summary"></div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public override bool Equals(object o)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Object</span></td>
        <td><span class="parametername">o</span></td>
        <td></td>
      </tr>
    </tbody>
  </table>
  <h5 class="returns">Returns</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Boolean</span></td>
        <td></td>
      </tr>
    </tbody>
  </table>
  <h5 class="overrides">Overrides</h5>
  <div><a class="xref" href="Lucene.Net.Queries.Function.ValueSource.html#Lucene_Net_Queries_Function_ValueSource_Equals_System_Object_">ValueSource.Equals(Object)</a></div>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/apache/lucenenet/new/docs/4.8.0-beta00008/websites/apidocs/apiSpec/new?filename=Lucene_Net_Queries_Function_ValueSources_ReverseOrdFieldSource_GetDescription.md&amp;value=---%0Auid%3A%20Lucene.Net.Queries.Function.ValueSources.ReverseOrdFieldSource.GetDescription%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/Shazwazza/lucenenet/blob/docs-may/src/Lucene.Net.Queries/Function/ValueSources/ReverseOrdFieldSource.cs/#L60">View Source</a>
  </span>
  <a id="Lucene_Net_Queries_Function_ValueSources_ReverseOrdFieldSource_GetDescription_" data-uid="Lucene.Net.Queries.Function.ValueSources.ReverseOrdFieldSource.GetDescription*"></a>
  <h4 id="Lucene_Net_Queries_Function_ValueSources_ReverseOrdFieldSource_GetDescription" data-uid="Lucene.Net.Queries.Function.ValueSources.ReverseOrdFieldSource.GetDescription">GetDescription()</h4>
  <div class="markdown level1 summary"></div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public override string GetDescription()</code></pre>
  </div>
  <h5 class="returns">Returns</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.String</span></td>
        <td></td>
      </tr>
    </tbody>
  </table>
  <h5 class="overrides">Overrides</h5>
  <div><a class="xref" href="Lucene.Net.Queries.Function.ValueSource.html#Lucene_Net_Queries_Function_ValueSource_GetDescription">ValueSource.GetDescription()</a></div>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/apache/lucenenet/new/docs/4.8.0-beta00008/websites/apidocs/apiSpec/new?filename=Lucene_Net_Queries_Function_ValueSources_ReverseOrdFieldSource_GetHashCode.md&amp;value=---%0Auid%3A%20Lucene.Net.Queries.Function.ValueSources.ReverseOrdFieldSource.GetHashCode%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/Shazwazza/lucenenet/blob/docs-may/src/Lucene.Net.Queries/Function/ValueSources/ReverseOrdFieldSource.cs/#L117">View Source</a>
  </span>
  <a id="Lucene_Net_Queries_Function_ValueSources_ReverseOrdFieldSource_GetHashCode_" data-uid="Lucene.Net.Queries.Function.ValueSources.ReverseOrdFieldSource.GetHashCode*"></a>
  <h4 id="Lucene_Net_Queries_Function_ValueSources_ReverseOrdFieldSource_GetHashCode" data-uid="Lucene.Net.Queries.Function.ValueSources.ReverseOrdFieldSource.GetHashCode">GetHashCode()</h4>
  <div class="markdown level1 summary"></div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public override int GetHashCode()</code></pre>
  </div>
  <h5 class="returns">Returns</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Int32</span></td>
        <td></td>
      </tr>
    </tbody>
  </table>
  <h5 class="overrides">Overrides</h5>
  <div><a class="xref" href="Lucene.Net.Queries.Function.ValueSource.html#Lucene_Net_Queries_Function_ValueSource_GetHashCode">ValueSource.GetHashCode()</a></div>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/apache/lucenenet/new/docs/4.8.0-beta00008/websites/apidocs/apiSpec/new?filename=Lucene_Net_Queries_Function_ValueSources_ReverseOrdFieldSource_GetValues_System_Collections_IDictionary_Lucene_Net_Index_AtomicReaderContext_.md&amp;value=---%0Auid%3A%20Lucene.Net.Queries.Function.ValueSources.ReverseOrdFieldSource.GetValues(System.Collections.IDictionary%2CLucene.Net.Index.AtomicReaderContext)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/Shazwazza/lucenenet/blob/docs-may/src/Lucene.Net.Queries/Function/ValueSources/ReverseOrdFieldSource.cs/#L66">View Source</a>
  </span>
  <a id="Lucene_Net_Queries_Function_ValueSources_ReverseOrdFieldSource_GetValues_" data-uid="Lucene.Net.Queries.Function.ValueSources.ReverseOrdFieldSource.GetValues*"></a>
  <h4 id="Lucene_Net_Queries_Function_ValueSources_ReverseOrdFieldSource_GetValues_System_Collections_IDictionary_Lucene_Net_Index_AtomicReaderContext_" data-uid="Lucene.Net.Queries.Function.ValueSources.ReverseOrdFieldSource.GetValues(System.Collections.IDictionary,Lucene.Net.Index.AtomicReaderContext)">GetValues(IDictionary, AtomicReaderContext)</h4>
  <div class="markdown level1 summary"></div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public override FunctionValues GetValues(IDictionary context, AtomicReaderContext readerContext)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Collections.IDictionary</span></td>
        <td><span class="parametername">context</span></td>
        <td></td>
      </tr>
      <tr>
        <td><a class="xref" href="../Lucene.Net/Lucene.Net.Index.AtomicReaderContext.html">AtomicReaderContext</a></td>
        <td><span class="parametername">readerContext</span></td>
        <td></td>
      </tr>
    </tbody>
  </table>
  <h5 class="returns">Returns</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><a class="xref" href="Lucene.Net.Queries.Function.FunctionValues.html">FunctionValues</a></td>
        <td></td>
      </tr>
    </tbody>
  </table>
  <h5 class="overrides">Overrides</h5>
  <div><a class="xref" href="Lucene.Net.Queries.Function.ValueSource.html#Lucene_Net_Queries_Function_ValueSource_GetValues_System_Collections_IDictionary_Lucene_Net_Index_AtomicReaderContext_">ValueSource.GetValues(IDictionary, AtomicReaderContext)</a></div>
</article>
          </div>
          
          <div class="hidden-sm col-md-2" role="complementary">
            <div class="sideaffix">
              <div class="contribution">
                <ul class="nav">
                  <li>
                    <a href="https://github.com/apache/lucenenet/new/docs/4.8.0-beta00008/websites/apidocs/apiSpec/new?filename=Lucene_Net_Queries_Function_ValueSources_ReverseOrdFieldSource.md&amp;value=---%0Auid%3A%20Lucene.Net.Queries.Function.ValueSources.ReverseOrdFieldSource%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A" class="contribution-link">Improve this Doc</a>
                  </li>
                  <li>
                    <a href="https://github.com/Shazwazza/lucenenet/blob/docs-may/src/Lucene.Net.Queries/Function/ValueSources/ReverseOrdFieldSource.cs/#L46" class="contribution-link">View Source</a>
                  </li>
                </ul>
              </div>
              <nav class="bs-docs-sidebar hidden-print hidden-xs hidden-sm affix" id="affix">
              <!-- <p><a class="back-to-top" href="#top">Back to top</a><p> -->
              </nav>
            </div>
          </div>
        </div>
      </div>
      
      <footer>
        <div class="grad-bottom"></div>
        <div class="footer">
          <div class="container">
            <span class="pull-right">
              <a href="#top">Back to top</a>
            </span>
            Copyright © 2020 Licensed to the Apache Software Foundation (ASF)
            
          </div>
        </div>
      </footer>
    </div>
    
    <script type="text/javascript" src="../../styles/docfx.vendor.js"></script>
    <script type="text/javascript" src="../../styles/docfx.js"></script>
    <script type="text/javascript" src="../../styles/main.js"></script>
  </body>
</html>
