CompressStream compresses the dest with specified compression algorithm.
(dest io.Writer, compression Compression)
| 242 | |
| 243 | // CompressStream compresses the dest with specified compression algorithm. |
| 244 | func CompressStream(dest io.Writer, compression Compression) (io.WriteCloser, error) { |
| 245 | switch compression { |
| 246 | case Uncompressed: |
| 247 | return &writeCloserWrapper{dest, nil}, nil |
| 248 | case Gzip: |
| 249 | return gzip.NewWriter(dest), nil |
| 250 | case Zstd: |
| 251 | return zstd.NewWriter(dest) |
| 252 | default: |
| 253 | return nil, fmt.Errorf("unsupported compression format %s", (&compression).Extension()) |
| 254 | } |
| 255 | } |
| 256 | |
| 257 | // Extension returns the extension of a file that uses the specified compression algorithm. |
| 258 | func (compression *Compression) Extension() string { |
searching dependent graphs…