Show / Hide Table of Contents

    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 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
    Outputs<System.Object>
    ListOfOutputs<T>
    Namespace: Lucene.Net.Util.Fst
    Assembly: Lucene.Net.Misc.dll
    Syntax
    public sealed class ListOfOutputs<T> : Outputs<object>
    Type Parameters
    Name Description
    T

    Constructors

    | Improve this Doc View Source

    ListOfOutputs(Outputs<T>)

    Declaration
    public ListOfOutputs(Outputs<T> outputs)
    Parameters
    Type Name Description
    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
    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

    Read(DataInput)

    Declaration
    public override object Read(DataInput in)
    Parameters
    Type Name Description
    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

    ReadFinalOutput(DataInput)

    Declaration
    public override object ReadFinalOutput(DataInput in)
    Parameters
    Type Name Description
    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
    | Improve this Doc View Source

    Write(Object, DataOutput)

    Declaration
    public override void Write(object output, DataOutput out)
    Parameters
    Type Name Description
    System.Object output
    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
    DataOutput out
    Overrides
    Lucene.Net.Util.Fst.Outputs<System.Object>.WriteFinalOutput(System.Object, Lucene.Net.Store.DataOutput)
    • Improve this Doc
    • View Source
    Back to top Copyright © 2020 Licensed to the Apache Software Foundation (ASF)