MCPcopy
hub / github.com/segmentio/kafka-go / NewWriter

Method NewWriter

compress/zstd/zstd.go:98–117  ·  view source on GitHub ↗

NewWriter implements the compress.Codec interface.

(w io.Writer)

Source from the content-addressed store, hash-verified

96
97// NewWriter implements the compress.Codec interface.
98func (c *Codec) NewWriter(w io.Writer) io.WriteCloser {
99 p := new(writer)
100 if enc, _ := c.encoderPool.Get().(*zstd.Encoder); enc == nil {
101 z, err := zstd.NewWriter(w,
102 zstd.WithEncoderLevel(c.zstdLevel()),
103 zstd.WithEncoderConcurrency(1),
104 zstd.WithZeroFrames(true),
105 )
106 if err != nil {
107 p.err = err
108 } else {
109 p.enc = z
110 }
111 } else {
112 p.enc = enc
113 p.enc.Reset(w)
114 }
115 p.c = c
116 return p
117}
118
119type writer struct {
120 c *Codec

Callers

nothing calls this directly

Implementers 5

noopCodeccompress/compress_test.go
Codeccompress/zstd/zstd.go
Codeccompress/lz4/lz4.go
Codeccompress/snappy/snappy.go
Codeccompress/gzip/gzip.go

Calls 4

zstdLevelMethod · 0.95
GetMethod · 0.80
NewWriterMethod · 0.65
ResetMethod · 0.45

Tested by

no test coverage detected