diff options
author | Tobias Markmann <tm@ayena.de> | 2016-04-01 17:23:49 (GMT) |
---|---|---|
committer | Tobias Markmann <tm@ayena.de> | 2016-04-04 08:28:23 (GMT) |
commit | 741c45b74d5f634622eb5f757c49323274fb8937 (patch) | |
tree | b9cfa6c2fe2e79e03cc8cb7c1ca1e9cf45aa5328 /Swiften/EventLoop | |
parent | eddd92ed76ae68cb1e202602fd3ebd11b69191a2 (diff) | |
download | swift-741c45b74d5f634622eb5f757c49323274fb8937.zip swift-741c45b74d5f634622eb5f757c49323274fb8937.tar.bz2 |
Modernize code to use C++11 shared_ptr instead of Boost's
This change was done by applying the following 'gsed'
replacement calls to all source files:
's/\#include <boost\/shared_ptr\.hpp>/\#include <memory>/g'
's/\#include <boost\/enable_shared_from_this\.hpp>/\#include <memory>/g'
's/\#include <boost\/smart_ptr\/make_shared\.hpp>/\#include <memory>/g'
's/\#include <boost\/make_shared\.hpp>/\#include <memory>/g'
's/\#include <boost\/weak_ptr\.hpp>/\#include <memory>/g'
's/boost::make_shared/std::make_shared/g'
's/boost::dynamic_pointer_cast/std::dynamic_pointer_cast/g'
's/boost::shared_ptr/std::shared_ptr/g'
's/boost::weak_ptr/std::weak_ptr/g'
's/boost::enable_shared_from_this/std::enable_shared_from_this/g'
The remaining issues have been fixed manually.
Test-Information:
Code builds on OS X 10.11.4 and unit tests pass.
Change-Id: Ia7ae34eab869fb9ad6387a1348426b71ae4acd5f
Diffstat (limited to 'Swiften/EventLoop')
-rw-r--r-- | Swiften/EventLoop/BoostASIOEventLoop.cpp | 4 | ||||
-rw-r--r-- | Swiften/EventLoop/BoostASIOEventLoop.h | 9 | ||||
-rw-r--r-- | Swiften/EventLoop/Event.h | 7 | ||||
-rw-r--r-- | Swiften/EventLoop/EventLoop.cpp | 4 | ||||
-rw-r--r-- | Swiften/EventLoop/EventLoop.h | 4 | ||||
-rw-r--r-- | Swiften/EventLoop/UnitTest/EventLoopTest.cpp | 8 |
6 files changed, 19 insertions, 17 deletions
diff --git a/Swiften/EventLoop/BoostASIOEventLoop.cpp b/Swiften/EventLoop/BoostASIOEventLoop.cpp index a9d1440..bab8b54 100644 --- a/Swiften/EventLoop/BoostASIOEventLoop.cpp +++ b/Swiften/EventLoop/BoostASIOEventLoop.cpp @@ -1,5 +1,5 @@ /* - * Copyright (c) 2015 Isode Limited. + * Copyright (c) 2015-2016 Isode Limited. * All rights reserved. * See the COPYING file for more information. */ @@ -10,7 +10,7 @@ namespace Swift { -BoostASIOEventLoop::BoostASIOEventLoop(boost::shared_ptr<boost::asio::io_service> ioService) : ioService_(ioService) { +BoostASIOEventLoop::BoostASIOEventLoop(std::shared_ptr<boost::asio::io_service> ioService) : ioService_(ioService) { } diff --git a/Swiften/EventLoop/BoostASIOEventLoop.h b/Swiften/EventLoop/BoostASIOEventLoop.h index c39aaf5..41304c4 100644 --- a/Swiften/EventLoop/BoostASIOEventLoop.h +++ b/Swiften/EventLoop/BoostASIOEventLoop.h @@ -1,13 +1,14 @@ /* - * Copyright (c) 2015 Isode Limited. + * Copyright (c) 2015-2016 Isode Limited. * All rights reserved. * See the COPYING file for more information. */ #pragma once +#include <memory> + #include <boost/asio/io_service.hpp> -#include <boost/shared_ptr.hpp> #include <boost/thread.hpp> #include <Swiften/Base/API.h> @@ -17,7 +18,7 @@ namespace Swift { class SWIFTEN_API BoostASIOEventLoop : public EventLoop { public: - BoostASIOEventLoop(boost::shared_ptr<boost::asio::io_service> ioService); + BoostASIOEventLoop(std::shared_ptr<boost::asio::io_service> ioService); virtual ~BoostASIOEventLoop(); protected: @@ -26,7 +27,7 @@ namespace Swift { virtual void eventPosted(); private: - boost::shared_ptr<boost::asio::io_service> ioService_; + std::shared_ptr<boost::asio::io_service> ioService_; bool isEventInASIOEventLoop_; boost::recursive_mutex isEventInASIOEventLoopMutex_; diff --git a/Swiften/EventLoop/Event.h b/Swiften/EventLoop/Event.h index eecd896..e92bb33 100644 --- a/Swiften/EventLoop/Event.h +++ b/Swiften/EventLoop/Event.h @@ -6,15 +6,16 @@ #pragma once +#include <memory> + #include <boost/function.hpp> -#include <boost/shared_ptr.hpp> #include <Swiften/EventLoop/EventOwner.h> namespace Swift { class Event { public: - Event(boost::shared_ptr<EventOwner> owner, const boost::function<void()>& callback) : id(~0U), owner(owner), callback(callback) { + Event(std::shared_ptr<EventOwner> owner, const boost::function<void()>& callback) : id(~0U), owner(owner), callback(callback) { } bool operator==(const Event& o) const { @@ -22,7 +23,7 @@ namespace Swift { } unsigned int id; - boost::shared_ptr<EventOwner> owner; + std::shared_ptr<EventOwner> owner; boost::function<void()> callback; }; } diff --git a/Swiften/EventLoop/EventLoop.cpp b/Swiften/EventLoop/EventLoop.cpp index 2434277..730ee0a 100644 --- a/Swiften/EventLoop/EventLoop.cpp +++ b/Swiften/EventLoop/EventLoop.cpp @@ -74,7 +74,7 @@ void EventLoop::handleNextEvents() { } } -void EventLoop::postEvent(boost::function<void ()> callback, boost::shared_ptr<EventOwner> owner) { +void EventLoop::postEvent(boost::function<void ()> callback, std::shared_ptr<EventOwner> owner) { Event event(owner, callback); bool callEventPosted = false; { @@ -91,7 +91,7 @@ void EventLoop::postEvent(boost::function<void ()> callback, boost::shared_ptr<E } } -void EventLoop::removeEventsFromOwner(boost::shared_ptr<EventOwner> owner) { +void EventLoop::removeEventsFromOwner(std::shared_ptr<EventOwner> owner) { boost::recursive_mutex::scoped_lock removeLock(removeEventsMutex_); boost::recursive_mutex::scoped_lock lock(eventsMutex_); events_.remove_if(lambda::bind(&Event::owner, lambda::_1) == owner); diff --git a/Swiften/EventLoop/EventLoop.h b/Swiften/EventLoop/EventLoop.h index 84a3e9d..c7f7760 100644 --- a/Swiften/EventLoop/EventLoop.h +++ b/Swiften/EventLoop/EventLoop.h @@ -33,13 +33,13 @@ namespace Swift { * An optional \ref EventOwner can be passed, allowing later removal of events that have not yet been * executed using the \ref removeEventsFromOwner method. */ - void postEvent(boost::function<void ()> event, boost::shared_ptr<EventOwner> owner = boost::shared_ptr<EventOwner>()); + void postEvent(boost::function<void ()> event, std::shared_ptr<EventOwner> owner = std::shared_ptr<EventOwner>()); /** * The \ref removeEventsFromOwner method removes all events from the specified \ref owner from the * event queue. */ - void removeEventsFromOwner(boost::shared_ptr<EventOwner> owner); + void removeEventsFromOwner(std::shared_ptr<EventOwner> owner); protected: /** diff --git a/Swiften/EventLoop/UnitTest/EventLoopTest.cpp b/Swiften/EventLoop/UnitTest/EventLoopTest.cpp index 1028b7e..55715d0 100644 --- a/Swiften/EventLoop/UnitTest/EventLoopTest.cpp +++ b/Swiften/EventLoop/UnitTest/EventLoopTest.cpp @@ -44,8 +44,8 @@ class EventLoopTest : public CppUnit::TestFixture { void testRemove() { SimpleEventLoop testling; - boost::shared_ptr<MyEventOwner> eventOwner1(new MyEventOwner()); - boost::shared_ptr<MyEventOwner> eventOwner2(new MyEventOwner()); + std::shared_ptr<MyEventOwner> eventOwner1(new MyEventOwner()); + std::shared_ptr<MyEventOwner> eventOwner2(new MyEventOwner()); testling.postEvent(boost::bind(&EventLoopTest::logEvent, this, 1), eventOwner1); testling.postEvent(boost::bind(&EventLoopTest::logEvent, this, 2), eventOwner2); @@ -62,7 +62,7 @@ class EventLoopTest : public CppUnit::TestFixture { void testHandleEvent_Recursive() { DummyEventLoop testling; - boost::shared_ptr<MyEventOwner> eventOwner(new MyEventOwner()); + std::shared_ptr<MyEventOwner> eventOwner(new MyEventOwner()); testling.postEvent(boost::bind(&EventLoopTest::runEventLoop, this, &testling, eventOwner), eventOwner); testling.postEvent(boost::bind(&EventLoopTest::logEvent, this, 0), eventOwner); @@ -78,7 +78,7 @@ class EventLoopTest : public CppUnit::TestFixture { void logEvent(int i) { events_.push_back(i); } - void runEventLoop(DummyEventLoop* loop, boost::shared_ptr<MyEventOwner> eventOwner) { + void runEventLoop(DummyEventLoop* loop, std::shared_ptr<MyEventOwner> eventOwner) { loop->processEvents(); CPPUNIT_ASSERT_EQUAL(0, static_cast<int>(events_.size())); loop->postEvent(boost::bind(&EventLoopTest::logEvent, this, 1), eventOwner); |