(PushbackReader r, char initch)
| 204 | } |
| 205 | |
| 206 | static private Object readNumber(PushbackReader r, char initch) { |
| 207 | StringBuilder sb = new StringBuilder(); |
| 208 | sb.append(initch); |
| 209 | |
| 210 | for(; ;) |
| 211 | { |
| 212 | int ch = read1(r); |
| 213 | if(ch == -1 || isWhitespace(ch) || isMacro(ch)) |
| 214 | { |
| 215 | unread(r, ch); |
| 216 | break; |
| 217 | } |
| 218 | sb.append((char) ch); |
| 219 | } |
| 220 | |
| 221 | String s = sb.toString(); |
| 222 | Object n = matchNumber(s); |
| 223 | if(n == null) |
| 224 | throw new NumberFormatException("Invalid number: " + s); |
| 225 | return n; |
| 226 | } |
| 227 | |
| 228 | static private int readUnicodeChar(String token, int offset, int length, int base) { |
| 229 | if(token.length() != offset + length) |
no test coverage detected