1234567891011121314151617181920212223242526272829 |
- package zmostp_go
- import "io"
- var _ io.ByteReader = (*SimpleByteReader)(nil)
- // SimpleByteReader implements io.ByteReader for io.Reader.
- // Not recommended for production use due to performance issues.
- type SimpleByteReader struct {
- reader io.Reader
- buf []byte
- }
- // NewSimpleByteReader creates a new SimpleByteReader.
- // Not recommended for production use due to performance issues.
- func NewSimpleByteReader(reader io.Reader) *SimpleByteReader {
- return &SimpleByteReader{
- reader: reader,
- buf: make([]byte, 1),
- }
- }
- func (s SimpleByteReader) ReadByte() (byte, error) {
- _, err := s.reader.Read(s.buf)
- if err != nil {
- return 0, err
- }
- return s.buf[0], nil
- }
|