Continued
This commit is contained in:
parent
78f9d4835e
commit
cae06c5c61
7 changed files with 78 additions and 15 deletions
10
util/peek.go
10
util/peek.go
|
@ -38,6 +38,16 @@ func Peek(underlying io.ReadCloser, limit int) (*PeekedReadCloser, error) {
|
|||
}, nil
|
||||
}
|
||||
|
||||
func PeekLimit(underlying io.ReadCloser, limit int) (*PeekedReadCloser, error) {
|
||||
rc, err := Peek(underlying, limit)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
} else if rc.LimitReached {
|
||||
return nil, ErrLimitReached
|
||||
}
|
||||
return rc, nil
|
||||
}
|
||||
|
||||
// Read reads from the peeked bytes and then from the underlying stream
|
||||
func (r *PeekedReadCloser) Read(p []byte) (n int, err error) {
|
||||
if r.closed {
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue