Documentation ¶
Index ¶
- Variables
- type FileBackedBuffer
- func (b *FileBackedBuffer) Close() error
- func (b *FileBackedBuffer) Read(p []byte) (int, error)
- func (b *FileBackedBuffer) ReadAt(p []byte, off int64) (int, error)
- func (b *FileBackedBuffer) Seek(offset int64, whence int) (int64, error)
- func (b *FileBackedBuffer) Size() int64
- func (b *FileBackedBuffer) Write(p []byte) (int, error)
Constants ¶
This section is empty.
Variables ¶
View Source
var ( // ErrInvalidMemorySize occurs if the memory size is not in a valid range ErrInvalidMemorySize = errors.New("Memory size must be greater 0 and lower math.MaxInt32") // ErrWriteAfterRead occurs if Write is called after a read operation ErrWriteAfterRead = errors.New("Write is unsupported after a read operation") )
Functions ¶
This section is empty.
Types ¶
type FileBackedBuffer ¶
type FileBackedBuffer struct {
// contains filtered or unexported fields
}
FileBackedBuffer uses a memory buffer with a fixed size. If more data is written a temporary file is used instead. It implements io.ReadWriteCloser, io.ReadSeekCloser and io.ReaderAt
func CreateFromReader ¶
func CreateFromReader(r io.Reader, maxMemorySize int) (*FileBackedBuffer, error)
CreateFromReader creates a file backed buffer and copies the provided reader data into it.
func New ¶
func New(maxMemorySize int) (*FileBackedBuffer, error)
New creates a file backed buffer with a specific maximum memory size
func (*FileBackedBuffer) Close ¶
func (b *FileBackedBuffer) Close() error
Close implements io.Closer
func (*FileBackedBuffer) Read ¶
func (b *FileBackedBuffer) Read(p []byte) (int, error)
Read implements io.Reader
func (*FileBackedBuffer) ReadAt ¶
func (b *FileBackedBuffer) ReadAt(p []byte, off int64) (int, error)
ReadAt implements io.ReaderAt
func (*FileBackedBuffer) Seek ¶
func (b *FileBackedBuffer) Seek(offset int64, whence int) (int64, error)
Seek implements io.Seeker
func (*FileBackedBuffer) Size ¶
func (b *FileBackedBuffer) Size() int64
Size returns the byte size of the buffered data
Click to show internal directories.
Click to hide internal directories.