diff options
Diffstat (limited to 'vendor/codeberg.org/gruf/go-iotools')
-rw-r--r-- | vendor/codeberg.org/gruf/go-iotools/LICENSE | 9 | ||||
-rw-r--r-- | vendor/codeberg.org/gruf/go-iotools/close.go | 52 | ||||
-rw-r--r-- | vendor/codeberg.org/gruf/go-iotools/helpers.go | 85 | ||||
-rw-r--r-- | vendor/codeberg.org/gruf/go-iotools/read.go | 41 | ||||
-rw-r--r-- | vendor/codeberg.org/gruf/go-iotools/size.go | 25 | ||||
-rw-r--r-- | vendor/codeberg.org/gruf/go-iotools/write.go | 37 |
6 files changed, 0 insertions, 249 deletions
diff --git a/vendor/codeberg.org/gruf/go-iotools/LICENSE b/vendor/codeberg.org/gruf/go-iotools/LICENSE deleted file mode 100644 index e4163ae35..000000000 --- a/vendor/codeberg.org/gruf/go-iotools/LICENSE +++ /dev/null @@ -1,9 +0,0 @@ -MIT License - -Copyright (c) 2022 gruf - -Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. diff --git a/vendor/codeberg.org/gruf/go-iotools/close.go b/vendor/codeberg.org/gruf/go-iotools/close.go deleted file mode 100644 index f3d4814ba..000000000 --- a/vendor/codeberg.org/gruf/go-iotools/close.go +++ /dev/null @@ -1,52 +0,0 @@ -package iotools - -import "io" - -// NopCloser is an empty -// implementation of io.Closer, -// that simply does nothing! -type NopCloser struct{} - -func (NopCloser) Close() error { return nil } - -// CloserFunc is a function signature which allows -// a function to implement the io.Closer type. -type CloserFunc func() error - -func (c CloserFunc) Close() error { - return c() -} - -// CloserCallback wraps io.Closer to add a callback deferred to call just after Close(). -func CloserCallback(c io.Closer, cb func()) io.Closer { - return CloserFunc(func() error { - defer cb() - return c.Close() - }) -} - -// CloserAfterCallback wraps io.Closer to add a callback called just before Close(). -func CloserAfterCallback(c io.Closer, cb func()) io.Closer { - return CloserFunc(func() (err error) { - defer func() { err = c.Close() }() - cb() - return - }) -} - -// CloseOnce wraps an io.Closer to ensure it only performs the close logic once. -func CloseOnce(c io.Closer) io.Closer { - return CloserFunc(func() error { - if c == nil { - // already run. - return nil - } - - // Acquire. - cptr := c - c = nil - - // Call the closer. - return cptr.Close() - }) -} diff --git a/vendor/codeberg.org/gruf/go-iotools/helpers.go b/vendor/codeberg.org/gruf/go-iotools/helpers.go deleted file mode 100644 index 0e50e05e0..000000000 --- a/vendor/codeberg.org/gruf/go-iotools/helpers.go +++ /dev/null @@ -1,85 +0,0 @@ -package iotools - -import "io" - -// AtEOF returns true when reader at EOF, -// this is checked with a 0 length read. -func AtEOF(r io.Reader) bool { - _, err := r.Read(nil) - return (err == io.EOF) -} - -// GetReadCloserLimit attempts to cast io.Reader to access its io.LimitedReader with limit. -func GetReaderLimit(r io.Reader) (*io.LimitedReader, int64) { - lr, ok := r.(*io.LimitedReader) - if !ok { - return nil, -1 - } - return lr, lr.N -} - -// UpdateReaderLimit attempts to update the limit of a reader for existing, newly wrapping if necessary. -func UpdateReaderLimit(r io.Reader, limit int64) (*io.LimitedReader, int64) { - lr, ok := r.(*io.LimitedReader) - if !ok { - lr = &io.LimitedReader{r, limit} - return lr, limit - } - - if limit < lr.N { - // Update existing. - lr.N = limit - } - - return lr, lr.N -} - -// GetReadCloserLimit attempts to unwrap io.ReadCloser to access its io.LimitedReader with limit. -func GetReadCloserLimit(rc io.ReadCloser) (*io.LimitedReader, int64) { - rct, ok := rc.(*ReadCloserType) - if !ok { - return nil, -1 - } - lr, ok := rct.Reader.(*io.LimitedReader) - if !ok { - return nil, -1 - } - return lr, lr.N -} - -// UpdateReadCloserLimit attempts to update the limit of a readcloser for existing, newly wrapping if necessary. -func UpdateReadCloserLimit(rc io.ReadCloser, limit int64) (io.ReadCloser, *io.LimitedReader, int64) { - - // Check for our wrapped ReadCloserType. - if rct, ok := rc.(*ReadCloserType); ok { - - // Attempt to update existing wrapped limit reader. - if lr, ok := rct.Reader.(*io.LimitedReader); ok { - - if limit < lr.N { - // Update existing. - lr.N = limit - } - - return rct, lr, lr.N - } - - // Wrap the reader type with new limit. - lr := &io.LimitedReader{rct.Reader, limit} - rct.Reader = lr - - return rct, lr, lr.N - } - - // Wrap separated types. - rct := &ReadCloserType{ - Reader: rc, - Closer: rc, - } - - // Wrap separated reader part with limit. - lr := &io.LimitedReader{rct.Reader, limit} - rct.Reader = lr - - return rct, lr, lr.N -} diff --git a/vendor/codeberg.org/gruf/go-iotools/read.go b/vendor/codeberg.org/gruf/go-iotools/read.go deleted file mode 100644 index 13c5e21ac..000000000 --- a/vendor/codeberg.org/gruf/go-iotools/read.go +++ /dev/null @@ -1,41 +0,0 @@ -package iotools - -import ( - "io" -) - -// ReadCloserType implements io.ReadCloser -// by combining the two underlying interfaces, -// while providing an exported type to still -// access the underlying original io.Reader or -// io.Closer separately (e.g. without wrapping). -type ReadCloserType struct { - io.Reader - io.Closer -} - -// ReaderFunc is a function signature which allows -// a function to implement the io.Reader type. -type ReaderFunc func([]byte) (int, error) - -func (r ReaderFunc) Read(b []byte) (int, error) { - return r(b) -} - -// ReaderFromFunc is a function signature which allows -// a function to implement the io.ReaderFrom type. -type ReaderFromFunc func(io.Reader) (int64, error) - -func (rf ReaderFromFunc) ReadFrom(r io.Reader) (int64, error) { - return rf(r) -} - -// ReadCloser wraps an io.Reader and io.Closer in order to implement io.ReadCloser. -func ReadCloser(r io.Reader, c io.Closer) io.ReadCloser { - return &ReadCloserType{r, c} -} - -// NopReadCloser wraps io.Reader with NopCloser{} in ReadCloserType. -func NopReadCloser(r io.Reader) io.ReadCloser { - return &ReadCloserType{r, NopCloser{}} -} diff --git a/vendor/codeberg.org/gruf/go-iotools/size.go b/vendor/codeberg.org/gruf/go-iotools/size.go deleted file mode 100644 index f3841facf..000000000 --- a/vendor/codeberg.org/gruf/go-iotools/size.go +++ /dev/null @@ -1,25 +0,0 @@ -package iotools - -type Sizer interface { - Size() int64 -} - -// SizerFunc is a function signature which allows -// a function to implement the Sizer type. -type SizerFunc func() int64 - -func (s SizerFunc) Size() int64 { - return s() -} - -type Lengther interface { - Len() int -} - -// LengthFunc is a function signature which allows -// a function to implement the Lengther type. -type LengthFunc func() int - -func (l LengthFunc) Len() int { - return l() -} diff --git a/vendor/codeberg.org/gruf/go-iotools/write.go b/vendor/codeberg.org/gruf/go-iotools/write.go deleted file mode 100644 index 2037c42af..000000000 --- a/vendor/codeberg.org/gruf/go-iotools/write.go +++ /dev/null @@ -1,37 +0,0 @@ -package iotools - -import "io" - -// WriterFunc is a function signature which allows -// a function to implement the io.Writer type. -type WriterFunc func([]byte) (int, error) - -func (w WriterFunc) Write(b []byte) (int, error) { - return w(b) -} - -// WriterToFunc is a function signature which allows -// a function to implement the io.WriterTo type. -type WriterToFunc func(io.Writer) (int64, error) - -func (wt WriterToFunc) WriteTo(r io.Writer) (int64, error) { - return wt(r) -} - -// WriteCloser wraps an io.Writer and io.Closer in order to implement io.WriteCloser. -func WriteCloser(w io.Writer, c io.Closer) io.WriteCloser { - return &struct { - io.Writer - io.Closer - }{w, c} -} - -// NopWriteCloser wraps an io.Writer to implement io.WriteCloser with empty io.Closer implementation. -func NopWriteCloser(w io.Writer) io.WriteCloser { - return &nopWriteCloser{w} -} - -// nopWriteCloser implements io.WriteCloser with a no-op Close(). -type nopWriteCloser struct{ io.Writer } - -func (wc *nopWriteCloser) Close() error { return nil } |