diff options
author | Alexander Shalamov <alexander.shalamov@mapbox.com> | 2019-10-11 16:13:11 +0300 |
---|---|---|
committer | Alexander Shalamov <alexander.shalamov@mapbox.com> | 2020-02-06 23:54:19 +0200 |
commit | 534003495bc86e621f00597ed57c6c891fd6e33f (patch) | |
tree | 7c0ac4596b40abfc1af4130cf7de244da36a4c12 | |
parent | bb85ec442dd7b5b0966d73bc6b868d33bb03e5e9 (diff) | |
download | qtlocation-mapboxgl-534003495bc86e621f00597ed57c6c891fd6e33f.tar.gz |
[core] Switch unordered_map to map
Change container types where number of elements expected
to be rather small. For instance, number of offline packs
or sql statements.
5 files changed, 11 insertions, 10 deletions
diff --git a/platform/default/include/mbgl/storage/offline_database.hpp b/platform/default/include/mbgl/storage/offline_database.hpp index 8c39090fbc..96c012b307 100644 --- a/platform/default/include/mbgl/storage/offline_database.hpp +++ b/platform/default/include/mbgl/storage/offline_database.hpp @@ -9,10 +9,10 @@ #include <mbgl/util/mapbox.hpp> #include <mbgl/util/expected.hpp> -#include <unordered_map> +#include <list> +#include <map> #include <memory> #include <string> -#include <list> namespace mapbox { namespace sqlite { @@ -140,7 +140,7 @@ private: std::string path; std::unique_ptr<mapbox::sqlite::Database> db; - std::unordered_map<const char *, const std::unique_ptr<mapbox::sqlite::Statement>> statements; + std::map<const char*, const std::unique_ptr<mapbox::sqlite::Statement>> statements; template <class T> T getPragma(const char *); diff --git a/platform/default/include/mbgl/storage/offline_download.hpp b/platform/default/include/mbgl/storage/offline_download.hpp index 3a5159470a..a001359b45 100644 --- a/platform/default/include/mbgl/storage/offline_download.hpp +++ b/platform/default/include/mbgl/storage/offline_download.hpp @@ -58,7 +58,7 @@ private: std::unique_ptr<OfflineRegionObserver> observer; std::list<std::unique_ptr<AsyncRequest>> requests; - std::unordered_set<std::string> requiredSourceURLs; + std::set<std::string> requiredSourceURLs; std::deque<Resource> resourcesRemaining; std::list<Resource> resourcesToBeMarkedAsUsed; std::list<std::tuple<Resource, Response>> buffer; diff --git a/platform/default/src/mbgl/storage/database_file_source.cpp b/platform/default/src/mbgl/storage/database_file_source.cpp index f0b4849cb0..778e416696 100644 --- a/platform/default/src/mbgl/storage/database_file_source.cpp +++ b/platform/default/src/mbgl/storage/database_file_source.cpp @@ -11,6 +11,8 @@ #include <mbgl/util/platform.hpp> #include <mbgl/util/thread.hpp> +#include <map> + namespace mbgl { // For testing use only @@ -143,7 +145,7 @@ private: } std::unique_ptr<OfflineDatabase> db; - std::unordered_map<int64_t, std::unique_ptr<OfflineDownload>> downloads; + std::map<int64_t, std::unique_ptr<OfflineDownload>> downloads; std::shared_ptr<FileSource> onlineFileSource; }; diff --git a/platform/default/src/mbgl/storage/main_resource_loader.cpp b/platform/default/src/mbgl/storage/main_resource_loader.cpp index fb69a8c4f4..9bdf09fa10 100644 --- a/platform/default/src/mbgl/storage/main_resource_loader.cpp +++ b/platform/default/src/mbgl/storage/main_resource_loader.cpp @@ -10,6 +10,7 @@ #include <mbgl/util/thread.hpp> #include <cassert> +#include <map> namespace mbgl { @@ -117,7 +118,7 @@ private: const std::shared_ptr<FileSource> databaseFileSource; const std::shared_ptr<FileSource> localFileSource; const std::shared_ptr<FileSource> onlineFileSource; - std::unordered_map<AsyncRequest*, std::unique_ptr<AsyncRequest>> tasks; + std::map<AsyncRequest*, std::unique_ptr<AsyncRequest>> tasks; }; class MainResourceLoader::Impl { diff --git a/platform/default/src/mbgl/storage/online_file_source.cpp b/platform/default/src/mbgl/storage/online_file_source.cpp index 37b1f7ca8e..8aa2d225ee 100644 --- a/platform/default/src/mbgl/storage/online_file_source.cpp +++ b/platform/default/src/mbgl/storage/online_file_source.cpp @@ -24,8 +24,6 @@ #include <cassert> #include <list> #include <map> -#include <unordered_map> -#include <unordered_set> namespace mbgl { @@ -277,11 +275,11 @@ private: * Requests in any state are in `allRequests`. Requests in the pending state are in * `pendingRequests`. Requests in the active state are in `activeRequests`. */ - std::unordered_set<OnlineFileRequest*> allRequests; + std::set<OnlineFileRequest*> allRequests; PendingRequests pendingRequests; - std::unordered_set<OnlineFileRequest*> activeRequests; + std::set<OnlineFileRequest*> activeRequests; bool online = true; uint32_t maximumConcurrentRequests; |