func (p *parser) readMessage(msg *ast.Message) *parseError { if err := p.readToken("message"); err != nil { return err } msg.Position = p.cur.astPosition() tok := p.next() if tok.err != nil { return tok.err } msg.Name = tok.value // TODO: validate if err := p.readToken("{"); err != nil { return err } if err := p.readMessageContents(msg); err != nil { return err } return p.readToken("}") }