Parse an enum value: NAME = 0;
(self)
| 449 | self.consume(TokenType.SEMI, "Expected ';' after reserved statement") |
| 450 | |
| 451 | def parse_enum_value(self) -> EnumValue: |
| 452 | """Parse an enum value: NAME = 0;""" |
| 453 | start = self.current() |
| 454 | name = self.consume(TokenType.IDENT, "Expected enum value name").value |
| 455 | self.consume(TokenType.EQUALS, "Expected '=' after enum value name") |
| 456 | value_token = self.consume(TokenType.INT, "Expected integer value") |
| 457 | value = int(value_token.value) |
| 458 | self.consume(TokenType.SEMI, "Expected ';' after enum value") |
| 459 | |
| 460 | return EnumValue( |
| 461 | name=name, |
| 462 | value=value, |
| 463 | line=start.line, |
| 464 | column=start.column, |
| 465 | location=self.make_location(start), |
| 466 | ) |
| 467 | |
| 468 | def parse_message(self) -> Message: |
| 469 | """Parse a message: message Dog [id=102] { ... } |
no test coverage detected