49b427d773
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
21 lines
363 B
Go
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
|
|
}
|