MCPcopy Create free account
hub / github.com/cel-rust/cel-rust / start

Method start

cel/src/parser/gen/celparser.rs:512–544  ·  view source on GitHub ↗
(&mut self)

Source from the content-addressed store, hash-verified

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 ----------------
547pub type ExprContextAll<'input> = ExprContext<'input>;

Callers 15

parseMethod · 0.80
enter_every_ruleMethod · 0.80
visit_startMethod · 0.80
visit_exprMethod · 0.80
visit_conditionalOrMethod · 0.80
visit_conditionalAndMethod · 0.80
visit_relationMethod · 0.80
visit_calcMethod · 0.80
visit_MemberExprMethod · 0.80
visit_LogicalNotMethod · 0.80
visit_NegateMethod · 0.80

Calls 3

cloneMethod · 0.80
report_errorMethod · 0.80
exprMethod · 0.45

Tested by

no test coverage detected