middleware/compress.go
func SetEncoder(encoding string, fn EncoderFunc) {
	if defaultCompressor == nil {
		panic("no compressor to set encoders on. Call Compress() first")
	}
	defaultCompressor.SetEncoder(encoding, fn)
}
func SetEncoder(encoding string, fn EncoderFunc) {
	if defaultCompressor == nil {
		panic("no compressor to set encoders on. Call Compress() first")
	}
	defaultCompressor.SetEncoder(encoding, fn)
}
// SetEncoder can be used to set the implementation of a compression algorithm.
//
// The encoding should be a standardised identifier. See:
// https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Accept-Encoding
//
// For example, add the Brotli algortithm:
//
//  import brotli_enc "gopkg.in/kothar/brotli-go.v0/enc"
//
//  middleware.SetEncoder("br", func(w http.ResponseWriter, level int) io.Writer {
//    params := brotli_enc.NewBrotliParams()
//    params.SetQuality(level)
//    return brotli_enc.NewBrotliWriter(params, w)
//  })
//
//  DEPRECATED