()
| 353 | } |
| 354 | |
| 355 | func (p *Parser) matchTypeEnumBody() (*ast.TypeEnum, error) { |
| 356 | l := p.lexer |
| 357 | if ok, err := l.match('('); !ok || err != nil { |
| 358 | return nil, errors.New("no opening parenthesis in enum type") |
| 359 | } |
| 360 | fields, err := p.matchEnumSymbols() |
| 361 | if err != nil { |
| 362 | return nil, err |
| 363 | } |
| 364 | ok, err := l.match(')') |
| 365 | if err != nil { |
| 366 | return nil, err |
| 367 | } |
| 368 | if !ok { |
| 369 | return nil, p.error("mismatched parentheses while parsing enum type") |
| 370 | } |
| 371 | return &ast.TypeEnum{ |
| 372 | Kind: "TypeEnum", |
| 373 | Symbols: fields, |
| 374 | }, nil |
| 375 | } |
| 376 | |
| 377 | func (p *Parser) matchEnumSymbols() ([]*ast.Text, error) { |
| 378 | l := p.lexer |
no test coverage detected