mirror of
https://github.com/SerenityOS/serenity
synced 2026-04-25 17:15:42 +02:00
AK: Make String::number() infallible
This API will always succeed in creating a String representing the provided number in base-10. (cherry picked from commit dd419b5a8df3b9a32478c4a8f0ea9f70334214cd; amended to update the rest of the system. No conflicts though!)
This commit is contained in:
committed by
Nico Weber
parent
fa5b2e8661
commit
073b3b992d
@@ -167,9 +167,9 @@ public:
|
||||
[[nodiscard]] u32 ascii_case_insensitive_hash() const;
|
||||
|
||||
template<Arithmetic T>
|
||||
static ErrorOr<String> number(T value)
|
||||
[[nodiscard]] static String number(T value)
|
||||
{
|
||||
return formatted("{}", value);
|
||||
return MUST(formatted("{}", value));
|
||||
}
|
||||
|
||||
template<Arithmetic T>
|
||||
|
||||
@@ -121,9 +121,9 @@ static constexpr PnpIDData s_pnp_ids[] = {)~~~");
|
||||
for (auto& pnp_id_data : pnp_ids) {
|
||||
generator.set("manufacturer_id", pnp_id_data.key);
|
||||
generator.set("manufacturer_name", pnp_id_data.value.manufacturer_name);
|
||||
generator.set("approval_year", MUST(String::number(pnp_id_data.value.approval_date.year)));
|
||||
generator.set("approval_month", MUST(String::number(pnp_id_data.value.approval_date.month)));
|
||||
generator.set("approval_day", MUST(String::number(pnp_id_data.value.approval_date.day)));
|
||||
generator.set("approval_year", String::number(pnp_id_data.value.approval_date.year));
|
||||
generator.set("approval_month", String::number(pnp_id_data.value.approval_date.month));
|
||||
generator.set("approval_day", String::number(pnp_id_data.value.approval_date.day));
|
||||
|
||||
generator.append(R"~~~(
|
||||
{ "@manufacturer_id@"sv, "@manufacturer_name@"sv, { @approval_year@, @approval_month@, @approval_day@ } },)~~~");
|
||||
|
||||
@@ -71,8 +71,8 @@ void generate_table(SourceGenerator generator, StringView name, LookupTable& tab
|
||||
{
|
||||
generator.set("name", name);
|
||||
generator.set("value_type", table.max_code_point > NumericLimits<u16>::max() ? "u32" : "u16");
|
||||
generator.set("first_pointer", MUST(String::number(table.first_pointer)));
|
||||
generator.set("size", MUST(String::number(table.code_points.size())));
|
||||
generator.set("first_pointer", String::number(table.first_pointer));
|
||||
generator.set("size", String::number(table.code_points.size()));
|
||||
|
||||
if (table.first_pointer > 0) {
|
||||
generator.appendln("static constexpr u32 s_@name@_index_first_pointer = @first_pointer@;");
|
||||
@@ -96,7 +96,7 @@ ErrorOr<void> generate_header_file(LookupTables& tables, Core::File& file)
|
||||
StringBuilder builder;
|
||||
SourceGenerator generator { builder };
|
||||
|
||||
generator.set("gb18030_ranges_size", MUST(String::number(tables.gb18030_ranges.size())));
|
||||
generator.set("gb18030_ranges_size", String::number(tables.gb18030_ranges.size()));
|
||||
|
||||
generator.append(R"~~~(
|
||||
#pragma once
|
||||
@@ -133,8 +133,8 @@ static constexpr Array<Gb18030RangeEntry, @gb18030_ranges_size@> s_gb18030_range
|
||||
void generate_table_accessor(SourceGenerator generator, StringView name, LookupTable& table)
|
||||
{
|
||||
generator.set("name", name);
|
||||
generator.set("first_pointer", MUST(String::number(table.first_pointer)));
|
||||
generator.set("size", MUST(String::number(table.code_points.size())));
|
||||
generator.set("first_pointer", String::number(table.first_pointer));
|
||||
generator.set("size", String::number(table.code_points.size()));
|
||||
|
||||
if (table.first_pointer > 0) {
|
||||
generator.append(R"~~~(
|
||||
@@ -166,8 +166,8 @@ Optional<u32> index_@name@_code_point(u32 pointer)
|
||||
void generate_inverse_table_accessor(SourceGenerator generator, StringView name, LookupTable& table)
|
||||
{
|
||||
generator.set("name", name);
|
||||
generator.set("first_pointer", MUST(String::number(table.first_pointer)));
|
||||
generator.set("size", MUST(String::number(table.code_points.size())));
|
||||
generator.set("first_pointer", String::number(table.first_pointer));
|
||||
generator.set("size", String::number(table.code_points.size()));
|
||||
|
||||
// FIXME - Doing a linear search here is really slow, should be generating
|
||||
// some kind of reverse lookup table.
|
||||
|
||||
@@ -814,7 +814,7 @@ Vector<StringView> time_zones_in_region(StringView region)
|
||||
return lhs.name < rhs.name;
|
||||
});
|
||||
|
||||
generator.set("time_zones_and_links_size", MUST(String::number(time_zone_data.time_zones_and_links.size())));
|
||||
generator.set("time_zones_and_links_size", String::number(time_zone_data.time_zones_and_links.size()));
|
||||
|
||||
generator.append(R"~~~(
|
||||
ReadonlySpan<TimeZoneIdentifier> all_time_zones()
|
||||
|
||||
@@ -119,7 +119,7 @@ static ErrorOr<void> generate_idna_data_implementation(Core::InputBufferedFile&
|
||||
StringBuilder builder;
|
||||
SourceGenerator generator { builder };
|
||||
|
||||
generator.set("idna_table_size", TRY(String::number(idna_data.mapping_table.size())));
|
||||
generator.set("idna_table_size", String::number(idna_data.mapping_table.size()));
|
||||
|
||||
generator.append(R"~~~(
|
||||
#include <AK/BinarySearch.h>
|
||||
@@ -152,8 +152,8 @@ static constexpr Array<MappingEntry, @idna_table_size@> s_idna_mapping_table { {
|
||||
generator.set("mapping_offset", "0"sv);
|
||||
generator.set("mapping_length", "0"sv);
|
||||
} else {
|
||||
generator.set("mapping_offset", TRY(String::number(mapping_offset)));
|
||||
generator.set("mapping_length", TRY(String::number(mapping.mapped_to.size())));
|
||||
generator.set("mapping_offset", String::number(mapping_offset));
|
||||
generator.set("mapping_length", String::number(mapping.mapped_to.size()));
|
||||
mapping_offset += mapping.mapped_to.size();
|
||||
}
|
||||
|
||||
@@ -161,7 +161,7 @@ static constexpr Array<MappingEntry, @idna_table_size@> s_idna_mapping_table { {
|
||||
{ { @code_points@ }, MappingStatus::@status@, IDNA2008Status::@idna_2008_status@, @mapping_offset@, @mapping_length@ },)~~~");
|
||||
}
|
||||
|
||||
generator.set("mapping_length_total", TRY(String::number(mapping_offset)));
|
||||
generator.set("mapping_length_total", String::number(mapping_offset));
|
||||
}
|
||||
|
||||
generator.append(R"~~~(
|
||||
|
||||
@@ -910,7 +910,7 @@ static ErrorOr<void> generate_unicode_data_implementation(Core::InputBufferedFil
|
||||
generator.set("special_casing_size", ByteString::number(unicode_data.special_casing.size()));
|
||||
generator.set("case_folding_size", ByteString::number(unicode_data.case_folding.size()));
|
||||
|
||||
generator.set("CODE_POINT_TABLES_LSB_COUNT", TRY(String::number(CODE_POINT_TABLES_LSB_COUNT)));
|
||||
generator.set("CODE_POINT_TABLES_LSB_COUNT", String::number(CODE_POINT_TABLES_LSB_COUNT));
|
||||
generator.set("CODE_POINT_TABLES_LSB_MASK", TRY(String::formatted("{:#x}", CODE_POINT_TABLES_LSB_MASK)));
|
||||
|
||||
generator.append(R"~~~(
|
||||
@@ -1143,14 +1143,14 @@ static constexpr Array<CodePointCompositionRaw, @composition_mappings_size@> s_c
|
||||
|
||||
auto append_casing_table = [&](auto collection_snake, auto const& unique_properties) -> ErrorOr<void> {
|
||||
generator.set("name", TRY(String::formatted("{}_unique_properties", collection_snake)));
|
||||
generator.set("size", TRY(String::number(unique_properties.size())));
|
||||
generator.set("size", String::number(unique_properties.size()));
|
||||
|
||||
auto optional_code_point_to_string = [](auto const& code_point) -> ErrorOr<String> {
|
||||
auto optional_code_point_to_string = [](auto const& code_point) -> String {
|
||||
if (!code_point.has_value())
|
||||
return "-1"_string;
|
||||
return String::number(*code_point);
|
||||
};
|
||||
auto first_index_to_string = [](auto const& list) -> ErrorOr<String> {
|
||||
auto first_index_to_string = [](auto const& list) -> String {
|
||||
if (list.is_empty())
|
||||
return "0"_string;
|
||||
return String::number(list.first());
|
||||
@@ -1160,14 +1160,14 @@ static constexpr Array<CodePointCompositionRaw, @composition_mappings_size@> s_c
|
||||
static constexpr Array<CasingTable, @size@> @name@ { {)~~~");
|
||||
|
||||
for (auto const& casing : unique_properties) {
|
||||
generator.set("canonical_combining_class", TRY(String::number(casing.canonical_combining_class)));
|
||||
generator.set("simple_uppercase_mapping", TRY(optional_code_point_to_string(casing.simple_uppercase_mapping)));
|
||||
generator.set("simple_lowercase_mapping", TRY(optional_code_point_to_string(casing.simple_lowercase_mapping)));
|
||||
generator.set("simple_titlecase_mapping", TRY(optional_code_point_to_string(casing.simple_titlecase_mapping)));
|
||||
generator.set("special_casing_start_index", TRY(first_index_to_string(casing.special_casing_indices)));
|
||||
generator.set("special_casing_size", TRY(String::number(casing.special_casing_indices.size())));
|
||||
generator.set("case_folding_start_index", TRY(first_index_to_string(casing.case_folding_indices)));
|
||||
generator.set("case_folding_size", TRY(String::number(casing.case_folding_indices.size())));
|
||||
generator.set("canonical_combining_class", String::number(casing.canonical_combining_class));
|
||||
generator.set("simple_uppercase_mapping", optional_code_point_to_string(casing.simple_uppercase_mapping));
|
||||
generator.set("simple_lowercase_mapping", optional_code_point_to_string(casing.simple_lowercase_mapping));
|
||||
generator.set("simple_titlecase_mapping", optional_code_point_to_string(casing.simple_titlecase_mapping));
|
||||
generator.set("special_casing_start_index", first_index_to_string(casing.special_casing_indices));
|
||||
generator.set("special_casing_size", String::number(casing.special_casing_indices.size()));
|
||||
generator.set("case_folding_start_index", first_index_to_string(casing.case_folding_indices));
|
||||
generator.set("case_folding_size", String::number(casing.case_folding_indices.size()));
|
||||
|
||||
generator.append(R"~~~(
|
||||
{ @canonical_combining_class@, @simple_uppercase_mapping@, @simple_lowercase_mapping@, @simple_titlecase_mapping@, @special_casing_start_index@, @special_casing_size@, @case_folding_start_index@, @case_folding_size@ },)~~~");
|
||||
@@ -1182,8 +1182,8 @@ static constexpr Array<CasingTable, @size@> @name@ { {)~~~");
|
||||
|
||||
auto append_property_table = [&](auto collection_snake, auto const& unique_properties) -> ErrorOr<void> {
|
||||
generator.set("name", TRY(String::formatted("{}_unique_properties", collection_snake)));
|
||||
generator.set("outer_size", TRY(String::number(unique_properties.size())));
|
||||
generator.set("inner_size", TRY(String::number(unique_properties[0].size())));
|
||||
generator.set("outer_size", String::number(unique_properties.size()));
|
||||
generator.set("inner_size", String::number(unique_properties[0].size()));
|
||||
|
||||
generator.append(R"~~~(
|
||||
static constexpr Array<Array<bool, @inner_size@>, @outer_size@> @name@ { {)~~~");
|
||||
@@ -1210,7 +1210,7 @@ static constexpr Array<Array<bool, @inner_size@>, @outer_size@> @name@ { {)~~~")
|
||||
auto append_code_point_tables = [&](StringView collection_snake, auto const& tables, auto& append_unique_properties) -> ErrorOr<void> {
|
||||
auto append_stage = [&](auto const& stage, auto name, auto type) -> ErrorOr<void> {
|
||||
generator.set("name", TRY(String::formatted("{}_{}", collection_snake, name)));
|
||||
generator.set("size", TRY(String::number(stage.size())));
|
||||
generator.set("size", String::number(stage.size()));
|
||||
generator.set("type", type);
|
||||
|
||||
generator.append(R"~~~(
|
||||
@@ -1224,7 +1224,7 @@ static constexpr Array<@type@, @size@> @name@ { {
|
||||
if (values_in_current_row++ > 0)
|
||||
generator.append(", ");
|
||||
|
||||
generator.set("value", TRY(String::number(value)));
|
||||
generator.set("value", String::number(value));
|
||||
generator.append("@value@");
|
||||
|
||||
if (values_in_current_row == max_values_per_row) {
|
||||
|
||||
@@ -3796,7 +3796,7 @@ JS_DEFINE_NATIVE_FUNCTION(@class_name@::@attribute.setter_callback@)
|
||||
)~~~");
|
||||
} else if (attribute.type->is_integer() && !attribute.type->is_nullable()) {
|
||||
attribute_generator.append(R"~~~(
|
||||
MUST(impl->set_attribute(HTML::AttributeNames::@attribute.reflect_name@, MUST(String::number(cpp_value))));
|
||||
MUST(impl->set_attribute(HTML::AttributeNames::@attribute.reflect_name@, String::number(cpp_value)));
|
||||
)~~~");
|
||||
} else if (attribute.type->is_nullable()) {
|
||||
attribute_generator.append(R"~~~(
|
||||
|
||||
@@ -103,7 +103,7 @@ void generate_hash_table_member(SourceGenerator& generator, StringView member_na
|
||||
member_generator.set("member_name"sv, member_name);
|
||||
member_generator.set("hash_table_name"sv, hash_table_name);
|
||||
member_generator.set("enum_class"sv, enum_class);
|
||||
member_generator.set("hash_table_size"sv, MUST(String::number(values.size())));
|
||||
member_generator.set("hash_table_size"sv, String::number(values.size()));
|
||||
|
||||
if (values.size() == 0) {
|
||||
member_generator.append(R"~~~(
|
||||
|
||||
@@ -188,8 +188,8 @@ OwnPtr<CalculationNode> Parser::parse_math_function(PropertyID property_id, Func
|
||||
if (parameter.get_bool("required"sv) == true)
|
||||
min_argument_count++;
|
||||
});
|
||||
function_generator.set("min_argument_count", MUST(String::number(min_argument_count)));
|
||||
function_generator.set("max_argument_count", MUST(String::number(max_argument_count)));
|
||||
function_generator.set("min_argument_count", String::number(min_argument_count));
|
||||
function_generator.set("max_argument_count", String::number(max_argument_count));
|
||||
|
||||
function_generator.append(R"~~~(
|
||||
if (arguments.size() < @min_argument_count@ || arguments.size() > @max_argument_count@) {
|
||||
@@ -209,7 +209,7 @@ OwnPtr<CalculationNode> Parser::parse_math_function(PropertyID property_id, Func
|
||||
|
||||
auto parameter_generator = function_generator.fork();
|
||||
parameter_generator.set("parameter_name", parameter.get_byte_string("name"sv).value());
|
||||
parameter_generator.set("parameter_index", MUST(String::number(parameter_index)));
|
||||
parameter_generator.set("parameter_index", String::number(parameter_index));
|
||||
|
||||
bool parameter_is_calculation;
|
||||
if (parameter_type_string == "<rounding-strategy>") {
|
||||
@@ -319,7 +319,7 @@ OwnPtr<CalculationNode> Parser::parse_math_function(PropertyID property_id, Func
|
||||
auto parameter_type_string = parameter.get_byte_string("type"sv).value();
|
||||
|
||||
auto parameter_generator = function_generator.fork();
|
||||
parameter_generator.set("parameter_index"sv, MUST(String::number(parameter_index)));
|
||||
parameter_generator.set("parameter_index"sv, String::number(parameter_index));
|
||||
|
||||
if (parameter_type_string == "<rounding-strategy>"sv) {
|
||||
parameter_generator.set("release_value"sv, ""_string);
|
||||
|
||||
@@ -134,11 +134,11 @@ TEST_CASE(json_64_bit_value_coerced_to_32_bit)
|
||||
auto min = NumericLimits<i64>::min();
|
||||
auto max = NumericLimits<i64>::max();
|
||||
|
||||
auto json = TRY_OR_FAIL(JsonValue::from_string(MUST(String::number(min))));
|
||||
auto json = TRY_OR_FAIL(JsonValue::from_string(String::number(min)));
|
||||
EXPECT_EQ(json.get_integer<i64>(), min);
|
||||
EXPECT(!json.is_integer<i32>());
|
||||
|
||||
json = TRY_OR_FAIL(JsonValue::from_string(MUST(String::number(max))));
|
||||
json = TRY_OR_FAIL(JsonValue::from_string(String::number(max)));
|
||||
EXPECT_EQ(json.get_integer<i64>(), max);
|
||||
EXPECT(!json.is_integer<i32>());
|
||||
}
|
||||
@@ -146,11 +146,11 @@ TEST_CASE(json_64_bit_value_coerced_to_32_bit)
|
||||
auto min = NumericLimits<u64>::min();
|
||||
auto max = NumericLimits<u64>::max();
|
||||
|
||||
auto json = TRY_OR_FAIL(JsonValue::from_string(MUST(String::number(min))));
|
||||
auto json = TRY_OR_FAIL(JsonValue::from_string(String::number(min)));
|
||||
EXPECT_EQ(json.get_integer<u64>(), min);
|
||||
EXPECT_EQ(json.get_integer<u32>(), min);
|
||||
|
||||
json = TRY_OR_FAIL(JsonValue::from_string(MUST(String::number(max))));
|
||||
json = TRY_OR_FAIL(JsonValue::from_string(String::number(max)));
|
||||
EXPECT_EQ(json.get_integer<u64>(), max);
|
||||
EXPECT(!json.is_integer<u32>());
|
||||
}
|
||||
|
||||
@@ -263,9 +263,9 @@ ErrorOr<void> PropertiesWindow::create_archive_tab(GUI::TabWidget& tab_widget, N
|
||||
|
||||
auto statistics = TRY(zip.calculate_statistics());
|
||||
|
||||
tab.find_descendant_of_type_named<GUI::Label>("archive_file_count")->set_text(TRY(String::number(statistics.file_count())));
|
||||
tab.find_descendant_of_type_named<GUI::Label>("archive_file_count")->set_text(String::number(statistics.file_count()));
|
||||
tab.find_descendant_of_type_named<GUI::Label>("archive_format")->set_text("ZIP"_string);
|
||||
tab.find_descendant_of_type_named<GUI::Label>("archive_directory_count")->set_text(TRY(String::number(statistics.directory_count())));
|
||||
tab.find_descendant_of_type_named<GUI::Label>("archive_directory_count")->set_text(String::number(statistics.directory_count()));
|
||||
tab.find_descendant_of_type_named<GUI::Label>("archive_uncompressed_size")->set_text(human_readable_size(statistics.total_uncompressed_bytes()));
|
||||
|
||||
return {};
|
||||
@@ -294,7 +294,7 @@ ErrorOr<void> PropertiesWindow::create_audio_tab(GUI::TabWidget& tab_widget, Non
|
||||
if (channel_count == 1 || channel_count == 2) {
|
||||
channels_string = TRY(String::formatted("{} ({})", channel_count, channel_count == 1 ? "Mono"sv : "Stereo"sv));
|
||||
} else {
|
||||
channels_string = TRY(String::number(channel_count));
|
||||
channels_string = String::number(channel_count);
|
||||
}
|
||||
tab.find_descendant_of_type_named<GUI::Label>("audio_channels")->set_text(channels_string);
|
||||
|
||||
@@ -302,7 +302,7 @@ ErrorOr<void> PropertiesWindow::create_audio_tab(GUI::TabWidget& tab_widget, Non
|
||||
tab.find_descendant_of_type_named<GUI::Label>("audio_artists")->set_text(TRY(loader->metadata().all_artists()).value_or({}));
|
||||
tab.find_descendant_of_type_named<GUI::Label>("audio_album")->set_text(loader->metadata().album.value_or({}));
|
||||
tab.find_descendant_of_type_named<GUI::Label>("audio_track_number")
|
||||
->set_text(TRY(loader->metadata().track_number.map([](auto number) { return String::number(number); })).value_or({}));
|
||||
->set_text(loader->metadata().track_number.map([](auto number) { return String::number(number); }).value_or({}));
|
||||
tab.find_descendant_of_type_named<GUI::Label>("audio_genre")->set_text(loader->metadata().genre.value_or({}));
|
||||
tab.find_descendant_of_type_named<GUI::Label>("audio_comment")->set_text(loader->metadata().comment.value_or({}));
|
||||
|
||||
@@ -503,7 +503,7 @@ ErrorOr<void> PropertiesWindow::create_pdf_tab(GUI::TabWidget& tab_widget, Nonnu
|
||||
TRY(tab.load_from_gml(properties_window_pdf_tab_gml));
|
||||
|
||||
tab.find_descendant_of_type_named<GUI::Label>("pdf_version")->set_text(TRY(String::formatted("{}.{}", document->version().major, document->version().minor)));
|
||||
tab.find_descendant_of_type_named<GUI::Label>("pdf_page_count")->set_text(TRY(String::number(document->get_page_count())));
|
||||
tab.find_descendant_of_type_named<GUI::Label>("pdf_page_count")->set_text(String::number(document->get_page_count()));
|
||||
|
||||
auto maybe_info_dict = document->info_dict();
|
||||
if (maybe_info_dict.is_error()) {
|
||||
|
||||
@@ -32,7 +32,7 @@ GUI::Dialog::ExecResult GoToOffsetDialog::show(GUI::Window* parent_window, int&
|
||||
dialog->set_icon(parent_window->icon());
|
||||
|
||||
if (history_offset)
|
||||
dialog->m_text_editor->set_text(String::number(history_offset).release_value_but_fixme_should_propagate_errors());
|
||||
dialog->m_text_editor->set_text(String::number(history_offset));
|
||||
|
||||
auto result = dialog->exec();
|
||||
|
||||
|
||||
@@ -244,8 +244,8 @@ ErrorOr<int> serenity_main(Main::Arguments arguments)
|
||||
Config::remove_key("Maps"sv, "Panel"sv, "Width"sv);
|
||||
}
|
||||
|
||||
Config::write_string("Maps"sv, "MapView"sv, "CenterLatitude"sv, TRY(String::number(map_widget.center().latitude)));
|
||||
Config::write_string("Maps"sv, "MapView"sv, "CenterLongitude"sv, TRY(String::number(map_widget.center().longitude)));
|
||||
Config::write_string("Maps"sv, "MapView"sv, "CenterLatitude"sv, String::number(map_widget.center().latitude));
|
||||
Config::write_string("Maps"sv, "MapView"sv, "CenterLongitude"sv, String::number(map_widget.center().longitude));
|
||||
Config::write_i32("Maps"sv, "MapView"sv, "Zoom"sv, map_widget.zoom());
|
||||
Config::write_bool("Maps"sv, "MapView"sv, "ShowUsers"sv, map_widget.show_users());
|
||||
return exec;
|
||||
|
||||
@@ -63,7 +63,7 @@ ErrorOr<void> MainWidget::initialize()
|
||||
m_octave_container->set_layout<GUI::VerticalBoxLayout>();
|
||||
auto& octave_label = m_octave_container->add<GUI::Label>("Octave"_string);
|
||||
octave_label.set_preferred_width(GUI::SpecialDimension::Fit);
|
||||
m_octave_value = m_octave_container->add<GUI::Label>(TRY(String::number(m_track_manager.keyboard()->virtual_keyboard_octave())));
|
||||
m_octave_value = m_octave_container->add<GUI::Label>(String::number(m_track_manager.keyboard()->virtual_keyboard_octave()));
|
||||
m_octave_value->set_preferred_width(GUI::SpecialDimension::Fit);
|
||||
|
||||
// FIXME: Implement vertical flipping in GUI::Slider, not here.
|
||||
@@ -77,7 +77,7 @@ ErrorOr<void> MainWidget::initialize()
|
||||
int new_octave = octave_max - value;
|
||||
set_octave_via_slider(new_octave);
|
||||
VERIFY(new_octave == m_track_manager.keyboard()->virtual_keyboard_octave());
|
||||
m_octave_value->set_text(String::number(new_octave).release_value_but_fixme_should_propagate_errors());
|
||||
m_octave_value->set_text(String::number(new_octave));
|
||||
};
|
||||
|
||||
m_knobs_widget = m_keys_and_knobs_container->add<GUI::StackWidget>();
|
||||
|
||||
@@ -19,7 +19,7 @@ ProcessorParameterWidget::ProcessorParameterWidget(DSP::ProcessorParameter& raw_
|
||||
switch (raw_parameter.type()) {
|
||||
case DSP::ParameterType::Range: {
|
||||
auto& parameter = static_cast<DSP::ProcessorRangeParameter&>(raw_parameter);
|
||||
m_value_label = add<GUI::Label>(String::number(static_cast<double>(parameter.value())).release_value_but_fixme_should_propagate_errors());
|
||||
m_value_label = add<GUI::Label>(String::number(static_cast<double>(parameter.value())));
|
||||
m_parameter_modifier = add<ProcessorParameterSlider>(Orientation::Vertical, parameter, m_value_label);
|
||||
break;
|
||||
}
|
||||
|
||||
@@ -74,7 +74,7 @@ void GuideTool::on_mousedown(Layer*, MouseEvent& event)
|
||||
|
||||
if (m_selected_guide) {
|
||||
m_guide_origin = m_selected_guide->offset();
|
||||
GUI::Application::the()->show_tooltip_immediately(MUST(String::number(m_guide_origin)), GUI::Application::the()->tooltip_source_widget());
|
||||
GUI::Application::the()->show_tooltip_immediately(String::number(m_guide_origin), GUI::Application::the()->tooltip_source_widget());
|
||||
}
|
||||
}
|
||||
|
||||
@@ -120,7 +120,7 @@ void GuideTool::on_mousemove(Layer*, MouseEvent& event)
|
||||
|
||||
m_selected_guide->set_offset(new_offset);
|
||||
|
||||
GUI::Application::the()->show_tooltip_immediately(MUST(String::number(new_offset)), GUI::Application::the()->tooltip_source_widget());
|
||||
GUI::Application::the()->show_tooltip_immediately(String::number(new_offset), GUI::Application::the()->tooltip_source_widget());
|
||||
|
||||
editor()->update();
|
||||
}
|
||||
|
||||
@@ -102,7 +102,7 @@ private:
|
||||
|
||||
static ErrorOr<void> utmp_update(StringView tty, pid_t pid, bool create)
|
||||
{
|
||||
auto pid_string = TRY(String::number(pid));
|
||||
auto pid_string = String::number(pid);
|
||||
Array utmp_update_command {
|
||||
"-f"sv,
|
||||
"Terminal"sv,
|
||||
|
||||
@@ -215,7 +215,7 @@ void Field::reset()
|
||||
m_time_elapsed = 0;
|
||||
m_time_label.set_text("00:00"_string);
|
||||
m_flags_left = m_mine_count;
|
||||
m_flag_label.set_text(String::number(m_flags_left).release_value_but_fixme_should_propagate_errors());
|
||||
m_flag_label.set_text(String::number(m_flags_left));
|
||||
m_timer->stop();
|
||||
set_greedy_for_hits(false);
|
||||
set_face(Face::Default);
|
||||
@@ -461,7 +461,7 @@ void Field::set_flag(Square& square, bool flag)
|
||||
}
|
||||
square.has_flag = flag;
|
||||
|
||||
m_flag_label.set_text(String::number(m_flags_left).release_value_but_fixme_should_propagate_errors());
|
||||
m_flag_label.set_text(String::number(m_flags_left));
|
||||
square.button->set_icon(square.has_flag ? m_flag_bitmap : nullptr);
|
||||
square.button->update();
|
||||
}
|
||||
@@ -473,7 +473,7 @@ void Field::on_square_middle_clicked(Square& square)
|
||||
if (square.has_flag) {
|
||||
++m_flags_left;
|
||||
square.has_flag = false;
|
||||
m_flag_label.set_text(String::number(m_flags_left).release_value_but_fixme_should_propagate_errors());
|
||||
m_flag_label.set_text(String::number(m_flags_left));
|
||||
}
|
||||
square.is_considering = !square.is_considering;
|
||||
square.button->set_icon(square.is_considering ? m_consider_bitmap : nullptr);
|
||||
|
||||
@@ -238,7 +238,7 @@ void BoardView::paint_event(GUI::PaintEvent& event)
|
||||
auto rect = Gfx::IntRect::centered_on(center, tile_size);
|
||||
|
||||
painter.fill_rect(rect, background_color_for_cell(sliding_tile.value_from));
|
||||
painter.draw_text(rect, String::number(sliding_tile.value_from).release_value_but_fixme_should_propagate_errors(), font(), Gfx::TextAlignment::Center, text_color_for_cell(sliding_tile.value_from));
|
||||
painter.draw_text(rect, String::number(sliding_tile.value_from), font(), Gfx::TextAlignment::Center, text_color_for_cell(sliding_tile.value_from));
|
||||
}
|
||||
} else {
|
||||
for (size_t column = 0; column < columns(); ++column) {
|
||||
@@ -253,7 +253,7 @@ void BoardView::paint_event(GUI::PaintEvent& event)
|
||||
auto entry = tiles[row][column];
|
||||
painter.fill_rect(rect, background_color_for_cell(entry));
|
||||
if (entry > 0)
|
||||
painter.draw_text(rect, String::number(entry).release_value_but_fixme_should_propagate_errors(), font(), Gfx::TextAlignment::Center, text_color_for_cell(entry));
|
||||
painter.draw_text(rect, String::number(entry), font(), Gfx::TextAlignment::Center, text_color_for_cell(entry));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -33,7 +33,7 @@ GameSizeDialog::GameSizeDialog(GUI::Window* parent, size_t board_size, size_t ta
|
||||
board_size_spinbox->set_value(m_board_size);
|
||||
|
||||
auto tile_value_label = main_widget->find_descendant_of_type_named<GUI::Label>("tile_value_label");
|
||||
tile_value_label->set_text(String::number(target_tile()).release_value_but_fixme_should_propagate_errors());
|
||||
tile_value_label->set_text(String::number(target_tile()));
|
||||
auto target_spinbox = main_widget->find_descendant_of_type_named<GUI::SpinBox>("target_spinbox");
|
||||
target_spinbox->set_max(Game::max_power_for_board(m_board_size));
|
||||
target_spinbox->set_value(m_target_tile_power);
|
||||
@@ -45,7 +45,7 @@ GameSizeDialog::GameSizeDialog(GUI::Window* parent, size_t board_size, size_t ta
|
||||
|
||||
target_spinbox->on_change = [this, tile_value_label](auto value) {
|
||||
m_target_tile_power = value;
|
||||
tile_value_label->set_text(String::number(target_tile()).release_value_but_fixme_should_propagate_errors());
|
||||
tile_value_label->set_text(String::number(target_tile()));
|
||||
};
|
||||
|
||||
auto evil_ai_checkbox = main_widget->find_descendant_of_type_named<GUI::CheckBox>("evil_ai_checkbox");
|
||||
|
||||
@@ -154,7 +154,7 @@ public:
|
||||
{
|
||||
String value_source = {};
|
||||
if (is_int())
|
||||
value_source = TRY(String::number(m_value));
|
||||
value_source = String::number(m_value);
|
||||
else if (is_shrink())
|
||||
value_source = "GUI::SpecialDimension::Shrink"_string;
|
||||
else if (is_grow())
|
||||
|
||||
@@ -965,7 +965,7 @@ static ErrorOr<void> read_start_of_scan(JPEGStream& stream, JPEGLoadingContext&
|
||||
StringBuilder builder;
|
||||
TRY(builder.try_append("Components in scan: "sv));
|
||||
for (auto const& scan_component : current_scan.components) {
|
||||
TRY(builder.try_append(TRY(String::number(scan_component.component.id))));
|
||||
TRY(builder.try_append(String::number(scan_component.component.id)));
|
||||
TRY(builder.try_append(' '));
|
||||
}
|
||||
dbgln(builder.string_view());
|
||||
|
||||
@@ -171,7 +171,7 @@ public:
|
||||
BasicBlock& make_block(String name = {})
|
||||
{
|
||||
if (name.is_empty())
|
||||
name = MUST(String::number(m_next_block++));
|
||||
name = String::number(m_next_block++);
|
||||
auto block = BasicBlock::create(m_root_basic_blocks.size(), name);
|
||||
if (auto const* context = m_current_unwind_context) {
|
||||
if (context->handler().has_value())
|
||||
|
||||
@@ -1731,7 +1731,7 @@ inline ThrowCompletionOr<Object*> get_object_property_iterator(VM& vm, Value val
|
||||
result_object->define_direct_property(vm.names.done, JS::Value(false), default_attributes);
|
||||
|
||||
if (key.is_number())
|
||||
result_object->define_direct_property(vm.names.value, PrimitiveString::create(vm, TRY_OR_THROW_OOM(vm, String::number(key.as_number()))), default_attributes);
|
||||
result_object->define_direct_property(vm.names.value, PrimitiveString::create(vm, String::number(key.as_number())), default_attributes);
|
||||
else if (key.is_string())
|
||||
result_object->define_direct_property(vm.names.value, PrimitiveString::create(vm, key.as_string()), default_attributes);
|
||||
else
|
||||
|
||||
@@ -113,7 +113,7 @@ ErrorOr<void> MarkupGenerator::object_to_html(Object const& object, StringBuilde
|
||||
if (!first)
|
||||
TRY(html_output.try_append(TRY(wrap_string_in_style(", "sv, StyleType::Punctuation))));
|
||||
first = false;
|
||||
TRY(html_output.try_append(TRY(wrap_string_in_style(TRY(String::number(entry.index())), StyleType::Number))));
|
||||
TRY(html_output.try_append(TRY(wrap_string_in_style(String::number(entry.index()), StyleType::Number))));
|
||||
TRY(html_output.try_append(TRY(wrap_string_in_style(": "sv, StyleType::Punctuation))));
|
||||
// FIXME: Exception check
|
||||
TRY(value_to_html(object.get(entry.index()).release_value(), html_output, seen_objects));
|
||||
|
||||
@@ -664,7 +664,7 @@ ThrowCompletionOr<Vector<PatternPartition>> format_date_time_pattern(VM& vm, Dat
|
||||
if (symbol.has_value())
|
||||
formatted_value = MUST(String::from_utf8(*symbol));
|
||||
else
|
||||
formatted_value = MUST(String::number(value));
|
||||
formatted_value = String::number(value);
|
||||
|
||||
break;
|
||||
}
|
||||
|
||||
@@ -152,14 +152,14 @@ ThrowCompletionOr<MarkedVector<Value>> StringObject::internal_own_property_keys(
|
||||
// 5. For each integer i starting with 0 such that i < len, in ascending order, do
|
||||
for (size_t i = 0; i < length; ++i) {
|
||||
// a. Add ! ToString(𝔽(i)) as the last element of keys.
|
||||
keys.append(PrimitiveString::create(vm, MUST(String::number(i))));
|
||||
keys.append(PrimitiveString::create(vm, String::number(i)));
|
||||
}
|
||||
|
||||
// 6. For each own property key P of O such that P is an array index and ! ToIntegerOrInfinity(P) ≥ len, in ascending numeric index order, do
|
||||
for (auto& entry : indexed_properties()) {
|
||||
if (entry.index() >= length) {
|
||||
// a. Add P as the last element of keys.
|
||||
keys.append(PrimitiveString::create(vm, MUST(String::number(entry.index()))));
|
||||
keys.append(PrimitiveString::create(vm, String::number(entry.index())));
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -425,7 +425,7 @@ public:
|
||||
// b. For each integer i such that 0 ≤ i < length, in ascending order, do
|
||||
for (size_t i = 0; i < length; ++i) {
|
||||
// i. Append ! ToString(𝔽(i)) to keys.
|
||||
keys.append(PrimitiveString::create(vm, MUST(String::number(i))));
|
||||
keys.append(PrimitiveString::create(vm, String::number(i)));
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -376,7 +376,7 @@ String Value::to_string_without_side_effects() const
|
||||
case BOOLEAN_TAG:
|
||||
return as_bool() ? "true"_string : "false"_string;
|
||||
case INT32_TAG:
|
||||
return String::number(as_i32()).release_value();
|
||||
return String::number(as_i32());
|
||||
case STRING_TAG:
|
||||
return as_string().utf8_string();
|
||||
case SYMBOL_TAG:
|
||||
@@ -427,7 +427,7 @@ ThrowCompletionOr<String> Value::to_string(VM& vm) const
|
||||
return as_bool() ? "true"_string : "false"_string;
|
||||
// 7. If argument is a Number, return Number::toString(argument, 10).
|
||||
case INT32_TAG:
|
||||
return TRY_OR_THROW_OOM(vm, String::number(as_i32()));
|
||||
return String::number(as_i32());
|
||||
// 8. If argument is a BigInt, return BigInt::toString(argument, 10).
|
||||
case BIGINT_TAG:
|
||||
return TRY_OR_THROW_OOM(vm, as_bigint().big_integer().to_base(10));
|
||||
|
||||
@@ -226,8 +226,8 @@ ErrorOr<String> Value::to_string() const
|
||||
|
||||
return m_value->visit(
|
||||
[](ByteString const& value) { return String::from_byte_string(value); },
|
||||
[](Integer auto value) { return String::number(value); },
|
||||
[](double value) { return String::number(value); },
|
||||
[](Integer auto value) -> ErrorOr<String> { return String::number(value); },
|
||||
[](double value) -> ErrorOr<String> { return String::number(value); },
|
||||
[](bool value) { return String::from_utf8(value ? "true"sv : "false"sv); },
|
||||
[](TupleValue const& value) {
|
||||
StringBuilder builder;
|
||||
|
||||
@@ -1279,7 +1279,7 @@ ErrorOr<RefPtr<Value>> ForLoop::run(RefPtr<Shell> shell)
|
||||
shell->set_local_variable(variable_name.bytes_as_string_view(), value, true);
|
||||
|
||||
if (index_name.has_value())
|
||||
shell->set_local_variable(index_name.value(), make_ref_counted<AST::StringValue>(TRY(String::number(i))), true);
|
||||
shell->set_local_variable(index_name.value(), make_ref_counted<AST::StringValue>(String::number(i)), true);
|
||||
|
||||
++i;
|
||||
|
||||
@@ -2690,9 +2690,9 @@ ErrorOr<RefPtr<Value>> Range::run(RefPtr<Shell> shell)
|
||||
auto end = end_int.value();
|
||||
auto step = start > end ? -1 : 1;
|
||||
for (int value = start; value != end; value += step)
|
||||
values.append(make_ref_counted<StringValue>(TRY(String::number(value))));
|
||||
values.append(make_ref_counted<StringValue>(String::number(value)));
|
||||
// Append the range end too, most shells treat this as inclusive.
|
||||
values.append(make_ref_counted<StringValue>(TRY(String::number(end))));
|
||||
values.append(make_ref_counted<StringValue>(String::number(end)));
|
||||
} else {
|
||||
goto yield_start_end;
|
||||
}
|
||||
@@ -3869,9 +3869,9 @@ ErrorOr<Vector<String>> SpecialVariableValue::resolve_as_list(RefPtr<Shell> shel
|
||||
|
||||
switch (m_name) {
|
||||
case '?':
|
||||
return { resolve_slices(shell, Vector { TRY(String::number(shell->last_return_code.value_or(0))) }, m_slices) };
|
||||
return { resolve_slices(shell, Vector { String::number(shell->last_return_code.value_or(0)) }, m_slices) };
|
||||
case '$':
|
||||
return { resolve_slices(shell, Vector { TRY(String::number(getpid())) }, m_slices) };
|
||||
return { resolve_slices(shell, Vector { String::number(getpid()) }, m_slices) };
|
||||
case '*':
|
||||
if (auto argv = TRY(shell->look_up_local_variable("ARGV"sv)))
|
||||
return resolve_slices(shell, TRY(const_cast<Value&>(*argv).resolve_as_list(shell)), m_slices);
|
||||
@@ -3880,7 +3880,7 @@ ErrorOr<Vector<String>> SpecialVariableValue::resolve_as_list(RefPtr<Shell> shel
|
||||
if (auto argv = TRY(shell->look_up_local_variable("ARGV"sv))) {
|
||||
if (argv->is_list()) {
|
||||
auto list_argv = static_cast<AST::ListValue const*>(argv.ptr());
|
||||
return { resolve_slices(shell, Vector { TRY(String::number(list_argv->values().size())) }, m_slices) };
|
||||
return { resolve_slices(shell, Vector { String::number(list_argv->values().size()) }, m_slices) };
|
||||
}
|
||||
return { resolve_slices(shell, Vector { "1"_string }, m_slices) };
|
||||
}
|
||||
|
||||
@@ -1500,7 +1500,7 @@ ErrorOr<int> Shell::builtin_kill(Main::Arguments arguments)
|
||||
if (auto job_id = resolve_job_spec(arguments.strings[i]); job_id.has_value()) {
|
||||
auto job = find_job(job_id.value());
|
||||
if (job) {
|
||||
replaced_values.append(TRY(String::number(job->pid())));
|
||||
replaced_values.append(String::number(job->pid()));
|
||||
} else {
|
||||
warnln("kill: Job with pid {} not found", job_id.value());
|
||||
return 1;
|
||||
@@ -1625,14 +1625,14 @@ ErrorOr<int> Shell::builtin_argsparser_parse(Main::Arguments arguments)
|
||||
return AST::make_ref_counted<AST::StringValue>(TRY(String::from_utf8(value)));
|
||||
case Type::I32:
|
||||
if (auto number = value.to_number<int>(); number.has_value())
|
||||
return AST::make_ref_counted<AST::StringValue>(TRY(String::number(*number)));
|
||||
return AST::make_ref_counted<AST::StringValue>(String::number(*number));
|
||||
|
||||
warnln("Invalid value for type i32: {}", value);
|
||||
return OptionalNone {};
|
||||
case Type::U32:
|
||||
case Type::Size:
|
||||
if (auto number = value.to_number<unsigned>(); number.has_value())
|
||||
return AST::make_ref_counted<AST::StringValue>(TRY(String::number(*number)));
|
||||
return AST::make_ref_counted<AST::StringValue>(String::number(*number));
|
||||
|
||||
warnln("Invalid value for type u32|size: {}", value);
|
||||
return OptionalNone {};
|
||||
@@ -1645,7 +1645,7 @@ ErrorOr<int> Shell::builtin_argsparser_parse(Main::Arguments arguments)
|
||||
return OptionalNone {};
|
||||
}
|
||||
|
||||
return AST::make_ref_counted<AST::StringValue>(TRY(String::number(number)));
|
||||
return AST::make_ref_counted<AST::StringValue>(String::number(number));
|
||||
}
|
||||
default:
|
||||
VERIFY_NOT_REACHED();
|
||||
|
||||
@@ -68,7 +68,7 @@ ErrorOr<RefPtr<AST::Node>> Shell::immediate_length_impl(AST::ImmediateExpression
|
||||
}
|
||||
|
||||
auto value_with_number = [&](auto number) -> ErrorOr<NonnullRefPtr<AST::Node>> {
|
||||
return AST::make_ref_counted<AST::BarewordLiteral>(invoking_node.position(), TRY(String::number(number)));
|
||||
return AST::make_ref_counted<AST::BarewordLiteral>(invoking_node.position(), String::number(number));
|
||||
};
|
||||
|
||||
auto do_across = [&](StringView mode_name, auto& values) -> ErrorOr<RefPtr<AST::Node>> {
|
||||
@@ -1296,7 +1296,7 @@ ErrorOr<RefPtr<AST::Node>> Shell::immediate_math(AST::ImmediateExpression& invok
|
||||
}));
|
||||
}
|
||||
|
||||
set_local_variable(name->to_byte_string(), make_ref_counted<AST::StringValue>(TRY(String::number(rhs))));
|
||||
set_local_variable(name->to_byte_string(), make_ref_counted<AST::StringValue>(String::number(rhs)));
|
||||
return rhs;
|
||||
}
|
||||
|
||||
@@ -1379,7 +1379,7 @@ ErrorOr<RefPtr<AST::Node>> Shell::immediate_math(AST::ImmediateExpression& invok
|
||||
|
||||
auto result = TRY(interpret(ast));
|
||||
|
||||
return make_ref_counted<AST::StringLiteral>(arguments.first()->position(), TRY(String::number(result)), AST::StringLiteral::EnclosureType::None);
|
||||
return make_ref_counted<AST::StringLiteral>(arguments.first()->position(), String::number(result), AST::StringLiteral::EnclosureType::None);
|
||||
}
|
||||
|
||||
ErrorOr<RefPtr<AST::Node>> Shell::run_immediate_function(StringView str, AST::ImmediateExpression& invoking_node, Vector<NonnullRefPtr<AST::Node>> const& arguments)
|
||||
|
||||
@@ -414,7 +414,7 @@ JS::ThrowCompletionOr<JS::MarkedVector<JS::Value>> PlatformObject::internal_own_
|
||||
if (m_legacy_platform_object_flags->supports_indexed_properties) {
|
||||
for (u64 index = 0; index <= NumericLimits<u32>::max(); ++index) {
|
||||
if (is_supported_property_index(index))
|
||||
keys.append(JS::PrimitiveString::create(vm, MUST(String::number(index))));
|
||||
keys.append(JS::PrimitiveString::create(vm, String::number(index)));
|
||||
else
|
||||
break;
|
||||
}
|
||||
|
||||
@@ -29,7 +29,7 @@ String MediaFeatureValue::to_string() const
|
||||
[](Length const& length) { return length.to_string(); },
|
||||
[](Ratio const& ratio) { return ratio.to_string(); },
|
||||
[](Resolution const& resolution) { return resolution.to_string(); },
|
||||
[](float number) { return MUST(String::number(number)); });
|
||||
[](float number) { return String::number(number); });
|
||||
}
|
||||
|
||||
bool MediaFeatureValue::is_same_type(MediaFeatureValue const& other) const
|
||||
|
||||
@@ -74,7 +74,7 @@ public:
|
||||
{
|
||||
if (m_type == Type::IntegerWithExplicitSign)
|
||||
return MUST(String::formatted("{:+}", m_value));
|
||||
return MUST(String::number(m_value));
|
||||
return String::number(m_value);
|
||||
}
|
||||
|
||||
bool operator==(Number const& other) const
|
||||
|
||||
@@ -43,7 +43,7 @@ String Token::to_string() const
|
||||
case Type::Delim:
|
||||
return String { m_value };
|
||||
case Type::Number:
|
||||
return MUST(String::number(m_number_value.value()));
|
||||
return String::number(m_number_value.value());
|
||||
case Type::Percentage:
|
||||
return MUST(String::formatted("{}%", m_number_value.value()));
|
||||
case Type::Dimension:
|
||||
|
||||
@@ -103,7 +103,7 @@ public:
|
||||
{
|
||||
// 1. If A is zero, return the serialization of B.
|
||||
if (step_size == 0) {
|
||||
return MUST(String::number(offset));
|
||||
return String::number(offset);
|
||||
}
|
||||
|
||||
// 2. Otherwise, let result initially be an empty string.
|
||||
|
||||
@@ -10,7 +10,7 @@ namespace Web::CSS {
|
||||
|
||||
String IntegerStyleValue::to_string() const
|
||||
{
|
||||
return MUST(String::number(m_value));
|
||||
return String::number(m_value);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -13,7 +13,7 @@ namespace Web::CSS {
|
||||
|
||||
String NumberStyleValue::to_string() const
|
||||
{
|
||||
return MUST(String::number(m_value));
|
||||
return String::number(m_value);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -30,7 +30,7 @@ String TransformationStyleValue::to_string() const
|
||||
|| m_properties.transform_function == CSS::TransformFunction::ScaleY
|
||||
|| m_properties.transform_function == CSS::TransformFunction::ScaleZ)
|
||||
&& value->is_percentage()) {
|
||||
builder.append(MUST(String::number(value->as_percentage().percentage().as_fraction())));
|
||||
builder.append(String::number(value->as_percentage().percentage().as_fraction()));
|
||||
} else {
|
||||
builder.append(value->to_string());
|
||||
}
|
||||
|
||||
@@ -1203,7 +1203,7 @@ i32 Element::tab_index() const
|
||||
// https://html.spec.whatwg.org/multipage/interaction.html#dom-tabindex
|
||||
void Element::set_tab_index(i32 tab_index)
|
||||
{
|
||||
MUST(set_attribute(HTML::AttributeNames::tabindex, MUST(String::number(tab_index))));
|
||||
MUST(set_attribute(HTML::AttributeNames::tabindex, String::number(tab_index)));
|
||||
}
|
||||
|
||||
// https://drafts.csswg.org/cssom-view/#potentially-scrollable
|
||||
|
||||
@@ -836,7 +836,7 @@ WebIDL::ExceptionOr<JS::NonnullGCPtr<PendingResponse>> scheme_fetch(JS::Realm& r
|
||||
auto full_length = blob->size();
|
||||
|
||||
// 6. Let serializedFullLength be fullLength, serialized and isomorphic encoded.
|
||||
auto serialized_full_length = TRY_OR_THROW_OOM(vm, String::number(full_length));
|
||||
auto serialized_full_length = String::number(full_length);
|
||||
|
||||
// 7. Let type be blob’s type.
|
||||
auto const& type = blob->type();
|
||||
@@ -1680,7 +1680,7 @@ WebIDL::ExceptionOr<JS::NonnullGCPtr<PendingResponse>> http_network_or_cache_fet
|
||||
// 8. If contentLength is non-null, then set contentLengthHeaderValue to contentLength, serialized and
|
||||
// isomorphic encoded.
|
||||
if (content_length.has_value())
|
||||
content_length_header_value = MUST(ByteBuffer::copy(TRY_OR_THROW_OOM(vm, String::number(*content_length)).bytes()));
|
||||
content_length_header_value = MUST(ByteBuffer::copy(String::number(*content_length).bytes()));
|
||||
|
||||
// 9. If contentLengthHeaderValue is non-null, then append (`Content-Length`, contentLengthHeaderValue) to
|
||||
// httpRequest’s header list.
|
||||
|
||||
@@ -272,14 +272,14 @@ void Request::add_range_header(u64 first, Optional<u64> const& last)
|
||||
auto range_value = MUST(ByteBuffer::copy("bytes"sv.bytes()));
|
||||
|
||||
// 3. Serialize and isomorphic encode first, and append the result to rangeValue.
|
||||
range_value.append(MUST(String::number(first)).bytes());
|
||||
range_value.append(String::number(first).bytes());
|
||||
|
||||
// 4. Append 0x2D (-) to rangeValue.
|
||||
range_value.append('-');
|
||||
|
||||
// 5. If last is given, then serialize and isomorphic encode it, and append the result to rangeValue.
|
||||
if (last.has_value())
|
||||
range_value.append(MUST(String::number(*last)).bytes());
|
||||
range_value.append(String::number(*last).bytes());
|
||||
|
||||
// 6. Append (`Range`, rangeValue) to request’s header list.
|
||||
auto header = Header {
|
||||
|
||||
@@ -57,7 +57,7 @@ void AudioTrack::initialize(JS::Realm& realm)
|
||||
WEB_SET_PROTOTYPE_FOR_INTERFACE(AudioTrack);
|
||||
|
||||
auto id = s_audio_track_id_allocator.allocate();
|
||||
m_id = MUST(String::number(id));
|
||||
m_id = String::number(id);
|
||||
}
|
||||
|
||||
void AudioTrack::play(Badge<HTMLAudioElement>)
|
||||
|
||||
@@ -121,10 +121,10 @@ WebIDL::ExceptionOr<Optional<Vector<XHR::FormDataEntry>>> construct_entry_list(J
|
||||
auto [x, y] = input_element->selected_coordinate();
|
||||
|
||||
// 6. Create an entry with namex and x, and append it to entry list.
|
||||
entry_list.append(XHR::FormDataEntry { .name = move(name_x), .value = MUST(String::number(x)) });
|
||||
entry_list.append(XHR::FormDataEntry { .name = move(name_x), .value = String::number(x) });
|
||||
|
||||
// 7. Create an entry with namey and y, and append it to entry list.
|
||||
entry_list.append(XHR::FormDataEntry { .name = move(name_y), .value = MUST(String::number(y)) });
|
||||
entry_list.append(XHR::FormDataEntry { .name = move(name_y), .value = String::number(y) });
|
||||
|
||||
// 8. Continue.
|
||||
continue;
|
||||
|
||||
@@ -114,7 +114,7 @@ void HTMLCanvasElement::reset_context_to_default_state()
|
||||
|
||||
WebIDL::ExceptionOr<void> HTMLCanvasElement::set_width(unsigned value)
|
||||
{
|
||||
TRY(set_attribute(HTML::AttributeNames::width, MUST(String::number(value))));
|
||||
TRY(set_attribute(HTML::AttributeNames::width, String::number(value)));
|
||||
m_bitmap = nullptr;
|
||||
reset_context_to_default_state();
|
||||
return {};
|
||||
@@ -122,7 +122,7 @@ WebIDL::ExceptionOr<void> HTMLCanvasElement::set_width(unsigned value)
|
||||
|
||||
WebIDL::ExceptionOr<void> HTMLCanvasElement::set_height(unsigned value)
|
||||
{
|
||||
TRY(set_attribute(HTML::AttributeNames::height, MUST(String::number(value))));
|
||||
TRY(set_attribute(HTML::AttributeNames::height, String::number(value)));
|
||||
m_bitmap = nullptr;
|
||||
reset_context_to_default_state();
|
||||
return {};
|
||||
|
||||
@@ -244,7 +244,7 @@ String HTMLHyperlinkElementUtils::port() const
|
||||
return String {};
|
||||
|
||||
// 4. Return url's port, serialized.
|
||||
return MUST(String::number(url->port().value()));
|
||||
return String::number(url->port().value());
|
||||
}
|
||||
|
||||
// https://html.spec.whatwg.org/multipage/links.html#dom-hyperlink-port
|
||||
|
||||
@@ -191,7 +191,7 @@ unsigned HTMLImageElement::width() const
|
||||
|
||||
WebIDL::ExceptionOr<void> HTMLImageElement::set_width(unsigned width)
|
||||
{
|
||||
return set_attribute(HTML::AttributeNames::width, MUST(String::number(width)));
|
||||
return set_attribute(HTML::AttributeNames::width, String::number(width));
|
||||
}
|
||||
|
||||
// https://html.spec.whatwg.org/multipage/embedded-content.html#dom-img-height
|
||||
@@ -220,7 +220,7 @@ unsigned HTMLImageElement::height() const
|
||||
|
||||
WebIDL::ExceptionOr<void> HTMLImageElement::set_height(unsigned height)
|
||||
{
|
||||
return set_attribute(HTML::AttributeNames::height, MUST(String::number(height)));
|
||||
return set_attribute(HTML::AttributeNames::height, String::number(height));
|
||||
}
|
||||
|
||||
// https://html.spec.whatwg.org/multipage/embedded-content.html#dom-img-naturalwidth
|
||||
|
||||
@@ -1878,7 +1878,7 @@ unsigned HTMLInputElement::size() const
|
||||
|
||||
WebIDL::ExceptionOr<void> HTMLInputElement::set_size(unsigned value)
|
||||
{
|
||||
return set_attribute(HTML::AttributeNames::size, MUST(String::number(value)));
|
||||
return set_attribute(HTML::AttributeNames::size, String::number(value));
|
||||
}
|
||||
|
||||
// https://html.spec.whatwg.org/multipage/input.html#concept-input-value-string-number
|
||||
@@ -1901,11 +1901,11 @@ String HTMLInputElement::convert_number_to_string(double input) const
|
||||
{
|
||||
// https://html.spec.whatwg.org/multipage/input.html#number-state-(type=number):concept-input-value-number-string
|
||||
if (type_state() == TypeAttributeState::Number)
|
||||
return MUST(String::number(input));
|
||||
return String::number(input);
|
||||
|
||||
// https://html.spec.whatwg.org/multipage/input.html#range-state-(type=range):concept-input-value-number-string
|
||||
if (type_state() == TypeAttributeState::Range)
|
||||
return MUST(String::number(input));
|
||||
return String::number(input);
|
||||
|
||||
dbgln("HTMLInputElement::convert_number_to_string() not implemented for input type {}", type());
|
||||
return {};
|
||||
|
||||
@@ -25,7 +25,7 @@ public:
|
||||
WebIDL::Long value();
|
||||
void set_value(WebIDL::Long value)
|
||||
{
|
||||
set_attribute(AttributeNames::value, MUST(String::number(value))).release_value_but_fixme_should_propagate_errors();
|
||||
set_attribute(AttributeNames::value, String::number(value)).release_value_but_fixme_should_propagate_errors();
|
||||
}
|
||||
|
||||
private:
|
||||
|
||||
@@ -76,7 +76,7 @@ WebIDL::UnsignedLong HTMLMarqueeElement::scroll_amount()
|
||||
// https://html.spec.whatwg.org/multipage/obsolete.html#dom-marquee-scrollamount
|
||||
WebIDL::ExceptionOr<void> HTMLMarqueeElement::set_scroll_amount(WebIDL::UnsignedLong value)
|
||||
{
|
||||
return set_attribute(HTML::AttributeNames::scrollamount, MUST(String::number(value)));
|
||||
return set_attribute(HTML::AttributeNames::scrollamount, String::number(value));
|
||||
}
|
||||
|
||||
// https://html.spec.whatwg.org/multipage/obsolete.html#dom-marquee-scrolldelay
|
||||
@@ -93,7 +93,7 @@ WebIDL::UnsignedLong HTMLMarqueeElement::scroll_delay()
|
||||
// https://html.spec.whatwg.org/multipage/obsolete.html#dom-marquee-scrolldelay
|
||||
WebIDL::ExceptionOr<void> HTMLMarqueeElement::set_scroll_delay(WebIDL::UnsignedLong value)
|
||||
{
|
||||
return set_attribute(HTML::AttributeNames::scrolldelay, MUST(String::number(value)));
|
||||
return set_attribute(HTML::AttributeNames::scrolldelay, String::number(value));
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -54,7 +54,7 @@ double HTMLMeterElement::value() const
|
||||
|
||||
WebIDL::ExceptionOr<void> HTMLMeterElement::set_value(double value)
|
||||
{
|
||||
TRY(set_attribute(HTML::AttributeNames::value, MUST(String::number(value))));
|
||||
TRY(set_attribute(HTML::AttributeNames::value, String::number(value)));
|
||||
update_meter_value_element();
|
||||
return {};
|
||||
}
|
||||
@@ -72,7 +72,7 @@ double HTMLMeterElement::min() const
|
||||
|
||||
WebIDL::ExceptionOr<void> HTMLMeterElement::set_min(double value)
|
||||
{
|
||||
TRY(set_attribute(HTML::AttributeNames::min, MUST(String::number(value))));
|
||||
TRY(set_attribute(HTML::AttributeNames::min, String::number(value)));
|
||||
update_meter_value_element();
|
||||
return {};
|
||||
}
|
||||
@@ -93,7 +93,7 @@ double HTMLMeterElement::max() const
|
||||
|
||||
WebIDL::ExceptionOr<void> HTMLMeterElement::set_max(double value)
|
||||
{
|
||||
TRY(set_attribute(HTML::AttributeNames::max, MUST(String::number(value))));
|
||||
TRY(set_attribute(HTML::AttributeNames::max, String::number(value)));
|
||||
update_meter_value_element();
|
||||
return {};
|
||||
}
|
||||
@@ -116,7 +116,7 @@ double HTMLMeterElement::low() const
|
||||
|
||||
WebIDL::ExceptionOr<void> HTMLMeterElement::set_low(double value)
|
||||
{
|
||||
TRY(set_attribute(HTML::AttributeNames::low, MUST(String::number(value))));
|
||||
TRY(set_attribute(HTML::AttributeNames::low, String::number(value)));
|
||||
update_meter_value_element();
|
||||
return {};
|
||||
}
|
||||
@@ -139,7 +139,7 @@ double HTMLMeterElement::high() const
|
||||
|
||||
WebIDL::ExceptionOr<void> HTMLMeterElement::set_high(double value)
|
||||
{
|
||||
TRY(set_attribute(HTML::AttributeNames::high, MUST(String::number(value))));
|
||||
TRY(set_attribute(HTML::AttributeNames::high, String::number(value)));
|
||||
update_meter_value_element();
|
||||
return {};
|
||||
}
|
||||
@@ -162,7 +162,7 @@ double HTMLMeterElement::optimum() const
|
||||
|
||||
WebIDL::ExceptionOr<void> HTMLMeterElement::set_optimum(double value)
|
||||
{
|
||||
TRY(set_attribute(HTML::AttributeNames::optimum, MUST(String::number(value))));
|
||||
TRY(set_attribute(HTML::AttributeNames::optimum, String::number(value)));
|
||||
update_meter_value_element();
|
||||
return {};
|
||||
}
|
||||
|
||||
@@ -25,7 +25,7 @@ public:
|
||||
WebIDL::Long start();
|
||||
void set_start(WebIDL::Long start)
|
||||
{
|
||||
set_attribute(AttributeNames::start, MUST(String::number(start))).release_value_but_fixme_should_propagate_errors();
|
||||
set_attribute(AttributeNames::start, String::number(start)).release_value_but_fixme_should_propagate_errors();
|
||||
}
|
||||
|
||||
private:
|
||||
|
||||
@@ -54,7 +54,7 @@ WebIDL::ExceptionOr<void> HTMLProgressElement::set_value(double value)
|
||||
if (value < 0)
|
||||
value = 0;
|
||||
|
||||
TRY(set_attribute(HTML::AttributeNames::value, MUST(String::number(value))));
|
||||
TRY(set_attribute(HTML::AttributeNames::value, String::number(value)));
|
||||
update_progress_value_element();
|
||||
return {};
|
||||
}
|
||||
@@ -75,7 +75,7 @@ WebIDL::ExceptionOr<void> HTMLProgressElement::set_max(double value)
|
||||
if (value <= 0)
|
||||
value = 1;
|
||||
|
||||
TRY(set_attribute(HTML::AttributeNames::max, MUST(String::number(value))));
|
||||
TRY(set_attribute(HTML::AttributeNames::max, String::number(value)));
|
||||
update_progress_value_element();
|
||||
return {};
|
||||
}
|
||||
|
||||
@@ -91,7 +91,7 @@ WebIDL::UnsignedLong HTMLSelectElement::size() const
|
||||
|
||||
WebIDL::ExceptionOr<void> HTMLSelectElement::set_size(WebIDL::UnsignedLong size)
|
||||
{
|
||||
return set_attribute(HTML::AttributeNames::size, MUST(String::number(size)));
|
||||
return set_attribute(HTML::AttributeNames::size, String::number(size));
|
||||
}
|
||||
|
||||
// https://html.spec.whatwg.org/multipage/form-elements.html#dom-select-options
|
||||
|
||||
@@ -129,7 +129,7 @@ unsigned int HTMLTableCellElement::col_span() const
|
||||
|
||||
WebIDL::ExceptionOr<void> HTMLTableCellElement::set_col_span(unsigned int value)
|
||||
{
|
||||
return set_attribute(HTML::AttributeNames::colspan, MUST(String::number(value)));
|
||||
return set_attribute(HTML::AttributeNames::colspan, String::number(value));
|
||||
}
|
||||
|
||||
// This implements step 9 in the spec here:
|
||||
@@ -149,7 +149,7 @@ unsigned int HTMLTableCellElement::row_span() const
|
||||
|
||||
WebIDL::ExceptionOr<void> HTMLTableCellElement::set_row_span(unsigned int value)
|
||||
{
|
||||
return set_attribute(HTML::AttributeNames::rowspan, MUST(String::number(value)));
|
||||
return set_attribute(HTML::AttributeNames::rowspan, String::number(value));
|
||||
}
|
||||
|
||||
// https://html.spec.whatwg.org/multipage/tables.html#dom-tdth-cellindex
|
||||
|
||||
@@ -41,7 +41,7 @@ unsigned int HTMLTableColElement::span() const
|
||||
|
||||
WebIDL::ExceptionOr<void> HTMLTableColElement::set_span(unsigned int value)
|
||||
{
|
||||
return set_attribute(HTML::AttributeNames::span, MUST(String::number(value)));
|
||||
return set_attribute(HTML::AttributeNames::span, String::number(value));
|
||||
}
|
||||
|
||||
void HTMLTableColElement::apply_presentational_hints(CSS::StyleProperties& style) const
|
||||
|
||||
@@ -299,7 +299,7 @@ unsigned HTMLTextAreaElement::cols() const
|
||||
|
||||
WebIDL::ExceptionOr<void> HTMLTextAreaElement::set_cols(unsigned cols)
|
||||
{
|
||||
return set_attribute(HTML::AttributeNames::cols, MUST(String::number(cols)));
|
||||
return set_attribute(HTML::AttributeNames::cols, String::number(cols));
|
||||
}
|
||||
|
||||
// https://html.spec.whatwg.org/multipage/form-elements.html#dom-textarea-rows
|
||||
@@ -315,7 +315,7 @@ unsigned HTMLTextAreaElement::rows() const
|
||||
|
||||
WebIDL::ExceptionOr<void> HTMLTextAreaElement::set_rows(unsigned rows)
|
||||
{
|
||||
return set_attribute(HTML::AttributeNames::rows, MUST(String::number(rows)));
|
||||
return set_attribute(HTML::AttributeNames::rows, String::number(rows));
|
||||
}
|
||||
|
||||
WebIDL::UnsignedLong HTMLTextAreaElement::selection_start_binding() const
|
||||
|
||||
@@ -251,8 +251,6 @@ WebIDL::ExceptionOr<void> Location::set_hostname(String const&)
|
||||
// https://html.spec.whatwg.org/multipage/history.html#dom-location-port
|
||||
WebIDL::ExceptionOr<String> Location::port() const
|
||||
{
|
||||
auto& vm = this->vm();
|
||||
|
||||
// 1. If this's relevant Document is non-null and its origin is not same origin-domain with the entry settings object's origin, then throw a "SecurityError" DOMException.
|
||||
auto const relevant_document = this->relevant_document();
|
||||
if (relevant_document && !relevant_document->origin().is_same_origin_domain(entry_settings_object().origin()))
|
||||
@@ -265,7 +263,7 @@ WebIDL::ExceptionOr<String> Location::port() const
|
||||
return String {};
|
||||
|
||||
// 3. Return this's url's port, serialized.
|
||||
return TRY_OR_THROW_OOM(vm, String::number(*url.port()));
|
||||
return String::number(*url.port());
|
||||
}
|
||||
|
||||
WebIDL::ExceptionOr<void> Location::set_port(String const&)
|
||||
|
||||
@@ -153,7 +153,7 @@ JS::GCPtr<Navigable> Navigable::navigable_with_active_document(JS::NonnullGCPtr<
|
||||
ErrorOr<void> Navigable::initialize_navigable(JS::NonnullGCPtr<DocumentState> document_state, JS::GCPtr<Navigable> parent)
|
||||
{
|
||||
static int next_id = 0;
|
||||
m_id = TRY(String::number(next_id++));
|
||||
m_id = String::number(next_id++);
|
||||
|
||||
// 1. Assert: documentState's document is non-null.
|
||||
VERIFY(document_state->document());
|
||||
|
||||
@@ -320,7 +320,7 @@ WebIDL::ExceptionOr<String> convert_non_negative_integer_to_string(JS::Realm& re
|
||||
{
|
||||
if (value < 0)
|
||||
return WebIDL::IndexSizeError::create(realm, "The attribute is limited to only non-negative numbers"_string);
|
||||
return MUST(String::number(value));
|
||||
return String::number(value);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -60,7 +60,7 @@ void WindowEnvironmentSettingsObject::setup(Page& page, URL::URL const& creation
|
||||
// settings object's target browsing context to null,
|
||||
// and settings object's active service worker to null.
|
||||
static i64 next_id = 1;
|
||||
settings_object->id = MUST(String::number(next_id++));
|
||||
settings_object->id = String::number(next_id++);
|
||||
settings_object->target_browsing_context = nullptr;
|
||||
}
|
||||
|
||||
|
||||
@@ -78,7 +78,7 @@ void VideoTrack::initialize(JS::Realm& realm)
|
||||
WEB_SET_PROTOTYPE_FOR_INTERFACE(VideoTrack);
|
||||
|
||||
auto id = s_video_track_id_allocator.allocate();
|
||||
m_id = MUST(String::number(id));
|
||||
m_id = String::number(id);
|
||||
}
|
||||
|
||||
void VideoTrack::visit_edges(Cell::Visitor& visitor)
|
||||
|
||||
@@ -78,8 +78,6 @@ WebIDL::ExceptionOr<String> WorkerLocation::hostname() const
|
||||
// https://html.spec.whatwg.org/multipage/workers.html#dom-workerlocation-port
|
||||
WebIDL::ExceptionOr<String> WorkerLocation::port() const
|
||||
{
|
||||
auto& vm = realm().vm();
|
||||
|
||||
// The port getter steps are:
|
||||
// 1. Let port be this's WorkerGlobalScope object's url's port.
|
||||
auto const& port = m_global_scope->url().port();
|
||||
@@ -88,7 +86,7 @@ WebIDL::ExceptionOr<String> WorkerLocation::port() const
|
||||
if (!port.has_value())
|
||||
return String {};
|
||||
// 3. Return port, serialized.
|
||||
return TRY_OR_THROW_OOM(vm, String::number(port.value()));
|
||||
return String::number(port.value());
|
||||
}
|
||||
|
||||
// https://html.spec.whatwg.org/multipage/workers.html#dom-workerlocation-pathname
|
||||
|
||||
@@ -36,7 +36,7 @@ static String style_sheet_identifier_to_json(Web::CSS::StyleSheetIdentifier cons
|
||||
{
|
||||
return MUST(String::formatted("{{ type: '{}', domNodeId: {}, url: '{}' }}"sv,
|
||||
Web::CSS::style_sheet_identifier_type_to_string(identifier.type),
|
||||
identifier.dom_element_unique_id.map([](auto& it) { return MUST(String::number(it)); }).value_or("undefined"_string),
|
||||
identifier.dom_element_unique_id.map([](auto& it) { return String::number(it); }).value_or("undefined"_string),
|
||||
identifier.url.value_or("undefined"_string)));
|
||||
}
|
||||
|
||||
|
||||
@@ -210,7 +210,7 @@ String ProcessManager::generate_html()
|
||||
builder.appendff(" - {}", escape_html_entities(*process.title));
|
||||
builder.append("</td>"sv);
|
||||
builder.append("<td>"sv);
|
||||
builder.append(MUST(String::number(process.pid)));
|
||||
builder.append(String::number(process.pid));
|
||||
builder.append("</td>"sv);
|
||||
builder.append("<td>"sv);
|
||||
builder.append(human_readable_size(process.memory_usage_bytes));
|
||||
|
||||
@@ -85,7 +85,7 @@ static ErrorOr<String> build_suffix_with_letters(size_t allocation_index)
|
||||
return base_string;
|
||||
}
|
||||
|
||||
static ErrorOr<String> build_suffix_with_numbers(size_t allocation_index)
|
||||
static String build_suffix_with_numbers(size_t allocation_index)
|
||||
{
|
||||
return String::number(allocation_index);
|
||||
}
|
||||
@@ -146,7 +146,7 @@ ErrorOr<void> DeviceEventLoop::register_new_device(DeviceNodeType device_node_ty
|
||||
|
||||
auto path = match.path_pattern;
|
||||
if (path.contains(digit_pattern)) {
|
||||
auto replacement = TRY(build_suffix_with_numbers(allocated_suffix_index));
|
||||
auto replacement = build_suffix_with_numbers(allocated_suffix_index);
|
||||
path = TRY(path.replace(digit_pattern, replacement, ReplaceMode::All));
|
||||
}
|
||||
if (path.contains(letter_char_pattern)) {
|
||||
@@ -165,8 +165,8 @@ ErrorOr<void> DeviceEventLoop::register_new_device(DeviceNodeType device_node_ty
|
||||
|
||||
auto symlink_path = LexicalPath("/tmp/system/devicemap/nodes/")
|
||||
.append(device_node_type == DeviceNodeType::Block ? "block"sv : "char"sv)
|
||||
.append(MUST(String::number(major_number.value())))
|
||||
.append(MUST(String::number(minor_number.value())));
|
||||
.append(String::number(major_number.value()))
|
||||
.append(String::number(minor_number.value()));
|
||||
|
||||
TRY(Core::System::symlink(path.bytes_as_string_view(), symlink_path.string()));
|
||||
|
||||
@@ -202,8 +202,8 @@ ErrorOr<void> DeviceEventLoop::unregister_device(DeviceNodeType device_node_type
|
||||
|
||||
auto symlink_path = LexicalPath("/tmp/system/devicemap/nodes/")
|
||||
.append(device_node_type == DeviceNodeType::Block ? "block"sv : "char"sv)
|
||||
.append(MUST(String::number(major_number.value())))
|
||||
.append(MUST(String::number(minor_number.value())));
|
||||
.append(String::number(major_number.value()))
|
||||
.append(String::number(minor_number.value()));
|
||||
|
||||
TRY(Core::System::unlink(symlink_path.string()));
|
||||
|
||||
|
||||
@@ -37,8 +37,8 @@ static ErrorOr<void> populate_device_node_with_symlink(DeviceNodeType device_nod
|
||||
TRY(Core::System::create_char_device(path, mode, major, minor));
|
||||
auto symlink_path = LexicalPath("/tmp/system/devicemap/nodes/")
|
||||
.append(device_node_type == DeviceNodeType::Block ? "block"sv : "char"sv)
|
||||
.append(MUST(String::number(major)))
|
||||
.append(MUST(String::number(minor)));
|
||||
.append(String::number(major))
|
||||
.append(String::number(minor));
|
||||
TRY(Core::System::symlink(path, symlink_path.string()));
|
||||
return {};
|
||||
}
|
||||
@@ -64,7 +64,7 @@ static ErrorOr<void> prepare_tmpfs_system_devicemap_directory()
|
||||
|
||||
auto build_tmp_system_devicemap_directory = [](StringView node_type_directory, JsonObject const& major_number_allocation_object) -> ErrorOr<void> {
|
||||
auto allocated_number = major_number_allocation_object.get_u64("allocated_number"sv).value_or(0);
|
||||
auto path = LexicalPath("/tmp/system/devicemap/nodes/").append(node_type_directory).append(MUST(String::number(allocated_number)));
|
||||
auto path = LexicalPath("/tmp/system/devicemap/nodes/").append(node_type_directory).append(String::number(allocated_number));
|
||||
TRY(Core::System::mkdir(path.string(), 0755));
|
||||
|
||||
auto possible_family_name = major_number_allocation_object.get_byte_string("family_name"sv);
|
||||
|
||||
@@ -80,7 +80,7 @@ ErrorOr<int> serenity_main(Main::Arguments arguments)
|
||||
|
||||
auto page = TRY(Manual::Node::try_create_from_query(query_parameters));
|
||||
auto page_name = TRY(page->name());
|
||||
auto section_number = TRY(String::number(page->section_number()));
|
||||
auto section_number = String::number(page->section_number());
|
||||
|
||||
if (pager.is_empty())
|
||||
pager = TRY(String::formatted("less -P 'Manual Page {}({}) line %l?e (END):.'",
|
||||
|
||||
@@ -136,7 +136,7 @@ ErrorOr<int> serenity_main(Main::Arguments arguments)
|
||||
return ByteString::formatted("{}/{}", pid, program.value());
|
||||
};
|
||||
|
||||
auto get_formatted_user = [&](i32 uid) -> ErrorOr<String> {
|
||||
auto get_formatted_user = [&](i32 uid) {
|
||||
if (uid == -1)
|
||||
return "-"_string;
|
||||
|
||||
@@ -197,7 +197,7 @@ ErrorOr<int> serenity_main(Main::Arguments arguments)
|
||||
}
|
||||
}
|
||||
|
||||
auto peer_port = TRY(String::number(if_object.get_u32("peer_port"sv).value_or({})));
|
||||
auto peer_port = String::number(if_object.get_u32("peer_port"sv).value_or({}));
|
||||
if (!flag_numeric) {
|
||||
auto service = getservbyport(htons(if_object.get_u32("peer_port"sv).value_or(0)), "tcp");
|
||||
if (service != nullptr) {
|
||||
@@ -219,7 +219,7 @@ ErrorOr<int> serenity_main(Main::Arguments arguments)
|
||||
}
|
||||
}
|
||||
|
||||
auto local_port = TRY(String::number(if_object.get_u32("local_port"sv).value_or({})));
|
||||
auto local_port = String::number(if_object.get_u32("local_port"sv).value_or({}));
|
||||
if (!flag_numeric) {
|
||||
auto service = getservbyport(htons(if_object.get_u32("local_port"sv).value_or(0)), "tcp");
|
||||
if (service != nullptr) {
|
||||
@@ -239,9 +239,9 @@ ErrorOr<int> serenity_main(Main::Arguments arguments)
|
||||
if (protocol_column != -1)
|
||||
columns[protocol_column].buffer = "tcp";
|
||||
if (bytes_in_column != -1)
|
||||
columns[bytes_in_column].buffer = TRY(String::number(bytes_in)).to_byte_string();
|
||||
columns[bytes_in_column].buffer = String::number(bytes_in).to_byte_string();
|
||||
if (bytes_out_column != -1)
|
||||
columns[bytes_out_column].buffer = TRY(String::number(bytes_out)).to_byte_string();
|
||||
columns[bytes_out_column].buffer = String::number(bytes_out).to_byte_string();
|
||||
if (local_address_column != -1)
|
||||
columns[local_address_column].buffer = get_formatted_address(local_address, local_port);
|
||||
if (peer_address_column != -1)
|
||||
@@ -249,7 +249,7 @@ ErrorOr<int> serenity_main(Main::Arguments arguments)
|
||||
if (state_column != -1)
|
||||
columns[state_column].buffer = state;
|
||||
if (flag_extend && user_column != -1)
|
||||
columns[user_column].buffer = TRY(get_formatted_user(origin_uid)).to_byte_string();
|
||||
columns[user_column].buffer = get_formatted_user(origin_uid).to_byte_string();
|
||||
if (flag_program && program_column != -1)
|
||||
columns[program_column].buffer = get_formatted_program(origin_pid);
|
||||
|
||||
@@ -284,7 +284,7 @@ ErrorOr<int> serenity_main(Main::Arguments arguments)
|
||||
}
|
||||
}
|
||||
|
||||
auto local_port = TRY(String::number(if_object.get_u32("local_port"sv).value_or({})));
|
||||
auto local_port = String::number(if_object.get_u32("local_port"sv).value_or({}));
|
||||
if (!flag_numeric) {
|
||||
auto service = getservbyport(htons(if_object.get_u32("local_port"sv).value_or(0)), "udp");
|
||||
if (service != nullptr) {
|
||||
@@ -306,7 +306,7 @@ ErrorOr<int> serenity_main(Main::Arguments arguments)
|
||||
}
|
||||
}
|
||||
|
||||
auto peer_port = TRY(String::number(if_object.get_u32("peer_port"sv).value_or({})));
|
||||
auto peer_port = String::number(if_object.get_u32("peer_port"sv).value_or({}));
|
||||
if (!flag_numeric) {
|
||||
auto service = getservbyport(htons(if_object.get_u32("peer_port"sv).value_or(0)), "udp");
|
||||
if (service != nullptr) {
|
||||
@@ -332,7 +332,7 @@ ErrorOr<int> serenity_main(Main::Arguments arguments)
|
||||
if (state_column != -1)
|
||||
columns[state_column].buffer = "-";
|
||||
if (flag_extend && user_column != -1)
|
||||
columns[user_column].buffer = TRY(get_formatted_user(origin_uid)).to_byte_string();
|
||||
columns[user_column].buffer = get_formatted_user(origin_uid).to_byte_string();
|
||||
if (flag_program && program_column != -1)
|
||||
columns[program_column].buffer = get_formatted_program(origin_pid);
|
||||
|
||||
|
||||
Reference in New Issue
Block a user