12345678910111213141516171819202122232425262728293031323334 |
- package reader
- import (
- "bufio"
- "io"
- )
- type BlockReader struct {
- reader *bufio.Reader
- }
- func NewBlockReader(reader io.Reader) *BlockReader {
- return &BlockReader{
- reader: bufio.NewReader(reader),
- }
- }
- func (br *BlockReader) ReadBlock() (block map[string]any, err error) {
- var str string
- var line []byte
- var isprefix bool = true
- for isprefix {
- line, isprefix, err = br.reader.ReadLine()
- if err != nil {
- if err == io.EOF {
- err = nil
- }
- return nil, err
- }
- str += string(line)
- }
- block = map[string]any{"line": str}
- return
- }
|