Class ListOfOutputs<T>
  
  Wraps another Outputs implementation and encodes one or
more of its output values.  You can use this when a single
input may need to map to more than one output,
maintaining order: pass the same input with a different
output by calling Add(Int32sRef, T) multiple
times.  The builder will then combine the outputs using
the Lucene.Net.Util.Fst.Outputs<T>.Merge(T, T) method.
The resulting FST may not be minimal when an input has
more than one output, as this requires pushing all
multi-output values to a final state.
NOTE: the only way to create multiple outputs is to
add the same input to the FST multiple times in a row.  This is
how the FST maps a single input to multiple outputs (e.g. you
cannot pass a List<Object> to Add(Int32sRef, T)).  If
your outputs are longs, and you need at most 2, then use
UpToTwoPositiveInt64Outputs instead since it stores
the outputs more compactly (by stealing a bit from each
long value).
NOTE: this cannot wrap itself (ie you cannot make an
FST with List<List<Object>> outputs using this).
@lucene.experimental
 
  
  
    Inheritance
    System.Object
    Lucene.Net.Util.Fst.Outputs<System.Object>
    ListOfOutputs<T>
   
  
    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)
    
   
  
  Assembly: Lucene.Net.Misc.dll
  Syntax
  
    public sealed class ListOfOutputs<T> : Outputs<object>
   
  Type Parameters
  
  Constructors
  
  
    |
    Improve this Doc
  
  
    View Source
  
  
  ListOfOutputs(Outputs<T>)
  
  
  Declaration
  
    public ListOfOutputs(Outputs<T> outputs)
   
  Parameters
  
    
      
        | Type | 
        Name | 
        Description | 
      
    
    
      
        | Lucene.Net.Util.Fst.Outputs<T> | 
        outputs | 
         | 
      
    
  
  Properties
  
  
    |
    Improve this Doc
  
  
    View Source
  
  
  NoOutput
  
  
  Declaration
  
    public override object NoOutput { get; }
   
  Property Value
  
    
      
        | Type | 
        Description | 
      
    
    
      
        | System.Object | 
         | 
      
    
  
  Overrides
  Lucene.Net.Util.Fst.Outputs<System.Object>.NoOutput
  Methods
  
  
    |
    Improve this Doc
  
  
    View Source
  
  
  Add(Object, Object)
  
  
  Declaration
  
    public override object Add(object prefix, object output)
   
  Parameters
  
    
      
        | Type | 
        Name | 
        Description | 
      
    
    
      
        | System.Object | 
        prefix | 
         | 
      
      
        | System.Object | 
        output | 
         | 
      
    
  
  Returns
  
    
      
        | Type | 
        Description | 
      
    
    
      
        | System.Object | 
         | 
      
    
  
  Overrides
  Lucene.Net.Util.Fst.Outputs<System.Object>.Add(System.Object, System.Object)
  
    |
    Improve this Doc
  
  
    View Source
  
  
  AsList(Object)
  
  
  Declaration
  
    public IList<T> AsList(object output)
   
  Parameters
  
    
      
        | Type | 
        Name | 
        Description | 
      
    
    
      
        | System.Object | 
        output | 
         | 
      
    
  
  Returns
  
    
      
        | Type | 
        Description | 
      
    
    
      
        | System.Collections.Generic.IList<T> | 
         | 
      
    
  
  
    |
    Improve this Doc
  
  
    View Source
  
  
  Common(Object, Object)
  
  
  Declaration
  
    public override object Common(object output1, object output2)
   
  Parameters
  
    
      
        | Type | 
        Name | 
        Description | 
      
    
    
      
        | System.Object | 
        output1 | 
         | 
      
      
        | System.Object | 
        output2 | 
         | 
      
    
  
  Returns
  
    
      
        | Type | 
        Description | 
      
    
    
      
        | System.Object | 
         | 
      
    
  
  Overrides
  Lucene.Net.Util.Fst.Outputs<System.Object>.Common(System.Object, System.Object)
  
    |
    Improve this Doc
  
  
    View Source
  
  
  Merge(Object, Object)
  
  
  Declaration
  
    public override object Merge(object first, object second)
   
  Parameters
  
    
      
        | Type | 
        Name | 
        Description | 
      
    
    
      
        | System.Object | 
        first | 
         | 
      
      
        | System.Object | 
        second | 
         | 
      
    
  
  Returns
  
    
      
        | Type | 
        Description | 
      
    
    
      
        | System.Object | 
         | 
      
    
  
  Overrides
  Lucene.Net.Util.Fst.Outputs<System.Object>.Merge(System.Object, System.Object)
  
    |
    Improve this Doc
  
  
    View Source
  
  
  OutputToString(Object)
  
  
  Declaration
  
    public override string OutputToString(object output)
   
  Parameters
  
    
      
        | Type | 
        Name | 
        Description | 
      
    
    
      
        | System.Object | 
        output | 
         | 
      
    
  
  Returns
  
    
      
        | Type | 
        Description | 
      
    
    
      
        | System.String | 
         | 
      
    
  
  Overrides
  Lucene.Net.Util.Fst.Outputs<System.Object>.OutputToString(System.Object)
  
    |
    Improve this Doc
  
  
    View Source
  
  
  
  
  
  Declaration
  
    public override object Read(DataInput in)
   
  Parameters
  
    
      
        | Type | 
        Name | 
        Description | 
      
    
    
      
        | Lucene.Net.Store.DataInput | 
        in | 
         | 
      
    
  
  Returns
  
    
      
        | Type | 
        Description | 
      
    
    
      
        | System.Object | 
         | 
      
    
  
  Overrides
  Lucene.Net.Util.Fst.Outputs<System.Object>.Read(Lucene.Net.Store.DataInput)
  
    |
    Improve this Doc
  
  
    View Source
  
  
  
  
  
  Declaration
  
    public override object ReadFinalOutput(DataInput in)
   
  Parameters
  
    
      
        | Type | 
        Name | 
        Description | 
      
    
    
      
        | Lucene.Net.Store.DataInput | 
        in | 
         | 
      
    
  
  Returns
  
    
      
        | Type | 
        Description | 
      
    
    
      
        | System.Object | 
         | 
      
    
  
  Overrides
  Lucene.Net.Util.Fst.Outputs<System.Object>.ReadFinalOutput(Lucene.Net.Store.DataInput)
  
    |
    Improve this Doc
  
  
    View Source
  
  
  Subtract(Object, Object)
  
  
  Declaration
  
    public override object Subtract(object object, object inc)
   
  Parameters
  
    
      
        | Type | 
        Name | 
        Description | 
      
    
    
      
        | System.Object | 
        object | 
         | 
      
      
        | System.Object | 
        inc | 
         | 
      
    
  
  Returns
  
    
      
        | Type | 
        Description | 
      
    
    
      
        | System.Object | 
         | 
      
    
  
  Overrides
  Lucene.Net.Util.Fst.Outputs<System.Object>.Subtract(System.Object, System.Object)
  
    |
    Improve this Doc
  
  
    View Source
  
  
  ToString()
  
  
  Declaration
  
    public override string ToString()
   
  Returns
  
    
      
        | Type | 
        Description | 
      
    
    
      
        | System.String | 
         | 
      
    
  
  Overrides
  System.Object.ToString()
  
    |
    Improve this Doc
  
  
    View Source
  
  
  Write(Object, DataOutput)
  
  
  Declaration
  
    public override void Write(object output, DataOutput out)
   
  Parameters
  
    
      
        | Type | 
        Name | 
        Description | 
      
    
    
      
        | System.Object | 
        output | 
         | 
      
      
        | Lucene.Net.Store.DataOutput | 
        out | 
         | 
      
    
  
  Overrides
  Lucene.Net.Util.Fst.Outputs<System.Object>.Write(System.Object, Lucene.Net.Store.DataOutput)
  
    |
    Improve this Doc
  
  
    View Source
  
  
  WriteFinalOutput(Object, DataOutput)
  
  
  Declaration
  
    public override void WriteFinalOutput(object output, DataOutput out)
   
  Parameters
  
    
      
        | Type | 
        Name | 
        Description | 
      
    
    
      
        | System.Object | 
        output | 
         | 
      
      
        | Lucene.Net.Store.DataOutput | 
        out | 
         | 
      
    
  
  Overrides
  Lucene.Net.Util.Fst.Outputs<System.Object>.WriteFinalOutput(System.Object, Lucene.Net.Store.DataOutput)