1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-07-28 02:57:44 +00:00

Everywhere: Use to_number<T> instead of to_{int,uint,float,double}

In a bunch of cases, this actually ends up simplifying the code as
to_number will handle something such as:

```
Optional<I> opt;
if constexpr (IsSigned<I>)
    opt = view.to_int<I>();
else
    opt = view.to_uint<I>();
```

For us.

The main goal here however is to have a single generic number conversion
API between all of the String classes.
This commit is contained in:
Shannon Booth 2023-12-23 15:59:14 +13:00 committed by Andreas Kling
parent a4ecc65398
commit e2e7c4d574
155 changed files with 397 additions and 412 deletions

View file

@ -88,7 +88,7 @@ static bool parse_grpdb_entry(char* buffer, size_t buffer_size, struct group& gr
auto& gid_string = parts[2];
StringView members_string = parts[3];
auto gid = gid_string.to_uint();
auto gid = gid_string.to_number<gid_t>();
if (!gid.has_value()) {
warnln("parse_grpdb_entry(): Malformed GID on line {}", s_line_number);
return false;

View file

@ -767,7 +767,7 @@ static bool fill_getproto_buffers(char const* line, ssize_t read)
}
__getproto_name_buffer = split_line[0];
auto number = split_line[1].to_int();
auto number = split_line[1].to_number<int>();
if (!number.has_value())
return false;

View file

@ -88,12 +88,12 @@ static bool parse_pwddb_entry(char* raw_line, struct passwd& passwd_entry)
auto& dir = parts[5];
auto& shell = parts[6];
auto uid = uid_string.to_uint();
auto uid = uid_string.to_number<uid_t>();
if (!uid.has_value()) {
dbgln("getpwent(): Malformed UID on line {}", s_line_number);
return false;
}
auto gid = gid_string.to_uint();
auto gid = gid_string.to_number<gid_t>();
if (!gid.has_value()) {
dbgln("getpwent(): Malformed GID on line {}", s_line_number);
return false;

View file

@ -410,7 +410,7 @@ extern "C" int vsscanf(char const* input, char const* format, va_list ap)
[[maybe_unused]] int width_specifier = 0;
if (format_lexer.next_is(isdigit)) {
auto width_digits = format_lexer.consume_while([](char c) { return isdigit(c); });
width_specifier = width_digits.to_int().value();
width_specifier = width_digits.to_number<int>().value();
// FIXME: Actually use width specifier
}

View file

@ -79,7 +79,7 @@ static bool parse_shadow_entry(ByteString const& line)
auto& expire_string = parts[7];
auto& flag_string = parts[8];
auto lstchg = lstchg_string.to_int();
auto lstchg = lstchg_string.to_number<int>();
if (!lstchg.has_value()) {
dbgln("getspent(): Malformed lstchg on line {}", s_line_number);
return false;
@ -87,7 +87,7 @@ static bool parse_shadow_entry(ByteString const& line)
if (min_string.is_empty())
min_string = "-1"sv;
auto min_value = min_string.to_int();
auto min_value = min_string.to_number<int>();
if (!min_value.has_value()) {
dbgln("getspent(): Malformed min value on line {}", s_line_number);
return false;
@ -95,7 +95,7 @@ static bool parse_shadow_entry(ByteString const& line)
if (max_string.is_empty())
max_string = "-1"sv;
auto max_value = max_string.to_int();
auto max_value = max_string.to_number<int>();
if (!max_value.has_value()) {
dbgln("getspent(): Malformed max value on line {}", s_line_number);
return false;
@ -103,7 +103,7 @@ static bool parse_shadow_entry(ByteString const& line)
if (warn_string.is_empty())
warn_string = "-1"sv;
auto warn = warn_string.to_int();
auto warn = warn_string.to_number<int>();
if (!warn.has_value()) {
dbgln("getspent(): Malformed warn on line {}", s_line_number);
return false;
@ -111,7 +111,7 @@ static bool parse_shadow_entry(ByteString const& line)
if (inact_string.is_empty())
inact_string = "-1"sv;
auto inact = inact_string.to_int();
auto inact = inact_string.to_number<int>();
if (!inact.has_value()) {
dbgln("getspent(): Malformed inact on line {}", s_line_number);
return false;
@ -119,7 +119,7 @@ static bool parse_shadow_entry(ByteString const& line)
if (expire_string.is_empty())
expire_string = "-1"sv;
auto expire = expire_string.to_int();
auto expire = expire_string.to_number<int>();
if (!expire.has_value()) {
dbgln("getspent(): Malformed expire on line {}", s_line_number);
return false;
@ -127,7 +127,7 @@ static bool parse_shadow_entry(ByteString const& line)
if (flag_string.is_empty())
flag_string = "0"sv;
auto flag = flag_string.to_int();
auto flag = flag_string.to_number<int>();
if (!flag.has_value()) {
dbgln("getspent(): Malformed flag on line {}", s_line_number);
return false;