()
| 1209 | } |
| 1210 | |
| 1211 | protected void semic() { |
| 1212 | if (la() == EOF) { |
| 1213 | return; |
| 1214 | } else if (la() == RIGHT_BRACE) { |
| 1215 | return; |
| 1216 | } else if (la() == SEMICOLON) { |
| 1217 | consume(SEMICOLON); |
| 1218 | } else { |
| 1219 | Token next = consume(false); |
| 1220 | switch (next.getType()) { |
| 1221 | case CRNL: |
| 1222 | case CR: |
| 1223 | case NL: |
| 1224 | case PARAGRAPH_SEPARATOR: |
| 1225 | case LINE_SEPARATOR: |
| 1226 | break; |
| 1227 | default: |
| 1228 | throw new SyntaxError(next, "semicolon expected but saw: " + next); |
| 1229 | } |
| 1230 | } |
| 1231 | } |
| 1232 | |
| 1233 | public BlockStatement block() { |
| 1234 | try { |
no test coverage detected