Class MergedIterator<T>
Provides a merged sorted view from several sorted iterators.
If built with Lucene.Net.Util.MergedIterator`1.removeDuplicates set to true and an element
appears in multiple iterators then it is deduplicated, that is this iterator
returns the sorted union of elements.
If built with Lucene.Net.Util.MergedIterator`1.removeDuplicates set to false then all elements
in all iterators are returned.
Caveats:
- The behavior is undefined if the iterators are not actually sorted.
 - Null elements are unsupported.
 - If Lucene.Net.Util.MergedIterator`1.removeDuplicates is set to 
trueand if a single iterator contains duplicates then they will not be deduplicated. - When elements are deduplicated it is not defined which one is returned.
 - If Lucene.Net.Util.MergedIterator`1.removeDuplicates is set to 
falsethen the order in which duplicates are returned isn't defined. 
The caller is responsible for disposing the System.Collections.Generic.IEnumerator<T> instances that are passed into the constructor, MergedIterator<T> doesn't do it automatically.
This is a Lucene.NET INTERNAL API, use at your own risk
Inheritance
System.Object
    MergedIterator<T>
  Implements
System.Collections.Generic.IEnumerator<T>
    System.Collections.IEnumerator
    System.IDisposable
  Inherited Members
      System.Object.Equals(System.Object)
    
    
      System.Object.Equals(System.Object, System.Object)
    
    
      System.Object.GetHashCode()
    
    
      System.Object.GetType()
    
    
      System.Object.MemberwiseClone()
    
    
      System.Object.ReferenceEquals(System.Object, System.Object)
    
    
      System.Object.ToString()
    
  Namespace: Lucene.Net.Util
Assembly: Lucene.Net.dll
Syntax
public sealed class MergedIterator<T> : IEnumerator<T>, IEnumerator, IDisposable where T : IComparable<T>
  Type Parameters
| Name | Description | 
|---|---|
| T | 
Constructors
| Improve this Doc View SourceMergedIterator(Boolean, IEnumerator<T>[])
Declaration
public MergedIterator(bool removeDuplicates, params IEnumerator<T>[] iterators)
  Parameters
| Type | Name | Description | 
|---|---|---|
| System.Boolean | removeDuplicates | |
| System.Collections.Generic.IEnumerator<T>[] | iterators | 
MergedIterator(IEnumerator<T>[])
Declaration
public MergedIterator(params IEnumerator<T>[] iterators)
  Parameters
| Type | Name | Description | 
|---|---|---|
| System.Collections.Generic.IEnumerator<T>[] | iterators | 
Properties
| Improve this Doc View SourceCurrent
Declaration
public T Current { get; }
  Property Value
| Type | Description | 
|---|---|
| T | 
Methods
| Improve this Doc View SourceDispose()
Declaration
public void Dispose()
  MoveNext()
Declaration
public bool MoveNext()
  Returns
| Type | Description | 
|---|---|
| System.Boolean | 
Reset()
Declaration
public void Reset()
  Explicit Interface Implementations
| Improve this Doc View SourceIEnumerator.Current
Declaration
object IEnumerator.Current { get; }
  Returns
| Type | Description | 
|---|---|
| System.Object | 
Implements
      System.Collections.Generic.IEnumerator<T>
  
  
      System.Collections.IEnumerator
  
  
      System.IDisposable