static final public Type type() throws ParseException {
    switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
    case VOID:
      jj_consume_token(VOID);
      {if (true) return Type.voidType;}
      break;
    case INT:
      jj_consume_token(INT);
      {if (true) return Type.intType;}
      break;
    case BOOL:
      jj_consume_token(BOOL);
      {if (true) return Type.boolType;}
      break;
    default:
      jj_la1[5] = jj_gen;
      jj_consume_token(-1);
      throw new ParseException();
    }
    throw new Error("Missing return statement in function");
  }