| 5045 | I: TokenStream<'input, TF = LocalTokenFactory<'input>> + TidAble<'input>, |
| 5046 | { |
| 5047 | pub fn mapInitializerList( |
| 5048 | &mut self, |
| 5049 | ) -> Result<Rc<MapInitializerListContextAll<'input>>, ANTLRError> { |
| 5050 | let mut recog = self; |
| 5051 | let _parentctx = recog.ctx.take(); |
| 5052 | let mut _localctx = |
| 5053 | MapInitializerListContextExt::new(_parentctx.clone(), recog.base.get_state()); |
| 5054 | recog |
| 5055 | .base |
| 5056 | .enter_rule(_localctx.clone(), 26, RULE_mapInitializerList); |
| 5057 | let mut _localctx: Rc<MapInitializerListContextAll> = _localctx; |
| 5058 | let result: Result<(), ANTLRError> = (|| { |
| 5059 | let mut _alt: i32; |
| 5060 | //recog.base.enter_outer_alt(_localctx.clone(), 1)?; |
| 5061 | recog.base.enter_outer_alt(None, 1)?; |
| 5062 | { |
| 5063 | /*InvokeRule optExpr*/ |
| 5064 | recog.base.set_state(220); |
| 5065 | let tmp = recog.optExpr()?; |
| 5066 | cast_mut::<_, MapInitializerListContext>(&mut _localctx).optExpr = |
| 5067 | Some(tmp.clone()); |
| 5068 | |
| 5069 | let temp = cast_mut::<_, MapInitializerListContext>(&mut _localctx) |
| 5070 | .optExpr |
| 5071 | .clone() |
| 5072 | .unwrap(); |
| 5073 | cast_mut::<_, MapInitializerListContext>(&mut _localctx) |
| 5074 | .keys |
| 5075 | .push(temp); |
| 5076 | |
| 5077 | recog.base.set_state(221); |
| 5078 | let tmp = recog.base.match_token(CEL_COLON, &mut recog.err_handler)?; |
| 5079 | cast_mut::<_, MapInitializerListContext>(&mut _localctx).s21 = Some(tmp.clone()); |
| 5080 | |
| 5081 | let temp = cast_mut::<_, MapInitializerListContext>(&mut _localctx) |
| 5082 | .s21 |
| 5083 | .clone() |
| 5084 | .unwrap(); |
| 5085 | cast_mut::<_, MapInitializerListContext>(&mut _localctx) |
| 5086 | .cols |
| 5087 | .push(temp); |
| 5088 | |
| 5089 | /*InvokeRule expr*/ |
| 5090 | recog.base.set_state(222); |
| 5091 | let tmp = recog.expr()?; |
| 5092 | cast_mut::<_, MapInitializerListContext>(&mut _localctx).expr = Some(tmp.clone()); |
| 5093 | |
| 5094 | let temp = cast_mut::<_, MapInitializerListContext>(&mut _localctx) |
| 5095 | .expr |
| 5096 | .clone() |
| 5097 | .unwrap(); |
| 5098 | cast_mut::<_, MapInitializerListContext>(&mut _localctx) |
| 5099 | .values |
| 5100 | .push(temp); |
| 5101 | |
| 5102 | recog.base.set_state(230); |
| 5103 | recog.err_handler.sync(&mut recog.base)?; |
| 5104 | _alt = recog.interpreter.adaptive_predict(30, &mut recog.base)?; |