From 4d99d22e10a3cb2a421da1618c127128816613c9 Mon Sep 17 00:00:00 2001 From: jacqueline Date: Tue, 26 Sep 2023 13:36:07 +1000 Subject: std::string -> std::pmr::string in psram --- src/database/track.cpp | 20 +++++++++++--------- 1 file changed, 11 insertions(+), 9 deletions(-) (limited to 'src/database/track.cpp') diff --git a/src/database/track.cpp b/src/database/track.cpp index fa65261e..a3c7dc99 100644 --- a/src/database/track.cpp +++ b/src/database/track.cpp @@ -7,15 +7,16 @@ #include "track.hpp" #include -#include "shared_string.h" + +#include "memory_resource.hpp" namespace database { -auto TrackTags::set(const Tag& key, const std::string& val) -> void { +auto TrackTags::set(const Tag& key, const std::pmr::string& val) -> void { tags_[key] = val; } -auto TrackTags::at(const Tag& key) const -> std::optional { +auto TrackTags::at(const Tag& key) const -> std::optional { if (tags_.contains(key)) { return tags_.at(key); } @@ -23,12 +24,13 @@ auto TrackTags::at(const Tag& key) const -> std::optional { } auto TrackTags::operator[](const Tag& key) const - -> std::optional { + -> std::optional { return at(key); } -/* Helper function to update a komihash stream with a std::string. */ -auto HashString(komihash_stream_t* stream, const std::string& str) -> void { +/* Helper function to update a komihash stream with a std::pmr::string. */ +auto HashString(komihash_stream_t* stream, const std::pmr::string& str) + -> void { komihash_stream_update(stream, str.c_str(), str.length()); } @@ -58,7 +60,7 @@ auto TrackData::Entomb() const -> TrackData { return TrackData(id_, filepath_, tags_hash_, play_count_, true); } -auto TrackData::Exhume(const std::string& new_path) const -> TrackData { +auto TrackData::Exhume(const std::pmr::string& new_path) const -> TrackData { return TrackData(id_, new_path, tags_hash_, play_count_, false); } @@ -68,13 +70,13 @@ void swap(Track& first, Track& second) { second = temp; } -auto Track::TitleOrFilename() const -> shared_string { +auto Track::TitleOrFilename() const -> std::pmr::string { auto title = tags().at(Tag::kTitle); if (title) { return *title; } auto start = data().filepath().find_last_of('/'); - if (start == std::string::npos) { + if (start == std::pmr::string::npos) { return data().filepath(); } return data().filepath().substr(start); -- cgit v1.2.3