summaryrefslogtreecommitdiff
path: root/vendor/github.com/tetratelabs/wazero/internal/sys/lazy.go
diff options
context:
space:
mode:
authorLibravatar Terin Stock <terinjokes@gmail.com>2025-03-09 17:47:56 +0100
committerLibravatar Terin Stock <terinjokes@gmail.com>2025-03-10 01:59:49 +0100
commit3ac1ee16f377d31a0fb80c8dae28b6239ac4229e (patch)
treef61faa581feaaeaba2542b9f2b8234a590684413 /vendor/github.com/tetratelabs/wazero/internal/sys/lazy.go
parent[chore] update URLs to forked source (diff)
downloadgotosocial-3ac1ee16f377d31a0fb80c8dae28b6239ac4229e.tar.xz
[chore] remove vendor
Diffstat (limited to 'vendor/github.com/tetratelabs/wazero/internal/sys/lazy.go')
-rw-r--r--vendor/github.com/tetratelabs/wazero/internal/sys/lazy.go151
1 files changed, 0 insertions, 151 deletions
diff --git a/vendor/github.com/tetratelabs/wazero/internal/sys/lazy.go b/vendor/github.com/tetratelabs/wazero/internal/sys/lazy.go
deleted file mode 100644
index fe233d29e..000000000
--- a/vendor/github.com/tetratelabs/wazero/internal/sys/lazy.go
+++ /dev/null
@@ -1,151 +0,0 @@
-package sys
-
-import (
- experimentalsys "github.com/tetratelabs/wazero/experimental/sys"
- "github.com/tetratelabs/wazero/internal/fsapi"
- "github.com/tetratelabs/wazero/sys"
-)
-
-// compile-time check to ensure lazyDir implements sys.File.
-var _ experimentalsys.File = (*lazyDir)(nil)
-
-type lazyDir struct {
- experimentalsys.DirFile
-
- fs experimentalsys.FS
- f experimentalsys.File
-}
-
-// Dev implements the same method as documented on sys.File
-func (d *lazyDir) Dev() (uint64, experimentalsys.Errno) {
- if f, ok := d.file(); !ok {
- return 0, experimentalsys.EBADF
- } else {
- return f.Dev()
- }
-}
-
-// Ino implements the same method as documented on sys.File
-func (d *lazyDir) Ino() (sys.Inode, experimentalsys.Errno) {
- if f, ok := d.file(); !ok {
- return 0, experimentalsys.EBADF
- } else {
- return f.Ino()
- }
-}
-
-// IsDir implements the same method as documented on sys.File
-func (d *lazyDir) IsDir() (bool, experimentalsys.Errno) {
- // Note: we don't return a constant because we don't know if this is really
- // backed by a dir, until the first call.
- if f, ok := d.file(); !ok {
- return false, experimentalsys.EBADF
- } else {
- return f.IsDir()
- }
-}
-
-// IsAppend implements the same method as documented on sys.File
-func (d *lazyDir) IsAppend() bool {
- return false
-}
-
-// SetAppend implements the same method as documented on sys.File
-func (d *lazyDir) SetAppend(bool) experimentalsys.Errno {
- return experimentalsys.EISDIR
-}
-
-// Seek implements the same method as documented on sys.File
-func (d *lazyDir) Seek(offset int64, whence int) (newOffset int64, errno experimentalsys.Errno) {
- if f, ok := d.file(); !ok {
- return 0, experimentalsys.EBADF
- } else {
- return f.Seek(offset, whence)
- }
-}
-
-// Stat implements the same method as documented on sys.File
-func (d *lazyDir) Stat() (sys.Stat_t, experimentalsys.Errno) {
- if f, ok := d.file(); !ok {
- return sys.Stat_t{}, experimentalsys.EBADF
- } else {
- return f.Stat()
- }
-}
-
-// Readdir implements the same method as documented on sys.File
-func (d *lazyDir) Readdir(n int) (dirents []experimentalsys.Dirent, errno experimentalsys.Errno) {
- if f, ok := d.file(); !ok {
- return nil, experimentalsys.EBADF
- } else {
- return f.Readdir(n)
- }
-}
-
-// Sync implements the same method as documented on sys.File
-func (d *lazyDir) Sync() experimentalsys.Errno {
- if f, ok := d.file(); !ok {
- return experimentalsys.EBADF
- } else {
- return f.Sync()
- }
-}
-
-// Datasync implements the same method as documented on sys.File
-func (d *lazyDir) Datasync() experimentalsys.Errno {
- if f, ok := d.file(); !ok {
- return experimentalsys.EBADF
- } else {
- return f.Datasync()
- }
-}
-
-// Utimens implements the same method as documented on sys.File
-func (d *lazyDir) Utimens(atim, mtim int64) experimentalsys.Errno {
- if f, ok := d.file(); !ok {
- return experimentalsys.EBADF
- } else {
- return f.Utimens(atim, mtim)
- }
-}
-
-// file returns the underlying file or false if it doesn't exist.
-func (d *lazyDir) file() (experimentalsys.File, bool) {
- if f := d.f; d.f != nil {
- return f, true
- }
- var errno experimentalsys.Errno
- d.f, errno = d.fs.OpenFile(".", experimentalsys.O_RDONLY, 0)
- switch errno {
- case 0:
- return d.f, true
- case experimentalsys.ENOENT:
- return nil, false
- default:
- panic(errno) // unexpected
- }
-}
-
-// Close implements fs.File
-func (d *lazyDir) Close() experimentalsys.Errno {
- f := d.f
- if f == nil {
- return 0 // never opened
- }
- return f.Close()
-}
-
-// IsNonblock implements the same method as documented on fsapi.File
-func (d *lazyDir) IsNonblock() bool {
- return false
-}
-
-// SetNonblock implements the same method as documented on fsapi.File
-func (d *lazyDir) SetNonblock(bool) experimentalsys.Errno {
- return experimentalsys.EISDIR
-}
-
-// Poll implements the same method as documented on fsapi.File
-func (d *lazyDir) Poll(fsapi.Pflag, int32) (ready bool, errno experimentalsys.Errno) {
- return false, experimentalsys.ENOSYS
-}