]> Cypherpunks repositories - gostls13.git/commitdiff
io/ioutil: add a comment on why devNull is a ReaderFrom
authorBrad Fitzpatrick <bradfitz@golang.org>
Thu, 29 Sep 2011 22:35:01 +0000 (15:35 -0700)
committerBrad Fitzpatrick <bradfitz@golang.org>
Thu, 29 Sep 2011 22:35:01 +0000 (15:35 -0700)
... protects this optimization from future well-meaning
Gophers looking to delete unused code. :)

R=gri
CC=golang-dev
https://golang.org/cl/5165041

src/pkg/io/ioutil/ioutil.go

index fffa1320f593bc005e252b94e3e5ac40623f151e..dd50d96869eb0a2da0661861ce01db96be6ecb00 100644 (file)
@@ -104,6 +104,10 @@ func NopCloser(r io.Reader) io.ReadCloser {
 
 type devNull int
 
+// devNull implements ReaderFrom as an optimization so io.Copy to
+// ioutil.Discard can avoid doing unnecessary work.
+var _ io.ReaderFrom = devNull(0)
+
 func (devNull) Write(p []byte) (int, os.Error) {
        return len(p), nil
 }