func (out *abstractOutputs) ReadFinalOutput(in util.DataInput) (e interface{}, err error) {
	return out.spi.Read(in)
}
/* Decode an output value previously written with writeFinalOutput(). By default this just calls read().
package fst
import (
	"fmt"
	"github.com/balzaczyy/golucene/core/util"
)
type Outputs interface {
	Common(output1, output2 interface{}) interface{}
	Subtract(output1, output2 interface{}) interface{}
	Add(prefix interface{}, output interface{}) interface{}
	Write(interface{}, util.DataOutput) error
	writeFinalOutput(interface{}, util.DataOutput) error
	Read(in util.DataInput) (e interface{}, err error)
	SkipOutput(util.DataInput) error
	ReadFinalOutput(in util.DataInput) (e interface{}, err error)
	SkipFinalOutput(util.DataInput) error
	NoOutput() interface{}
	outputToString(interface{}) string
	merge(first, second interface{}) interface{}
	ramBytesUsed(interface{}) int64
}
type iOutputsReader interface {
	Read(in util.DataInput) (e interface{}, err error)
	Write(interface{}, util.DataOutput) error
}
type abstractOutputs struct {
	spi iOutputsReader
}
func (out *abstractOutputs) writeFinalOutput(output interface{}, o util.DataOutput) error {
	return out.spi.Write(output, o)
}
func (out *abstractOutputs) SkipOutput(in util.DataInput) error {
	_, err := out.spi.Read(in)
	return err
}