diff options
| author | 2025-03-09 17:47:56 +0100 | |
|---|---|---|
| committer | 2025-12-01 22:08:04 +0100 | |
| commit | b1af8fd87760b34e3ff2fd3bda38f211815a0473 (patch) | |
| tree | 9317fad1a7ec298d7a8d2678e4e422953bbc6f33 /vendor/github.com/ncruces/go-sqlite3/util/vfsutil/slice.go | |
| parent | [chore] update URLs to forked source (diff) | |
| download | gotosocial-b1af8fd87760b34e3ff2fd3bda38f211815a0473.tar.xz | |
[chore] remove vendor
Diffstat (limited to 'vendor/github.com/ncruces/go-sqlite3/util/vfsutil/slice.go')
| -rw-r--r-- | vendor/github.com/ncruces/go-sqlite3/util/vfsutil/slice.go | 102 |
1 files changed, 0 insertions, 102 deletions
diff --git a/vendor/github.com/ncruces/go-sqlite3/util/vfsutil/slice.go b/vendor/github.com/ncruces/go-sqlite3/util/vfsutil/slice.go deleted file mode 100644 index b0fbe993c..000000000 --- a/vendor/github.com/ncruces/go-sqlite3/util/vfsutil/slice.go +++ /dev/null @@ -1,102 +0,0 @@ -package vfsutil - -import ( - "io" - - "github.com/ncruces/go-sqlite3" - "github.com/ncruces/go-sqlite3/vfs" -) - -// SliceFile implements [vfs.File] with a byte slice. -// It is suitable for temporary files (such as [vfs.OPEN_TEMP_JOURNAL]), -// but not concurrency safe. -type SliceFile []byte - -var ( - // Ensure these interfaces are implemented: - _ vfs.FileSizeHint = &SliceFile{} -) - -// ReadAt implements [io.ReaderAt]. -func (f *SliceFile) ReadAt(b []byte, off int64) (n int, err error) { - if d := *f; off < int64(len(d)) { - n = copy(b, d[off:]) - } - if n < len(b) { - err = io.EOF - } - return -} - -// WriteAt implements [io.WriterAt]. -func (f *SliceFile) WriteAt(b []byte, off int64) (n int, err error) { - d := *f - if off > int64(len(d)) { - d = append(d, make([]byte, off-int64(len(d)))...) - } - d = append(d[:off], b...) - if len(d) > len(*f) { - *f = d - } - return len(b), nil -} - -// Size implements [vfs.File]. -func (f *SliceFile) Size() (int64, error) { - return int64(len(*f)), nil -} - -// Truncate implements [vfs.File]. -func (f *SliceFile) Truncate(size int64) error { - if d := *f; size < int64(len(d)) { - *f = d[:size] - } - return nil -} - -// SizeHint implements [vfs.FileSizeHint]. -func (f *SliceFile) SizeHint(size int64) error { - if d := *f; size > int64(len(d)) { - *f = append(d, make([]byte, size-int64(len(d)))...) - } - return nil -} - -// Close implements [io.Closer]. -func (*SliceFile) Close() error { return nil } - -// Sync implements [vfs.File]. -func (*SliceFile) Sync(flags vfs.SyncFlag) error { return nil } - -// Lock implements [vfs.File]. -func (*SliceFile) Lock(lock vfs.LockLevel) error { - // notest // not concurrency safe - return sqlite3.IOERR_LOCK -} - -// Unlock implements [vfs.File]. -func (*SliceFile) Unlock(lock vfs.LockLevel) error { - // notest // not concurrency safe - return sqlite3.IOERR_UNLOCK -} - -// CheckReservedLock implements [vfs.File]. -func (*SliceFile) CheckReservedLock() (bool, error) { - // notest // not concurrency safe - return false, sqlite3.IOERR_CHECKRESERVEDLOCK -} - -// SectorSize implements [vfs.File]. -func (*SliceFile) SectorSize() int { - // notest // safe default - return 0 -} - -// DeviceCharacteristics implements [vfs.File]. -func (*SliceFile) DeviceCharacteristics() vfs.DeviceCharacteristic { - return vfs.IOCAP_ATOMIC | - vfs.IOCAP_SEQUENTIAL | - vfs.IOCAP_SAFE_APPEND | - vfs.IOCAP_POWERSAFE_OVERWRITE | - vfs.IOCAP_SUBPAGE_READ -} |
