1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-06-01 10:08:10 +00:00

Everywhere: Add sv suffix to strings relying on StringView(char const*)

Each of these strings would previously rely on StringView's char const*
constructor overload, which would call __builtin_strlen on the string.
Since we now have operator ""sv, we can replace these with much simpler
versions. This opens the door to being able to remove
StringView(char const*).

No functional changes.
This commit is contained in:
sin-ack 2022-07-11 17:32:29 +00:00 committed by Andreas Kling
parent e5f09ea170
commit 3f3f45580a
762 changed files with 8315 additions and 8316 deletions

View file

@ -103,8 +103,8 @@ ErrorOr<void> DevPtsFSInode::traverse_as_directory(Function<ErrorOr<void>(FileSy
if (identifier().index() > 1)
return ENOTDIR;
TRY(callback({ ".", identifier(), 0 }));
TRY(callback({ "..", identifier(), 0 }));
TRY(callback({ "."sv, identifier(), 0 }));
TRY(callback({ ".."sv, identifier(), 0 }));
return SlavePTY::all_instances().with([&](auto& list) -> ErrorOr<void> {
StringBuilder builder;

View file

@ -205,8 +205,8 @@ DevTmpFSDirectoryInode::~DevTmpFSDirectoryInode() = default;
ErrorOr<void> DevTmpFSDirectoryInode::traverse_as_directory(Function<ErrorOr<void>(FileSystem::DirectoryEntryView const&)> callback) const
{
MutexLocker locker(m_inode_lock);
TRY(callback({ ".", identifier(), 0 }));
TRY(callback({ "..", identifier(), 0 }));
TRY(callback({ "."sv, identifier(), 0 }));
TRY(callback({ ".."sv, identifier(), 0 }));
for (auto& node : m_nodes) {
InodeIdentifier identifier = { fsid(), node.index() };
TRY(callback({ node.name(), identifier, 0 }));

View file

@ -153,7 +153,7 @@ class DevTmpFSRootDirectoryInode final : public DevTmpFSDirectoryInode {
public:
virtual ~DevTmpFSRootDirectoryInode() override;
virtual StringView name() const override { return "."; }
virtual StringView name() const override { return "."sv; }
private:
// ^DevTmpFSInode

View file

@ -41,7 +41,7 @@ ErrorOr<NonnullRefPtr<OpenFileDescription>> FIFO::open_direction_blocking(FIFO::
if (m_writers == 0) {
locker.unlock();
m_write_open_queue.wait_forever("FIFO");
m_write_open_queue.wait_forever("FIFO"sv);
locker.lock();
}
}
@ -51,7 +51,7 @@ ErrorOr<NonnullRefPtr<OpenFileDescription>> FIFO::open_direction_blocking(FIFO::
if (m_readers == 0) {
locker.unlock();
m_read_open_queue.wait_forever("FIFO");
m_read_open_queue.wait_forever("FIFO"sv);
locker.lock();
}
}

View file

@ -67,7 +67,7 @@ protected:
void set_block_size(u64 size) { m_block_size = size; }
void set_fragment_size(size_t size) { m_fragment_size = size; }
mutable Mutex m_lock { "FS" };
mutable Mutex m_lock { "FS"sv };
private:
FileSystemID m_fsid;

View file

@ -239,7 +239,7 @@ ErrorOr<void> ISO9660FS::parse_volume_set()
}
auto const* header = reinterpret_cast<ISO::VolumeDescriptorHeader const*>(block->data());
if (StringView { header->identifier, 5 } != "CD001") {
if (StringView { header->identifier, 5 } != "CD001"sv) {
dbgln_if(ISO9660_DEBUG, "Header magic at volume descriptor {} is not valid", current_block_index - first_data_area_block);
return EIO;
}

View file

@ -109,7 +109,7 @@ protected:
void did_modify_contents();
void did_delete_self();
mutable Mutex m_inode_lock { "Inode" };
mutable Mutex m_inode_lock { "Inode"sv };
private:
FileSystem& m_file_system;

View file

@ -56,6 +56,6 @@ template<>
struct AK::Formatter<Kernel::InodeIdentifier> : AK::Formatter<FormatString> {
ErrorOr<void> format(FormatBuilder& builder, Kernel::InodeIdentifier value)
{
return AK::Formatter<FormatString>::format(builder, "{}:{}", value.fsid(), value.index());
return AK::Formatter<FormatString>::format(builder, "{}:{}"sv, value.fsid(), value.index());
}
};

View file

@ -201,7 +201,7 @@ ErrorOr<void> Plan9FS::initialize()
ensure_thread();
Message version_message { *this, Message::Type::Tversion };
version_message << (u32)m_max_message_size << "9P2000.L";
version_message << (u32)m_max_message_size << "9P2000.L"sv;
TRY(post_message_and_wait_for_a_reply(version_message));
@ -218,8 +218,8 @@ ErrorOr<void> Plan9FS::initialize()
Message attach_message { *this, Message::Type::Tattach };
// FIXME: This needs a user name and an "export" name; but how do we get them?
// Perhaps initialize() should accept a string of FS-specific options...
attach_message << root_fid << (u32)-1 << "sergey"
<< "/";
attach_message << root_fid << (u32)-1 << "sergey"sv
<< "/"sv;
if (m_remote_protocol_version >= ProtocolVersion::v9P2000u)
attach_message << (u32)-1;
@ -653,7 +653,7 @@ void Plan9FS::ensure_thread()
{
SpinlockLocker lock(m_thread_lock);
if (!m_thread_running.exchange(true, AK::MemoryOrder::memory_order_acq_rel)) {
auto process_name = KString::try_create("Plan9FS");
auto process_name = KString::try_create("Plan9FS"sv);
if (process_name.is_error())
TODO();
(void)Process::create_kernel_process(m_thread, process_name.release_value(), [&]() {

View file

@ -135,7 +135,7 @@ private:
ProtocolVersion m_remote_protocol_version { ProtocolVersion::v9P2000 };
size_t m_max_message_size { 4 * KiB };
Mutex m_send_lock { "Plan9FS send" };
Mutex m_send_lock { "Plan9FS send"sv };
Plan9FSBlockerSet m_completion_blocker;
HashMap<u16, NonnullRefPtr<ReceiveCompletion>> m_completions;

View file

@ -35,8 +35,8 @@ ErrorOr<void> SysFSDirectory::traverse_as_directory(FileSystemID fsid, Function<
{
MutexLocker locker(SysFSComponentRegistry::the().get_lock());
VERIFY(m_parent_directory);
TRY(callback({ ".", { fsid, component_index() }, 0 }));
TRY(callback({ "..", { fsid, m_parent_directory->component_index() }, 0 }));
TRY(callback({ "."sv, { fsid, component_index() }, 0 }));
TRY(callback({ ".."sv, { fsid, m_parent_directory->component_index() }, 0 }));
for (auto& component : m_components) {
InodeIdentifier identifier = { fsid, component.component_index() };

View file

@ -20,8 +20,8 @@ NonnullRefPtr<SysFSRootDirectory> SysFSRootDirectory::create()
ErrorOr<void> SysFSRootDirectory::traverse_as_directory(FileSystemID fsid, Function<ErrorOr<void>(FileSystem::DirectoryEntryView const&)> callback) const
{
MutexLocker locker(SysFSComponentRegistry::the().get_lock());
TRY(callback({ ".", { fsid, component_index() }, 0 }));
TRY(callback({ "..", { fsid, 0 }, 0 }));
TRY(callback({ "."sv, { fsid, component_index() }, 0 }));
TRY(callback({ ".."sv, { fsid, 0 }, 0 }));
for (auto const& component : m_components) {
InodeIdentifier identifier = { fsid, component.component_index() };

View file

@ -17,8 +17,8 @@ ErrorOr<void> SysFSUSBBusDirectory::traverse_as_directory(FileSystemID fsid, Fun
SpinlockLocker lock(m_lock);
// Note: if the parent directory is null, it means something bad happened as this should not happen for the USB directory.
VERIFY(m_parent_directory);
TRY(callback({ ".", { fsid, component_index() }, 0 }));
TRY(callback({ "..", { fsid, m_parent_directory->component_index() }, 0 }));
TRY(callback({ "."sv, { fsid, component_index() }, 0 }));
TRY(callback({ ".."sv, { fsid, m_parent_directory->component_index() }, 0 }));
for (auto const& device_node : m_device_nodes) {
InodeIdentifier identifier = { fsid, device_node.component_index() };

View file

@ -26,56 +26,56 @@ ErrorOr<void> SysFSUSBDeviceInformation::try_generate(KBufferBuilder& builder)
auto array = TRY(JsonArraySerializer<>::try_create(builder));
auto obj = TRY(array.add_object());
TRY(obj.add("device_address", m_device->address()));
TRY(obj.add("usb_spec_compliance_bcd", m_device->device_descriptor().usb_spec_compliance_bcd));
TRY(obj.add("device_class", m_device->device_descriptor().device_class));
TRY(obj.add("device_sub_class", m_device->device_descriptor().device_sub_class));
TRY(obj.add("device_protocol", m_device->device_descriptor().device_protocol));
TRY(obj.add("max_packet_size", m_device->device_descriptor().max_packet_size));
TRY(obj.add("vendor_id", m_device->device_descriptor().vendor_id));
TRY(obj.add("product_id", m_device->device_descriptor().product_id));
TRY(obj.add("device_release_bcd", m_device->device_descriptor().device_release_bcd));
TRY(obj.add("manufacturer_id_descriptor_index", m_device->device_descriptor().manufacturer_id_descriptor_index));
TRY(obj.add("product_string_descriptor_index", m_device->device_descriptor().product_string_descriptor_index));
TRY(obj.add("serial_number_descriptor_index", m_device->device_descriptor().serial_number_descriptor_index));
TRY(obj.add("num_configurations", m_device->device_descriptor().num_configurations));
TRY(obj.add("length", m_device->device_descriptor().descriptor_header.length));
TRY(obj.add("descriptor_type", m_device->device_descriptor().descriptor_header.descriptor_type));
TRY(obj.add("device_address"sv, m_device->address()));
TRY(obj.add("usb_spec_compliance_bcd"sv, m_device->device_descriptor().usb_spec_compliance_bcd));
TRY(obj.add("device_class"sv, m_device->device_descriptor().device_class));
TRY(obj.add("device_sub_class"sv, m_device->device_descriptor().device_sub_class));
TRY(obj.add("device_protocol"sv, m_device->device_descriptor().device_protocol));
TRY(obj.add("max_packet_size"sv, m_device->device_descriptor().max_packet_size));
TRY(obj.add("vendor_id"sv, m_device->device_descriptor().vendor_id));
TRY(obj.add("product_id"sv, m_device->device_descriptor().product_id));
TRY(obj.add("device_release_bcd"sv, m_device->device_descriptor().device_release_bcd));
TRY(obj.add("manufacturer_id_descriptor_index"sv, m_device->device_descriptor().manufacturer_id_descriptor_index));
TRY(obj.add("product_string_descriptor_index"sv, m_device->device_descriptor().product_string_descriptor_index));
TRY(obj.add("serial_number_descriptor_index"sv, m_device->device_descriptor().serial_number_descriptor_index));
TRY(obj.add("num_configurations"sv, m_device->device_descriptor().num_configurations));
TRY(obj.add("length"sv, m_device->device_descriptor().descriptor_header.length));
TRY(obj.add("descriptor_type"sv, m_device->device_descriptor().descriptor_header.descriptor_type));
auto configuration_array = TRY(obj.add_array("configurations"));
auto configuration_array = TRY(obj.add_array("configurations"sv));
for (auto const& configuration : m_device->configurations()) {
auto configuration_object = TRY(configuration_array.add_object());
auto const& configuration_descriptor = configuration.descriptor();
TRY(configuration_object.add("length", configuration_descriptor.descriptor_header.length));
TRY(configuration_object.add("descriptor_type", configuration_descriptor.descriptor_header.descriptor_type));
TRY(configuration_object.add("total_length", configuration_descriptor.total_length));
TRY(configuration_object.add("number_of_interfaces", configuration_descriptor.number_of_interfaces));
TRY(configuration_object.add("attributes_bitmap", configuration_descriptor.attributes_bitmap));
TRY(configuration_object.add("max_power", configuration_descriptor.max_power_in_ma));
TRY(configuration_object.add("length"sv, configuration_descriptor.descriptor_header.length));
TRY(configuration_object.add("descriptor_type"sv, configuration_descriptor.descriptor_header.descriptor_type));
TRY(configuration_object.add("total_length"sv, configuration_descriptor.total_length));
TRY(configuration_object.add("number_of_interfaces"sv, configuration_descriptor.number_of_interfaces));
TRY(configuration_object.add("attributes_bitmap"sv, configuration_descriptor.attributes_bitmap));
TRY(configuration_object.add("max_power"sv, configuration_descriptor.max_power_in_ma));
auto interface_array = TRY(configuration_object.add_array("interfaces"));
auto interface_array = TRY(configuration_object.add_array("interfaces"sv));
for (auto const& interface : configuration.interfaces()) {
auto interface_object = TRY(interface_array.add_object());
auto const& interface_descriptor = interface.descriptor();
TRY(interface_object.add("length", interface_descriptor.descriptor_header.length));
TRY(interface_object.add("descriptor_type", interface_descriptor.descriptor_header.descriptor_type));
TRY(interface_object.add("interface_number", interface_descriptor.interface_id));
TRY(interface_object.add("alternate_setting", interface_descriptor.alternate_setting));
TRY(interface_object.add("num_endpoints", interface_descriptor.number_of_endpoints));
TRY(interface_object.add("interface_class_code", interface_descriptor.interface_class_code));
TRY(interface_object.add("interface_sub_class_code", interface_descriptor.interface_sub_class_code));
TRY(interface_object.add("interface_protocol", interface_descriptor.interface_protocol));
TRY(interface_object.add("interface_string_desc_index", interface_descriptor.interface_string_descriptor_index));
TRY(interface_object.add("length"sv, interface_descriptor.descriptor_header.length));
TRY(interface_object.add("descriptor_type"sv, interface_descriptor.descriptor_header.descriptor_type));
TRY(interface_object.add("interface_number"sv, interface_descriptor.interface_id));
TRY(interface_object.add("alternate_setting"sv, interface_descriptor.alternate_setting));
TRY(interface_object.add("num_endpoints"sv, interface_descriptor.number_of_endpoints));
TRY(interface_object.add("interface_class_code"sv, interface_descriptor.interface_class_code));
TRY(interface_object.add("interface_sub_class_code"sv, interface_descriptor.interface_sub_class_code));
TRY(interface_object.add("interface_protocol"sv, interface_descriptor.interface_protocol));
TRY(interface_object.add("interface_string_desc_index"sv, interface_descriptor.interface_string_descriptor_index));
auto endpoint_array = TRY(interface_object.add_array("endpoints"));
auto endpoint_array = TRY(interface_object.add_array("endpoints"sv));
for (auto const& endpoint : interface.endpoints()) {
auto endpoint_object = TRY(endpoint_array.add_object());
TRY(endpoint_object.add("length", endpoint.descriptor_header.length));
TRY(endpoint_object.add("descriptor_length", endpoint.descriptor_header.descriptor_type));
TRY(endpoint_object.add("endpoint_address", endpoint.endpoint_address));
TRY(endpoint_object.add("attribute_bitmap", endpoint.endpoint_attributes_bitmap));
TRY(endpoint_object.add("max_packet_size", endpoint.max_packet_size));
TRY(endpoint_object.add("polling_interval", endpoint.poll_interval_in_frames));
TRY(endpoint_object.add("length"sv, endpoint.descriptor_header.length));
TRY(endpoint_object.add("descriptor_length"sv, endpoint.descriptor_header.descriptor_type));
TRY(endpoint_object.add("endpoint_address"sv, endpoint.endpoint_address));
TRY(endpoint_object.add("attribute_bitmap"sv, endpoint.endpoint_attributes_bitmap));
TRY(endpoint_object.add("max_packet_size"sv, endpoint.max_packet_size));
TRY(endpoint_object.add("polling_interval"sv, endpoint.poll_interval_in_frames));
TRY(endpoint_object.finish());
}
TRY(endpoint_array.finish());

View file

@ -37,7 +37,7 @@ protected:
private:
ErrorOr<void> try_generate(KBufferBuilder&);
virtual ErrorOr<void> refresh_data(OpenFileDescription& description) const override;
mutable Mutex m_lock { "SysFSUSBDeviceInformation" };
mutable Mutex m_lock { "SysFSUSBDeviceInformation"sv };
NonnullOwnPtr<KString> m_device_name;
};

View file

@ -22,8 +22,8 @@ SysFSBlockDevicesDirectory::SysFSBlockDevicesDirectory(SysFSDevicesDirectory con
ErrorOr<void> SysFSBlockDevicesDirectory::traverse_as_directory(FileSystemID fsid, Function<ErrorOr<void>(FileSystem::DirectoryEntryView const&)> callback) const
{
VERIFY(m_parent_directory);
TRY(callback({ ".", { fsid, component_index() }, 0 }));
TRY(callback({ "..", { fsid, m_parent_directory->component_index() }, 0 }));
TRY(callback({ "."sv, { fsid, component_index() }, 0 }));
TRY(callback({ ".."sv, { fsid, m_parent_directory->component_index() }, 0 }));
return SysFSComponentRegistry::the().devices_list().with_exclusive([&](auto& list) -> ErrorOr<void> {
for (auto& exposed_device : list) {

View file

@ -21,8 +21,8 @@ SysFSCharacterDevicesDirectory::SysFSCharacterDevicesDirectory(SysFSDevicesDirec
ErrorOr<void> SysFSCharacterDevicesDirectory::traverse_as_directory(FileSystemID fsid, Function<ErrorOr<void>(FileSystem::DirectoryEntryView const&)> callback) const
{
VERIFY(m_parent_directory);
TRY(callback({ ".", { fsid, component_index() }, 0 }));
TRY(callback({ "..", { fsid, m_parent_directory->component_index() }, 0 }));
TRY(callback({ "."sv, { fsid, component_index() }, 0 }));
TRY(callback({ ".."sv, { fsid, m_parent_directory->component_index() }, 0 }));
return SysFSComponentRegistry::the().devices_list().with_exclusive([&](auto& list) -> ErrorOr<void> {
for (auto& exposed_device : list) {

View file

@ -96,7 +96,7 @@ UNMAP_AFTER_INIT Optional<PhysicalAddress> BIOSSysFSDirectory::find_dmi_entry64b
auto bios_or_error = map_bios();
if (bios_or_error.is_error())
return {};
return bios_or_error.value().find_chunk_starting_with("_SM3_", 16);
return bios_or_error.value().find_chunk_starting_with("_SM3_"sv, 16);
}
UNMAP_AFTER_INIT Optional<PhysicalAddress> BIOSSysFSDirectory::find_dmi_entry32bit_point()
@ -104,7 +104,7 @@ UNMAP_AFTER_INIT Optional<PhysicalAddress> BIOSSysFSDirectory::find_dmi_entry32b
auto bios_or_error = map_bios();
if (bios_or_error.is_error())
return {};
return bios_or_error.value().find_chunk_starting_with("_SM_", 16);
return bios_or_error.value().find_chunk_starting_with("_SM_"sv, 16);
}
}

View file

@ -77,9 +77,9 @@ ErrorOr<void> TmpFSInode::traverse_as_directory(Function<ErrorOr<void>(FileSyste
if (!is_directory())
return ENOTDIR;
TRY(callback({ ".", identifier(), 0 }));
TRY(callback({ "."sv, identifier(), 0 }));
if (auto parent = m_parent.strong_ref())
TRY(callback({ "..", parent->identifier(), 0 }));
TRY(callback({ ".."sv, parent->identifier(), 0 }));
for (auto& child : m_children) {
TRY(callback({ child.name->view(), child.inode->identifier(), 0 }));

View file

@ -128,7 +128,7 @@ ErrorOr<void> VirtualFileSystem::mount_root(FileSystem& fs)
mounts.append(move(mount));
});
m_root_custody = TRY(Custody::try_create(nullptr, "", *m_root_inode, root_mount_flags));
m_root_custody = TRY(Custody::try_create(nullptr, ""sv, *m_root_inode, root_mount_flags));
return {};
}
@ -376,7 +376,7 @@ ErrorOr<void> VirtualFileSystem::mkdir(StringView path, mode_t mode, Custody& ba
path = path.trim("/"sv, TrimMode::Right);
if (path.is_empty()) {
// NOTE: This means the path was a series of slashes, which resolves to "/".
path = "/";
path = "/"sv;
}
RefPtr<Custody> parent_custody;
@ -736,8 +736,8 @@ ErrorOr<void> VirtualFileSystem::rmdir(StringView path, Custody& base)
if (custody->is_readonly())
return EROFS;
TRY(inode.remove_child("."));
TRY(inode.remove_child(".."));
TRY(inode.remove_child("."sv));
TRY(inode.remove_child(".."sv));
return parent_inode.remove_child(KLexicalPath::basename(path));
}