From 13771971cfaef6356ba47668cae6ce25c5c2071f Mon Sep 17 00:00:00 2001 From: Aqua-sama Date: Sun, 29 Mar 2020 22:59:04 +0300 Subject: Drop dependency on serge-sans-paille/frozen format: - instead of frozen::unordered_map, create two std::arrays with the aliased names (entries) and respective data (values) libembed: - Resources and CompressedResources convenience classes for raw and compressed resources respectively - Resources can be constexpr in regular usage - Annotate Resources::decompress accordingly --- test/main.cpp | 17 +++++++++-------- 1 file changed, 9 insertions(+), 8 deletions(-) (limited to 'test') diff --git a/test/main.cpp b/test/main.cpp index f17ef67..f18332c 100644 --- a/test/main.cpp +++ b/test/main.cpp @@ -3,22 +3,23 @@ #include #include -embed::Resources zstd_ctx(zstd_data::dictionary); - int main(int, char **) { - for(const auto &pair : zstd_data::entries) { - const auto s = staticdata::entries.at(pair.first); - const auto v = zstd_ctx.decompress(pair.second); + constexpr auto size = staticdata::entries.size(); + constexpr embed::Resources static_ctx(staticdata::entries, staticdata::values); + const embed::CompressedResources zstd_ctx(zstd_data::entries, zstd_data::values, zstd_data::compression, zstd_data::dictionary); + for(std::size_t i = 0; i < size; ++i) { + const auto s = static_ctx.value(i); + const auto v = zstd_ctx.decompress(i); if(s.size() != v.size()) { - printf("failed comparing sizes at path [%s]\n", pair.first.data()); - printf("s: %li != v: %li\n", s.size(), v.size()); + printf(" raw data at path [%s] size=%li\n", staticdata::entries.at(i), s.size()); + printf(" zstd data at path [%s] size=%li\n", zstd_data::entries.at(i), v.size()); return EXIT_FAILURE; } if(!std::equal(s.begin(), s.end(), v.begin(), v.end())) { - printf("failed comparing values at path [%s]\n", pair.first.data()); + printf("failed comparing values at path [%s]\n", staticdata::entries.at(i)); for(const char &c : s) printf("%c", c); for(const char &c : v) -- cgit v1.2.1