passing scanner
This commit is contained in:
@@ -335,12 +335,26 @@ bool scanner_print_errors(scanner_t *s, FILE *fp) {
|
||||
|
||||
bool looks_like_float(scanner_t *s) {
|
||||
const char *cur = s->cur;
|
||||
if (*cur == '+' || *cur == '-') cur++;
|
||||
if (!isdigit((unsigned char)*(cur++))) return false;
|
||||
while (isdigit((unsigned char)*(cur++)));
|
||||
if (*cur != '.') return false;
|
||||
cur++;
|
||||
return isdigit((unsigned char)*cur);
|
||||
if (
|
||||
((*cur) == '+') ||
|
||||
((*cur) == '-')
|
||||
) {
|
||||
cur++;
|
||||
}
|
||||
if (!isdigit(((unsigned char)*cur))) {
|
||||
return false;
|
||||
} else {
|
||||
cur++;
|
||||
}
|
||||
while (isdigit(((unsigned char)*cur))) {
|
||||
cur++;
|
||||
}
|
||||
if ((*cur) != '.') {
|
||||
return false;
|
||||
} else {
|
||||
cur++;
|
||||
}
|
||||
return isdigit(((unsigned char)*cur));
|
||||
}
|
||||
|
||||
bool looks_like_int(scanner_t *s) {
|
||||
|
||||
Reference in New Issue
Block a user