(length int)
| 57 | } |
| 58 | |
| 59 | func (s *scanner) allocBytes(length int) []byte { |
| 60 | if len(s.bytesPrealloc) >= length { |
| 61 | res := s.bytesPrealloc[:length:length] |
| 62 | s.bytesPrealloc = s.bytesPrealloc[length:] |
| 63 | return res |
| 64 | } |
| 65 | return make([]byte, length) |
| 66 | } |
| 67 | |
| 68 | // buffer returns an empty []byte buffer that can be appended to. Any unused |
| 69 | // portion can be returned later using returnBuffer. |