github.com/jmigpin/editor@v1.6.0/util/iout/iorw/rwlocked.go (about) 1 package iorw 2 3 //type RWLocked struct { 4 // sync.RWMutex // can be locked from the outside to use ReadWriter directly 5 // ReadWriter 6 //} 7 8 //func NewRWLocker(rw ReadWriter) *RWLocked { 9 // return &RWLocked{ReadWriter: rw} 10 //} 11 12 ////---------- 13 14 //func (rw *RWLocked) Overwrite(i, n int, p []byte) error { 15 // rw.Lock() 16 // defer rw.Unlock() 17 // return rw.ReadWriter.Overwrite(i, n, p) 18 //} 19 20 ////---------- 21 22 //func (rw *RWLocked) ReadRuneAt(i int) (ru rune, size int, err error) { 23 // rw.RLock() 24 // defer rw.RUnlock() 25 // return rw.ReadWriter.ReadRuneAt(i) 26 //} 27 28 //func (rw *RWLocked) ReadLastRuneAt(i int) (ru rune, size int, err error) { 29 // rw.RLock() 30 // defer rw.RUnlock() 31 // return rw.ReadWriter.ReadLastRuneAt(i) 32 //} 33 34 //func (rw *RWLocked) ReadNAtFast(i, n int) ([]byte, error) { 35 // rw.RLock() 36 // defer rw.RUnlock() 37 // return rw.ReadWriter.ReadNAtFast(i, n) 38 //} 39 40 //func (rw *RWLocked) ReadNAtCopy(i, n int) ([]byte, error) { 41 // rw.RLock() 42 // defer rw.RUnlock() 43 // return rw.ReadWriter.ReadNAtCopy(i, n) 44 //} 45 46 //func (rw *RWLocked) Min() int { 47 // rw.RLock() 48 // defer rw.RUnlock() 49 // return rw.ReadWriter.Min() 50 //} 51 52 //func (rw *RWLocked) Max() int { 53 // rw.RLock() 54 // defer rw.RUnlock() 55 // return rw.ReadWriter.Max() 56 //}