Versions in this module Expand all Collapse all v0 v0.0.1 Jul 17, 2020 Changes in this version + var ErrSeekBeyondBound = errors.New("seek beyond boundary") + func CalculateSeek(currentOffset int64, delta int64, whence int, fileSize int64) (finalOffset int64, err error) + func CopyBytesBetweenPositions(rws io.ReadWriteSeeker, fromPosition, toPosition int64, count int) (n int, err error) + func DoesExist(filepath string) bool + func GetOffset(s io.Seeker) int64 + func GracefulCopy(w io.Writer, r io.Reader, buffer []byte) (copyCount int, err error) + func ListFiles(rootPath string, cb FileListFilterPredicate) (filesC chan VisitedFile, count int, errC chan error) + func NewReadProgressWrapper(r io.Reader, progressCb ProgressFunc) io.Reader + func NewWriteProgressWrapper(w io.Writer, progressCb ProgressFunc) io.Writer + type BouncebackReader struct + func NewBouncebackReader(rs io.ReadSeeker) (br *BouncebackReader, err error) + func (br *BouncebackReader) Position() int64 + func (br *BouncebackReader) Read(p []byte) (n int, err error) + func (br *BouncebackReader) Seek(offset int64, whence int) (newPosition int64, err error) + func (br *BouncebackReader) StatsReads() int + func (br *BouncebackReader) StatsSeeks() int + type BouncebackWriter struct + func NewBouncebackWriter(ws io.WriteSeeker) (bw *BouncebackWriter, err error) + func (bw *BouncebackWriter) Position() int64 + func (bw *BouncebackWriter) Seek(offset int64, whence int) (newPosition int64, err error) + func (bw *BouncebackWriter) StatsSeeks() int + func (bw *BouncebackWriter) StatsWrites() int + func (bw *BouncebackWriter) Write(p []byte) (n int, err error) + type BoundedReadWriteSeekCloser struct + func NewBoundedReadWriteSeekCloser(rwsc ReadWriteSeekCloser, minimumOffset int64, staticFileSize int64) (brwsc *BoundedReadWriteSeekCloser, err error) + func (rwsc *BoundedReadWriteSeekCloser) Close() (err error) + func (rwsc *BoundedReadWriteSeekCloser) Read(buffer []byte) (readCount int, err error) + func (rwsc *BoundedReadWriteSeekCloser) Seek(offset int64, whence int) (newOffset int64, err error) + func (rwsc *BoundedReadWriteSeekCloser) Write(buffer []byte) (writtenCount int, err error) + type BoundedReadWriteSeeker struct + func NewBoundedReadWriteSeeker(rws io.ReadWriteSeeker, minimumOffset int64, staticFileSize int64) (brws *BoundedReadWriteSeeker, err error) + func (brws *BoundedReadWriteSeeker) MinimumOffset() int64 + func (brws *BoundedReadWriteSeeker) Read(buffer []byte) (readCount int, err error) + func (brws *BoundedReadWriteSeeker) Seek(offset int64, whence int) (updatedOffset int64, err error) + func (brws *BoundedReadWriteSeeker) Write(buffer []byte) (writtenCount int, err error) + type FileListFilterPredicate func(parent string, child os.FileInfo) (hit bool, err error) + type ProgressFunc func(n int, duration time.Duration, isEof bool) error + type ReadCounter struct + func NewReadCounter(r io.Reader) *ReadCounter + func (rc *ReadCounter) Count() int + func (rc *ReadCounter) Read(b []byte) (n int, err error) + func (rc *ReadCounter) Reset() + type ReadProgressWrapper struct + func (rpw *ReadProgressWrapper) Read(buffer []byte) (n int, err error) + type ReadSeekerToReaderAt struct + func NewReadSeekerToReaderAt(rs io.ReadSeeker) *ReadSeekerToReaderAt + func (rstra *ReadSeekerToReaderAt) ReadAt(p []byte, offset int64) (n int, err error) + type ReadWriteSeekCloser interface + func ReadWriteSeekNoopCloser(rws io.ReadWriteSeeker) ReadWriteSeekCloser + type SeekableBuffer struct + func NewSeekableBuffer() *SeekableBuffer + func NewSeekableBufferWithBytes(originalData []byte) *SeekableBuffer + func (sb *SeekableBuffer) Bytes() []byte + func (sb *SeekableBuffer) Len() int + func (sb *SeekableBuffer) Read(p []byte) (n int, err error) + func (sb *SeekableBuffer) Seek(offset int64, whence int) (n int64, err error) + func (sb *SeekableBuffer) Truncate(size int64) (err error) + func (sb *SeekableBuffer) Write(p []byte) (n int, err error) + type SimpleFileInfo struct + func NewSimpleFileInfoWithDirectory(filename string, modTime time.Time) *SimpleFileInfo + func NewSimpleFileInfoWithFile(filename string, size int64, mode os.FileMode, modTime time.Time) *SimpleFileInfo + func (sfi *SimpleFileInfo) IsDir() bool + func (sfi *SimpleFileInfo) ModTime() time.Time + func (sfi *SimpleFileInfo) Mode() os.FileMode + func (sfi *SimpleFileInfo) Name() string + func (sfi *SimpleFileInfo) Size() int64 + func (sfi *SimpleFileInfo) Sys() interface{} + type VisitedFile struct + Filepath string + Index int + Info os.FileInfo + type WriteCounter struct + func NewWriteCounter(w io.Writer) *WriteCounter + func (wc *WriteCounter) Count() int + func (wc *WriteCounter) Reset() + func (wc *WriteCounter) Write(b []byte) (n int, err error) + type WriteProgressWrapper struct + func (wpw *WriteProgressWrapper) Write(buffer []byte) (n int, err error)