• Brad Fitzpatrick's avatar
    io: add ReadAtSizer interface · 7f39f21c
    Brad Fitzpatrick authored
    ReadAtSizer is a common abstraction for a stateless,
    concurrently-readable fixed number of bytes.
    
    This interface has existed in various codebases for over 3 years (previously
    usually named SizeReaderAt). It is used inside Google in dl.google.com
    (mentioned in https://talks.golang.org/2013/oscon-dl.slide) and other
    packages. It is used in Camlistore, in Juju, in the Google API Go client, in
    github.com/nightlyone/views, and 33 other pages of Github search results.
    
    It is implemented by io.SectionReader, bytes.Reader, strings.Reader, etc.
    
    Time to finally promote this interface to the standard library and give it a
    standard name, blessing it as best practice.
    
    Updates #7263
    Updates #14889
    
    Change-Id: Id28c0cafa7d2d37e8887c54708b5daf1b11c83ea
    Reviewed-on: https://go-review.googlesource.com/21492Reviewed-by: 's avatarRob Pike <r@golang.org>
    7f39f21c
Name
Last commit
Last update
..
archive Loading commit data...
bufio Loading commit data...
builtin Loading commit data...
bytes Loading commit data...
cmd Loading commit data...
compress Loading commit data...
container Loading commit data...
context Loading commit data...
crypto Loading commit data...
database/sql Loading commit data...
debug Loading commit data...
encoding Loading commit data...
errors Loading commit data...
expvar Loading commit data...
flag Loading commit data...
fmt Loading commit data...
go Loading commit data...
hash Loading commit data...
html Loading commit data...
image Loading commit data...
index/suffixarray Loading commit data...
internal Loading commit data...
io Loading commit data...
log Loading commit data...
math Loading commit data...
mime Loading commit data...
net Loading commit data...
os Loading commit data...
path Loading commit data...
reflect Loading commit data...
regexp Loading commit data...
runtime Loading commit data...
sort Loading commit data...
strconv Loading commit data...
strings Loading commit data...
sync Loading commit data...
syscall Loading commit data...
testing Loading commit data...
text Loading commit data...
time Loading commit data...
unicode Loading commit data...
unsafe Loading commit data...
vendor/golang.org/x/net/http2/hpack Loading commit data...
Make.dist Loading commit data...
all.bash Loading commit data...
all.bat Loading commit data...
all.rc Loading commit data...
androidtest.bash Loading commit data...
bootstrap.bash Loading commit data...
buildall.bash Loading commit data...
clean.bash Loading commit data...
clean.bat Loading commit data...
clean.rc Loading commit data...
iostest.bash Loading commit data...
make.bash Loading commit data...
make.bat Loading commit data...
make.rc Loading commit data...
nacltest.bash Loading commit data...
race.bash Loading commit data...
race.bat Loading commit data...
run.bash Loading commit data...
run.bat Loading commit data...
run.rc Loading commit data...