From a231fd1c8afedbeb14b0bc77d76bad61db986059 Mon Sep 17 00:00:00 2001 From: jacqueline Date: Thu, 2 May 2024 17:06:25 +1000 Subject: Replace cpp::span shim with std::span --- src/database/CMakeLists.txt | 2 +- src/database/include/records.hpp | 2 +- src/database/include/track.hpp | 9 ++++----- src/database/index.cpp | 10 +++++----- src/database/records.cpp | 2 +- src/database/track.cpp | 8 ++++---- 6 files changed, 16 insertions(+), 17 deletions(-) (limited to 'src/database') diff --git a/src/database/CMakeLists.txt b/src/database/CMakeLists.txt index 26c14815..248ca3d7 100644 --- a/src/database/CMakeLists.txt +++ b/src/database/CMakeLists.txt @@ -6,7 +6,7 @@ idf_component_register( SRCS "env_esp.cpp" "database.cpp" "track.cpp" "records.cpp" "file_gatherer.cpp" "tag_parser.cpp" "index.cpp" INCLUDE_DIRS "include" - REQUIRES "result" "span" "esp_psram" "fatfs" "libtags" "komihash" "cbor" + REQUIRES "result" "esp_psram" "fatfs" "libtags" "komihash" "cbor" "tasks" "memory" "util" "tinyfsm" "events" "opusfile" "libcppbor") target_compile_options(${COMPONENT_LIB} PRIVATE ${EXTRA_WARNINGS}) diff --git a/src/database/include/records.hpp b/src/database/include/records.hpp index 87034059..3ca68fea 100644 --- a/src/database/include/records.hpp +++ b/src/database/include/records.hpp @@ -80,6 +80,6 @@ auto TrackIdToBytes(TrackId id) -> std::string; * Converts a track id encoded via TrackIdToBytes back into a TrackId. May * return nullopt if parsing fails. */ -auto BytesToTrackId(cpp::span bytes) -> std::optional; +auto BytesToTrackId(std::span bytes) -> std::optional; } // namespace database diff --git a/src/database/include/track.hpp b/src/database/include/track.hpp index 76b1c56e..b097ab52 100644 --- a/src/database/include/track.hpp +++ b/src/database/include/track.hpp @@ -6,12 +6,12 @@ #pragma once -#include -#include +#include #include #include #include +#include #include #include #include @@ -19,7 +19,6 @@ #include "leveldb/db.h" #include "memory_resource.hpp" -#include "span.hpp" namespace database { @@ -62,7 +61,7 @@ enum class Tag { using TagValue = std::variant>; + std::span>; auto tagName(Tag) -> std::string; auto tagHash(const TagValue&) -> uint64_t; @@ -112,7 +111,7 @@ class TrackTags { auto albumOrder() const -> uint32_t; - auto genres() const -> cpp::span; + auto genres() const -> std::span; auto genres(const std::string_view) -> void; /* diff --git a/src/database/index.cpp b/src/database/index.cpp index 857fbcc5..328c3b43 100644 --- a/src/database/index.cpp +++ b/src/database/index.cpp @@ -61,11 +61,11 @@ class Indexer { private: auto handleLevel(const IndexKey::Header& header, - cpp::span components) -> void; + std::span components) -> void; auto handleItem(const IndexKey::Header& header, std::variant item, - cpp::span components) -> void; + std::span components) -> void; auto missing_value(Tag tag) -> TagValue { switch (tag) { @@ -111,7 +111,7 @@ auto Indexer::index() -> std::vector> { } auto Indexer::handleLevel(const IndexKey::Header& header, - cpp::span components) -> void { + std::span components) -> void { Tag component = components.front(); TagValue value = track_.tags().get(component); if (std::holds_alternative(value)) { @@ -129,7 +129,7 @@ auto Indexer::handleLevel(const IndexKey::Header& header, } else if constexpr (std::is_same_v) { handleItem(header, arg, components); } else if constexpr (std::is_same_v< - T, cpp::span>) { + T, std::span>) { for (const auto& i : arg) { handleItem(header, i, components); } @@ -140,7 +140,7 @@ auto Indexer::handleLevel(const IndexKey::Header& header, auto Indexer::handleItem(const IndexKey::Header& header, std::variant item, - cpp::span components) -> void { + std::span components) -> void { IndexKey key{ .header = header, .item = {}, diff --git a/src/database/records.cpp b/src/database/records.cpp index a1efb568..b086be3b 100644 --- a/src/database/records.cpp +++ b/src/database/records.cpp @@ -248,7 +248,7 @@ auto TrackIdToBytes(TrackId id) -> std::string { return cppbor::Uint{id}.toString(); } -auto BytesToTrackId(cpp::span bytes) -> std::optional { +auto BytesToTrackId(std::span bytes) -> std::optional { auto [res, unused, err] = cppbor::parse( reinterpret_cast(bytes.data()), bytes.size()); if (!res || res->type() != cppbor::UINT) { diff --git a/src/database/track.cpp b/src/database/track.cpp index a2bd05d3..1b1442a1 100644 --- a/src/database/track.cpp +++ b/src/database/track.cpp @@ -9,6 +9,7 @@ #include #include #include +#include #include #include @@ -16,7 +17,6 @@ #include "komihash.h" #include "memory_resource.hpp" -#include "span.hpp" namespace database { @@ -55,7 +55,7 @@ auto tagHash(const TagValue& t) -> uint64_t { } else if constexpr (std::is_same_v) { return komihash(&arg, sizeof(arg), 0); } else if constexpr (std::is_same_v< - T, cpp::span>) { + T, std::span>) { komihash_stream_t hash; komihash_stream_init(&hash, 0); for (const auto& i : arg) { @@ -79,7 +79,7 @@ auto tagToString(const TagValue& val) -> std::string { } else if constexpr (std::is_same_v) { return std::to_string(arg); } else if constexpr (std::is_same_v< - T, cpp::span>) { + T, std::span>) { std::ostringstream builder{}; for (const auto& str : arg) { builder << std::string{str.data(), str.size()} << ","; @@ -225,7 +225,7 @@ auto TrackTags::albumOrder() const -> uint32_t { return (disc_.value_or(0) << 16) | track_.value_or(0); } -auto TrackTags::genres() const -> cpp::span { +auto TrackTags::genres() const -> std::span { return genres_; } -- cgit v1.2.3