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

Method exprList

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

Source from the content-addressed store, hash-verified

4276 I: TokenStream<'input, TF = LocalTokenFactory<'input>> + TidAble<'input>,
4277{
4278 pub fn exprList(&mut self) -> Result<Rc<ExprListContextAll<'input>>, ANTLRError> {
4279 let mut recog = self;
4280 let _parentctx = recog.ctx.take();
4281 let mut _localctx = ExprListContextExt::new(_parentctx.clone(), recog.base.get_state());
4282 recog.base.enter_rule(_localctx.clone(), 18, RULE_exprList);
4283 let mut _localctx: Rc<ExprListContextAll> = _localctx;
4284 let mut _la: i32 = -1;
4285 let result: Result<(), ANTLRError> = (|| {
4286 //recog.base.enter_outer_alt(_localctx.clone(), 1)?;
4287 recog.base.enter_outer_alt(None, 1)?;
4288 {
4289 /*InvokeRule expr*/
4290 recog.base.set_state(186);
4291 let tmp = recog.expr()?;
4292 cast_mut::<_, ExprListContext>(&mut _localctx).expr = Some(tmp.clone());
4293
4294 let temp = cast_mut::<_, ExprListContext>(&mut _localctx)
4295 .expr
4296 .clone()
4297 .unwrap();
4298 cast_mut::<_, ExprListContext>(&mut _localctx).e.push(temp);
4299
4300 recog.base.set_state(191);
4301 recog.err_handler.sync(&mut recog.base)?;
4302 _la = recog.base.input.la(1);
4303 while _la == CEL_COMMA {
4304 {
4305 {
4306 recog.base.set_state(187);
4307 recog.base.match_token(CEL_COMMA, &mut recog.err_handler)?;
4308
4309 /*InvokeRule expr*/
4310 recog.base.set_state(188);
4311 let tmp = recog.expr()?;
4312 cast_mut::<_, ExprListContext>(&mut _localctx).expr = Some(tmp.clone());
4313
4314 let temp = cast_mut::<_, ExprListContext>(&mut _localctx)
4315 .expr
4316 .clone()
4317 .unwrap();
4318 cast_mut::<_, ExprListContext>(&mut _localctx).e.push(temp);
4319 }
4320 }
4321 recog.base.set_state(193);
4322 recog.err_handler.sync(&mut recog.base)?;
4323 _la = recog.base.input.la(1);
4324 }
4325 }
4326 Ok(())
4327 })();
4328 match result {
4329 Ok(_) => {}
4330 Err(e @ ANTLRError::FallThrough(_)) => return Err(e),
4331 Err(ref re) => {
4332 //_localctx.exception = re;
4333 recog.err_handler.report_error(&mut recog.base, re);
4334 recog.err_handler.recover(&mut recog.base, re)?;
4335 }

Callers 2

member_recMethod · 0.45
primaryMethod · 0.45

Calls 4

cloneMethod · 0.80
pushMethod · 0.80
report_errorMethod · 0.80
exprMethod · 0.45

Tested by

no test coverage detected