readByte implements the io.ByteReader interface. This method is used by BufferReader to consume its underlying buffer. To perform io operations on buffers directly, use ReadToWriter or WriteToReader.
()
| 582 | // BufferReader to consume its underlying buffer. To perform io operations on |
| 583 | // buffers directly, use ReadToWriter or WriteToReader. |
| 584 | func (b *Buffer) readByte() (byte, error) { |
| 585 | if b.Size() == 0 { |
| 586 | return 0, io.EOF |
| 587 | } |
| 588 | v := b.data.Front() |
| 589 | bt := v.AsSlice()[0] |
| 590 | b.TrimFront(1) |
| 591 | return bt, nil |
| 592 | } |
| 593 | |
| 594 | // AsBufferReader returns the Buffer as a BufferReader capable of io methods. |
| 595 | // The new BufferReader takes ownership of b. |