tvl-depot/tvix/nar-bridge/pkg/importer/counting_writer.go
Florian Klink 49b427d773 refactor(tvix/nar-bridge): combine writers/readers
We can drop most of Hasher if we use a MultiWriter writing to the hash
function and a minimal CountingWriter.

This should make things a bit more understandable.

Change-Id: I37ee72d9a5c73f253aecc1ad761cb723389b89fc
Reviewed-on: https://cl.tvl.fyi/c/depot/+/9529
Autosubmit: flokli <flokli@flokli.de>
Reviewed-by: Connor Brewster <cbrewster@hey.com>
Tested-by: BuildkiteCI
2023-10-05 06:17:10 +00:00

21 lines
363 B
Go

package importer
import (
"io"
)
// CountingWriter implements io.Writer.
var _ io.Writer = &CountingWriter{}
type CountingWriter struct {
bytesWritten uint64
}
func (cw *CountingWriter) Write(p []byte) (n int, err error) {
cw.bytesWritten += uint64(len(p))
return len(p), nil
}
func (cw *CountingWriter) BytesWritten() uint64 {
return cw.bytesWritten
}