Changeset 3867 in josm for trunk/src/org/openstreetmap/josm/gui/mappaint/mapcss/parser/MapCSSParser.jj
- Timestamp:
- 2011-02-07T16:05:37+01:00 (15 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/org/openstreetmap/josm/gui/mappaint/mapcss/parser/MapCSSParser.jj
r3863 r3867 48 48 | < LPAR: "(" > 49 49 | < RPAR: ")" > 50 | < GREATER_EQUAL: ">=" > 51 | < LESS_EQUAL: "<=" > 52 | < GREATER: ">" > 53 | < LESS: "<" > 50 54 | < EQUAL: "=" > 51 55 | < EXCLAMATION: "!" > … … 188 192 { this.sheet = sheet; } 189 193 w() 190 ( r=rule() { sheet.rules.add(r); } w() )* 194 ( r=rule() { if (r != null) { sheet.rules.add(r); } } w() )* 191 195 <EOF> 192 196 } … … 199 203 } 200 204 { 201 sel=selector() { selectors.add(sel); } w() 202 ( 203 <COMMA> w() 205 try { 204 206 sel=selector() { selectors.add(sel); } w() 205 )* 207 ( 208 <COMMA> w() 209 sel=selector() { selectors.add(sel); } w() 210 )* 211 } catch (ParseException ex) { 212 error_skipto(RBRACE); 213 return null; 214 } 206 215 decl=declaration() 207 216 { return new MapCSSRule(selectors, decl); } … … 298 307 } 299 308 { 300 <DCOLON>309 ( <SLASH> | <DCOLON> ) 301 310 ( t=<IDENT> | t=<STAR> ) 302 311 { return t.image; } … … 354 363 } 355 364 { 356 e=primary() { args.add(e); } w()357 365 ( 358 ( <PLUS> { op = "plus"; } w() e=primary() { args.add(e); } w() )+ 359 | 360 ( <STAR> { op = "times"; } w() e=primary() { args.add(e); } w() )+ 361 | 362 ( <MINUS> { op = "minus"; } w() e=primary() { args.add(e); } w() )+ 363 | 364 ( <SLASH> { op = "divided_by"; } w() e=primary() { args.add(e); } w() )+ 365 | 366 ( <AMPERSAND> <AMPERSAND> { op = "and"; } w() e=primary() { args.add(e); } w() ) 367 | 368 ( <PIPE> <PIPE> { op = "or"; } w() e=primary() { args.add(e); } w() ) 369 | 370 ( <QUESTION> { op = "cond"; } w() e=primary() { args.add(e); } w() <COLON> w() e=primary() { args.add(e); } w() ) 371 )? 366 ( <EXCLAMATION> { op = "not"; } w() e=primary() { args.add(e); } w() ) 367 | 368 ( <MINUS> { op = "minus"; } w() e=primary() { args.add(e); } w() ) 369 | 370 371 ( 372 e=primary() { args.add(e); } w() 373 ( 374 ( <PLUS> { op = "plus"; } w() e=primary() { args.add(e); } w() )+ 375 | 376 ( <STAR> { op = "times"; } w() e=primary() { args.add(e); } w() )+ 377 | 378 ( <MINUS> { op = "minus"; } w() e=primary() { args.add(e); } w() )+ 379 | 380 ( <SLASH> { op = "divided_by"; } w() e=primary() { args.add(e); } w() )+ 381 | 382 ( <GREATER_EQUAL> { op = "greater_equal"; } w() e=primary() { args.add(e); } w() ) 383 | 384 ( <LESS_EQUAL> { op = "less_equal"; } w() e=primary() { args.add(e); } w() ) 385 | 386 ( <GREATER> { op = "greater"; } w() e=primary() { args.add(e); } w() ) 387 | 388 ( <EQUAL> ( <EQUAL> )? { op = "equal"; } w() e=primary() { args.add(e); } w() ) 389 | 390 ( <LESS> { op = "less"; } w() e=primary() { args.add(e); } w() ) 391 | 392 ( <AMPERSAND> <AMPERSAND> { op = "and"; } w() e=primary() { args.add(e); } w() ) 393 | 394 ( <PIPE> <PIPE> { op = "or"; } w() e=primary() { args.add(e); } w() ) 395 | 396 ( <QUESTION> { op = "cond"; } w() e=primary() { args.add(e); } w() <COLON> w() e=primary() { args.add(e); } w() ) 397 )? 398 ) 399 ) 372 400 { 373 401 if (op == null) … … 420 448 | 421 449 ( <PLUS> f=ufloat() ) { return new Instruction.RelativeFloat(f); } 422 |423 ( <MINUS> f=ufloat() ) { return -f; }424 450 | 425 451 f=ufloat() { return f; } … … 447 473 do { 448 474 t = getNextToken(); 449 } while (t.kind != kind); 450 } 451 475 } while (t.kind != kind && t.kind != EOF); 476 if (t.kind == EOF) 477 throw new ParseException("Reached end of file while parsing"); 478 } 479
Note:
See TracChangeset
for help on using the changeset viewer.
