Changeset 3911 in josm


Ignore:
Timestamp:
Feb 18, 2011 7:34:19 PM (2 years ago)
Author:
bastiK
Message:

fixed #5985 - MapCSS conditions don't handle unquoted numeric values

Location:
trunk/src/org/openstreetmap/josm/gui/mappaint/mapcss/parser
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/org/openstreetmap/josm/gui/mappaint/mapcss/parser/MapCSSParser.java

    r3902 r3911  
    5151  } 
    5252 
     53  final public int int_() throws ParseException { 
     54    int i; 
     55    switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 
     56    case MINUS: 
     57      jj_consume_token(MINUS); 
     58      i = uint(); 
     59                       {if (true) return -i;} 
     60      break; 
     61    case UINT: 
     62      i = uint(); 
     63                                                 {if (true) return i;} 
     64      break; 
     65    default: 
     66      jj_la1[0] = jj_gen; 
     67      jj_consume_token(-1); 
     68      throw new ParseException(); 
     69    } 
     70    throw new Error("Missing return statement in function"); 
     71  } 
     72 
    5373  final public float ufloat() throws ParseException { 
    5474    Token f; 
     
    6181      break; 
    6282    default: 
    63       jj_la1[0] = jj_gen; 
     83      jj_la1[1] = jj_gen; 
    6484      jj_consume_token(-1); 
    6585      throw new ParseException(); 
     
    83103      break; 
    84104    default: 
    85       jj_la1[1] = jj_gen; 
     105      jj_la1[2] = jj_gen; 
    86106      jj_consume_token(-1); 
    87107      throw new ParseException(); 
     
    110130      break; 
    111131    default: 
    112       jj_la1[2] = jj_gen; 
     132      jj_la1[3] = jj_gen; 
    113133      jj_consume_token(-1); 
    114134      throw new ParseException(); 
     
    133153      break; 
    134154    default: 
    135       jj_la1[3] = jj_gen; 
     155      jj_la1[4] = jj_gen; 
    136156      ; 
    137157    } 
     
    150170        break; 
    151171      default: 
    152         jj_la1[4] = jj_gen; 
     172        jj_la1[5] = jj_gen; 
    153173        break label_1; 
    154174      } 
     
    162182        break; 
    163183      default: 
    164         jj_la1[5] = jj_gen; 
     184        jj_la1[6] = jj_gen; 
    165185        jj_consume_token(-1); 
    166186        throw new ParseException(); 
     
    188208        break; 
    189209      default: 
    190         jj_la1[6] = jj_gen; 
     210        jj_la1[7] = jj_gen; 
    191211        break label_2; 
    192212      } 
     
    212232        break; 
    213233      default: 
    214         jj_la1[7] = jj_gen; 
     234        jj_la1[8] = jj_gen; 
    215235        break label_3; 
    216236      } 
     
    240260        break; 
    241261      default: 
    242         jj_la1[8] = jj_gen; 
     262        jj_la1[9] = jj_gen; 
    243263        break label_4; 
    244264      } 
     
    271291        break; 
    272292      default: 
    273         jj_la1[9] = jj_gen; 
     293        jj_la1[10] = jj_gen; 
    274294        jj_consume_token(-1); 
    275295        throw new ParseException(); 
     
    280300      break; 
    281301    default: 
    282       jj_la1[10] = jj_gen; 
     302      jj_la1[11] = jj_gen; 
    283303      ; 
    284304    } 
     
    301321      break; 
    302322    default: 
    303       jj_la1[11] = jj_gen; 
     323      jj_la1[12] = jj_gen; 
    304324      jj_consume_token(-1); 
    305325      throw new ParseException(); 
     
    310330      break; 
    311331    default: 
    312       jj_la1[12] = jj_gen; 
     332      jj_la1[13] = jj_gen; 
    313333      ; 
    314334    } 
     
    322342        break; 
    323343      default: 
    324         jj_la1[13] = jj_gen; 
     344        jj_la1[14] = jj_gen; 
    325345        break label_5; 
    326346      } 
     
    334354        break; 
    335355      default: 
    336         jj_la1[14] = jj_gen; 
     356        jj_la1[15] = jj_gen; 
    337357        jj_consume_token(-1); 
    338358        throw new ParseException(); 
     
    345365      break; 
    346366    default: 
    347       jj_la1[15] = jj_gen; 
     367      jj_la1[16] = jj_gen; 
    348368      ; 
    349369    } 
     
    371391          break; 
    372392        default: 
    373           jj_la1[16] = jj_gen; 
     393          jj_la1[17] = jj_gen; 
    374394          ; 
    375395        } 
    376396        break; 
    377397      default: 
    378         jj_la1[17] = jj_gen; 
     398        jj_la1[18] = jj_gen; 
    379399        ; 
    380400      } 
    381401      break; 
    382402    default: 
    383       jj_la1[18] = jj_gen; 
     403      jj_la1[19] = jj_gen; 
    384404      jj_consume_token(-1); 
    385405      throw new ParseException(); 
     
    393413    Expression e; 
    394414    jj_consume_token(LSQUARE); 
     415    s(); 
    395416    if (jj_2_1(2147483647)) { 
    396417      c = simple_key_condition(); 
     418      s(); 
    397419      jj_consume_token(RSQUARE); 
    398                                                  {if (true) return c;} 
     420                                                     {if (true) return c;} 
    399421    } else if (jj_2_2(2147483647)) { 
    400422      c = simple_key_value_condition(); 
     423      s(); 
    401424      jj_consume_token(RSQUARE); 
    402                                                        {if (true) return c;} 
     425                                                           {if (true) return c;} 
    403426    } else { 
    404427      switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 
     
    417440        break; 
    418441      default: 
    419         jj_la1[19] = jj_gen; 
     442        jj_la1[20] = jj_gen; 
    420443        jj_consume_token(-1); 
    421444        throw new ParseException(); 
     
    443466          break; 
    444467        default: 
    445           jj_la1[20] = jj_gen; 
     468          jj_la1[21] = jj_gen; 
    446469          break label_6; 
    447470        } 
     
    453476      break; 
    454477    default: 
    455       jj_la1[21] = jj_gen; 
     478      jj_la1[22] = jj_gen; 
    456479      jj_consume_token(-1); 
    457480      throw new ParseException(); 
     
    470493      break; 
    471494    default: 
    472       jj_la1[22] = jj_gen; 
     495      jj_la1[23] = jj_gen; 
    473496      ; 
    474497    } 
     
    480503      break; 
    481504    default: 
    482       jj_la1[23] = jj_gen; 
     505      jj_la1[24] = jj_gen; 
    483506      ; 
    484507    } 
     
    491514    String val; 
    492515    float f; 
     516    int i; 
    493517    Condition.Op op; 
    494518    key = tag_key(); 
    495     switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 
    496     case STAR: 
    497     case EQUAL: 
    498     case EXCLAMATION: 
    499     case TILDE: 
    500     case DOLLAR: 
    501     case CARET: 
     519    s(); 
     520    if (jj_2_4(2)) { 
     521      jj_consume_token(EQUAL); 
     522      jj_consume_token(TILDE); 
     523                              op=Condition.Op.REGEX; 
     524      s(); 
     525      val = regex(); 
     526    } else { 
    502527      switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 
     528      case STAR: 
     529      case EQUAL: 
    503530      case EXCLAMATION: 
    504         jj_consume_token(EXCLAMATION); 
    505         jj_consume_token(EQUAL); 
     531      case TILDE: 
     532      case DOLLAR: 
     533      case CARET: 
     534        switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 
     535        case EXCLAMATION: 
     536          jj_consume_token(EXCLAMATION); 
     537          jj_consume_token(EQUAL); 
    506538                                            op=Condition.Op.NEQ; 
    507         val = string_or_ident(); 
    508         break; 
    509       case EQUAL: 
    510         jj_consume_token(EQUAL); 
     539          break; 
     540        case EQUAL: 
     541          jj_consume_token(EQUAL); 
    511542                              op=Condition.Op.EQ; 
    512         switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 
     543          break; 
    513544        case TILDE: 
    514545          jj_consume_token(TILDE); 
    515                                       op=Condition.Op.REGEX; 
    516           val = regex(); 
    517           break; 
    518         case IDENT: 
    519         case STRING: 
     546          jj_consume_token(EQUAL); 
     547                                      op=Condition.Op.ONE_OF; 
    520548          val = string_or_ident(); 
    521549          break; 
     550        case CARET: 
     551          jj_consume_token(CARET); 
     552          jj_consume_token(EQUAL); 
     553                                      op=Condition.Op.BEGINS_WITH; 
     554          val = string_or_ident(); 
     555          break; 
     556        case DOLLAR: 
     557          jj_consume_token(DOLLAR); 
     558          jj_consume_token(EQUAL); 
     559                                       op=Condition.Op.ENDS_WITH; 
     560          val = string_or_ident(); 
     561          break; 
     562        case STAR: 
     563          jj_consume_token(STAR); 
     564          jj_consume_token(EQUAL); 
     565                                     op=Condition.Op.CONTAINS; 
     566          val = string_or_ident(); 
     567          break; 
    522568        default: 
    523           jj_la1[24] = jj_gen; 
     569          jj_la1[25] = jj_gen; 
    524570          jj_consume_token(-1); 
    525571          throw new ParseException(); 
    526572        } 
     573        s(); 
     574        if (jj_2_3(2)) { 
     575          i = int_(); 
     576                                   val=Integer.toString(i); 
     577        } else { 
     578          switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 
     579          case UINT: 
     580          case UFLOAT: 
     581          case MINUS: 
     582            f = float_(); 
     583                                     val=Float.toString(f); 
     584            break; 
     585          case IDENT: 
     586          case STRING: 
     587            val = string_or_ident(); 
     588            break; 
     589          default: 
     590            jj_la1[26] = jj_gen; 
     591            jj_consume_token(-1); 
     592            throw new ParseException(); 
     593          } 
     594        } 
    527595        break; 
    528       case TILDE: 
    529         jj_consume_token(TILDE); 
    530         jj_consume_token(EQUAL); 
    531                                       op=Condition.Op.ONE_OF; 
    532         val = string_or_ident(); 
    533         break; 
    534       case CARET: 
    535         jj_consume_token(CARET); 
    536         jj_consume_token(EQUAL); 
    537                                       op=Condition.Op.BEGINS_WITH; 
    538         val = string_or_ident(); 
    539         break; 
    540       case DOLLAR: 
    541         jj_consume_token(DOLLAR); 
    542         jj_consume_token(EQUAL); 
    543                                        op=Condition.Op.ENDS_WITH; 
    544         val = string_or_ident(); 
    545         break; 
    546       case STAR: 
    547         jj_consume_token(STAR); 
    548         jj_consume_token(EQUAL); 
    549                                      op=Condition.Op.CONTAINS; 
    550         val = string_or_ident(); 
     596      case GREATER_EQUAL: 
     597      case LESS_EQUAL: 
     598      case GREATER: 
     599      case LESS: 
     600        switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 
     601        case GREATER_EQUAL: 
     602          jj_consume_token(GREATER_EQUAL); 
     603                                      op=Condition.Op.GREATER_OR_EQUAL; 
     604          break; 
     605        case GREATER: 
     606          jj_consume_token(GREATER); 
     607                                op=Condition.Op.GREATER; 
     608          break; 
     609        case LESS_EQUAL: 
     610          jj_consume_token(LESS_EQUAL); 
     611                                   op=Condition.Op.LESS_OR_EQUAL; 
     612          break; 
     613        case LESS: 
     614          jj_consume_token(LESS); 
     615                             op=Condition.Op.LESS; 
     616          break; 
     617        default: 
     618          jj_la1[27] = jj_gen; 
     619          jj_consume_token(-1); 
     620          throw new ParseException(); 
     621        } 
     622        s(); 
     623        f = float_(); 
     624                         val=Float.toString(f); 
    551625        break; 
    552626      default: 
    553         jj_la1[25] = jj_gen; 
     627        jj_la1[28] = jj_gen; 
    554628        jj_consume_token(-1); 
    555629        throw new ParseException(); 
    556630      } 
    557               {if (true) return new Condition.KeyValueCondition(key, val, op);} 
    558       break; 
    559     case GREATER_EQUAL: 
    560     case LESS_EQUAL: 
    561     case GREATER: 
    562     case LESS: 
    563       switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 
    564       case GREATER_EQUAL: 
    565         jj_consume_token(GREATER_EQUAL); 
    566                                       op=Condition.Op.GREATER_OR_EQUAL; 
    567         break; 
    568       case GREATER: 
    569         jj_consume_token(GREATER); 
    570                                 op=Condition.Op.GREATER; 
    571         break; 
    572       case LESS_EQUAL: 
    573         jj_consume_token(LESS_EQUAL); 
    574                                    op=Condition.Op.LESS_OR_EQUAL; 
    575         break; 
    576       case LESS: 
    577         jj_consume_token(LESS); 
    578                              op=Condition.Op.LESS; 
    579         break; 
    580       default: 
    581         jj_la1[26] = jj_gen; 
    582         jj_consume_token(-1); 
    583         throw new ParseException(); 
    584       } 
    585       f = float_(); 
    586               {if (true) return new Condition.KeyValueCondition(key, Float.toString(f), op);} 
    587       break; 
    588     default: 
    589       jj_la1[27] = jj_gen; 
    590       jj_consume_token(-1); 
    591       throw new ParseException(); 
    592     } 
     631    } 
     632      {if (true) return new Condition.KeyValueCondition(key, val, op);} 
    593633    throw new Error("Missing return statement in function"); 
    594634  } 
     
    603643      break; 
    604644    default: 
    605       jj_la1[28] = jj_gen; 
     645      jj_la1[29] = jj_gen; 
    606646      ; 
    607647    } 
     
    623663      break; 
    624664    default: 
    625       jj_la1[29] = jj_gen; 
     665      jj_la1[30] = jj_gen; 
    626666      jj_consume_token(-1); 
    627667      throw new ParseException(); 
     
    645685        break; 
    646686      default: 
    647         jj_la1[30] = jj_gen; 
     687        jj_la1[31] = jj_gen; 
    648688        break label_7; 
    649689      } 
     
    652692      jj_consume_token(COLON); 
    653693      w(); 
    654       if (jj_2_3(2147483647)) { 
     694      if (jj_2_5(2147483647)) { 
    655695        val = float_array(); 
    656696                  ins.add(new Instruction.AssignmentInstruction(key.image, val)); 
     
    666706          break; 
    667707        default: 
    668           jj_la1[31] = jj_gen; 
     708          jj_la1[32] = jj_gen; 
    669709          jj_consume_token(-1); 
    670710          throw new ParseException(); 
    671711        } 
    672       } else if (jj_2_4(2147483647)) { 
     712      } else if (jj_2_6(2147483647)) { 
    673713        val = expression(); 
    674714                  ins.add(new Instruction.AssignmentInstruction(key.image, val)); 
     
    683723          break; 
    684724        default: 
    685           jj_la1[32] = jj_gen; 
     725          jj_la1[33] = jj_gen; 
    686726          jj_consume_token(-1); 
    687727          throw new ParseException(); 
     
    757797              break; 
    758798            default: 
    759               jj_la1[33] = jj_gen; 
     799              jj_la1[34] = jj_gen; 
    760800              break label_8; 
    761801            } 
     
    776816              break; 
    777817            default: 
    778               jj_la1[34] = jj_gen; 
     818              jj_la1[35] = jj_gen; 
    779819              break label_9; 
    780820            } 
     
    795835              break; 
    796836            default: 
    797               jj_la1[35] = jj_gen; 
     837              jj_la1[36] = jj_gen; 
    798838              break label_10; 
    799839            } 
     
    814854              break; 
    815855            default: 
    816               jj_la1[36] = jj_gen; 
     856              jj_la1[37] = jj_gen; 
    817857              break label_11; 
    818858            } 
     
    850890            break; 
    851891          default: 
    852             jj_la1[37] = jj_gen; 
     892            jj_la1[38] = jj_gen; 
    853893            ; 
    854894          } 
     
    899939          break; 
    900940        default: 
    901           jj_la1[38] = jj_gen; 
     941          jj_la1[39] = jj_gen; 
    902942          jj_consume_token(-1); 
    903943          throw new ParseException(); 
     
    905945        break; 
    906946      default: 
    907         jj_la1[39] = jj_gen; 
     947        jj_la1[40] = jj_gen; 
    908948        ; 
    909949      } 
    910950      break; 
    911951    default: 
    912       jj_la1[40] = jj_gen; 
     952      jj_la1[41] = jj_gen; 
    913953      jj_consume_token(-1); 
    914954      throw new ParseException(); 
     
    924964    FunctionExpression fn; 
    925965    Object lit; 
    926     if (jj_2_5(2)) { 
     966    if (jj_2_7(2)) { 
    927967      // both function and identifier start with an identifier 
    928968              fn = function(); 
     
    947987        break; 
    948988      default: 
    949         jj_la1[41] = jj_gen; 
     989        jj_la1[42] = jj_gen; 
    950990        jj_consume_token(-1); 
    951991        throw new ParseException(); 
     
    9841024          break; 
    9851025        default: 
    986           jj_la1[42] = jj_gen; 
     1026          jj_la1[43] = jj_gen; 
    9871027          break label_12; 
    9881028        } 
     
    9941034      break; 
    9951035    default: 
    996       jj_la1[43] = jj_gen; 
     1036      jj_la1[44] = jj_gen; 
    9971037      ; 
    9981038    } 
     
    10331073      break; 
    10341074    default: 
    1035       jj_la1[44] = jj_gen; 
     1075      jj_la1[45] = jj_gen; 
    10361076      jj_consume_token(-1); 
    10371077      throw new ParseException(); 
     
    11171157  } 
    11181158 
     1159  private boolean jj_2_6(int xla) { 
     1160    jj_la = xla; jj_lastpos = jj_scanpos = token; 
     1161    try { return !jj_3_6(); } 
     1162    catch(LookaheadSuccess ls) { return true; } 
     1163    finally { jj_save(5, xla); } 
     1164  } 
     1165 
     1166  private boolean jj_2_7(int xla) { 
     1167    jj_la = xla; jj_lastpos = jj_scanpos = token; 
     1168    try { return !jj_3_7(); } 
     1169    catch(LookaheadSuccess ls) { return true; } 
     1170    finally { jj_save(6, xla); } 
     1171  } 
     1172 
     1173  private boolean jj_3R_41() { 
     1174    if (jj_scan_token(DOLLAR)) return true; 
     1175    if (jj_scan_token(EQUAL)) return true; 
     1176    if (jj_3R_56()) return true; 
     1177    return false; 
     1178  } 
     1179 
     1180  private boolean jj_3R_40() { 
     1181    if (jj_scan_token(CARET)) return true; 
     1182    if (jj_scan_token(EQUAL)) return true; 
     1183    if (jj_3R_56()) return true; 
     1184    return false; 
     1185  } 
     1186 
     1187  private boolean jj_3R_39() { 
     1188    if (jj_scan_token(TILDE)) return true; 
     1189    if (jj_scan_token(EQUAL)) return true; 
     1190    if (jj_3R_56()) return true; 
     1191    return false; 
     1192  } 
     1193 
     1194  private boolean jj_3R_14() { 
     1195    Token xsp; 
     1196    xsp = jj_scanpos; 
     1197    if (jj_scan_token(9)) jj_scanpos = xsp; 
     1198    return false; 
     1199  } 
     1200 
     1201  private boolean jj_3R_58() { 
     1202    if (jj_3R_28()) return true; 
     1203    return false; 
     1204  } 
     1205 
     1206  private boolean jj_3R_38() { 
     1207    if (jj_scan_token(EQUAL)) return true; 
     1208    return false; 
     1209  } 
     1210 
     1211  private boolean jj_3R_37() { 
     1212    if (jj_scan_token(EXCLAMATION)) return true; 
     1213    if (jj_scan_token(EQUAL)) return true; 
     1214    return false; 
     1215  } 
     1216 
     1217  private boolean jj_3R_36() { 
     1218    if (jj_scan_token(REGEX)) return true; 
     1219    return false; 
     1220  } 
     1221 
     1222  private boolean jj_3R_24() { 
     1223    Token xsp; 
     1224    xsp = jj_scanpos; 
     1225    if (jj_3R_37()) { 
     1226    jj_scanpos = xsp; 
     1227    if (jj_3R_38()) { 
     1228    jj_scanpos = xsp; 
     1229    if (jj_3R_39()) { 
     1230    jj_scanpos = xsp; 
     1231    if (jj_3R_40()) { 
     1232    jj_scanpos = xsp; 
     1233    if (jj_3R_41()) { 
     1234    jj_scanpos = xsp; 
     1235    if (jj_3R_42()) return true; 
     1236    } 
     1237    } 
     1238    } 
     1239    } 
     1240    } 
     1241    if (jj_3R_14()) return true; 
     1242    xsp = jj_scanpos; 
     1243    if (jj_3_3()) { 
     1244    jj_scanpos = xsp; 
     1245    if (jj_3R_43()) { 
     1246    jj_scanpos = xsp; 
     1247    if (jj_3R_44()) return true; 
     1248    } 
     1249    } 
     1250    return false; 
     1251  } 
     1252 
     1253  private boolean jj_3_4() { 
     1254    if (jj_scan_token(EQUAL)) return true; 
     1255    if (jj_scan_token(TILDE)) return true; 
     1256    if (jj_3R_14()) return true; 
     1257    if (jj_3R_36()) return true; 
     1258    return false; 
     1259  } 
     1260 
     1261  private boolean jj_3R_55() { 
     1262    if (jj_scan_token(COLON)) return true; 
     1263    if (jj_scan_token(IDENT)) return true; 
     1264    return false; 
     1265  } 
     1266 
     1267  private boolean jj_3R_56() { 
     1268    Token xsp; 
     1269    xsp = jj_scanpos; 
     1270    if (jj_3R_73()) { 
     1271    jj_scanpos = xsp; 
     1272    if (jj_3R_74()) return true; 
     1273    } 
     1274    return false; 
     1275  } 
     1276 
     1277  private boolean jj_3R_73() { 
     1278    if (jj_scan_token(IDENT)) return true; 
     1279    return false; 
     1280  } 
     1281 
     1282  private boolean jj_3R_27() { 
     1283    if (jj_3R_50()) return true; 
     1284    return false; 
     1285  } 
     1286 
     1287  private boolean jj_3R_84() { 
     1288    if (jj_scan_token(HEXCOLOR)) return true; 
     1289    return false; 
     1290  } 
     1291 
     1292  private boolean jj_3R_83() { 
     1293    if (jj_3R_28()) return true; 
     1294    return false; 
     1295  } 
     1296 
     1297  private boolean jj_3R_15() { 
     1298    if (jj_3R_22()) return true; 
     1299    if (jj_3R_14()) return true; 
     1300    Token xsp; 
     1301    xsp = jj_scanpos; 
     1302    if (jj_3_4()) { 
     1303    jj_scanpos = xsp; 
     1304    if (jj_3R_24()) { 
     1305    jj_scanpos = xsp; 
     1306    if (jj_3R_25()) return true; 
     1307    } 
     1308    } 
     1309    return false; 
     1310  } 
     1311 
     1312  private boolean jj_3R_82() { 
     1313    if (jj_scan_token(PLUS)) return true; 
     1314    if (jj_3R_28()) return true; 
     1315    return false; 
     1316  } 
     1317 
     1318  private boolean jj_3R_81() { 
     1319    if (jj_3R_56()) return true; 
     1320    return false; 
     1321  } 
     1322 
     1323  private boolean jj_3R_75() { 
     1324    Token xsp; 
     1325    xsp = jj_scanpos; 
     1326    if (jj_3R_81()) { 
     1327    jj_scanpos = xsp; 
     1328    if (jj_3R_82()) { 
     1329    jj_scanpos = xsp; 
     1330    if (jj_3R_83()) { 
     1331    jj_scanpos = xsp; 
     1332    if (jj_3R_84()) return true; 
     1333    } 
     1334    } 
     1335    } 
     1336    return false; 
     1337  } 
     1338 
     1339  private boolean jj_3R_54() { 
     1340    if (jj_scan_token(STRING)) return true; 
     1341    return false; 
     1342  } 
     1343 
     1344  private boolean jj_3R_23() { 
     1345    if (jj_scan_token(QUESTION)) return true; 
     1346    return false; 
     1347  } 
     1348 
     1349  private boolean jj_3R_49() { 
     1350    Token xsp; 
     1351    xsp = jj_scanpos; 
     1352    if (jj_3R_57()) { 
     1353    jj_scanpos = xsp; 
     1354    if (jj_3R_58()) return true; 
     1355    } 
     1356    return false; 
     1357  } 
     1358 
     1359  private boolean jj_3R_57() { 
     1360    if (jj_scan_token(MINUS)) return true; 
     1361    if (jj_3R_28()) return true; 
     1362    return false; 
     1363  } 
     1364 
     1365  private boolean jj_3R_21() { 
     1366    if (jj_scan_token(EXCLAMATION)) return true; 
     1367    return false; 
     1368  } 
     1369 
     1370  private boolean jj_3R_85() { 
     1371    if (jj_scan_token(COMMA)) return true; 
     1372    if (jj_3R_18()) return true; 
     1373    if (jj_3R_19()) return true; 
     1374    return false; 
     1375  } 
     1376 
     1377  private boolean jj_3R_13() { 
     1378    Token xsp; 
     1379    xsp = jj_scanpos; 
     1380    if (jj_3R_21()) jj_scanpos = xsp; 
     1381    if (jj_3R_22()) return true; 
     1382    xsp = jj_scanpos; 
     1383    if (jj_3R_23()) jj_scanpos = xsp; 
     1384    return false; 
     1385  } 
     1386 
     1387  private boolean jj_3R_80() { 
     1388    if (jj_3R_19()) return true; 
     1389    Token xsp; 
     1390    while (true) { 
     1391      xsp = jj_scanpos; 
     1392      if (jj_3R_85()) { jj_scanpos = xsp; break; } 
     1393    } 
     1394    return false; 
     1395  } 
     1396 
     1397  private boolean jj_3R_28() { 
     1398    Token xsp; 
     1399    xsp = jj_scanpos; 
     1400    if (jj_scan_token(3)) { 
     1401    jj_scanpos = xsp; 
     1402    if (jj_scan_token(2)) return true; 
     1403    } 
     1404    return false; 
     1405  } 
     1406 
     1407  private boolean jj_3R_35() { 
     1408    if (jj_scan_token(IDENT)) return true; 
     1409    Token xsp; 
     1410    while (true) { 
     1411      xsp = jj_scanpos; 
     1412      if (jj_3R_55()) { jj_scanpos = xsp; break; } 
     1413    } 
     1414    return false; 
     1415  } 
     1416 
     1417  private boolean jj_3R_34() { 
     1418    if (jj_3R_54()) return true; 
     1419    return false; 
     1420  } 
     1421 
     1422  private boolean jj_3R_22() { 
     1423    Token xsp; 
     1424    xsp = jj_scanpos; 
     1425    if (jj_3R_34()) { 
     1426    jj_scanpos = xsp; 
     1427    if (jj_3R_35()) return true; 
     1428    } 
     1429    return false; 
     1430  } 
     1431 
     1432  private boolean jj_3R_20() { 
     1433    if (jj_scan_token(IDENT)) return true; 
     1434    if (jj_3R_18()) return true; 
     1435    if (jj_scan_token(LPAR)) return true; 
     1436    if (jj_3R_18()) return true; 
     1437    Token xsp; 
     1438    xsp = jj_scanpos; 
     1439    if (jj_3R_80()) jj_scanpos = xsp; 
     1440    if (jj_scan_token(RPAR)) return true; 
     1441    return false; 
     1442  } 
     1443 
     1444  private boolean jj_3_2() { 
     1445    if (jj_3R_15()) return true; 
     1446    if (jj_3R_14()) return true; 
     1447    if (jj_scan_token(RSQUARE)) return true; 
     1448    return false; 
     1449  } 
     1450 
     1451  private boolean jj_3_1() { 
     1452    if (jj_3R_13()) return true; 
     1453    if (jj_3R_14()) return true; 
     1454    if (jj_scan_token(RSQUARE)) return true; 
     1455    return false; 
     1456  } 
     1457 
     1458  private boolean jj_3R_26() { 
     1459    if (jj_scan_token(MINUS)) return true; 
     1460    if (jj_3R_50()) return true; 
     1461    return false; 
     1462  } 
     1463 
     1464  private boolean jj_3R_16() { 
     1465    Token xsp; 
     1466    xsp = jj_scanpos; 
     1467    if (jj_3R_26()) { 
     1468    jj_scanpos = xsp; 
     1469    if (jj_3R_27()) return true; 
     1470    } 
     1471    return false; 
     1472  } 
     1473 
     1474  private boolean jj_3R_60() { 
     1475    if (jj_scan_token(LPAR)) return true; 
     1476    if (jj_3R_18()) return true; 
     1477    if (jj_3R_19()) return true; 
     1478    if (jj_scan_token(RPAR)) return true; 
     1479    return false; 
     1480  } 
     1481 
     1482  private boolean jj_3R_59() { 
     1483    if (jj_3R_75()) return true; 
     1484    return false; 
     1485  } 
     1486 
     1487  private boolean jj_3R_50() { 
     1488    if (jj_scan_token(UINT)) return true; 
     1489    return false; 
     1490  } 
     1491 
     1492  private boolean jj_3_7() { 
     1493    if (jj_3R_20()) return true; 
     1494    return false; 
     1495  } 
     1496 
     1497  private boolean jj_3R_52() { 
     1498    Token xsp; 
     1499    xsp = jj_scanpos; 
     1500    if (jj_3_7()) { 
     1501    jj_scanpos = xsp; 
     1502    if (jj_3R_59()) { 
     1503    jj_scanpos = xsp; 
     1504    if (jj_3R_60()) return true; 
     1505    } 
     1506    } 
     1507    return false; 
     1508  } 
     1509 
     1510  private boolean jj_3R_72() { 
     1511    if (jj_scan_token(QUESTION)) return true; 
     1512    if (jj_3R_18()) return true; 
     1513    if (jj_3R_52()) return true; 
     1514    if (jj_3R_18()) return true; 
     1515    if (jj_scan_token(COLON)) return true; 
     1516    if (jj_3R_18()) return true; 
     1517    if (jj_3R_52()) return true; 
     1518    if (jj_3R_18()) return true; 
     1519    return false; 
     1520  } 
     1521 
     1522  private boolean jj_3R_71() { 
     1523    if (jj_scan_token(PIPE)) return true; 
     1524    if (jj_scan_token(PIPE)) return true; 
     1525    if (jj_3R_18()) return true; 
     1526    if (jj_3R_52()) return true; 
     1527    if (jj_3R_18()) return true; 
     1528    return false; 
     1529  } 
     1530 
     1531  private boolean jj_3R_70() { 
     1532    if (jj_scan_token(AMPERSAND)) return true; 
     1533    if (jj_scan_token(AMPERSAND)) return true; 
     1534    if (jj_3R_18()) return true; 
     1535    if (jj_3R_52()) return true; 
     1536    if (jj_3R_18()) return true; 
     1537    return false; 
     1538  } 
     1539 
    11191540  private boolean jj_3R_69() { 
    1120     if (jj_3R_47()) return true; 
    1121     return false; 
    1122   } 
    1123  
    1124   private boolean jj_3R_26() { 
     1541    if (jj_scan_token(LESS)) return true; 
     1542    if (jj_3R_18()) return true; 
     1543    if (jj_3R_52()) return true; 
     1544    if (jj_3R_18()) return true; 
     1545    return false; 
     1546  } 
     1547 
     1548  private boolean jj_3R_68() { 
     1549    if (jj_scan_token(EQUAL)) return true; 
     1550    Token xsp; 
     1551    xsp = jj_scanpos; 
     1552    if (jj_scan_token(22)) jj_scanpos = xsp; 
     1553    if (jj_3R_18()) return true; 
     1554    if (jj_3R_52()) return true; 
     1555    if (jj_3R_18()) return true; 
     1556    return false; 
     1557  } 
     1558 
     1559  private boolean jj_3R_67() { 
     1560    if (jj_scan_token(GREATER)) return true; 
     1561    if (jj_3R_18()) return true; 
     1562    if (jj_3R_52()) return true; 
     1563    if (jj_3R_18()) return true; 
     1564    return false; 
     1565  } 
     1566 
     1567  private boolean jj_3R_66() { 
     1568    if (jj_scan_token(LESS_EQUAL)) return true; 
     1569    if (jj_3R_18()) return true; 
     1570    if (jj_3R_52()) return true; 
     1571    if (jj_3R_18()) return true; 
     1572    return false; 
     1573  } 
     1574 
     1575  private boolean jj_3R_79() { 
     1576    if (jj_scan_token(SLASH)) return true; 
     1577    if (jj_3R_18()) return true; 
     1578    if (jj_3R_52()) return true; 
     1579    if (jj_3R_18()) return true; 
     1580    return false; 
     1581  } 
     1582 
     1583  private boolean jj_3R_65() { 
     1584    if (jj_scan_token(GREATER_EQUAL)) return true; 
     1585    if (jj_3R_18()) return true; 
     1586    if (jj_3R_52()) return true; 
     1587    if (jj_3R_18()) return true; 
     1588    return false; 
     1589  } 
     1590 
     1591  private boolean jj_3R_78() { 
     1592    if (jj_scan_token(MINUS)) return true; 
     1593    if (jj_3R_18()) return true; 
     1594    if (jj_3R_52()) return true; 
     1595    if (jj_3R_18()) return true; 
     1596    return false; 
     1597  } 
     1598 
     1599  private boolean jj_3R_64() { 
     1600    Token xsp; 
     1601    if (jj_3R_79()) return true; 
     1602    while (true) { 
     1603      xsp = jj_scanpos; 
     1604      if (jj_3R_79()) { jj_scanpos = xsp; break; } 
     1605    } 
     1606    return false; 
     1607  } 
     1608 
     1609  private boolean jj_3R_77() { 
     1610    if (jj_scan_token(STAR)) return true; 
     1611    if (jj_3R_18()) return true; 
     1612    if (jj_3R_52()) return true; 
     1613    if (jj_3R_18()) return true; 
     1614    return false; 
     1615  } 
     1616 
     1617  private boolean jj_3R_63() { 
     1618    Token xsp; 
     1619    if (jj_3R_78()) return true; 
     1620    while (true) { 
     1621      xsp = jj_scanpos; 
     1622      if (jj_3R_78()) { jj_scanpos = xsp; break; } 
     1623    } 
     1624    return false; 
     1625  } 
     1626 
     1627  private boolean jj_3R_76() { 
     1628    if (jj_scan_token(PLUS)) return true; 
     1629    if (jj_3R_18()) return true; 
     1630    if (jj_3R_52()) return true; 
     1631    if (jj_3R_18()) return true; 
     1632    return false; 
     1633  } 
     1634 
     1635  private boolean jj_3R_62() { 
     1636    Token xsp; 
     1637    if (jj_3R_77()) return true; 
     1638    while (true) { 
     1639      xsp = jj_scanpos; 
     1640      if (jj_3R_77()) { jj_scanpos = xsp; break; } 
     1641    } 
     1642    return false; 
     1643  } 
     1644 
     1645  private boolean jj_3R_53() { 
     1646    Token xsp; 
     1647    xsp = jj_scanpos; 
     1648    if (jj_3R_61()) { 
     1649    jj_scanpos = xsp; 
     1650    if (jj_3R_62()) { 
     1651    jj_scanpos = xsp; 
     1652    if (jj_3R_63()) { 
     1653    jj_scanpos = xsp; 
     1654    if (jj_3R_64()) { 
     1655    jj_scanpos = xsp; 
     1656    if (jj_3R_65()) { 
     1657    jj_scanpos = xsp; 
     1658    if (jj_3R_66()) { 
     1659    jj_scanpos = xsp; 
     1660    if (jj_3R_67()) { 
     1661    jj_scanpos = xsp; 
     1662    if (jj_3R_68()) { 
     1663    jj_scanpos = xsp; 
     1664    if (jj_3R_69()) { 
     1665    jj_scanpos = xsp; 
     1666    if (jj_3R_70()) { 
     1667    jj_scanpos = xsp; 
     1668    if (jj_3R_71()) { 
     1669    jj_scanpos = xsp; 
     1670    if (jj_3R_72()) return true; 
     1671    } 
     1672    } 
     1673    } 
     1674    } 
     1675    } 
     1676    } 
     1677    } 
     1678    } 
     1679    } 
     1680    } 
     1681    } 
     1682    return false; 
     1683  } 
     1684 
     1685  private boolean jj_3R_61() { 
     1686    Token xsp; 
     1687    if (jj_3R_76()) return true; 
     1688    while (true) { 
     1689      xsp = jj_scanpos; 
     1690      if (jj_3R_76()) { jj_scanpos = xsp; break; } 
     1691    } 
     1692    return false; 
     1693  } 
     1694 
     1695  private boolean jj_3R_33() { 
     1696    if (jj_3R_52()) return true; 
     1697    if (jj_3R_18()) return true; 
     1698    Token xsp; 
     1699    xsp = jj_scanpos; 
     1700    if (jj_3R_53()) jj_scanpos = xsp; 
     1701    return false; 
     1702  } 
     1703 
     1704  private boolean jj_3R_32() { 
     1705    if (jj_scan_token(MINUS)) return true; 
     1706    if (jj_3R_18()) return true; 
     1707    if (jj_3R_52()) return true; 
     1708    if (jj_3R_18()) return true; 
     1709    return false; 
     1710  } 
     1711 
     1712  private boolean jj_3R_31() { 
     1713    if (jj_scan_token(EXCLAMATION)) return true; 
     1714    if (jj_3R_18()) return true; 
     1715    if (jj_3R_52()) return true; 
     1716    if (jj_3R_18()) return true; 
     1717    return false; 
     1718  } 
     1719 
     1720  private boolean jj_3_6() { 
     1721    if (jj_3R_19()) return true; 
     1722    Token xsp; 
     1723    xsp = jj_scanpos; 
     1724    if (jj_scan_token(27)) { 
     1725    jj_scanpos = xsp; 
     1726    if (jj_scan_token(13)) return true; 
     1727    } 
     1728    return false; 
     1729  } 
     1730 
     1731  private boolean jj_3R_19() { 
     1732    Token xsp; 
     1733    xsp = jj_scanpos; 
     1734    if (jj_3R_31()) { 
     1735    jj_scanpos = xsp; 
     1736    if (jj_3R_32()) { 
     1737    jj_scanpos = xsp; 
     1738    if (jj_3R_33()) return true; 
     1739    } 
     1740    } 
     1741    return false; 
     1742  } 
     1743 
     1744  private boolean jj_3_5() { 
     1745    if (jj_3R_17()) return true; 
     1746    if (jj_3R_18()) return true; 
     1747    Token xsp; 
     1748    xsp = jj_scanpos; 
     1749    if (jj_scan_token(27)) { 
     1750    jj_scanpos = xsp; 
     1751    if (jj_scan_token(13)) return true; 
     1752    } 
     1753    return false; 
     1754  } 
     1755 
     1756  private boolean jj_3R_29() { 
     1757    if (jj_scan_token(COMMA)) return true; 
     1758    if (jj_3R_14()) return true; 
     1759    if (jj_3R_28()) return true; 
     1760    return false; 
     1761  } 
     1762 
     1763  private boolean jj_3R_48() { 
     1764    if (jj_scan_token(LESS)) return true; 
     1765    return false; 
     1766  } 
     1767 
     1768  private boolean jj_3R_47() { 
     1769    if (jj_scan_token(LESS_EQUAL)) return true; 
     1770    return false; 
     1771  } 
     1772 
     1773  private boolean jj_3R_17() { 
     1774    if (jj_3R_28()) return true; 
     1775    Token xsp; 
     1776    if (jj_3R_29()) return true; 
     1777    while (true) { 
     1778      xsp = jj_scanpos; 
     1779      if (jj_3R_29()) { jj_scanpos = xsp; break; } 
     1780    } 
     1781    return false; 
     1782  } 
     1783 
     1784  private boolean jj_3R_46() { 
     1785    if (jj_scan_token(GREATER)) return true; 
     1786    return false; 
     1787  } 
     1788 
     1789  private boolean jj_3R_44() { 
     1790    if (jj_3R_56()) return true; 
     1791    return false; 
     1792  } 
     1793 
     1794  private boolean jj_3R_45() { 
     1795    if (jj_scan_token(GREATER_EQUAL)) return true; 
     1796    return false; 
     1797  } 
     1798 
     1799  private boolean jj_3R_51() { 
     1800    if (jj_scan_token(COMMENT_START)) return true; 
     1801    if (jj_scan_token(COMMENT_END)) return true; 
     1802    return false; 
     1803  } 
     1804 
     1805  private boolean jj_3R_43() { 
     1806    if (jj_3R_49()) return true; 
     1807    return false; 
     1808  } 
     1809 
     1810  private boolean jj_3R_74() { 
     1811    if (jj_3R_54()) return true; 
     1812    return false; 
     1813  } 
     1814 
     1815  private boolean jj_3R_30() { 
    11251816    Token xsp; 
    11261817    xsp = jj_scanpos; 
    11271818    if (jj_scan_token(9)) { 
    11281819    jj_scanpos = xsp; 
    1129     if (jj_3R_44()) return true; 
    1130     } 
    1131     return false; 
    1132   } 
    1133  
    1134   private boolean jj_3R_16() { 
     1820    if (jj_3R_51()) return true; 
     1821    } 
     1822    return false; 
     1823  } 
     1824 
     1825  private boolean jj_3R_25() { 
     1826    Token xsp; 
     1827    xsp = jj_scanpos; 
     1828    if (jj_3R_45()) { 
     1829    jj_scanpos = xsp; 
     1830    if (jj_3R_46()) { 
     1831    jj_scanpos = xsp; 
     1832    if (jj_3R_47()) { 
     1833    jj_scanpos = xsp; 
     1834    if (jj_3R_48()) return true; 
     1835    } 
     1836    } 
     1837    } 
     1838    if (jj_3R_14()) return true; 
     1839    if (jj_3R_49()) return true; 
     1840    return false; 
     1841  } 
     1842 
     1843  private boolean jj_3R_18() { 
    11351844    Token xsp; 
    11361845    while (true) { 
    11371846      xsp = jj_scanpos; 
    1138       if (jj_3R_26()) { jj_scanpos = xsp; break; } 
    1139     } 
    1140     return false; 
    1141   } 
    1142  
    1143   private boolean jj_3R_37() { 
     1847      if (jj_3R_30()) { jj_scanpos = xsp; break; } 
     1848    } 
     1849    return false; 
     1850  } 
     1851 
     1852  private boolean jj_3_3() { 
     1853    if (jj_3R_16()) return true; 
     1854    return false; 
     1855  } 
     1856 
     1857  private boolean jj_3R_42() { 
    11441858    if (jj_scan_token(STAR)) return true; 
    11451859    if (jj_scan_token(EQUAL)) return true; 
    1146     if (jj_3R_49()) return true; 
    1147     return false; 
    1148   } 
    1149  
    1150   private boolean jj_3R_51() { 
    1151     if (jj_3R_49()) return true; 
    1152     return false; 
    1153   } 
    1154  
    1155   private boolean jj_3R_36() { 
    1156     if (jj_scan_token(DOLLAR)) return true; 
    1157     if (jj_scan_token(EQUAL)) return true; 
    1158     if (jj_3R_49()) return true; 
    1159     return false; 
    1160   } 
    1161  
    1162   private boolean jj_3R_35() { 
    1163     if (jj_scan_token(CARET)) return true; 
    1164     if (jj_scan_token(EQUAL)) return true; 
    1165     if (jj_3R_49()) return true; 
    1166     return false; 
    1167   } 
    1168  
    1169   private boolean jj_3R_23() { 
    1170     Token xsp; 
    1171     xsp = jj_scanpos; 
    1172     if (jj_3R_38()) { 
    1173     jj_scanpos = xsp; 
    1174     if (jj_3R_39()) { 
    1175     jj_scanpos = xsp; 
    1176     if (jj_3R_40()) { 
    1177     jj_scanpos = xsp; 
    1178     if (jj_3R_41()) return true; 
    1179     } 
    1180     } 
    1181     } 
    1182     if (jj_3R_42()) return true; 
    1183     return false; 
    1184   } 
    1185  
    1186   private boolean jj_3R_50() { 
    1187     if (jj_scan_token(TILDE)) return true; 
    1188     if (jj_3R_70()) return true; 
    1189     return false; 
    1190   } 
    1191  
    1192   private boolean jj_3R_34() { 
    1193     if (jj_scan_token(TILDE)) return true; 
    1194     if (jj_scan_token(EQUAL)) return true; 
    1195     if (jj_3R_49()) return true; 
    1196     return false; 
    1197   } 
    1198  
    1199   private boolean jj_3R_43() { 
    1200     Token xsp; 
    1201     xsp = jj_scanpos; 
    1202     if (jj_scan_token(9)) jj_scanpos = xsp; 
    1203     return false; 
    1204   } 
    1205  
    1206   private boolean jj_3R_53() { 
    1207     if (jj_3R_24()) return true; 
    1208     return false; 
    1209   } 
    1210  
    1211   private boolean jj_3R_33() { 
    1212     if (jj_scan_token(EQUAL)) return true; 
    1213     Token xsp; 
    1214     xsp = jj_scanpos; 
    1215     if (jj_3R_50()) { 
    1216     jj_scanpos = xsp; 
    1217     if (jj_3R_51()) return true; 
    1218     } 
    1219     return false; 
    1220   } 
    1221  
    1222   private boolean jj_3R_32() { 
    1223     if (jj_scan_token(EXCLAMATION)) return true; 
    1224     if (jj_scan_token(EQUAL)) return true; 
    1225     if (jj_3R_49()) return true; 
    1226     return false; 
    1227   } 
    1228  
    1229   private boolean jj_3R_70() { 
    1230     if (jj_scan_token(REGEX)) return true; 
    1231     return false; 
    1232   } 
    1233  
    1234   private boolean jj_3R_22() { 
    1235     Token xsp; 
    1236     xsp = jj_scanpos; 
    1237     if (jj_3R_32()) { 
    1238     jj_scanpos = xsp; 
    1239     if (jj_3R_33()) { 
    1240     jj_scanpos = xsp; 
    1241     if (jj_3R_34()) { 
    1242     jj_scanpos = xsp; 
    1243     if (jj_3R_35()) { 
    1244     jj_scanpos = xsp; 
    1245     if (jj_3R_36()) { 
    1246     jj_scanpos = xsp; 
    1247     if (jj_3R_37()) return true; 
    1248     } 
    1249     } 
    1250     } 
    1251     } 
    1252     } 
    1253     return false; 
    1254   } 
    1255  
    1256   private boolean jj_3R_48() { 
    1257     if (jj_scan_token(COLON)) return true; 
    1258     if (jj_scan_token(IDENT)) return true; 
    1259     return false; 
    1260   } 
    1261  
    1262   private boolean jj_3R_49() { 
    1263     Token xsp; 
    1264     xsp = jj_scanpos; 
    1265     if (jj_3R_68()) { 
    1266     jj_scanpos = xsp; 
    1267     if (jj_3R_69()) return true; 
    1268     } 
    1269     return false; 
    1270   } 
    1271  
    1272   private boolean jj_3R_68() { 
    1273     if (jj_scan_token(IDENT)) return true; 
    1274     return false; 
    1275   } 
    1276  
    1277   private boolean jj_3R_14() { 
    1278     if (jj_3R_20()) return true; 
    1279     Token xsp; 
    1280     xsp = jj_scanpos; 
    1281     if (jj_3R_22()) { 
    1282     jj_scanpos = xsp; 
    1283     if (jj_3R_23()) return true; 
    1284     } 
    1285     return false; 
    1286   } 
    1287  
    1288   private boolean jj_3R_80() { 
    1289     if (jj_scan_token(HEXCOLOR)) return true; 
    1290     return false; 
    1291   } 
    1292  
    1293   private boolean jj_3R_47() { 
    1294     if (jj_scan_token(STRING)) return true; 
    1295     return false; 
    1296   } 
    1297  
    1298   private boolean jj_3R_79() { 
    1299     if (jj_3R_24()) return true; 
    1300     return false; 
    1301   } 
    1302  
    1303   private boolean jj_3R_78() { 
    1304     if (jj_scan_token(PLUS)) return true; 
    1305     if (jj_3R_24()) return true; 
    1306     return false; 
    1307   } 
    1308  
    1309   private boolean jj_3R_71() { 
    1310     Token xsp; 
    1311     xsp = jj_scanpos; 
    1312     if (jj_3R_77()) { 
    1313     jj_scanpos = xsp; 
    1314     if (jj_3R_78()) { 
    1315     jj_scanpos = xsp; 
    1316     if (jj_3R_79()) { 
    1317     jj_scanpos = xsp; 
    1318     if (jj_3R_80()) return true; 
    1319     } 
    1320     } 
    1321     } 
    1322     return false; 
    1323   } 
    1324  
    1325   private boolean jj_3R_77() { 
    1326     if (jj_3R_49()) return true; 
    1327     return false; 
    1328   } 
    1329  
    1330   private boolean jj_3R_21() { 
    1331     if (jj_scan_token(QUESTION)) return true; 
    1332     return false; 
    1333   } 
    1334  
    1335   private boolean jj_3R_42() { 
    1336     Token xsp; 
    1337     xsp = jj_scanpos; 
    1338     if (jj_3R_52()) { 
    1339     jj_scanpos = xsp; 
    1340     if (jj_3R_53()) return true; 
    1341     } 
    1342     return false; 
    1343   } 
    1344  
    1345   private boolean jj_3R_52() { 
    1346     if (jj_scan_token(MINUS)) return true; 
    1347     if (jj_3R_24()) return true; 
    1348     return false; 
    1349   } 
    1350  
    1351   private boolean jj_3R_19() { 
    1352     if (jj_scan_token(EXCLAMATION)) return true; 
    1353     return false; 
    1354   } 
    1355  
    1356   private boolean jj_3R_13() { 
    1357     Token xsp; 
    1358     xsp = jj_scanpos; 
    1359     if (jj_3R_19()) jj_scanpos = xsp; 
    1360     if (jj_3R_20()) return true; 
    1361     xsp = jj_scanpos; 
    1362     if (jj_3R_21()) jj_scanpos = xsp; 
    1363     return false; 
    1364   } 
    1365  
    1366   private boolean jj_3R_81() { 
    1367     if (jj_scan_token(COMMA)) return true; 
    1368     if (jj_3R_16()) return true; 
    1369     if (jj_3R_17()) return true; 
    1370     return false; 
    1371   } 
    1372  
    1373   private boolean jj_3R_24() { 
    1374     Token xsp; 
    1375     xsp = jj_scanpos; 
    1376     if (jj_scan_token(3)) { 
    1377     jj_scanpos = xsp; 
    1378     if (jj_scan_token(2)) return true; 
    1379     } 
    1380     return false; 
    1381   } 
    1382  
    1383   private boolean jj_3R_31() { 
    1384     if (jj_scan_token(IDENT)) return true; 
    1385     Token xsp; 
    1386     while (true) { 
    1387       xsp = jj_scanpos; 
    1388       if (jj_3R_48()) { jj_scanpos = xsp; break; } 
    1389     } 
    1390     return false; 
    1391   } 
    1392  
    1393   private boolean jj_3R_30() { 
    1394     if (jj_3R_47()) return true; 
    1395     return false; 
    1396   } 
    1397  
    1398   private boolean jj_3R_20() { 
    1399     Token xsp; 
    1400     xsp = jj_scanpos; 
    1401     if (jj_3R_30()) { 
    1402     jj_scanpos = xsp; 
    1403     if (jj_3R_31()) return true; 
    1404     } 
    1405     return false; 
    1406   } 
    1407  
    1408   private boolean jj_3R_76() { 
    1409     if (jj_3R_17()) return true; 
    1410     Token xsp; 
    1411     while (true) { 
    1412       xsp = jj_scanpos; 
    1413       if (jj_3R_81()) { jj_scanpos = xsp; break; } 
    1414     } 
    1415     return false; 
    1416   } 
    1417  
    1418   private boolean jj_3_2() { 
    1419     if (jj_3R_14()) return true; 
    1420     if (jj_scan_token(RSQUARE)) return true; 
    1421     return false; 
    1422   } 
    1423  
    1424   private boolean jj_3_1() { 
    1425     if (jj_3R_13()) return true; 
    1426     if (jj_scan_token(RSQUARE)) return true; 
    1427     return false; 
    1428   } 
    1429  
    1430   private boolean jj_3R_18() { 
    1431     if (jj_scan_token(IDENT)) return true; 
    1432     if (jj_3R_16()) return true; 
    1433     if (jj_scan_token(LPAR)) return true; 
    1434     if (jj_3R_16()) return true; 
    1435     Token xsp; 
    1436     xsp = jj_scanpos; 
    1437     if (jj_3R_76()) jj_scanpos = xsp; 
    1438     if (jj_scan_token(RPAR)) return true; 
    1439     return false; 
    1440   } 
    1441  
    1442   private boolean jj_3R_55() { 
    1443     if (jj_scan_token(LPAR)) return true; 
    1444     if (jj_3R_16()) return true; 
    1445     if (jj_3R_17()) return true; 
    1446     if (jj_scan_token(RPAR)) return true; 
    1447     return false; 
    1448   } 
    1449  
    1450   private boolean jj_3R_54() { 
    1451     if (jj_3R_71()) return true; 
    1452     return false; 
    1453   } 
    1454  
    1455   private boolean jj_3_5() { 
    1456     if (jj_3R_18()) return true; 
    1457     return false; 
    1458   } 
    1459  
    1460   private boolean jj_3R_45() { 
    1461     Token xsp; 
    1462     xsp = jj_scanpos; 
    1463     if (jj_3_5()) { 
    1464     jj_scanpos = xsp; 
    1465     if (jj_3R_54()) { 
    1466     jj_scanpos = xsp; 
    1467     if (jj_3R_55()) return true; 
    1468     } 
    1469     } 
    1470     return false; 
    1471   } 
    1472  
    1473   private boolean jj_3R_67() { 
    1474     if (jj_scan_token(QUESTION)) return true; 
    1475     if (jj_3R_16()) return true; 
    1476     if (jj_3R_45()) return true; 
    1477     if (jj_3R_16()) return true; 
    1478     if (jj_scan_token(COLON)) return true; 
    1479     if (jj_3R_16()) return true; 
    1480     if (jj_3R_45()) return true; 
    1481     if (jj_3R_16()) return true; 
    1482     return false; 
    1483   } 
    1484  
    1485   private boolean jj_3R_66() { 
    1486     if (jj_scan_token(PIPE)) return true; 
    1487     if (jj_scan_token(PIPE)) return true; 
    1488     if (jj_3R_16()) return true; 
    1489     if (jj_3R_45()) return true; 
    1490     if (jj_3R_16()) return true; 
    1491     return false; 
    1492   } 
    1493  
    1494   private boolean jj_3R_65() { 
    1495     if (jj_scan_token(AMPERSAND)) return true; 
    1496     if (jj_scan_token(AMPERSAND)) return true; 
    1497     if (jj_3R_16()) return true; 
    1498     if (jj_3R_45()) return true; 
    1499     if (jj_3R_16()) return true; 
    1500     return false; 
    1501   } 
    1502  
    1503   private boolean jj_3R_64() { 
    1504     if (jj_scan_token(LESS)) return true; 
    1505     if (jj_3R_16()) return true; 
    1506     if (jj_3R_45()) return true; 
    1507     if (jj_3R_16()) return true; 
    1508     return false; 
    1509   } 
    1510  
    1511   private boolean jj_3R_63() { 
    1512     if (jj_scan_token(EQUAL)) return true; 
    1513     Token xsp; 
    1514     xsp = jj_scanpos; 
    1515     if (jj_scan_token(22)) jj_scanpos = xsp; 
    1516     if (jj_3R_16()) return true; 
    1517     if (jj_3R_45()) return true; 
    1518     if (jj_3R_16()) return true; 
    1519     return false; 
    1520   } 
    1521  
    1522   private boolean jj_3R_62() { 
    1523     if (jj_scan_token(GREATER)) return true; 
    1524     if (jj_3R_16()) return true; 
    1525     if (jj_3R_45()) return true; 
    1526     if (jj_3R_16()) return true; 
    1527     return false; 
    1528   } 
    1529  
    1530   private boolean jj_3R_61() { 
    1531     if (jj_scan_token(LESS_EQUAL)) return true; 
    1532     if (jj_3R_16()) return true; 
    1533     if (jj_3R_45()) return true; 
    1534     if (jj_3R_16()) return true; 
    1535     return false; 
    1536   } 
    1537  
    1538   private boolean jj_3R_60() { 
    1539     if (jj_scan_token(GREATER_EQUAL)) return true; 
    1540     if (jj_3R_16()) return true; 
    1541     if (jj_3R_45()) return true; 
    1542     if (jj_3R_16()) return true; 
    1543     return false; 
    1544   } 
    1545  
    1546   private boolean jj_3R_75() { 
    1547     if (jj_scan_token(SLASH)) return true; 
    1548     if (jj_3R_16()) return true; 
    1549     if (jj_3R_45()) return true; 
    1550     if (jj_3R_16()) return true; 
    1551     return false; 
    1552   } 
    1553  
    1554   private boolean jj_3R_59() { 
    1555     Token xsp; 
    1556     if (jj_3R_75()) return true; 
    1557     while (true) { 
    1558       xsp = jj_scanpos; 
    1559       if (jj_3R_75()) { jj_scanpos = xsp; break; } 
    1560     } 
    1561     return false; 
    1562   } 
    1563  
    1564   private boolean jj_3R_74() { 
    1565     if (jj_scan_token(MINUS)) return true; 
    1566     if (jj_3R_16()) return true; 
    1567     if (jj_3R_45()) return true; 
    1568     if (jj_3R_16()) return true; 
    1569     return false; 
    1570   } 
    1571  
    1572   private boolean jj_3R_58() { 
    1573     Token xsp; 
    1574     if (jj_3R_74()) return true; 
    1575     while (true) { 
    1576       xsp = jj_scanpos; 
    1577       if (jj_3R_74()) { jj_scanpos = xsp; break; } 
    1578     } 
    1579     return false; 
    1580   } 
    1581  
    1582   private boolean jj_3R_73() { 
    1583     if (jj_scan_token(STAR)) return true; 
    1584     if (jj_3R_16()) return true; 
    1585     if (jj_3R_45()) return true; 
    1586     if (jj_3R_16()) return true; 
    1587     return false; 
    1588   } 
    1589  
    1590   private boolean jj_3R_57() { 
    1591     Token xsp; 
    1592     if (jj_3R_73()) return true; 
    1593     while (true) { 
    1594       xsp = jj_scanpos; 
    1595       if (jj_3R_73()) { jj_scanpos = xsp; break; } 
    1596     } 
    1597     return false; 
    1598   } 
    1599  
    1600   private boolean jj_3R_72() { 
    1601     if (jj_scan_token(PLUS)) return true; 
    1602     if (jj_3R_16()) return true; 
    1603     if (jj_3R_45()) return true; 
    1604     if (jj_3R_16()) return true; 
    1605     return false; 
    1606   } 
    1607  
    1608   private boolean jj_3R_46() { 
    1609     Token xsp; 
    1610     xsp = jj_scanpos; 
    1611     if (jj_3R_56()) { 
    1612     jj_scanpos = xsp; 
    1613     if (jj_3R_57()) { 
    1614     jj_scanpos = xsp; 
    1615     if (jj_3R_58()) { 
    1616     jj_scanpos = xsp; 
    1617     if (jj_3R_59()) { 
    1618     jj_scanpos = xsp; 
    1619     if (jj_3R_60()) { 
    1620     jj_scanpos = xsp; 
    1621     if (jj_3R_61()) { 
    1622     jj_scanpos = xsp; 
    1623     if (jj_3R_62()) { 
    1624     jj_scanpos = xsp; 
    1625     if (jj_3R_63()) { 
    1626     jj_scanpos = xsp; 
    1627     if (jj_3R_64()) { 
    1628     jj_scanpos = xsp; 
    1629     if (jj_3R_65()) { 
    1630     jj_scanpos = xsp; 
    1631     if (jj_3R_66()) { 
    1632     jj_scanpos = xsp; 
    1633     if (jj_3R_67()) return true; 
    1634     } 
    1635     } 
    1636     } 
    1637     } 
    1638     } 
    1639     } 
    1640     } 
    1641     } 
    1642     } 
    1643     } 
    1644     } 
    1645     return false; 
    1646   } 
    1647  
    1648   private boolean jj_3R_56() { 
    1649     Token xsp; 
    1650     if (jj_3R_72()) return true; 
    1651     while (true) { 
    1652       xsp = jj_scanpos; 
    1653       if (jj_3R_72()) { jj_scanpos = xsp; break; } 
    1654     } 
    1655     return false; 
    1656   } 
    1657  
    1658   private boolean jj_3R_29() { 
    1659     if (jj_3R_45()) return true; 
    1660     if (jj_3R_16()) return true; 
    1661     Token xsp; 
    1662     xsp = jj_scanpos; 
    1663     if (jj_3R_46()) jj_scanpos = xsp; 
    1664     return false; 
    1665   } 
    1666  
    1667   private boolean jj_3R_28() { 
    1668     if (jj_scan_token(MINUS)) return true; 
    1669     if (jj_3R_16()) return true; 
    1670     if (jj_3R_45()) return true; 
    1671     if (jj_3R_16()) return true; 
    1672     return false; 
    1673   } 
    1674  
    1675   private boolean jj_3R_27() { 
    1676     if (jj_scan_token(EXCLAMATION)) return true; 
    1677     if (jj_3R_16()) return true; 
    1678     if (jj_3R_45()) return true; 
    1679     if (jj_3R_16()) return true; 
    1680     return false; 
    1681   } 
    1682  
    1683   private boolean jj_3_4() { 
    1684     if (jj_3R_17()) return true; 
    1685     Token xsp; 
    1686     xsp = jj_scanpos; 
    1687     if (jj_scan_token(27)) { 
    1688     jj_scanpos = xsp; 
    1689     if (jj_scan_token(13)) return true; 
    1690     } 
    1691     return false; 
    1692   } 
    1693  
    1694   private boolean jj_3R_17() { 
    1695     Token xsp; 
    1696     xsp = jj_scanpos; 
    1697     if (jj_3R_27()) { 
    1698     jj_scanpos = xsp; 
    1699     if (jj_3R_28()) { 
    1700     jj_scanpos = xsp; 
    1701     if (jj_3R_29()) return true; 
    1702     } 
    1703     } 
    1704     return false; 
    1705   } 
    1706  
    1707   private boolean jj_3_3() { 
    1708     if (jj_3R_15()) return true; 
    1709     if (jj_3R_16()) return true; 
    1710     Token xsp; 
    1711     xsp = jj_scanpos; 
    1712     if (jj_scan_token(27)) { 
    1713     jj_scanpos = xsp; 
    1714     if (jj_scan_token(13)) return true; 
    1715     } 
    1716     return false; 
    1717   } 
    1718  
    1719   private boolean jj_3R_25() { 
    1720     if (jj_scan_token(COMMA)) return true; 
    1721     if (jj_3R_43()) return true; 
    1722     if (jj_3R_24()) return true; 
    1723     return false; 
    1724   } 
    1725  
    1726   private boolean jj_3R_15() { 
    1727     if (jj_3R_24()) return true; 
    1728     Token xsp; 
    1729     if (jj_3R_25()) return true; 
    1730     while (true) { 
    1731       xsp = jj_scanpos; 
    1732       if (jj_3R_25()) { jj_scanpos = xsp; break; } 
    1733     } 
    1734     return false; 
    1735   } 
    1736  
    1737   private boolean jj_3R_41() { 
    1738     if (jj_scan_token(LESS)) return true; 
    1739     return false; 
    1740   } 
    1741  
    1742   private boolean jj_3R_44() { 
    1743     if (jj_scan_token(COMMENT_START)) return true; 
    1744     if (jj_scan_token(COMMENT_END)) return true; 
    1745     return false; 
    1746   } 
    1747  
    1748   private boolean jj_3R_40() { 
    1749     if (jj_scan_token(LESS_EQUAL)) return true; 
    1750     return false; 
    1751   } 
    1752  
    1753   private boolean jj_3R_39() { 
    1754     if (jj_scan_token(GREATER)) return true; 
    1755     return false; 
    1756   } 
    1757  
    1758   private boolean jj_3R_38() { 
    1759     if (jj_scan_token(GREATER_EQUAL)) return true; 
     1860    if (jj_3R_56()) return true; 
    17601861    return false; 
    17611862  } 
     
    17721873  private int jj_la; 
    17731874  private int jj_gen; 
    1774   final private int[] jj_la1 = new int[45]; 
     1875  final private int[] jj_la1 = new int[46]; 
    17751876  static private int[] jj_la1_0; 
    17761877  static private int[] jj_la1_1; 
     
    17801881   } 
    17811882   private static void jj_la1_init_0() { 
    1782       jj_la1_0 = new int[] {0xc,0xc,0x12,0x200,0x200,0x200,0x10000000,0x402,0x10000000,0x300000,0x300000,0x402,0x40000000,0x2804000,0x2804000,0x4000000,0x4,0x0,0x4,0x8081011e,0x2000000,0x12,0x800000,0x0,0x1000012,0x1c00400,0x3c0000,0x1fc0400,0x800000,0x402,0x2,0x8002000,0x8002000,0x80000000,0x400,0x0,0x800,0x400000,0xa07c0c00,0xa07c0c00,0x8081011e,0x8001011e,0x10000000,0x8081011e,0x8000011e,}; 
     1883      jj_la1_0 = new int[] {0x4,0xc,0xc,0x12,0x200,0x200,0x200,0x10000000,0x402,0x10000000,0x300000,0x300000,0x402,0x40000000,0x2804000,0x2804000,0x4000000,0x4,0x0,0x4,0x8081011e,0x2000000,0x12,0x800000,0x0,0x1c00400,0x1e,0x3c0000,0x1fc0400,0x800000,0x402,0x2,0x8002000,0x8002000,0x80000000,0x400,0x0,0x800,0x400000,0xa07c0c00,0xa07c0c00,0x8081011e,0x8001011e,0x10000000,0x8081011e,0x8000011e,}; 
    17831884   } 
    17841885   private static void jj_la1_init_1() { 
    1785       jj_la1_1 = new int[] {0x0,0x1,0x0,0x0,0x20,0x20,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1,0x1,0x1,0x0,0x0,0x0,0x4,0x0,0x18,0x0,0x18,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1,0x0,0x0,0x7,0x7,0x1,0x0,0x0,0x1,0x0,}; 
     1886      jj_la1_1 = new int[] {0x1,0x0,0x1,0x0,0x0,0x20,0x20,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1,0x1,0x1,0x0,0x0,0x0,0x4,0x18,0x1,0x0,0x18,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1,0x0,0x0,0x7,0x7,0x1,0x0,0x0,0x1,0x0,}; 
    17861887   } 
    1787   final private JJCalls[] jj_2_rtns = new JJCalls[5]; 
     1888  final private JJCalls[] jj_2_rtns = new JJCalls[7]; 
    17881889  private boolean jj_rescan = false; 
    17891890  private int jj_gc = 0; 
     
    18001901    jj_ntk = -1; 
    18011902    jj_gen = 0; 
    1802     for (int i = 0; i < 45; i++) jj_la1[i] = -1; 
     1903    for (int i = 0; i < 46; i++) jj_la1[i] = -1; 
    18031904    for (int i = 0; i < jj_2_rtns.length; i++) jj_2_rtns[i] = new JJCalls(); 
    18041905  } 
     
    18151916    jj_ntk = -1; 
    18161917    jj_gen = 0; 
    1817     for (int i = 0; i < 45; i++) jj_la1[i] = -1; 
     1918    for (int i = 0; i < 46; i++) jj_la1[i] = -1; 
    18181919    for (int i = 0; i < jj_2_rtns.length; i++) jj_2_rtns[i] = new JJCalls(); 
    18191920  } 
     
    18261927    jj_ntk = -1; 
    18271928    jj_gen = 0; 
    1828     for (int i = 0; i < 45; i++) jj_la1[i] = -1; 
     1929    for (int i = 0; i < 46; i++) jj_la1[i] = -1; 
    18291930    for (int i = 0; i < jj_2_rtns.length; i++) jj_2_rtns[i] = new JJCalls(); 
    18301931  } 
     
    18371938    jj_ntk = -1; 
    18381939    jj_gen = 0; 
    1839     for (int i = 0; i < 45; i++) jj_la1[i] = -1; 
     1940    for (int i = 0; i < 46; i++) jj_la1[i] = -1; 
    18401941    for (int i = 0; i < jj_2_rtns.length; i++) jj_2_rtns[i] = new JJCalls(); 
    18411942  } 
     
    18471948    jj_ntk = -1; 
    18481949    jj_gen = 0; 
    1849     for (int i = 0; i < 45; i++) jj_la1[i] = -1; 
     1950    for (int i = 0; i < 46; i++) jj_la1[i] = -1; 
    18501951    for (int i = 0; i < jj_2_rtns.length; i++) jj_2_rtns[i] = new JJCalls(); 
    18511952  } 
     
    18571958    jj_ntk = -1; 
    18581959    jj_gen = 0; 
    1859     for (int i = 0; i < 45; i++) jj_la1[i] = -1; 
     1960    for (int i = 0; i < 46; i++) jj_la1[i] = -1; 
    18601961    for (int i = 0; i < jj_2_rtns.length; i++) jj_2_rtns[i] = new JJCalls(); 
    18611962  } 
     
    19742075      jj_kind = -1; 
    19752076    } 
    1976     for (int i = 0; i < 45; i++) { 
     2077    for (int i = 0; i < 46; i++) { 
    19772078      if (jj_la1[i] == jj_gen) { 
    19782079        for (int j = 0; j < 32; j++) { 
     
    20132114  private void jj_rescan_token() { 
    20142115    jj_rescan = true; 
    2015     for (int i = 0; i < 5; i++) { 
     2116    for (int i = 0; i < 7; i++) { 
    20162117    try { 
    20172118      JJCalls p = jj_2_rtns[i]; 
     
    20252126            case 3: jj_3_4(); break; 
    20262127            case 4: jj_3_5(); break; 
     2128            case 5: jj_3_6(); break; 
     2129            case 6: jj_3_7(); break; 
    20272130          } 
    20282131        } 
  • trunk/src/org/openstreetmap/josm/gui/mappaint/mapcss/parser/MapCSSParser.jj

    r3902 r3911  
    119119} 
    120120 
     121int int_() : 
     122{ 
     123    int i; 
     124} 
     125{ 
     126    <MINUS> i=uint() { return -i; } | i=uint() { return i; } 
     127} 
     128 
    121129float ufloat() : 
    122130{ 
     
    291299} 
    292300{ 
    293     <LSQUARE> 
    294     ( 
    295         LOOKAHEAD( simple_key_condition() <RSQUARE> ) 
    296             c=simple_key_condition() <RSQUARE> { return c; } 
     301    <LSQUARE> s() 
     302    ( 
     303        LOOKAHEAD( simple_key_condition() s() <RSQUARE> ) 
     304            c=simple_key_condition() s() <RSQUARE> { return c; } 
    297305        | 
    298         LOOKAHEAD( simple_key_value_condition() <RSQUARE> ) 
    299             c=simple_key_value_condition() <RSQUARE> { return c; } 
     306        LOOKAHEAD( simple_key_value_condition() s() <RSQUARE> ) 
     307            c=simple_key_value_condition() s() <RSQUARE> { return c; } 
    300308        | 
    301309            e=expression() <RSQUARE> { return new Condition.ExpressionCondition(e); } 
     
    332340    String val; 
    333341    float f; 
     342    int i; 
    334343    Condition.Op op; 
    335344} 
    336345{ 
    337     key=tag_key() 
    338     ( 
     346    key=tag_key() s() 
     347    ( 
     348        LOOKAHEAD(2) 
     349            <EQUAL> <TILDE> { op=Condition.Op.REGEX; } s() val=regex() 
     350        | 
    339351            ( 
    340                     <EXCLAMATION> <EQUAL> { op=Condition.Op.NEQ; } val=string_or_ident() 
     352                    <EXCLAMATION> <EQUAL> { op=Condition.Op.NEQ; } 
    341353                | 
    342354                    <EQUAL> { op=Condition.Op.EQ; } 
    343                     ( 
    344                             <TILDE> { op=Condition.Op.REGEX; } 
    345                             val=regex() 
    346                         | 
    347                             val=string_or_ident() 
    348                     ) 
    349355                | 
    350356                    <TILDE> <EQUAL> { op=Condition.Op.ONE_OF; } val=string_or_ident() 
     
    356362                    <STAR> <EQUAL> { op=Condition.Op.CONTAINS; } val=string_or_ident() 
    357363            ) 
    358             { return new Condition.KeyValueCondition(key, val, op); } 
     364            s() 
     365            (  
     366                LOOKAHEAD(2)  
     367                        i=int_() { val=Integer.toString(i); } 
     368                    |  
     369                        f=float_() { val=Float.toString(f); }  
     370                    | 
     371                        val=string_or_ident()  
     372            ) 
    359373        | 
    360374            ( 
     
    367381                    <LESS> { op=Condition.Op.LESS; } 
    368382            ) 
    369             f=float_() 
    370             { return new Condition.KeyValueCondition(key, Float.toString(f), op); } 
     383            s() 
     384            f=float_() { val=Float.toString(f); } 
    371385    ) 
     386    { return new Condition.KeyValueCondition(key, val, op); } 
    372387} 
    373388 
Note: See TracChangeset for help on using the changeset viewer.