/* Production 46: chapter 3.4 corba 2.3.1 */ public void base_type_spec() { /*@bgen(jjtree) base_type_spec */ ASTbase_type_spec jjtn000 = new ASTbase_type_spec(this, IDLParserTreeConstants.JJTBASE_TYPE_SPEC); bool jjtc000 = true; jjtree.openNodeScope(jjtn000); try { if (jj_2_17(2)) { floating_pt_type(); } else { switch ((jj_ntk==-1)?jj_ntk_calc():jj_ntk) { case 52: case 53: case 54: integer_type(); break; case 55: char_type(); break; case 56: wide_char_type(); break; case 57: boolean_type(); break; case 58: octet_type(); break; case 59: any_type(); break; case 60: object_type(); break; case 84: value_base_type(); break; default: jj_la1[53] = jj_gen; jj_consume_token(-1); throw new ParseException(); break; } } } catch (Exception jjte000) { if (jjtc000) { jjtree.clearNodeScope(jjtn000); jjtc000 = false; } else { jjtree.popNode(); } {if (true) throw ;} } finally { if (jjtc000) { jjtree.closeNodeScope(jjtn000, true); } } }
/** * @see parser.IDLParserVisitor#visit(ASTbase_type_spec, Object) * @param data the buildinfo for the scope this spec is used in * @return a TypeContainer for the base type */ public Object visit(ASTbase_type_spec node, Object data) { // the child-node does the work return node.jjtGetChild(0).jjtAccept(this, data); }