(&mut self)
| 510 | I: TokenStream<'input, TF = LocalTokenFactory<'input>> + TidAble<'input>, |
| 511 | { |
| 512 | pub fn start(&mut self) -> Result<Rc<StartContextAll<'input>>, ANTLRError> { |
| 513 | let mut recog = self; |
| 514 | let _parentctx = recog.ctx.take(); |
| 515 | let mut _localctx = StartContextExt::new(_parentctx.clone(), recog.base.get_state()); |
| 516 | recog.base.enter_rule(_localctx.clone(), 0, RULE_start); |
| 517 | let mut _localctx: Rc<StartContextAll> = _localctx; |
| 518 | let result: Result<(), ANTLRError> = (|| { |
| 519 | //recog.base.enter_outer_alt(_localctx.clone(), 1)?; |
| 520 | recog.base.enter_outer_alt(None, 1)?; |
| 521 | { |
| 522 | /*InvokeRule expr*/ |
| 523 | recog.base.set_state(34); |
| 524 | let tmp = recog.expr()?; |
| 525 | cast_mut::<_, StartContext>(&mut _localctx).e = Some(tmp.clone()); |
| 526 | |
| 527 | recog.base.set_state(35); |
| 528 | recog.base.match_token(CEL_EOF, &mut recog.err_handler)?; |
| 529 | } |
| 530 | Ok(()) |
| 531 | })(); |
| 532 | match result { |
| 533 | Ok(_) => {} |
| 534 | Err(e @ ANTLRError::FallThrough(_)) => return Err(e), |
| 535 | Err(ref re) => { |
| 536 | //_localctx.exception = re; |
| 537 | recog.err_handler.report_error(&mut recog.base, re); |
| 538 | recog.err_handler.recover(&mut recog.base, re)?; |
| 539 | } |
| 540 | } |
| 541 | recog.base.exit_rule()?; |
| 542 | |
| 543 | Ok(_localctx) |
| 544 | } |
| 545 | } |
| 546 | //------------------- expr ---------------- |
| 547 | pub type ExprContextAll<'input> = ExprContext<'input>; |
no test coverage detected