summaryrefslogtreecommitdiff
path: root/fakefile.go
diff options
context:
space:
mode:
authorJeff Carr <[email protected]>2025-01-31 09:02:35 -0600
committerJeff Carr <[email protected]>2025-01-31 13:47:45 -0600
commit9f38585892d08690dde1b67b9a01006af308a949 (patch)
tree6f1d57dbee43651a85f7104fbfe9b08bb22afab0 /fakefile.go
parent1a1881aa4e39e256126972c0cbe7f0db93ee20ec (diff)
I'm trying to make this clearer to understand
Diffstat (limited to 'fakefile.go')
-rw-r--r--fakefile.go70
1 files changed, 0 insertions, 70 deletions
diff --git a/fakefile.go b/fakefile.go
deleted file mode 100644
index 5c54762..0000000
--- a/fakefile.go
+++ /dev/null
@@ -1,70 +0,0 @@
-package main
-
-import (
- "bytes"
- "errors"
- "io"
-
- "github.com/awesome-gocui/gocui"
-)
-
-type FakeFile struct {
- reader *bytes.Reader
- buffer *bytes.Buffer
- offset int64
- view *gocui.View
-}
-
-func (f *FakeFile) Read(p []byte) (n int, err error) {
- n, err = f.reader.ReadAt(p, f.offset)
- f.offset += int64(n)
- return n, err
-}
-
-var fakecount int = 0
-
-func (f *FakeFile) Write(p []byte) (n int, err error) {
- n, err = f.buffer.Write(p)
- f.offset += int64(n)
- f.reader.Reset(f.buffer.Bytes())
- f.view.Write(p)
- fakecount += 1
- if fakecount > 20 {
- fakecount = 0
- f.view.Clear()
- }
- return n, err
-}
-
-func (f *FakeFile) Seek(offset int64, whence int) (int64, error) {
- newOffset := f.offset
-
- switch whence {
- case io.SeekStart:
- newOffset = offset
- case io.SeekCurrent:
- newOffset += offset
- case io.SeekEnd:
- newOffset = int64(f.buffer.Len()) + offset
- default:
- return 0, errors.New("Seek: whence not at start,current or end")
- }
- // never can get here right?
-
- if newOffset < 0 {
- return 0, errors.New("Seek: offset < 0")
- }
-
- f.offset = newOffset
- return f.offset, nil
-}
-
-func NewFakeFile(v *gocui.View) *FakeFile {
- buf := &bytes.Buffer{}
- return &FakeFile{
- reader: bytes.NewReader(buf.Bytes()),
- buffer: buf,
- offset: 0,
- view: v,
- }
-}