mirror of
https://github.com/RGBCube/serenity
synced 2025-05-14 09:14:58 +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:
parent
a4ecc65398
commit
e2e7c4d574
155 changed files with 397 additions and 412 deletions
|
@ -616,7 +616,7 @@ ErrorOr<int> serenity_main(Main::Arguments arguments)
|
|||
|
||||
auto const& sequence = sequence_value.value();
|
||||
|
||||
if (sequence.to_uint().has_value()) {
|
||||
if (sequence.to_number<unsigned>().has_value()) {
|
||||
modifier_buffer.append(sequence);
|
||||
} else {
|
||||
if (sequence == "" || sequence == "q" || sequence == "Q") {
|
||||
|
@ -624,28 +624,28 @@ ErrorOr<int> serenity_main(Main::Arguments arguments)
|
|||
} else if (sequence == "j" || sequence == "\e[B" || sequence == "\n") {
|
||||
if (!emulate_more) {
|
||||
if (!modifier_buffer.is_empty())
|
||||
pager.down_n(modifier_buffer.to_byte_string().to_uint().value_or(1));
|
||||
pager.down_n(modifier_buffer.to_byte_string().to_number<unsigned>().value_or(1));
|
||||
else
|
||||
pager.down();
|
||||
}
|
||||
} else if (sequence == "k" || sequence == "\e[A") {
|
||||
if (!emulate_more) {
|
||||
if (!modifier_buffer.is_empty())
|
||||
pager.up_n(modifier_buffer.to_byte_string().to_uint().value_or(1));
|
||||
pager.up_n(modifier_buffer.to_byte_string().to_number<unsigned>().value_or(1));
|
||||
else
|
||||
pager.up();
|
||||
}
|
||||
} else if (sequence == "g") {
|
||||
if (!emulate_more) {
|
||||
if (!modifier_buffer.is_empty())
|
||||
pager.go_to_line(modifier_buffer.to_byte_string().to_uint().value());
|
||||
pager.go_to_line(modifier_buffer.to_byte_string().to_number<unsigned>().value());
|
||||
else
|
||||
pager.top();
|
||||
}
|
||||
} else if (sequence == "G") {
|
||||
if (!emulate_more) {
|
||||
if (!modifier_buffer.is_empty())
|
||||
pager.go_to_line(modifier_buffer.to_byte_string().to_uint().value());
|
||||
pager.go_to_line(modifier_buffer.to_byte_string().to_number<unsigned>().value());
|
||||
else
|
||||
pager.bottom();
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue