org.apache.lucene.util.fst
Class PairOutputs<A,B>

java.lang.Object
  extended by org.apache.lucene.util.fst.Outputs<PairOutputs.Pair<A,B>>
      extended by org.apache.lucene.util.fst.PairOutputs<A,B>

public class PairOutputs<A,B>
extends Outputs<PairOutputs.Pair<A,B>>

An FST Outputs implementation, holding two other outputs.

WARNING: This API is experimental and might change in incompatible ways in the next release.

Nested Class Summary
static class PairOutputs.Pair<A,B>
          Holds a single pair of two outputs.
 
Constructor Summary
PairOutputs(Outputs<A> outputs1, Outputs<B> outputs2)
           
 
Method Summary
 PairOutputs.Pair<A,B> add(PairOutputs.Pair<A,B> prefix, PairOutputs.Pair<A,B> output)
          Eg add("foo", "bar") -> "foobar"
 PairOutputs.Pair<A,B> common(PairOutputs.Pair<A,B> pair1, PairOutputs.Pair<A,B> pair2)
          Eg common("foo", "foobar") -> "foo"
 PairOutputs.Pair<A,B> getNoOutput()
          NOTE: this output is compared with == so you must ensure that all methods return the single object if it's really no output
 PairOutputs.Pair<A,B> newPair(A a, B b)
          Create a new Pair
 String outputToString(PairOutputs.Pair<A,B> output)
           
 PairOutputs.Pair<A,B> read(DataInput in)
           
 PairOutputs.Pair<A,B> subtract(PairOutputs.Pair<A,B> output, PairOutputs.Pair<A,B> inc)
          Eg subtract("foobar", "foo") -> "bar"
 String toString()
           
 void write(PairOutputs.Pair<A,B> output, DataOutput writer)
           
 
Methods inherited from class org.apache.lucene.util.fst.Outputs
merge
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

PairOutputs

public PairOutputs(Outputs<A> outputs1,
                   Outputs<B> outputs2)
Method Detail

newPair

public PairOutputs.Pair<A,B> newPair(A a,
                                     B b)
Create a new Pair


common

public PairOutputs.Pair<A,B> common(PairOutputs.Pair<A,B> pair1,
                                    PairOutputs.Pair<A,B> pair2)
Description copied from class: Outputs
Eg common("foo", "foobar") -> "foo"

Specified by:
common in class Outputs<PairOutputs.Pair<A,B>>

subtract

public PairOutputs.Pair<A,B> subtract(PairOutputs.Pair<A,B> output,
                                      PairOutputs.Pair<A,B> inc)
Description copied from class: Outputs
Eg subtract("foobar", "foo") -> "bar"

Specified by:
subtract in class Outputs<PairOutputs.Pair<A,B>>

add

public PairOutputs.Pair<A,B> add(PairOutputs.Pair<A,B> prefix,
                                 PairOutputs.Pair<A,B> output)
Description copied from class: Outputs
Eg add("foo", "bar") -> "foobar"

Specified by:
add in class Outputs<PairOutputs.Pair<A,B>>

write

public void write(PairOutputs.Pair<A,B> output,
                  DataOutput writer)
           throws IOException
Specified by:
write in class Outputs<PairOutputs.Pair<A,B>>
Throws:
IOException

read

public PairOutputs.Pair<A,B> read(DataInput in)
                           throws IOException
Specified by:
read in class Outputs<PairOutputs.Pair<A,B>>
Throws:
IOException

getNoOutput

public PairOutputs.Pair<A,B> getNoOutput()
Description copied from class: Outputs
NOTE: this output is compared with == so you must ensure that all methods return the single object if it's really no output

Specified by:
getNoOutput in class Outputs<PairOutputs.Pair<A,B>>

outputToString

public String outputToString(PairOutputs.Pair<A,B> output)
Specified by:
outputToString in class Outputs<PairOutputs.Pair<A,B>>

toString

public String toString()
Overrides:
toString in class Object