/* Production 33 */ public void shift_expr() { /*@bgen(jjtree) shift_expr */ ASTshift_expr jjtn000 = new ASTshift_expr(this, IDLParserTreeConstants.JJTSHIFT_EXPR); bool jjtc000 = true; jjtree.openNodeScope(jjtn000); try { add_expr(); while (true) { switch ((jj_ntk==-1)?jj_ntk_calc():jj_ntk) { case 38: case 39: ; break; default: jj_la1[37] = jj_gen; goto label_14; break; } switch ((jj_ntk==-1)?jj_ntk_calc():jj_ntk) { case 38: jj_consume_token(38); jjtn000.AppendShiftOperation(ShiftOps.Right); break; case 39: jj_consume_token(39); jjtn000.AppendShiftOperation(ShiftOps.Left); break; default: jj_la1[38] = jj_gen; jj_consume_token(-1); throw new ParseException(); break; } add_expr(); } label_14: ; } catch (Exception jjte000) { if (jjtc000) { jjtree.clearNodeScope(jjtn000); jjtc000 = false; } else { jjtree.popNode(); } {if (true) throw ;} } finally { if (jjtc000) { jjtree.closeNodeScope(jjtn000, true); } } }