diff options
author | Bruno de Oliveira Abinader <bruno@mapbox.com> | 2019-03-21 18:36:43 +0200 |
---|---|---|
committer | Bruno de Oliveira Abinader <bruno@mapbox.com> | 2019-03-22 18:54:48 +0200 |
commit | 03db58cdc1f1f31034863020f205f5c5696bfa8b (patch) | |
tree | e4201a14948d3772fbd4f8bcff6f7d38e2dfd27d /src | |
parent | 2de2b0b068520a55170d23c86f349232b3e28ae7 (diff) | |
download | qtlocation-mapboxgl-03db58cdc1f1f31034863020f205f5c5696bfa8b.tar.gz |
[core] Replace shared_ptr with unique_ptr in {Map,Resource}Options
Diffstat (limited to 'src')
-rw-r--r-- | src/mbgl/map/map_options.cpp | 21 | ||||
-rw-r--r-- | src/mbgl/storage/resource_options.cpp | 29 |
2 files changed, 28 insertions, 22 deletions
diff --git a/src/mbgl/map/map_options.cpp b/src/mbgl/map/map_options.cpp index ddb3f8e3be..c1146ab0bc 100644 --- a/src/mbgl/map/map_options.cpp +++ b/src/mbgl/map/map_options.cpp @@ -10,39 +10,42 @@ public: bool crossSourceCollisions = true; }; -MapOptions::MapOptions() : impl_(std::make_shared<MapOptions::Impl>()) {} +// These requires the complete type of Impl. +MapOptions::MapOptions() : impl_(std::make_unique<Impl>()) {} MapOptions::~MapOptions() = default; +MapOptions::MapOptions(MapOptions&&) = default; +MapOptions::MapOptions(const MapOptions& other) : impl_(std::make_unique<Impl>(*other.impl_)) {} -MapOptions& MapOptions::withMapMode(MapMode mode) { +MapOptions MapOptions::withMapMode(MapMode mode) { impl_->mapMode = mode; - return *this; + return std::move(*this); } MapMode MapOptions::mapMode() const { return impl_->mapMode; } -MapOptions& MapOptions::withConstrainMode(ConstrainMode mode) { +MapOptions MapOptions::withConstrainMode(ConstrainMode mode) { impl_->constrainMode = mode; - return *this; + return std::move(*this); } ConstrainMode MapOptions::constrainMode() const { return impl_->constrainMode; } -MapOptions& MapOptions::withViewportMode(ViewportMode mode) { +MapOptions MapOptions::withViewportMode(ViewportMode mode) { impl_->viewportMode = mode; - return *this; + return std::move(*this); } ViewportMode MapOptions::viewportMode() const { return impl_->viewportMode; } -MapOptions& MapOptions::withCrossSourceCollisions(bool enableCollisions) { +MapOptions MapOptions::withCrossSourceCollisions(bool enableCollisions) { impl_->crossSourceCollisions = enableCollisions; - return *this; + return std::move(*this); } bool MapOptions::crossSourceCollisions() const { diff --git a/src/mbgl/storage/resource_options.cpp b/src/mbgl/storage/resource_options.cpp index ce82b51a14..dcd7f84f7e 100644 --- a/src/mbgl/storage/resource_options.cpp +++ b/src/mbgl/storage/resource_options.cpp @@ -13,57 +13,60 @@ public: void* platformContext = nullptr; }; -ResourceOptions::ResourceOptions() : impl_(std::make_shared<ResourceOptions::Impl>()) {} +// These requires the complete type of Impl. +ResourceOptions::ResourceOptions() : impl_(std::make_unique<Impl>()) {} ResourceOptions::~ResourceOptions() = default; +ResourceOptions::ResourceOptions(ResourceOptions&&) = default; +ResourceOptions::ResourceOptions(const ResourceOptions& other) : impl_(std::make_unique<Impl>(*other.impl_)) {} -ResourceOptions& ResourceOptions::withAccessToken(std::string token) { +ResourceOptions ResourceOptions::withAccessToken(std::string token) { impl_->accessToken = std::move(token); - return *this; + return std::move(*this); } const std::string& ResourceOptions::accessToken() const { return impl_->accessToken; } -ResourceOptions& ResourceOptions::withBaseURL(std::string url) { +ResourceOptions ResourceOptions::withBaseURL(std::string url) { impl_->baseURL = std::move(url); - return *this; + return std::move(*this); } const std::string& ResourceOptions::baseURL() const { return impl_->baseURL; } -ResourceOptions& ResourceOptions::withCachePath(std::string path) { +ResourceOptions ResourceOptions::withCachePath(std::string path) { impl_->cachePath = std::move(path); - return *this; + return std::move(*this); } const std::string& ResourceOptions::cachePath() const { return impl_->cachePath; } -ResourceOptions& ResourceOptions::withAssetPath(std::string path) { +ResourceOptions ResourceOptions::withAssetPath(std::string path) { impl_->assetPath = std::move(path); - return *this; + return std::move(*this); } const std::string& ResourceOptions::assetPath() const { return impl_->assetPath; } -ResourceOptions& ResourceOptions::withMaximumCacheSize(uint64_t size) { +ResourceOptions ResourceOptions::withMaximumCacheSize(uint64_t size) { impl_->maximumSize = size; - return *this; + return std::move(*this); } uint64_t ResourceOptions::maximumCacheSize() const { return impl_->maximumSize; } -ResourceOptions& ResourceOptions::withPlatformContext(void* context) { +ResourceOptions ResourceOptions::withPlatformContext(void* context) { impl_->platformContext = context; - return *this; + return std::move(*this); } void* ResourceOptions::platformContext() const { |