Maintenance Ruby 3.4 gets fixes, but no new features. Switch to Ruby 4.0 →
instance method
StringScanner#scan_base10_integer
scan_base10_integer
ext/strscan/strscan.c
View on GitHub ↗
static VALUE
strscan_scan_base10_integer(VALUE self)
{
char *ptr;
long len = 0;
struct strscanner *p;
GET_SCANNER(self, p);
CLEAR_MATCH_STATUS(p);
strscan_must_ascii_compat(p->str);
ptr = CURPTR(p);
long remaining_len = S_RESTLEN(p);
if (remaining_len <= 0) {
return Qnil;
}
if (ptr[len] == '-' || ptr[len] == '+') {
len++;
}
if (!rb_isdigit(ptr[len])) {
return Qnil;
}
MATCHED(p);
p->prev = p->curr;
while (len < remaining_len && rb_isdigit(ptr[len])) {
len++;
}
return strscan_parse_integer(p, 10, len);
}
No documentation available