From dc3ca07f0d8ce1564b712f67a295405ccf2847c8 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Jan=20Tr=C3=A1vn=C3=AD=C4=8Dek?= <jan.travnicek@fit.cvut.cz>
Date: Thu, 13 Jan 2022 16:42:56 +0100
Subject: [PATCH] abstraction: more shared_ptr -> unique_ptr

---
 .../src/abstraction/WrapperAbstraction.hpp         | 14 +++++++-------
 1 file changed, 7 insertions(+), 7 deletions(-)

diff --git a/alib2abstraction/src/abstraction/WrapperAbstraction.hpp b/alib2abstraction/src/abstraction/WrapperAbstraction.hpp
index 4045fcdc60..1fd55d4437 100644
--- a/alib2abstraction/src/abstraction/WrapperAbstraction.hpp
+++ b/alib2abstraction/src/abstraction/WrapperAbstraction.hpp
@@ -14,7 +14,7 @@ class UnspecifiedType {
 
 template < size_t NumberOfParams >
 class WrapperAbstractionImpl : public OperationAbstraction {
-	std::shared_ptr < OperationAbstraction > m_abstraction;
+	std::unique_ptr < OperationAbstraction > m_abstraction;
 	ext::array < std::shared_ptr < abstraction::Value >, NumberOfParams > m_params;
 
 protected:
@@ -22,13 +22,13 @@ protected:
 		return m_params;
 	}
 
-	virtual std::shared_ptr < abstraction::OperationAbstraction > evalAbstractionFunction ( ) = 0;
+	virtual std::unique_ptr < abstraction::OperationAbstraction > evalAbstractionFunction ( ) = 0;
 
-	std::shared_ptr < OperationAbstraction > & getAbstraction ( ) {
+	std::unique_ptr < OperationAbstraction > & getAbstraction ( ) {
 		return m_abstraction;
 	}
 
-	const std::shared_ptr < OperationAbstraction > & getAbstraction ( ) const {
+	const std::unique_ptr < OperationAbstraction > & getAbstraction ( ) const {
 		return m_abstraction;
 	}
 
@@ -106,13 +106,13 @@ namespace abstraction {
 
 template < class ... ParamTypes >
 class WrapperAbstraction : public WrapperAbstractionImpl < sizeof ... ( ParamTypes ) > {
-	std::function < std::shared_ptr < abstraction::OperationAbstraction > ( ParamTypes ... ) > m_WrapperFinder;
+	std::function < std::unique_ptr < abstraction::OperationAbstraction > ( ParamTypes ... ) > m_WrapperFinder;
 
 public:
-	explicit WrapperAbstraction ( std::function < std::shared_ptr < abstraction::OperationAbstraction > ( ParamTypes ... ) > wrapperFinder ) : m_WrapperFinder ( std::move ( wrapperFinder ) ) {
+	explicit WrapperAbstraction ( std::function < std::unique_ptr < abstraction::OperationAbstraction > ( ParamTypes ... ) > wrapperFinder ) : m_WrapperFinder ( std::move ( wrapperFinder ) ) {
 	}
 
-	std::shared_ptr < abstraction::OperationAbstraction > evalAbstractionFunction ( ) override {
+	std::unique_ptr < abstraction::OperationAbstraction > evalAbstractionFunction ( ) override {
 		return abstraction::apply < ParamTypes ... > ( m_WrapperFinder, this->getParams ( ) );
 	}
 
-- 
GitLab