Give number parsing functions more meaningful names

This commit is contained in:
apio 2022-12-17 12:12:58 +01:00
parent cf3b2176f0
commit 48fcb8734a
Signed by: asleepymoon
GPG Key ID: B8A7D06E42258954
3 changed files with 15 additions and 14 deletions

View File

@ -1,7 +1,7 @@
#pragma once
#include <luna/Types.h>
usize _atou(const char** str);
isize _atos(const char** str);
usize _strtou(const char* str, const char** endptr, int base);
isize _strtoi(const char* str, const char** endptr, int base);
usize scan_unsigned_integer(const char** str);
isize scan_signed_integer(const char** str);
usize parse_unsigned_integer(const char* str, const char** endptr, int base);
isize parse_signed_integer(const char* str, const char** endptr, int base);

View File

@ -107,7 +107,7 @@ static usize parse_width(const char** format, flags_t& flags, va_list ap)
{
usize result = 0;
if (_isdigit(**format)) result = _atou(format);
if (_isdigit(**format)) result = scan_unsigned_integer(format);
else if (**format == '*')
{
const int width = va_arg(ap, int);
@ -132,7 +132,7 @@ static usize parse_precision(const char** format, flags_t& flags, va_list ap)
flags |= FLAG_USE_PRECISION;
if (_isdigit(**format)) result = _atou(format);
if (_isdigit(**format)) result = scan_unsigned_integer(format);
else if (**format == '*')
{
const int precision = va_arg(ap, int);

View File

@ -16,7 +16,7 @@ static bool is_valid_digit_for_base(int base, char c)
return true;
}
usize _strtou(const char* str, const char** endptr, int base)
usize parse_unsigned_integer(const char* str, const char** endptr, int base)
{
usize val = 0;
@ -47,7 +47,7 @@ usize _strtou(const char* str, const char** endptr, int base)
return val;
}
isize _strtoi(const char* str, const char** endptr, int base)
isize parse_signed_integer(const char* str, const char** endptr, int base)
{
bool negative = false;
@ -59,18 +59,19 @@ isize _strtoi(const char* str, const char** endptr, int base)
str++;
}
usize rc = _strtou(str, endptr,
usize rc = parse_unsigned_integer(
str, endptr,
base); // FIXME: Check for overflow (the unsigned usize value might not fit into a signed isize)
return negative ? -(isize)rc : (isize)rc;
}
usize _atou(const char** str)
usize scan_unsigned_integer(const char** str)
{
return _strtou(*str, str, 10);
return parse_unsigned_integer(*str, str, 10);
}
isize _atos(const char** str)
isize scan_signed_integer(const char** str)
{
return _strtoi(*str, str, 10);
return parse_signed_integer(*str, str, 10);
}