diff options
215 files changed, 533 insertions, 684 deletions
diff --git a/3rdParty/Boost/src/boost/range/adaptor/reversed.hpp b/3rdParty/Boost/src/boost/range/adaptor/reversed.hpp new file mode 100644 index 0000000..944fbff --- /dev/null +++ b/3rdParty/Boost/src/boost/range/adaptor/reversed.hpp @@ -0,0 +1,103 @@ +// Boost.Range library +// +// Copyright Thorsten Ottosen, Neil Groves 2006 - 2008. Use, modification and +// distribution is subject to the Boost Software License, Version +// 1.0. (See accompanying file LICENSE_1_0.txt or copy at +// http://www.boost.org/LICENSE_1_0.txt) +// +// For more information, see http://www.boost.org/libs/range/ +// + +#ifndef BOOST_RANGE_ADAPTOR_REVERSED_HPP +#define BOOST_RANGE_ADAPTOR_REVERSED_HPP + +#include <boost/range/iterator_range.hpp> +#include <boost/range/concepts.hpp> +#include <boost/iterator/reverse_iterator.hpp> + +namespace boost +{ + namespace range_detail + { + template< class R > + struct reversed_range : + public boost::iterator_range< + boost::reverse_iterator< + BOOST_DEDUCED_TYPENAME range_iterator<R>::type + > + > + { + private: + typedef boost::iterator_range< + boost::reverse_iterator< + BOOST_DEDUCED_TYPENAME range_iterator<R>::type + > + > + base; + + public: + typedef boost::reverse_iterator<BOOST_DEDUCED_TYPENAME range_iterator<R>::type> iterator; + + explicit reversed_range( R& r ) + : base( iterator(boost::end(r)), iterator(boost::begin(r)) ) + { } + }; + + struct reverse_forwarder {}; + + template< class BidirectionalRange > + inline reversed_range<BidirectionalRange> + operator|( BidirectionalRange& r, reverse_forwarder ) + { + BOOST_RANGE_CONCEPT_ASSERT(( + BidirectionalRangeConcept<BidirectionalRange>)); + + return reversed_range<BidirectionalRange>( r ); + } + + template< class BidirectionalRange > + inline reversed_range<const BidirectionalRange> + operator|( const BidirectionalRange& r, reverse_forwarder ) + { + BOOST_RANGE_CONCEPT_ASSERT(( + BidirectionalRangeConcept<const BidirectionalRange>)); + + return reversed_range<const BidirectionalRange>( r ); + } + + } // 'range_detail' + + using range_detail::reversed_range; + + namespace adaptors + { + namespace + { + const range_detail::reverse_forwarder reversed = + range_detail::reverse_forwarder(); + } + + template<class BidirectionalRange> + inline reversed_range<BidirectionalRange> + reverse(BidirectionalRange& rng) + { + BOOST_RANGE_CONCEPT_ASSERT(( + BidirectionalRangeConcept<BidirectionalRange>)); + + return reversed_range<BidirectionalRange>(rng); + } + + template<class BidirectionalRange> + inline reversed_range<const BidirectionalRange> + reverse(const BidirectionalRange& rng) + { + BOOST_RANGE_CONCEPT_ASSERT(( + BidirectionalRangeConcept<const BidirectionalRange>)); + + return reversed_range<const BidirectionalRange>(rng); + } + } // 'adaptors' + +} // 'boost' + +#endif diff --git a/3rdParty/Boost/update.sh b/3rdParty/Boost/update.sh index 44114ed..afa7722 100755 --- a/3rdParty/Boost/update.sh +++ b/3rdParty/Boost/update.sh @@ -25,7 +25,6 @@ fi date_time/local_time/local_time.hpp \ date_time/c_local_time_adjustor.hpp \ date_time/gregorian/gregorian_types.hpp \ - foreach.hpp \ filesystem.hpp \ filesystem/fstream.hpp \ format.hpp \ @@ -41,8 +40,6 @@ fi random/uniform_int.hpp \ regex.hpp \ scope_exit.hpp \ - shared_ptr.hpp \ - smart_ptr/make_shared.hpp \ serialization/serialization.hpp \ serialization/vector.hpp \ serialization/list.hpp \ @@ -66,6 +63,7 @@ fi system/src/error_code.cpp \ phoenix/support/detail/iterate.hpp \ type_traits.hpp \ + range/adaptor/reversed.hpp \ $TARGET_DIR cp $1/LICENSE_1_0.txt $TARGET_DIR diff --git a/Slimber/LinkLocalPresenceManager.cpp b/Slimber/LinkLocalPresenceManager.cpp index f166b38..ec5f2cd 100644 --- a/Slimber/LinkLocalPresenceManager.cpp +++ b/Slimber/LinkLocalPresenceManager.cpp @@ -8,7 +8,6 @@ #include <boost/bind.hpp> -#include <Swiften/Base/foreach.h> #include <Swiften/Elements/Presence.h> #include <Swiften/Elements/RosterPayload.h> #include <Swiften/LinkLocal/LinkLocalServiceBrowser.h> @@ -25,7 +24,7 @@ LinkLocalPresenceManager::LinkLocalPresenceManager(LinkLocalServiceBrowser* brow } boost::optional<LinkLocalService> LinkLocalPresenceManager::getServiceForJID(const JID& j) const { - foreach(const LinkLocalService& service, browser->getServices()) { + for (const auto& service : browser->getServices()) { if (service.getJID() == j) { return service; } @@ -52,7 +51,7 @@ void LinkLocalPresenceManager::handleServiceRemoved(const LinkLocalService& serv std::shared_ptr<RosterPayload> LinkLocalPresenceManager::getRoster() const { std::shared_ptr<RosterPayload> roster(new RosterPayload()); - foreach(const LinkLocalService& service, browser->getServices()) { + for (const auto& service : browser->getServices()) { roster->addItem(getRosterItem(service)); } return roster; @@ -60,14 +59,14 @@ std::shared_ptr<RosterPayload> LinkLocalPresenceManager::getRoster() const { std::vector<std::shared_ptr<Presence> > LinkLocalPresenceManager::getAllPresence() const { std::vector<std::shared_ptr<Presence> > result; - foreach(const LinkLocalService& service, browser->getServices()) { + for (const auto& service : browser->getServices()) { result.push_back(getPresence(service)); } return result; } RosterItemPayload LinkLocalPresenceManager::getRosterItem(const LinkLocalService& service) const { - return RosterItemPayload(service.getJID(), getRosterName(service), RosterItemPayload::Both); + return RosterItemPayload(service.getJID(), getRosterName(service), RosterItemPayload::Both); } std::string LinkLocalPresenceManager::getRosterName(const LinkLocalService& service) const { diff --git a/Slimber/MainController.cpp b/Slimber/MainController.cpp index dcec6d5..cd36132 100644 --- a/Slimber/MainController.cpp +++ b/Slimber/MainController.cpp @@ -9,7 +9,6 @@ #include <boost/bind.hpp> #include <boost/lexical_cast.hpp> -#include <Swiften/Base/foreach.h> #include <Swiften/LinkLocal/DNSSD/PlatformDNSSDQuerierFactory.h> #include <Swiften/LinkLocal/LinkLocalService.h> #include <Swiften/LinkLocal/LinkLocalServiceBrowser.h> @@ -88,7 +87,7 @@ void MainController::handleSelfConnected(bool b) { void MainController::handleServicesChanged() { std::vector<std::string> names; - foreach(const LinkLocalService& service, linkLocalServiceBrowser->getServices()) { + for (const auto& service : linkLocalServiceBrowser->getServices()) { std::string description = service.getDescription(); if (description != service.getName()) { description += " (" + service.getName() + ")"; diff --git a/Slimber/MenuletController.cpp b/Slimber/MenuletController.cpp index fdf2fc7..5ea5bc9 100644 --- a/Slimber/MenuletController.cpp +++ b/Slimber/MenuletController.cpp @@ -8,8 +8,6 @@ #include <string> -#include <Swiften/Base/foreach.h> - #include <Slimber/Menulet.h> MenuletController::MenuletController(Menulet* menulet) : @@ -41,7 +39,7 @@ void MenuletController::update() { else { menulet->setIcon("UsersOnline"); menulet->addItem("Online users:"); - foreach(const std::string& user, linkLocalUsers) { + for (const auto& user : linkLocalUsers) { menulet->addItem(std::string(" ") + user); } } diff --git a/Slimber/Server.cpp b/Slimber/Server.cpp index 7e24abe..3bc3112 100644 --- a/Slimber/Server.cpp +++ b/Slimber/Server.cpp @@ -6,13 +6,13 @@ #include <Slimber/Server.h> +#include <cassert> #include <string> #include <boost/bind.hpp> #include <Swiften/Base/Log.h> #include <Swiften/Base/String.h> -#include <Swiften/Base/foreach.h> #include <Swiften/Elements/IQ.h> #include <Swiften/Elements/Presence.h> #include <Swiften/Elements/RosterPayload.h> @@ -111,11 +111,11 @@ void Server::stop(boost::optional<ServerError> e) { serverFromClientSession->finishSession(); } serverFromClientSession.reset(); - foreach(std::shared_ptr<Session> session, linkLocalSessions) { + for (auto&& session : linkLocalSessions) { session->finishSession(); } linkLocalSessions.clear(); - foreach(std::shared_ptr<LinkLocalConnector> connector, connectors) { + for (auto&& connector : connectors) { connector->cancel(); } connectors.clear(); @@ -123,7 +123,7 @@ void Server::stop(boost::optional<ServerError> e) { if (serverFromNetworkConnectionServer) { serverFromNetworkConnectionServer->stop(); - foreach(boost::signals2::connection& connection, serverFromNetworkConnectionServerSignalConnections) { + for (auto&& connection : serverFromNetworkConnectionServerSignalConnections) { connection.disconnect(); } serverFromNetworkConnectionServerSignalConnections.clear(); @@ -131,7 +131,7 @@ void Server::stop(boost::optional<ServerError> e) { } if (serverFromClientConnectionServer) { serverFromClientConnectionServer->stop(); - foreach(boost::signals2::connection& connection, serverFromClientConnectionServerSignalConnections) { + for (auto&& connection : serverFromClientConnectionServerSignalConnections) { connection.disconnect(); } serverFromClientConnectionServerSignalConnections.clear(); @@ -218,7 +218,7 @@ void Server::handleElementReceived(std::shared_ptr<ToplevelElement> element, std if (iq->getType() == IQ::Get) { session->sendElement(IQ::createResult(iq->getFrom(), iq->getID(), presenceManager->getRoster())); rosterRequested = true; - foreach(const std::shared_ptr<Presence> presence, presenceManager->getAllPresence()) { + for (const auto& presence : presenceManager->getAllPresence()) { session->sendElement(presence); } } @@ -314,7 +314,7 @@ void Server::handleConnectFinished(std::shared_ptr<LinkLocalConnector> connector new OutgoingLinkLocalSession( selfJID, connector->getService().getJID(), connector->getConnection(), &payloadParserFactories, &payloadSerializers, &xmlParserFactory)); - foreach(const std::shared_ptr<ToplevelElement> element, connector->getQueuedElements()) { + for (const auto& element : connector->getQueuedElements()) { outgoingSession->queueElement(element); } registerLinkLocalSession(outgoingSession); @@ -333,7 +333,7 @@ void Server::registerLinkLocalSession(std::shared_ptr<Session> session) { } std::shared_ptr<Session> Server::getLinkLocalSessionForJID(const JID& jid) { - foreach(const std::shared_ptr<Session> session, linkLocalSessions) { + for (const auto& session : linkLocalSessions) { if (session->getRemoteJID() == jid) { return session; } @@ -342,7 +342,7 @@ std::shared_ptr<Session> Server::getLinkLocalSessionForJID(const JID& jid) { } std::shared_ptr<LinkLocalConnector> Server::getLinkLocalConnectorForJID(const JID& jid) { - foreach(const std::shared_ptr<LinkLocalConnector> connector, connectors) { + for (const auto& connector : connectors) { if (connector->getService().getJID() == jid) { return connector; } diff --git a/Sluift/ElementConvertors/CommandConvertor.cpp b/Sluift/ElementConvertors/CommandConvertor.cpp index 1e2f8e3..de7a439 100644 --- a/Sluift/ElementConvertors/CommandConvertor.cpp +++ b/Sluift/ElementConvertors/CommandConvertor.cpp @@ -12,8 +12,6 @@ #include <lua.hpp> -#include <Swiften/Base/foreach.h> - #include <Sluift/Lua/Check.h> #include <Sluift/Lua/Value.h> #include <Sluift/LuaElementConvertors.h> @@ -154,7 +152,7 @@ void CommandConvertor::doConvertToLua(lua_State* L, std::shared_ptr<Command> pay if (!payload->getNotes().empty()) { std::vector<Lua::Value> notes; - foreach (const Command::Note& note, payload->getNotes()) { + for (const auto& note : payload->getNotes()) { Lua::Table noteTable; if (!note.note.empty()) { noteTable["note"] = Lua::valueRef(note.note); @@ -179,7 +177,7 @@ void CommandConvertor::doConvertToLua(lua_State* L, std::shared_ptr<Command> pay if (!payload->getAvailableActions().empty()) { std::vector<Lua::Value> availableActions; - foreach (const Command::Action& action, payload->getAvailableActions()) { + for (const auto& action : payload->getAvailableActions()) { if (action != Command::NoAction) { availableActions.push_back(convertActionToString(action)); } diff --git a/Sluift/ElementConvertors/DOMElementConvertor.cpp b/Sluift/ElementConvertors/DOMElementConvertor.cpp index c03eb8c..b957686 100644 --- a/Sluift/ElementConvertors/DOMElementConvertor.cpp +++ b/Sluift/ElementConvertors/DOMElementConvertor.cpp @@ -10,7 +10,6 @@ #include <lua.hpp> -#include <Swiften/Base/foreach.h> #include <Swiften/Elements/RawXMLPayload.h> #include <Swiften/Parser/Attribute.h> #include <Swiften/Parser/AttributeMap.h> @@ -48,7 +47,7 @@ namespace { if (!attributes.getEntries().empty()) { lua_newtable(L); int i = 1; - foreach(const AttributeMap::Entry& entry, attributes.getEntries()) { + for (const auto& entry : attributes.getEntries()) { lua_pushnumber(L, i); lua_newtable(L); lua_pushstring(L, entry.getAttribute().getName().c_str()); diff --git a/Sluift/ElementConvertors/FormConvertor.cpp b/Sluift/ElementConvertors/FormConvertor.cpp index 85f40a1..90fd9fe 100644 --- a/Sluift/ElementConvertors/FormConvertor.cpp +++ b/Sluift/ElementConvertors/FormConvertor.cpp @@ -14,8 +14,6 @@ #include <lua.hpp> -#include <Swiften/Base/foreach.h> - #include <Sluift/Lua/Check.h> #include <Sluift/Lua/Value.h> @@ -105,7 +103,7 @@ namespace { } if (!field->getOptions().empty()) { Lua::Array options; - foreach(const FormField::Option& option, field->getOptions()) { + for (const auto& option : field->getOptions()) { Lua::Table luaOption = boost::assign::map_list_of ("label", Lua::valueRef(option.label)) ("value", Lua::valueRef(option.value)); @@ -118,7 +116,7 @@ namespace { Lua::Array convertFieldListToLua(const std::vector< std::shared_ptr<FormField> >& fieldList) { Lua::Array fields; - foreach(std::shared_ptr<FormField> field, fieldList) { + for (auto&& field : fieldList) { fields.push_back(convertFieldToLua(field)); } return fields; @@ -245,7 +243,7 @@ namespace { lua_getfield(L, -1, "fields"); if (lua_istable(L, -1)) { - foreach (std::shared_ptr<FormField> formField, convertFieldListFromLua(L)) { + for (auto&& formField : convertFieldListFromLua(L)) { result->addField(formField); } } @@ -253,7 +251,7 @@ namespace { lua_getfield(L, -1, "reported_fields"); if (lua_istable(L, -1)) { - foreach (std::shared_ptr<FormField> formField, convertFieldListFromLua(L)) { + for (auto&& formField : convertFieldListFromLua(L)) { result->addReportedField(formField); } } @@ -294,7 +292,7 @@ namespace { if (!payload->getItems().empty()) { Lua::Array luaItems; - foreach(const Form::FormItem& item, payload->getItems()) { + for (const auto& item : payload->getItems()) { if (!item.empty()) { luaItems.push_back(convertFieldListToLua(item)); } @@ -322,7 +320,7 @@ namespace { form->clearReportedFields(); std::vector< std::shared_ptr<FormField> > fields(form->getFields()); form->clearFields(); - foreach (std::shared_ptr<FormField> field, fields) { + for (auto&& field : fields) { if (field->getType() == FormField::FixedType) { continue; } diff --git a/Sluift/ElementConvertors/ForwardedConvertor.cpp b/Sluift/ElementConvertors/ForwardedConvertor.cpp index 8474252..b353eea 100644 --- a/Sluift/ElementConvertors/ForwardedConvertor.cpp +++ b/Sluift/ElementConvertors/ForwardedConvertor.cpp @@ -12,7 +12,6 @@ #include <lua.hpp> -#include <Swiften/Base/foreach.h> #include <Swiften/Elements/Delay.h> #include <Swiften/Elements/IQ.h> #include <Swiften/Elements/Message.h> diff --git a/Sluift/ElementConvertors/PubSubAffiliationsConvertor.cpp b/Sluift/ElementConvertors/PubSubAffiliationsConvertor.cpp index 8eae795..c6ba09e 100644 --- a/Sluift/ElementConvertors/PubSubAffiliationsConvertor.cpp +++ b/Sluift/ElementConvertors/PubSubAffiliationsConvertor.cpp @@ -12,8 +12,6 @@ #include <lua.hpp> -#include <Swiften/Base/foreach.h> - #include <Sluift/LuaElementConvertors.h> using namespace Swift; @@ -60,7 +58,7 @@ void PubSubAffiliationsConvertor::doConvertToLua(lua_State* L, std::shared_ptr<P if (!payload->getAffiliations().empty()) { { int i = 0; - foreach(std::shared_ptr<PubSubAffiliation> item, payload->getAffiliations()) { + for (auto&& item : payload->getAffiliations()) { if (convertors->convertToLuaUntyped(L, item) > 0) { lua_rawseti(L, -2, boost::numeric_cast<int>(i+1)); ++i; diff --git a/Sluift/ElementConvertors/PubSubEventItemConvertor.cpp b/Sluift/ElementConvertors/PubSubEventItemConvertor.cpp index e8ba5b5..ac86024 100644 --- a/Sluift/ElementConvertors/PubSubEventItemConvertor.cpp +++ b/Sluift/ElementConvertors/PubSubEventItemConvertor.cpp @@ -12,8 +12,6 @@ #include <lua.hpp> -#include <Swiften/Base/foreach.h> - #include <Sluift/LuaElementConvertors.h> using namespace Swift; @@ -77,7 +75,7 @@ void PubSubEventItemConvertor::doConvertToLua(lua_State* L, std::shared_ptr<PubS lua_createtable(L, boost::numeric_cast<int>(payload->getData().size()), 0); { int i = 0; - foreach(std::shared_ptr<Payload> item, payload->getData()) { + for (auto&& item : payload->getData()) { if (convertors->convertToLua(L, item) > 0) { lua_rawseti(L, -2, boost::numeric_cast<int>(i+1)); ++i; diff --git a/Sluift/ElementConvertors/PubSubEventItemsConvertor.cpp b/Sluift/ElementConvertors/PubSubEventItemsConvertor.cpp index c89c4a6..7a3cde1 100644 --- a/Sluift/ElementConvertors/PubSubEventItemsConvertor.cpp +++ b/Sluift/ElementConvertors/PubSubEventItemsConvertor.cpp @@ -12,8 +12,6 @@ #include <lua.hpp> -#include <Swiften/Base/foreach.h> - #include <Sluift/LuaElementConvertors.h> using namespace Swift; @@ -78,7 +76,7 @@ void PubSubEventItemsConvertor::doConvertToLua(lua_State* L, std::shared_ptr<Pub lua_createtable(L, boost::numeric_cast<int>(payload->getItems().size()), 0); { int i = 0; - foreach(std::shared_ptr<PubSubEventItem> item, payload->getItems()) { + for (auto&& item : payload->getItems()) { if (convertors->convertToLuaUntyped(L, item) > 0) { lua_rawseti(L, -2, boost::numeric_cast<int>(i+1)); ++i; @@ -91,7 +89,7 @@ void PubSubEventItemsConvertor::doConvertToLua(lua_State* L, std::shared_ptr<Pub lua_createtable(L, boost::numeric_cast<int>(payload->getRetracts().size()), 0); { int i = 0; - foreach(std::shared_ptr<PubSubEventRetract> item, payload->getRetracts()) { + for (auto&& item : payload->getRetracts()) { if (convertors->convertToLuaUntyped(L, item) > 0) { lua_rawseti(L, -2, boost::numeric_cast<int>(i+1)); ++i; diff --git a/Sluift/ElementConvertors/PubSubItemConvertor.cpp b/Sluift/ElementConvertors/PubSubItemConvertor.cpp index 99802bf..27fd4a3 100644 --- a/Sluift/ElementConvertors/PubSubItemConvertor.cpp +++ b/Sluift/ElementConvertors/PubSubItemConvertor.cpp @@ -12,8 +12,6 @@ #include <lua.hpp> -#include <Swiften/Base/foreach.h> - #include <Sluift/LuaElementConvertors.h> using namespace Swift; @@ -59,7 +57,7 @@ void PubSubItemConvertor::doConvertToLua(lua_State* L, std::shared_ptr<PubSubIte lua_createtable(L, boost::numeric_cast<int>(payload->getData().size()), 0); { int i = 0; - foreach(std::shared_ptr<Payload> item, payload->getData()) { + for (auto&& item : payload->getData()) { if (convertors->convertToLua(L, item) > 0) { lua_rawseti(L, -2, boost::numeric_cast<int>(i+1)); ++i; diff --git a/Sluift/ElementConvertors/PubSubItemsConvertor.cpp b/Sluift/ElementConvertors/PubSubItemsConvertor.cpp index 8e1f08d..5fa1bd3 100644 --- a/Sluift/ElementConvertors/PubSubItemsConvertor.cpp +++ b/Sluift/ElementConvertors/PubSubItemsConvertor.cpp @@ -12,8 +12,6 @@ #include <lua.hpp> -#include <Swiften/Base/foreach.h> - #include <Sluift/LuaElementConvertors.h> using namespace Swift; @@ -68,7 +66,7 @@ void PubSubItemsConvertor::doConvertToLua(lua_State* L, std::shared_ptr<PubSubIt if (!payload->getItems().empty()) { { int i = 0; - foreach(std::shared_ptr<PubSubItem> item, payload->getItems()) { + for (auto&& item : payload->getItems()) { if (convertors->convertToLuaUntyped(L, item) > 0) { lua_rawseti(L, -2, boost::numeric_cast<int>(i+1)); ++i; diff --git a/Sluift/ElementConvertors/PubSubOwnerAffiliationsConvertor.cpp b/Sluift/ElementConvertors/PubSubOwnerAffiliationsConvertor.cpp index b66443f..ee8a8cb 100644 --- a/Sluift/ElementConvertors/PubSubOwnerAffiliationsConvertor.cpp +++ b/Sluift/ElementConvertors/PubSubOwnerAffiliationsConvertor.cpp @@ -12,8 +12,6 @@ #include <lua.hpp> -#include <Swiften/Base/foreach.h> - #include <Sluift/LuaElementConvertors.h> using namespace Swift; @@ -58,7 +56,7 @@ void PubSubOwnerAffiliationsConvertor::doConvertToLua(lua_State* L, std::shared_ if (!payload->getAffiliations().empty()) { { int i = 0; - foreach(std::shared_ptr<PubSubOwnerAffiliation> item, payload->getAffiliations()) { + for (auto&& item : payload->getAffiliations()) { if (convertors->convertToLuaUntyped(L, item) > 0) { lua_rawseti(L, -2, boost::numeric_cast<int>(i+1)); ++i; diff --git a/Sluift/ElementConvertors/PubSubOwnerSubscriptionsConvertor.cpp b/Sluift/ElementConvertors/PubSubOwnerSubscriptionsConvertor.cpp index 50cfb9b..88085b5 100644 --- a/Sluift/ElementConvertors/PubSubOwnerSubscriptionsConvertor.cpp +++ b/Sluift/ElementConvertors/PubSubOwnerSubscriptionsConvertor.cpp @@ -12,8 +12,6 @@ #include <lua.hpp> -#include <Swiften/Base/foreach.h> - #include <Sluift/LuaElementConvertors.h> using namespace Swift; @@ -58,7 +56,7 @@ void PubSubOwnerSubscriptionsConvertor::doConvertToLua(lua_State* L, std::shared if (!payload->getSubscriptions().empty()) { { int i = 0; - foreach(std::shared_ptr<PubSubOwnerSubscription> item, payload->getSubscriptions()) { + for (auto&& item : payload->getSubscriptions()) { if (convertors->convertToLuaUntyped(L, item) > 0) { lua_rawseti(L, -2, boost::numeric_cast<int>(i+1)); ++i; diff --git a/Sluift/ElementConvertors/PubSubPublishConvertor.cpp b/Sluift/ElementConvertors/PubSubPublishConvertor.cpp index 38aca0a..63c97bc 100644 --- a/Sluift/ElementConvertors/PubSubPublishConvertor.cpp +++ b/Sluift/ElementConvertors/PubSubPublishConvertor.cpp @@ -12,8 +12,6 @@ #include <lua.hpp> -#include <Swiften/Base/foreach.h> - #include <Sluift/LuaElementConvertors.h> using namespace Swift; @@ -61,7 +59,7 @@ void PubSubPublishConvertor::doConvertToLua(lua_State* L, std::shared_ptr<PubSub lua_createtable(L, boost::numeric_cast<int>(payload->getItems().size()), 0); { int i = 0; - foreach(std::shared_ptr<PubSubItem> item, payload->getItems()) { + for (auto&& item : payload->getItems()) { if (convertors->convertToLuaUntyped(L, item) > 0) { lua_rawseti(L, -2, boost::numeric_cast<int>(i+1)); ++i; diff --git a/Sluift/ElementConvertors/PubSubRetractConvertor.cpp b/Sluift/ElementConvertors/PubSubRetractConvertor.cpp index 38e15a1..c070ad6 100644 --- a/Sluift/ElementConvertors/PubSubRetractConvertor.cpp +++ b/Sluift/ElementConvertors/PubSubRetractConvertor.cpp @@ -12,8 +12,6 @@ #include <lua.hpp> -#include <Swiften/Base/foreach.h> - #include <Sluift/LuaElementConvertors.h> using namespace Swift; @@ -66,7 +64,7 @@ void PubSubRetractConvertor::doConvertToLua(lua_State* L, std::shared_ptr<PubSub lua_createtable(L, boost::numeric_cast<int>(payload->getItems().size()), 0); { int i = 0; - foreach(std::shared_ptr<PubSubItem> item, payload->getItems()) { + for (auto&& item : payload->getItems()) { if (convertors->convertToLuaUntyped(L, item) > 0) { lua_rawseti(L, -2, boost::numeric_cast<int>(i+1)); ++i; diff --git a/Sluift/ElementConvertors/PubSubSubscriptionsConvertor.cpp b/Sluift/ElementConvertors/PubSubSubscriptionsConvertor.cpp index 4cc5686..3712192 100644 --- a/Sluift/ElementConvertors/PubSubSubscriptionsConvertor.cpp +++ b/Sluift/ElementConvertors/PubSubSubscriptionsConvertor.cpp @@ -12,8 +12,6 @@ #include <lua.hpp> -#include <Swiften/Base/foreach.h> - #include <Sluift/LuaElementConvertors.h> using namespace Swift; @@ -60,7 +58,7 @@ void PubSubSubscriptionsConvertor::doConvertToLua(lua_State* L, std::shared_ptr< if (!payload->getSubscriptions().empty()) { { int i = 0; - foreach(std::shared_ptr<PubSubSubscription> item, payload->getSubscriptions()) { + for (auto&& item : payload->getSubscriptions()) { if (convertors->convertToLuaUntyped(L, item) > 0) { lua_rawseti(L, -2, boost::numeric_cast<int>(i+1)); ++i; diff --git a/Sluift/ElementConvertors/SecurityLabelConvertor.cpp b/Sluift/ElementConvertors/SecurityLabelConvertor.cpp index 133b123..21d9a8f 100644 --- a/Sluift/ElementConvertors/SecurityLabelConvertor.cpp +++ b/Sluift/ElementConvertors/SecurityLabelConvertor.cpp @@ -12,8 +12,6 @@ #include <lua.hpp> -#include <Swiften/Base/foreach.h> - using namespace Swift; SecurityLabelConvertor::SecurityLabelConvertor() : @@ -69,7 +67,7 @@ void SecurityLabelConvertor::doConvertToLua(lua_State* L, std::shared_ptr<Securi lua_createtable(L, boost::numeric_cast<int>(payload->getEquivalentLabels().size()), 0); { int i = 0; - foreach(const std::string& item, payload->getEquivalentLabels()) { + for (const auto& item : payload->getEquivalentLabels()) { lua_pushstring(L, item.c_str()); lua_rawseti(L, -2, boost::numeric_cast<int>(i+1)); ++i; diff --git a/Sluift/ElementConvertors/StanzaConvertor.h b/Sluift/ElementConvertors/StanzaConvertor.h index e1d0cb3..bdaaad3 100644 --- a/Sluift/ElementConvertors/StanzaConvertor.h +++ b/Sluift/ElementConvertors/StanzaConvertor.h @@ -8,7 +8,6 @@ #include <boost/numeric/conversion/cast.hpp> -#include <Swiften/Base/foreach.h> #include <Swiften/Elements/IQ.h> #include <Swiften/Elements/Message.h> #include <Swiften/Elements/Payload.h> @@ -75,7 +74,7 @@ namespace Swift { lua_createtable(L, boost::numeric_cast<int>(stanza->getPayloads().size()), 0); { int i = 0; - foreach(const std::shared_ptr<Payload> &item, stanza->getPayloads()) { + for (const auto& item : stanza->getPayloads()) { if (convertors->convertToLua(L, item) > 0) { lua_rawseti(L, -2, boost::numeric_cast<int>(i+1)); ++i; diff --git a/Sluift/Lua/FunctionRegistry.cpp b/Sluift/Lua/FunctionRegistry.cpp index ebbd087..46c6d18 100644 --- a/Sluift/Lua/FunctionRegistry.cpp +++ b/Sluift/Lua/FunctionRegistry.cpp @@ -6,8 +6,6 @@ #include <Sluift/Lua/FunctionRegistry.h> -#include <Swiften/Base/foreach.h> - #include <Sluift/Lua/Exception.h> #include <Sluift/Lua/LuaUtils.h> #include <Sluift/globals.h> @@ -44,7 +42,7 @@ void FunctionRegistry::createFunctionTable(lua_State* L, const std::string& type } void FunctionRegistry::addFunctionsToTable(lua_State* L, const std::string& type) { - foreach(const Registration& registration, registrations) { + for (const auto& registration : registrations) { if (registration.type == type) { lua_pushcclosure(L, registration.function, 0); if (!registration.helpDescription.empty()) { diff --git a/Sluift/Lua/Value.cpp b/Sluift/Lua/Value.cpp index 70fbb89..96d954c 100644 --- a/Sluift/Lua/Value.cpp +++ b/Sluift/Lua/Value.cpp @@ -13,8 +13,6 @@ extern "C" { #include <lualib.h> } -#include <Swiften/Base/foreach.h> - using namespace Swift; using namespace Swift::Lua; @@ -49,7 +47,7 @@ namespace { void operator()(const std::map<std::string, std::shared_ptr<Value> >& table) const { lua_createtable(state, 0, boost::numeric_cast<int>(table.size())); - for(const auto& i : table) { + for (const auto& i : table) { boost::apply_visitor(PushVisitor(state), *i.second); lua_setfield(state, -2, i.first.c_str()); } diff --git a/Sluift/LuaElementConvertors.cpp b/Sluift/LuaElementConvertors.cpp index 38926e9..aac4d93 100644 --- a/Sluift/LuaElementConvertors.cpp +++ b/Sluift/LuaElementConvertors.cpp @@ -8,8 +8,6 @@ #include <memory> -#include <Swiften/Base/foreach.h> - #include <Sluift/ElementConvertors/BodyConvertor.h> #include <Sluift/ElementConvertors/CarbonsReceivedConvertor.h> #include <Sluift/ElementConvertors/CarbonsSentConvertor.h> @@ -95,7 +93,7 @@ std::shared_ptr<Element> LuaElementConvertors::convertFromLua(lua_State* L, int std::shared_ptr<Element> LuaElementConvertors::convertFromLuaUntyped(lua_State* L, int index, const std::string& type) { index = Lua::absoluteOffset(L, index); - foreach (std::shared_ptr<LuaElementConvertor> convertor, convertors) { + for (auto&& convertor : convertors) { if (std::shared_ptr<Element> result = convertor->convertFromLua(L, index, type)) { return result; } @@ -131,7 +129,7 @@ boost::optional<std::string> LuaElementConvertors::doConvertToLuaUntyped( if (!payload) { return LuaElementConvertor::NO_RESULT; } - foreach (std::shared_ptr<LuaElementConvertor> convertor, convertors) { + for (auto&& convertor : convertors) { if (boost::optional<std::string> type = convertor->convertToLua(L, payload)) { return *type; } diff --git a/Sluift/client.cpp b/Sluift/client.cpp index 6376e9d..186effc 100644 --- a/Sluift/client.cpp +++ b/Sluift/client.cpp @@ -9,7 +9,6 @@ #include <boost/lambda/lambda.hpp> #include <Swiften/Base/IDGenerator.h> -#include <Swiften/Base/foreach.h> #include <Swiften/Disco/ClientDiscoManager.h> #include <Swiften/Elements/DiscoInfo.h> #include <Swiften/Elements/Message.h> @@ -185,7 +184,7 @@ SLUIFT_LUA_FUNCTION_WITH_HELP( SluiftClient* client = getClient(L); Lua::Table contactsTable; - foreach(const XMPPRosterItem& item, client->getRoster(getGlobalTimeout(L))) { + for (const auto& item : client->getRoster(getGlobalTimeout(L))) { std::string subscription; switch(item.getSubscription()) { case RosterItemPayload::None: subscription = "none"; break; diff --git a/Sluift/component.cpp b/Sluift/component.cpp index 9c2bc3a..df96d43 100644 --- a/Sluift/component.cpp +++ b/Sluift/component.cpp @@ -9,7 +9,6 @@ #include <boost/lambda/lambda.hpp> #include <Swiften/Base/IDGenerator.h> -#include <Swiften/Base/foreach.h> #include <Swiften/Elements/DiscoInfo.h> #include <Swiften/Elements/MAMQuery.h> #include <Swiften/Elements/Message.h> diff --git a/Sluift/main.cpp b/Sluift/main.cpp index 05c7179..65d6d60 100644 --- a/Sluift/main.cpp +++ b/Sluift/main.cpp @@ -4,18 +4,21 @@ * See the COPYING file for more information. */ +#include <iostream> #include <string> #include <vector> -#include <iostream> -#include <lua.hpp> -#include <Swiften/Base/foreach.h> -#include <Swiften/Base/Platform.h> + +#include <boost/assign/list_of.hpp> +#include <boost/numeric/conversion/cast.hpp> +#include <boost/program_options.hpp> #include <boost/program_options/options_description.hpp> #include <boost/program_options/variables_map.hpp> -#include <boost/program_options.hpp> #include <boost/version.hpp> -#include <boost/numeric/conversion/cast.hpp> -#include <boost/assign/list_of.hpp> + +#include <lua.hpp> + +#include <Swiften/Base/Platform.h> + #include <Sluift/globals.h> #include <Sluift/Console.h> #include <Sluift/StandardTerminal.h> @@ -87,7 +90,7 @@ static void runScript(lua_State* L, const std::string& script, const std::vector // Load file checkResult(L, luaL_loadfile(L, script.c_str())); - foreach (const std::string& scriptArgument, scriptArguments) { + for (const auto& scriptArgument : scriptArguments) { lua_pushstring(L, scriptArgument.c_str()); } checkResult(L, Console::call(L, boost::numeric_cast<int>(scriptArguments.size()), false)); @@ -163,7 +166,7 @@ int main(int argc, char* argv[]) { lua_getglobal(L, "sluift"); std::vector<std::string> globalImports = boost::assign::list_of ("help")("with"); - foreach (const std::string& globalImport, globalImports) { + for (const auto& globalImport : globalImports) { lua_getfield(L, -1, globalImport.c_str()); lua_setglobal(L, globalImport.c_str()); } diff --git a/Sluift/sluift.cpp b/Sluift/sluift.cpp index d92f0db..561f404 100644 --- a/Sluift/sluift.cpp +++ b/Sluift/sluift.cpp @@ -16,7 +16,6 @@ #include <lua.hpp> #include <Swiften/Base/IDGenerator.h> -#include <Swiften/Base/foreach.h> #include <Swiften/Base/sleep.h> #include <Swiften/Crypto/CryptoProvider.h> #include <Swiften/Crypto/PlatformCryptoProvider.h> @@ -461,7 +460,7 @@ SLUIFT_API int luaopen_sluift(lua_State* L) { lua_rawgeti(L, LUA_REGISTRYINDEX, Sluift::globals.coreLibIndex); std::vector<std::string> coreLibExports = boost::assign::list_of ("tprint")("disco")("help")("get_help")("copy")("with")("read_file")("create_form"); - foreach (const std::string& coreLibExport, coreLibExports) { + for (const auto& coreLibExport : coreLibExports) { lua_getfield(L, -1, coreLibExport.c_str()); lua_setfield(L, -3, coreLibExport.c_str()); } @@ -470,7 +469,7 @@ SLUIFT_API int luaopen_sluift(lua_State* L) { // Load client metatable lua_rawgeti(L, LUA_REGISTRYINDEX, Sluift::globals.coreLibIndex); std::vector<std::string> tables = boost::assign::list_of("Client"); - foreach(const std::string& table, tables) { + for (const auto& table : tables) { lua_getfield(L, -1, table.c_str()); Lua::FunctionRegistry::getInstance().addFunctionsToTable(L, table); lua_pop(L, 1); @@ -480,7 +479,7 @@ SLUIFT_API int luaopen_sluift(lua_State* L) { // Load component metatable lua_rawgeti(L, LUA_REGISTRYINDEX, Sluift::globals.coreLibIndex); std::vector<std::string> comp_tables = boost::assign::list_of("Component"); - foreach(const std::string& table, comp_tables) { + for (const auto& table : comp_tables) { lua_getfield(L, -1, table.c_str()); Lua::FunctionRegistry::getInstance().addFunctionsToTable(L, table); lua_pop(L, 1); @@ -488,7 +487,7 @@ SLUIFT_API int luaopen_sluift(lua_State* L) { lua_pop(L, 1); // Register documentation for all elements - foreach (std::shared_ptr<LuaElementConvertor> convertor, Sluift::globals.elementConvertor.getConvertors()) { + for (auto&& convertor : Sluift::globals.elementConvertor.getConvertors()) { boost::optional<LuaElementConvertor::Documentation> documentation = convertor->getDocumentation(); if (documentation) { Lua::registerClassHelp(L, documentation->className, documentation->description); diff --git a/SwifTools/Application/ApplicationPathProvider.cpp b/SwifTools/Application/ApplicationPathProvider.cpp index a5080f9..8b952bb 100644 --- a/SwifTools/Application/ApplicationPathProvider.cpp +++ b/SwifTools/Application/ApplicationPathProvider.cpp @@ -10,7 +10,6 @@ #include <Swiften/Base/Log.h> #include <Swiften/Base/Paths.h> -#include <Swiften/Base/foreach.h> namespace Swift { @@ -33,7 +32,7 @@ boost::filesystem::path ApplicationPathProvider::getProfileDir(const std::string boost::filesystem::path ApplicationPathProvider::getResourcePath(const std::string& resource) const { std::vector<boost::filesystem::path> resourcePaths = getResourceDirs(); - foreach(const boost::filesystem::path& resourcePath, resourcePaths) { + for (const auto& resourcePath : resourcePaths) { boost::filesystem::path r(resourcePath / resource); if (boost::filesystem::exists(r)) { return r; diff --git a/SwifTools/Application/UnixApplicationPathProvider.cpp b/SwifTools/Application/UnixApplicationPathProvider.cpp index c561d72..e455d23 100644 --- a/SwifTools/Application/UnixApplicationPathProvider.cpp +++ b/SwifTools/Application/UnixApplicationPathProvider.cpp @@ -8,14 +8,12 @@ #include <stdlib.h> -#include <iostream> - #include <boost/algorithm/string.hpp> #include <unistd.h> +#include <Swiften/Base/Log.h> #include <Swiften/Base/String.h> -#include <Swiften/Base/foreach.h> namespace Swift { @@ -26,7 +24,7 @@ UnixApplicationPathProvider::UnixApplicationPathProvider(const std::string& name if (xdgDataDirs) { std::vector<std::string> dataDirs = String::split(xdgDataDirs, ':'); if (!dataDirs.empty()) { - foreach(const std::string& dir, dataDirs) { + for (const auto& dir : dataDirs) { resourceDirs.push_back(boost::filesystem::path(dir) / "swift"); } return; @@ -56,7 +54,7 @@ boost::filesystem::path UnixApplicationPathProvider::getDataDir() const { boost::filesystem::create_directories(dataPath); } catch (const boost::filesystem::filesystem_error& e) { - std::cerr << "ERROR: " << e.what() << std::endl; + SWIFT_LOG(error) << "file system error: " << e.what() << std::endl; } return dataPath; } diff --git a/SwifTools/Notifier/GNTPNotifier.cpp b/SwifTools/Notifier/GNTPNotifier.cpp index 62203b4..89025af 100644 --- a/SwifTools/Notifier/GNTPNotifier.cpp +++ b/SwifTools/Notifier/GNTPNotifier.cpp @@ -15,7 +15,6 @@ #include <boost/bind.hpp> #include <Swiften/Base/Path.h> -#include <Swiften/Base/foreach.h> #include <Swiften/Network/ConnectionFactory.h> namespace Swift { @@ -29,7 +28,7 @@ GNTPNotifier::GNTPNotifier(const std::string& name, const boost::filesystem::pat message << "Notifications-Count: " << getAllTypes().size() << "\r\n"; std::vector<Notifier::Type> defaultTypes = getDefaultTypes(); std::vector<Notifier::Type> allTypes = getAllTypes(); - foreach(Notifier::Type type, allTypes) { + for (const auto& type : allTypes) { message << "\r\n"; message << "Notification-Name: " << typeToString(type) << "\r\n"; message << "Notification-Enabled: " << (std::find(defaultTypes.begin(), defaultTypes.end(), type) == defaultTypes.end() ? "false" : "true") << "\r\n"; diff --git a/SwifTools/TabComplete.cpp b/SwifTools/TabComplete.cpp index f158ffa..39a70cc 100644 --- a/SwifTools/TabComplete.cpp +++ b/SwifTools/TabComplete.cpp @@ -10,8 +10,6 @@ #include <boost/algorithm/string.hpp> -#include <Swiften/Base/foreach.h> - namespace Swift { void TabComplete::addWord(const std::string& word) { @@ -43,7 +41,7 @@ std::string TabComplete::completeWord(const std::string& word) { } else { lastShort_ = boost::to_lower_copy(word); lastCompletionCandidates_.clear(); - foreach (std::string candidate, words_) { + for (auto&& candidate : words_) { if (boost::starts_with(boost::to_lower_copy(candidate), boost::to_lower_copy(word))) { lastCompletionCandidates_.push_back(candidate); } diff --git a/Swift/Controllers/AdHocManager.cpp b/Swift/Controllers/AdHocManager.cpp index 81f80e2..717f083 100644 --- a/Swift/Controllers/AdHocManager.cpp +++ b/Swift/Controllers/AdHocManager.cpp @@ -11,7 +11,6 @@ #include <boost/bind.hpp> #include <Swiften/AdHoc/OutgoingAdHocCommandSession.h> -#include <Swiften/Base/foreach.h> #include <Swiften/Queries/IQRouter.h> #include <Swift/Controllers/UIEvents/RequestAdHocUIEvent.h> @@ -58,7 +57,7 @@ void AdHocManager::setServerDiscoInfo(std::shared_ptr<DiscoInfo> info) { } void AdHocManager::setOnline(bool online) { - foreach (std::shared_ptr<AdHocController> controller, controllers_) { + for (auto&& controller : controllers_) { controller->setOnline(online); } } @@ -66,7 +65,7 @@ void AdHocManager::setOnline(bool online) { void AdHocManager::handleServerDiscoItemsResponse(std::shared_ptr<DiscoItems> items, ErrorPayload::ref error) { std::vector<DiscoItems::Item> commands; if (!error) { - foreach (DiscoItems::Item item, items->getItems()) { + for (const auto& item : items->getItems()) { if (item.getNode() != "http://isode.com/xmpp/commands#test") { commands.push_back(item); } diff --git a/Swift/Controllers/AdHocManager.h b/Swift/Controllers/AdHocManager.h index 20e5db7..0786370 100644 --- a/Swift/Controllers/AdHocManager.h +++ b/Swift/Controllers/AdHocManager.h @@ -10,7 +10,6 @@ #include <boost/signals2.hpp> -#include <Swiften/Client/Client.h> #include <Swiften/Disco/GetDiscoItemsRequest.h> #include <Swiften/Elements/DiscoInfo.h> #include <Swiften/Elements/DiscoItems.h> @@ -25,6 +24,7 @@ class IQRouter; class MainWindow; class UIEventStream; class AdHocCommandWindowFactory; + class AdHocManager { public: AdHocManager(const JID& jid, AdHocCommandWindowFactory* factory, IQRouter* iqRouter, UIEventStream* uiEventStream, MainWindow* mainWindow); @@ -32,10 +32,13 @@ public: void removeController(std::shared_ptr<AdHocController> contoller); void setServerDiscoInfo(std::shared_ptr<DiscoInfo> info); void setOnline(bool online); + private: void handleServerDiscoItemsResponse(std::shared_ptr<DiscoItems>, ErrorPayload::ref error); void handleUIEvent(std::shared_ptr<UIEvent> event); boost::signals2::signal<void (const AdHocController&)> onControllerComplete; + +private: JID jid_; IQRouter* iqRouter_; UIEventStream* uiEventStream_; diff --git a/Swift/Controllers/BlockListController.cpp b/Swift/Controllers/BlockListController.cpp index 560a3f3..37c536b 100644 --- a/Swift/Controllers/BlockListController.cpp +++ b/Swift/Controllers/BlockListController.cpp @@ -14,7 +14,6 @@ #include <boost/bind.hpp> -#include <Swiften/Base/foreach.h> #include <Swiften/Base/format.h> #include <Swiften/Client/ClientBlockListManager.h> @@ -40,13 +39,13 @@ BlockListController::~BlockListController() { } void BlockListController::blockListDifferences(const std::vector<JID> &newBlockList, std::vector<JID> &jidsToUnblock, std::vector<JID> &jidsToBlock) const { - foreach (const JID& jid, blockListBeforeEdit) { + for (const auto& jid : blockListBeforeEdit) { if (std::find(newBlockList.begin(), newBlockList.end(), jid) == newBlockList.end()) { jidsToUnblock.push_back(jid); } } - foreach (const JID& jid, newBlockList) { + for (const auto& jid : newBlockList) { if (std::find(blockListBeforeEdit.begin(), blockListBeforeEdit.end(), jid) == blockListBeforeEdit.end()) { jidsToBlock.push_back(jid); } @@ -169,13 +168,13 @@ void BlockListController::handleBlockListChanged() { blockListDifferences(blockListEditorWidget_->getCurrentBlockList(), jidsToUnblock, jidsToBlock); blockListBeforeEdit = blockListManager_->getBlockList()->getItems(); - foreach (const JID& jid, jidsToBlock) { + for (const auto& jid : jidsToBlock) { if (std::find(blockListBeforeEdit.begin(), blockListBeforeEdit.end(), jid) == blockListBeforeEdit.end()) { blockListBeforeEdit.push_back(jid); } } - foreach (const JID& jid, jidsToUnblock) { + for (const auto& jid : jidsToUnblock) { blockListBeforeEdit.erase(std::remove(blockListBeforeEdit.begin(), blockListBeforeEdit.end(), jid), blockListBeforeEdit.end()); } diff --git a/Swift/Controllers/Chat/MUCController.cpp b/Swift/Controllers/Chat/MUCController.cpp index 9ae3845..349bf8a 100644 --- a/Swift/Controllers/Chat/MUCController.cpp +++ b/Swift/Controllers/Chat/MUCController.cpp @@ -11,10 +11,10 @@ #include <boost/bind.hpp> #include <boost/regex.hpp> #include <boost/algorithm/string.hpp> +#include <boost/range/adaptor/reversed.hpp> #include <Swiften/Avatars/AvatarManager.h> #include <Swiften/Base/Log.h> -#include <Swiften/Base/foreach.h> #include <Swiften/Base/format.h> #include <Swiften/Base/Tristate.h> #include <Swiften/Client/BlockList.h> @@ -238,7 +238,7 @@ void MUCController::handleActionRequestedOnOccupant(ChatWindow::OccupantAction a void MUCController::handleBareJIDCapsChanged(const JID& /*jid*/) { Tristate support = Yes; bool any = false; - foreach (const std::string& nick, currentOccupants_) { + for (const auto& nick : currentOccupants_) { DiscoInfo::ref disco = entityCapsProvider_->getCaps(toJID_.toBare().toString() + "/" + nick); if (disco && disco->hasFeature(DiscoInfo::MessageCorrectionFeature)) { any = true; @@ -295,9 +295,8 @@ bool MUCController::isImpromptu() const { std::map<std::string, JID> MUCController::getParticipantJIDs() const { std::map<std::string, JID> participants; - typedef std::pair<std::string, MUCOccupant> MUCOccupantPair; std::map<std::string, MUCOccupant> occupants = muc_->getOccupants(); - foreach(const MUCOccupantPair& occupant, occupants) { + for (const auto& occupant : occupants) { if (occupant.first != nick_) { participants[occupant.first] = occupant.second.getRealJID().is_initialized() ? occupant.second.getRealJID().get().toBare() : JID(); } @@ -306,7 +305,7 @@ std::map<std::string, JID> MUCController::getParticipantJIDs() const { } void MUCController::sendInvites(const std::vector<JID>& jids, const std::string& reason) const { - foreach (const JID& jid, jids) { + for (const auto& jid : jids) { muc_->invitePerson(jid, reason, isImpromptu_); } } @@ -859,7 +858,7 @@ std::string MUCController::concatenateListOfNames(const std::vector<NickJoinPart std::string MUCController::generateJoinPartString(const std::vector<NickJoinPart>& joinParts, bool isImpromptu) { std::vector<NickJoinPart> sorted[4]; std::string eventStrings[4]; - foreach (NickJoinPart event, joinParts) { + for (const auto& event : joinParts) { sorted[event.type].push_back(event); } std::string result; @@ -937,7 +936,7 @@ void MUCController::handleBookmarkRequest() { // Check for existing bookmark for this room and, if it exists, use it instead. std::vector<MUCBookmark> bookmarks = mucBookmarkManager_->getBookmarks(); - foreach (const MUCBookmark& bookmark, bookmarks) { + for (const auto& bookmark : bookmarks) { if (bookmark.getRoom() == jid.toBare()) { roomBookmark = bookmark; break; @@ -1001,7 +1000,7 @@ void MUCController::handleInvitePersonToThisMUCRequest(const std::vector<JID>& j void MUCController::handleUIEvent(std::shared_ptr<UIEvent> event) { std::shared_ptr<InviteToMUCUIEvent> inviteEvent = std::dynamic_pointer_cast<InviteToMUCUIEvent>(event); if (inviteEvent && inviteEvent->getRoom() == muc_->getJID()) { - foreach (const JID& jid, inviteEvent->getInvites()) { + for (const auto& jid : inviteEvent->getInvites()) { muc_->invitePerson(jid, inviteEvent->getReason(), isImpromptu_); } } @@ -1014,16 +1013,14 @@ void MUCController::handleGetAffiliationsRequest() { muc_->requestAffiliationList(MUCOccupant::Outcast); } -typedef std::pair<MUCOccupant::Affiliation, JID> AffiliationChangePair; - void MUCController::handleChangeAffiliationsRequest(const std::vector<std::pair<MUCOccupant::Affiliation, JID> >& changes) { std::set<JID> addedJIDs; - foreach (const AffiliationChangePair& change, changes) { + for (const auto& change : changes) { if (change.first != MUCOccupant::NoAffiliation) { addedJIDs.insert(change.second); } } - foreach (const AffiliationChangePair& change, changes) { + for (const auto& change : changes) { if (change.first != MUCOccupant::NoAffiliation || addedJIDs.find(change.second) == addedJIDs.end()) { muc_->changeAffiliation(change.second, change.first); } @@ -1070,7 +1067,7 @@ void MUCController::addRecentLogs() { joinContext_ = historyController_->getMUCContext(selfJID_, toJID_, lastActivity_); - foreach (const HistoryMessage& message, joinContext_) { + for (const auto& message : joinContext_) { bool senderIsSelf = nick_ == message.getFromJID().getResource(); // the chatWindow uses utc timestamps @@ -1083,7 +1080,7 @@ void MUCController::checkDuplicates(std::shared_ptr<Message> newMessage) { JID jid = newMessage->getFrom(); boost::optional<boost::posix_time::ptime> time = newMessage->getTimestamp(); - reverse_foreach (const HistoryMessage& message, joinContext_) { + for (const auto& message : boost::adaptors::reverse(joinContext_)) { boost::posix_time::ptime messageTime = message.getTime() - boost::posix_time::hours(message.getOffset()); if (time && time < messageTime) { break; @@ -1112,7 +1109,7 @@ Form::ref MUCController::buildImpromptuRoomConfiguration(Form::ref roomConfigura Form::ref result = std::make_shared<Form>(Form::SubmitType); std::string impromptuConfigs[] = { "muc#roomconfig_enablelogging", "muc#roomconfig_persistentroom", "muc#roomconfig_publicroom", "muc#roomconfig_whois"}; std::set<std::string> impromptuConfigsMissing(impromptuConfigs, impromptuConfigs + 4); - foreach (std::shared_ptr<FormField> field, roomConfigurationForm->getFields()) { + for (const auto& field : roomConfigurationForm->getFields()) { std::shared_ptr<FormField> resultField; if (field->getName() == "muc#roomconfig_enablelogging") { resultField = std::make_shared<FormField>(FormField::BooleanType, "0"); @@ -1138,7 +1135,7 @@ Form::ref MUCController::buildImpromptuRoomConfiguration(Form::ref roomConfigura } } - foreach (const std::string& config, impromptuConfigsMissing) { + for (const auto& config : impromptuConfigsMissing) { if (config == "muc#roomconfig_publicroom") { chatWindow_->addSystemMessage(chatMessageParser_->parseMessageBody(QT_TRANSLATE_NOOP("", "This server doesn't support hiding your chat from other users.")), ChatWindow::DefaultDirection); } else if (config == "muc#roomconfig_whois") { @@ -1151,12 +1148,11 @@ Form::ref MUCController::buildImpromptuRoomConfiguration(Form::ref roomConfigura void MUCController::setImpromptuWindowTitle() { std::string title; - typedef std::pair<std::string, MUCOccupant> StringMUCOccupantPair; std::map<std::string, MUCOccupant> occupants = muc_->getOccupants(); if (occupants.size() <= 1) { title = QT_TRANSLATE_NOOP("", "Empty Chat"); } else { - foreach (StringMUCOccupantPair pair, occupants) { + for (const auto& pair : occupants) { if (pair.first != nick_) { title += (title.empty() ? "" : ", ") + pair.first; } diff --git a/Swift/Controllers/Chat/UnitTest/ChatsManagerTest.cpp b/Swift/Controllers/Chat/UnitTest/ChatsManagerTest.cpp index 31c9be9..a5e68cf 100644 --- a/Swift/Controllers/Chat/UnitTest/ChatsManagerTest.cpp +++ b/Swift/Controllers/Chat/UnitTest/ChatsManagerTest.cpp @@ -89,7 +89,7 @@ class ChatsManagerTest : public CppUnit::TestFixture { CPPUNIT_TEST(testChatControllerHighlightingNotificationTesting); CPPUNIT_TEST(testChatControllerHighlightingNotificationDeduplicateSounds); CPPUNIT_TEST(testChatControllerMeMessageHandling); - CPPUNIT_TEST(testRestartingMUCComponentCrash); + CPPUNIT_TEST(testRestartingMUCComponentCrash); CPPUNIT_TEST(testChatControllerMeMessageHandlingInMUC); // Carbons tests @@ -455,7 +455,7 @@ public: uiEventStream_->send(std::make_shared<RequestChatUIEvent>(sender)); - foreach(const JID& senderJID, senderResource) { + for (const auto& senderJID : senderResource) { // The sender supports delivery receipts. DiscoInfo::ref disco = std::make_shared<DiscoInfo>(); disco->addFeature(DiscoInfo::MessageDeliveryReceiptsFeature); @@ -478,7 +478,7 @@ public: CPPUNIT_ASSERT(stanzaChannel_->getStanzaAtIndex<Message>(1)->getPayload<DeliveryReceiptRequest>()); // Two resources respond with message receipts. - foreach(const JID& senderJID, senderResource) { + for (const auto& senderJID : senderResource) { Message::ref receiptReply = std::make_shared<Message>(); receiptReply->setFrom(senderJID); receiptReply->setTo(ownJID); @@ -497,7 +497,7 @@ public: CPPUNIT_ASSERT(stanzaChannel_->getStanzaAtIndex<Message>(1)->getPayload<DeliveryReceiptRequest>()); // Two resources respond with message receipts. - foreach(const JID& senderJID, senderResource) { + for (const auto& senderJID : senderResource) { Message::ref receiptReply = std::make_shared<Message>(); receiptReply->setFrom(senderJID); receiptReply->setTo(ownJID); @@ -570,7 +570,7 @@ public: uiEventStream_->send(std::make_shared<RequestChatUIEvent>(sender)); - foreach(const JID& senderJID, senderResource) { + for (const auto& senderJID : senderResource) { // The sender supports delivery receipts. DiscoInfo::ref disco = std::make_shared<DiscoInfo>(); disco->addFeature(DiscoInfo::MessageDeliveryReceiptsFeature); @@ -593,7 +593,7 @@ public: CPPUNIT_ASSERT(stanzaChannel_->getStanzaAtIndex<Message>(1)->getPayload<DeliveryReceiptRequest>()); // Two resources respond with message receipts. - foreach(const JID& senderJID, senderResource) { + for (const auto& senderJID : senderResource) { Message::ref reply = std::make_shared<Message>(); reply->setFrom(senderJID); reply->setTo(ownJID); @@ -612,7 +612,7 @@ public: CPPUNIT_ASSERT(stanzaChannel_->getStanzaAtIndex<Message>(1)->getPayload<DeliveryReceiptRequest>()); // Two resources respond with message receipts. - foreach(const JID& senderJID, senderResource) { + for (const auto& senderJID : senderResource) { Message::ref receiptReply = std::make_shared<Message>(); receiptReply->setFrom(senderJID); receiptReply->setTo(ownJID); diff --git a/Swift/Controllers/Chat/UnitTest/MUCControllerTest.cpp b/Swift/Controllers/Chat/UnitTest/MUCControllerTest.cpp index 1142c98..32639f6 100644 --- a/Swift/Controllers/Chat/UnitTest/MUCControllerTest.cpp +++ b/Swift/Controllers/Chat/UnitTest/MUCControllerTest.cpp @@ -11,7 +11,6 @@ #include <hippomocks.h> #include <Swiften/Avatars/NullAvatarManager.h> -#include <Swiften/Base/foreach.h> #include <Swiften/Client/ClientBlockListManager.h> #include <Swiften/Client/DummyStanzaChannel.h> #include <Swiften/Client/NickResolver.h> @@ -371,8 +370,7 @@ public: occupants.insert(occupant_map::value_type("Ernie", MUCOccupant("Ernie", MUCOccupant::Participant, MUCOccupant::Owner))); /* populate the MUC with fake users */ - typedef const std::pair<std::string,MUCOccupant> occupantIterator; - foreach(occupantIterator &occupant, occupants) { + for (auto&& occupant : occupants) { muc_->insertOccupant(occupant.second); } @@ -387,7 +385,7 @@ public: alterations.push_back(MUCOccupant("Remko", MUCOccupant::NoRole, MUCOccupant::NoAffiliation)); alterations.push_back(MUCOccupant("Ernie", MUCOccupant::Visitor, MUCOccupant::Outcast)); - foreach(const MUCOccupant& alteration, alterations) { + for (const auto& alteration : alterations) { /* perform an alteration to a user's role and affiliation */ occupant_map::iterator occupant = occupants.find(alteration.getNick()); CPPUNIT_ASSERT(occupant != occupants.end()); @@ -506,10 +504,10 @@ public: void testRoleAffiliationStatesVerify(const std::map<std::string, MUCOccupant> &occupants) { /* verify that the roster is in sync */ GroupRosterItem* group = window_->getRosterModel()->getRoot(); - foreach(RosterItem* rosterItem, group->getChildren()) { + for (auto rosterItem : group->getChildren()) { GroupRosterItem* child = dynamic_cast<GroupRosterItem*>(rosterItem); CPPUNIT_ASSERT(child); - foreach(RosterItem* childItem, child->getChildren()) { + for (auto childItem : child->getChildren()) { ContactRosterItem* item = dynamic_cast<ContactRosterItem*>(childItem); CPPUNIT_ASSERT(item); std::map<std::string, MUCOccupant>::const_iterator occupant = occupants.find(item->getJID().getResource()); diff --git a/Swift/Controllers/Chat/UserSearchController.cpp b/Swift/Controllers/Chat/UserSearchController.cpp index 305049f..91e0dea 100644 --- a/Swift/Controllers/Chat/UserSearchController.cpp +++ b/Swift/Controllers/Chat/UserSearchController.cpp @@ -12,7 +12,6 @@ #include <Swiften/Avatars/AvatarManager.h> #include <Swiften/Base/String.h> -#include <Swiften/Base/foreach.h> #include <Swiften/Disco/DiscoServiceWalker.h> #include <Swiften/Disco/GetDiscoInfoRequest.h> #include <Swiften/Disco/GetDiscoItemsRequest.h> @@ -143,7 +142,8 @@ void UserSearchController::endDiscoWalker() { void UserSearchController::handleDiscoServiceFound(const JID& jid, std::shared_ptr<DiscoInfo> info) { //bool isUserDirectory = false; bool supports55 = false; - foreach (DiscoInfo::Identity identity, info->getIdentities()) { + // TODO: Cleanup code + for (const auto& identity : info->getIdentities()) { if ((identity.getCategory() == "directory" && identity.getType() == "user")) { //isUserDirectory = true; @@ -186,7 +186,7 @@ void UserSearchController::handleSearchResponse(std::shared_ptr<SearchPayload> r if (resultsPayload->getForm()) { window_->setResultsForm(resultsPayload->getForm()); } else { - foreach (SearchPayload::Item item, resultsPayload->getItems()) { + for (auto&& item : resultsPayload->getItems()) { JID jid(item.jid); std::map<std::string, std::string> fields; fields["first"] = item.first; @@ -232,7 +232,7 @@ void UserSearchController::handleContactSuggestionsRequested(std::string text) { std::vector<Contact::ref>::iterator i = suggestions.begin(); while (i != suggestions.end()) { bool found = false; - foreach (const JID& jid, existingJIDs) { + for (const auto& jid : existingJIDs) { if ((*i)->jid == jid) { found = true; break; @@ -274,7 +274,7 @@ void UserSearchController::handlePresenceChanged(Presence::ref presence) { void UserSearchController::handleJIDUpdateRequested(const std::vector<JID>& jids) { if (window_) { std::vector<Contact::ref> updates; - foreach(const JID& jid, jids) { + for (const auto& jid : jids) { updates.push_back(convertJIDtoContact(jid)); } window_->updateContacts(updates); @@ -283,7 +283,7 @@ void UserSearchController::handleJIDUpdateRequested(const std::vector<JID>& jids void UserSearchController::handleJIDAddRequested(const std::vector<JID>& jids) { std::vector<Contact::ref> contacts; - foreach(const JID& jid, jids) { + for (const auto& jid : jids) { contacts.push_back(convertJIDtoContact(jid)); } window_->addContacts(contacts); @@ -358,7 +358,7 @@ void UserSearchController::initializeUserWindow() { void UserSearchController::loadSavedDirectories() { savedDirectories_.clear(); - foreach (std::string stringItem, String::split(settings_->getStringSetting(SEARCHED_DIRECTORIES), '\n')) { + for (auto&& stringItem : String::split(settings_->getStringSetting(SEARCHED_DIRECTORIES), '\n')) { if(!stringItem.empty()) { savedDirectories_.push_back(JID(stringItem)); } @@ -375,7 +375,7 @@ void UserSearchController::addToSavedDirectories(const JID& jid) { std::string collapsed; int i = 0; - foreach (JID jidItem, savedDirectories_) { + for (const auto& jidItem : savedDirectories_) { if (i >= 15) { break; } diff --git a/Swift/Controllers/ChatMessageSummarizer.cpp b/Swift/Controllers/ChatMessageSummarizer.cpp index 6b630e7..ac3d896 100644 --- a/Swift/Controllers/ChatMessageSummarizer.cpp +++ b/Swift/Controllers/ChatMessageSummarizer.cpp @@ -6,7 +6,6 @@ #include <Swift/Controllers/ChatMessageSummarizer.h> -#include <Swiften/Base/foreach.h> #include <Swiften/Base/format.h> #include <Swift/Controllers/Intl.h> @@ -18,7 +17,7 @@ string ChatMessageSummarizer::getSummary(const string& current, const vector<Unr vector<UnreadPair> others; int currentUnread = 0; int otherCount = 0; - foreach (UnreadPair unread, unreads) { + for (const auto& unread : unreads) { if (unread.first == current) { currentUnread += unread.second; } else { diff --git a/Swift/Controllers/ContactSuggester.cpp b/Swift/Controllers/ContactSuggester.cpp index 8a3a6fa..eb27ed4 100644 --- a/Swift/Controllers/ContactSuggester.cpp +++ b/Swift/Controllers/ContactSuggester.cpp @@ -23,7 +23,6 @@ #include <boost/lambda/lambda.hpp> #include <Swiften/Base/Algorithm.h> -#include <Swiften/Base/foreach.h> #include <Swiften/JID/JID.h> #include <Swift/Controllers/ContactProvider.h> @@ -55,7 +54,7 @@ bool ContactSuggester::matchContact(const std::string& search, const Contact::re std::vector<Contact::ref> ContactSuggester::getSuggestions(const std::string& search, bool withMUCNicks) const { std::vector<Contact::ref> results; - foreach(ContactProvider* provider, contactProviders_) { + for (auto provider : contactProviders_) { append(results, provider->getContacts(withMUCNicks)); } diff --git a/Swift/Controllers/ContactsFromXMPPRoster.cpp b/Swift/Controllers/ContactsFromXMPPRoster.cpp index e3c5d97..1d1ccd4 100644 --- a/Swift/Controllers/ContactsFromXMPPRoster.cpp +++ b/Swift/Controllers/ContactsFromXMPPRoster.cpp @@ -13,7 +13,6 @@ #include <Swift/Controllers/ContactsFromXMPPRoster.h> #include <Swiften/Avatars/AvatarManager.h> -#include <Swiften/Base/foreach.h> #include <Swiften/Presence/PresenceOracle.h> #include <Swiften/Roster/XMPPRoster.h> #include <Swiften/Roster/XMPPRosterItem.h> @@ -29,7 +28,7 @@ ContactsFromXMPPRoster::~ContactsFromXMPPRoster() { std::vector<Contact::ref> ContactsFromXMPPRoster::getContacts(bool /*withMUCNicks*/) { std::vector<Contact::ref> results; std::vector<XMPPRosterItem> rosterItems = roster_->getItems(); - foreach(const XMPPRosterItem& rosterItem, rosterItems) { + for (const auto& rosterItem : rosterItems) { Contact::ref contact = std::make_shared<Contact>(rosterItem.getName().empty() ? rosterItem.getJID().toString() : rosterItem.getName(), rosterItem.getJID(), StatusShow::None,""); contact->statusType = presenceOracle_->getAccountPresence(contact->jid) ? presenceOracle_->getAccountPresence(contact->jid)->getShow() : StatusShow::None; contact->avatarPath = avatarManager_->getAvatarPath(contact->jid); diff --git a/Swift/Controllers/FileTransfer/FileTransferOverview.cpp b/Swift/Controllers/FileTransfer/FileTransferOverview.cpp index af2831c..fcc35e4 100644 --- a/Swift/Controllers/FileTransfer/FileTransferOverview.cpp +++ b/Swift/Controllers/FileTransfer/FileTransferOverview.cpp @@ -17,7 +17,6 @@ #include <boost/signals2.hpp> #include <Swiften/Base/Log.h> -#include <Swiften/Base/foreach.h> #include <Swiften/FileTransfer/FileTransferManager.h> namespace Swift { @@ -30,7 +29,7 @@ FileTransferOverview::FileTransferOverview(FileTransferManager* ftm) : fileTrans FileTransferOverview::~FileTransferOverview() { onNewFileTransferController.disconnect(boost::bind(&FileTransferOverview::handleNewFileTransferController, this, _1)); fileTransferManager->onIncomingFileTransfer.disconnect(boost::bind(&FileTransferOverview::handleIncomingFileTransfer, this, _1)); - foreach(FileTransferController* controller, fileTransfers) { + for (auto controller : fileTransfers) { controller->onStateChanged.disconnect(boost::bind(&FileTransferOverview::handleFileTransferStateChanged, this)); } } @@ -78,7 +77,7 @@ void FileTransferOverview::clearFinished() { bool FileTransferOverview::isClearable() const { bool isClearable = false; - foreach (FileTransferController* controller, fileTransfers) { + for (auto controller : fileTransfers) { if(controller->getState().type == FileTransfer::State::Finished || controller->getState().type == FileTransfer::State::Failed || controller->getState().type == FileTransfer::State::Canceled) { diff --git a/Swift/Controllers/HighlightManager.cpp b/Swift/Controllers/HighlightManager.cpp index 2afaf49..9176301 100644 --- a/Swift/Controllers/HighlightManager.cpp +++ b/Swift/Controllers/HighlightManager.cpp @@ -23,8 +23,6 @@ #include <boost/regex.hpp> #include <boost/serialization/vector.hpp> -#include <Swiften/Base/foreach.h> - #include <Swift/Controllers/Highlighter.h> #include <Swift/Controllers/SettingConstants.h> #include <Swift/Controllers/Settings/SettingsProvider.h> diff --git a/Swift/Controllers/HighlightRule.cpp b/Swift/Controllers/HighlightRule.cpp index 86ac5f7..a8cb7e4 100644 --- a/Swift/Controllers/HighlightRule.cpp +++ b/Swift/Controllers/HighlightRule.cpp @@ -5,7 +5,7 @@ */ /* - * Copyright (c) 2014-2015 Isode Limited. + * Copyright (c) 2014-2016 Isode Limited. * All rights reserved. * See the COPYING file for more information. */ @@ -18,7 +18,6 @@ #include <boost/lambda/lambda.hpp> #include <Swiften/Base/Regex.h> -#include <Swiften/Base/foreach.h> namespace Swift { @@ -45,11 +44,11 @@ boost::regex HighlightRule::regexFromString(const std::string & s) const void HighlightRule::updateRegex() const { keywordRegex_.clear(); - foreach (const std::string & k, keywords_) { + for (const auto& k : keywords_) { keywordRegex_.push_back(regexFromString(k)); } senderRegex_.clear(); - foreach (const std::string & s, senders_) { + for (const auto& s : senders_) { senderRegex_.push_back(regexFromString(s)); } } @@ -79,7 +78,7 @@ bool HighlightRule::isMatch(const std::string& body, const std::string& sender, // check if a keyword matches if (!matchesKeyword && !keywords_.empty()) { - foreach (const boost::regex &keyword, keywordRegex_) { + for (const auto& keyword : keywordRegex_) { if (boost::regex_search(body, keyword)) { matchesKeyword = true; break; @@ -88,7 +87,7 @@ bool HighlightRule::isMatch(const std::string& body, const std::string& sender, } } - foreach (const boost::regex & rx, senderRegex_) { + for (const auto& rx : senderRegex_) { if (boost::regex_search(sender, rx)) { matchesSender = true; break; diff --git a/Swift/Controllers/Highlighter.cpp b/Swift/Controllers/Highlighter.cpp index 3499217..cea077e 100644 --- a/Swift/Controllers/Highlighter.cpp +++ b/Swift/Controllers/Highlighter.cpp @@ -12,8 +12,6 @@ #include <Swift/Controllers/Highlighter.h> -#include <Swiften/Base/foreach.h> - #include <Swift/Controllers/HighlightManager.h> namespace Swift { diff --git a/Swift/Controllers/HistoryViewController.cpp b/Swift/Controllers/HistoryViewController.cpp index d66b2b2..669b002 100644 --- a/Swift/Controllers/HistoryViewController.cpp +++ b/Swift/Controllers/HistoryViewController.cpp @@ -12,9 +12,10 @@ #include <Swift/Controllers/HistoryViewController.h> +#include <boost/range/adaptor/reversed.hpp> + #include <Swiften/Avatars/AvatarManager.h> #include <Swiften/Base/Path.h> -#include <Swiften/Base/foreach.h> #include <Swiften/Client/NickResolver.h> #include <Swiften/History/HistoryMessage.h> @@ -124,7 +125,7 @@ void HistoryViewController::handleSelectedContactChanged(RosterItem* newContact) historyWindow_->setDate(currentResultDate_); - foreach (const HistoryMessage& message, messages) { + for (const auto& message : messages) { addNewMessage(message, false); } } @@ -203,7 +204,7 @@ void HistoryViewController::handleScrollReachedTop(const boost::gregorian::date& std::vector<HistoryMessage> messages = historyController_->getMessagesFromPreviousDate(selfJID_, selectedItem_->getJID(), selectedItemType_, date); - foreach (const HistoryMessage& message, messages) { + for (const auto& message : messages) { addNewMessage(message, true); } historyWindow_->resetConversationViewTopInsertPoint(); @@ -216,7 +217,7 @@ void HistoryViewController::handleScrollReachedBottom(const boost::gregorian::da std::vector<HistoryMessage> messages = historyController_->getMessagesFromNextDate(selfJID_, selectedItem_->getJID(), selectedItemType_, date); - foreach (const HistoryMessage& message, messages) { + for (const auto& message : messages) { addNewMessage(message, false); } } @@ -237,7 +238,7 @@ void HistoryViewController::handleNextButtonClicked() { std::vector<HistoryMessage> messages = historyController_->getMessagesFromDate(selfJID_, selectedItem_->getJID(), selectedItemType_, currentResultDate_); historyWindow_->setDate(currentResultDate_); - foreach (const HistoryMessage& message, messages) { + for (const auto& message : messages) { addNewMessage(message, false); } } @@ -258,7 +259,7 @@ void HistoryViewController::handlePreviousButtonClicked() { std::vector<HistoryMessage> messages = historyController_->getMessagesFromDate(selfJID_, selectedItem_->getJID(), selectedItemType_, currentResultDate_); historyWindow_->setDate(currentResultDate_); - foreach (const HistoryMessage& message, messages) { + for (const auto& message : messages) { addNewMessage(message, false); } } @@ -280,7 +281,7 @@ void HistoryViewController::handleCalendarClicked(const boost::gregorian::date& newDate = date; } else if (date < currentResultDate_) { - foreach(const boost::gregorian::date& current, contacts_[selectedItemType_][selectedItem_->getJID()]) { + for (const auto& current : contacts_[selectedItemType_][selectedItem_->getJID()]) { if (current > date) { newDate = current; break; @@ -288,7 +289,7 @@ void HistoryViewController::handleCalendarClicked(const boost::gregorian::date& } } else { - reverse_foreach(const boost::gregorian::date& current, contacts_[selectedItemType_][selectedItem_->getJID()]) { + for (const auto& current : boost::adaptors::reverse(contacts_[selectedItemType_][selectedItem_->getJID()])) { if (current < date) { newDate = current; break; @@ -306,7 +307,7 @@ void HistoryViewController::handleCalendarClicked(const boost::gregorian::date& std::vector<HistoryMessage> messages = historyController_->getMessagesFromDate(selfJID_, selectedItem_->getJID(), selectedItemType_, currentResultDate_); historyWindow_->setDate(currentResultDate_); - foreach (const HistoryMessage& message, messages) { + for (const auto& message : messages) { addNewMessage(message, false); } } @@ -347,7 +348,7 @@ Presence::ref HistoryViewController::getPresence(const JID& jid, bool isMUC) { return presence; } - foreach (Presence::ref presence, mucPresence) { + for (auto&& presence : mucPresence) { if (presence.get() && presence->getFrom() == jid) { return presence; } diff --git a/Swift/Controllers/PreviousStatusStore.cpp b/Swift/Controllers/PreviousStatusStore.cpp index 4806f9c..0b2d437 100644 --- a/Swift/Controllers/PreviousStatusStore.cpp +++ b/Swift/Controllers/PreviousStatusStore.cpp @@ -6,8 +6,6 @@ #include <Swift/Controllers/PreviousStatusStore.h> -#include <Swiften/Base/foreach.h> - namespace Swift { PreviousStatusStore::PreviousStatusStore() { @@ -31,7 +29,7 @@ std::vector<TypeStringPair> PreviousStatusStore::exactMatchSuggestions(StatusSho std::vector<TypeStringPair> PreviousStatusStore::getSuggestions(const std::string& message) { std::vector<TypeStringPair> suggestions; - foreach (TypeStringPair status, store_) { + for (auto&& status : store_) { if (status.second == message) { suggestions.clear(); suggestions.push_back(status); diff --git a/Swift/Controllers/PreviousStatusStore.h b/Swift/Controllers/PreviousStatusStore.h index eb1fb59..b106445 100644 --- a/Swift/Controllers/PreviousStatusStore.h +++ b/Swift/Controllers/PreviousStatusStore.h @@ -14,6 +14,7 @@ namespace Swift { typedef std::pair<StatusShow::Type, std::string> TypeStringPair; + class PreviousStatusStore { public: PreviousStatusStore(); diff --git a/Swift/Controllers/ProfileSettingsProvider.cpp b/Swift/Controllers/ProfileSettingsProvider.cpp index bb186fc..b979555 100644 --- a/Swift/Controllers/ProfileSettingsProvider.cpp +++ b/Swift/Controllers/ProfileSettingsProvider.cpp @@ -6,13 +6,15 @@ #include <Swift/Controllers/ProfileSettingsProvider.h> +#include <Swift/Controllers/Settings/SettingsProvider.h> + namespace Swift { ProfileSettingsProvider::ProfileSettingsProvider(const std::string& profile, SettingsProvider* provider) : profile_(profile) { provider_ = provider; bool found = false; - foreach (std::string existingProfile, provider->getAvailableProfiles()) { + for (const auto& existingProfile : provider->getAvailableProfiles()) { if (existingProfile == profile) { found = true; } diff --git a/Swift/Controllers/ProfileSettingsProvider.h b/Swift/Controllers/ProfileSettingsProvider.h index f3c3156..e309c11 100644 --- a/Swift/Controllers/ProfileSettingsProvider.h +++ b/Swift/Controllers/ProfileSettingsProvider.h @@ -1,17 +1,17 @@ /* - * Copyright (c) 2010-2015 Isode Limited. + * Copyright (c) 2010-2016 Isode Limited. * All rights reserved. * See the COPYING file for more information. */ #pragma once -#include <Swiften/Base/foreach.h> - -#include <Swift/Controllers/Settings/SettingsProvider.h> +#include <string> namespace Swift { +class SettingsProvider; + class ProfileSettingsProvider { public: ProfileSettingsProvider(const std::string& profile, SettingsProvider* provider); @@ -25,6 +25,8 @@ class ProfileSettingsProvider { private: std::string profileSettingPath(const std::string &settingPath); + + private: SettingsProvider* provider_; std::string profile_; }; diff --git a/Swift/Controllers/Roster/ContactRosterItem.cpp b/Swift/Controllers/Roster/ContactRosterItem.cpp index 71c5f8e..8fdf183 100644 --- a/Swift/Controllers/Roster/ContactRosterItem.cpp +++ b/Swift/Controllers/Roster/ContactRosterItem.cpp @@ -9,7 +9,6 @@ #include <boost/date_time/posix_time/posix_time.hpp> #include <Swiften/Base/DateTime.h> -#include <Swiften/Base/foreach.h> #include <Swiften/Elements/Idle.h> #include <Swiften/Elements/Presence.h> diff --git a/Swift/Controllers/Roster/RosterGroupExpandinessPersister.cpp b/Swift/Controllers/Roster/RosterGroupExpandinessPersister.cpp index af89b54..0f07c0b 100644 --- a/Swift/Controllers/Roster/RosterGroupExpandinessPersister.cpp +++ b/Swift/Controllers/Roster/RosterGroupExpandinessPersister.cpp @@ -11,7 +11,6 @@ #include <boost/bind.hpp> #include <Swiften/Base/String.h> -#include <Swiften/Base/foreach.h> #include <Swift/Controllers/Roster/GroupRosterItem.h> #include <Swift/Controllers/SettingConstants.h> @@ -45,7 +44,7 @@ void RosterGroupExpandinessPersister::handleExpandedChanged(GroupRosterItem* gro void RosterGroupExpandinessPersister::save() { std::string setting; - foreach (const std::string& group, collapsed_) { + for (const auto& group : collapsed_) { if (!setting.empty()) { setting += "\n"; } diff --git a/Swift/Controllers/Roster/TableRoster.cpp b/Swift/Controllers/Roster/TableRoster.cpp index f164a4d..713f390 100644 --- a/Swift/Controllers/Roster/TableRoster.cpp +++ b/Swift/Controllers/Roster/TableRoster.cpp @@ -12,7 +12,6 @@ #include <boost/cast.hpp> #include <boost/numeric/conversion/cast.hpp> -#include <Swiften/Base/foreach.h> #include <Swiften/Network/Timer.h> #include <Swiften/Network/TimerFactory.h> @@ -104,11 +103,11 @@ void TableRoster::handleUpdateTimerTick() { // Get a model for the new roster std::vector<Section> newSections; if (model) { - foreach(RosterItem* item, model->getRoot()->getDisplayedChildren()) { + for (auto item : model->getRoot()->getDisplayedChildren()) { if (GroupRosterItem* groupItem = boost::polymorphic_downcast<GroupRosterItem*>(item)) { //std::cerr << "* " << groupItem->getDisplayName() << std::endl; Section section(groupItem->getDisplayName()); - foreach(RosterItem* groupChildItem, groupItem->getDisplayedChildren()) { + for (auto groupChildItem : groupItem->getDisplayedChildren()) { if (ContactRosterItem* contact = boost::polymorphic_downcast<ContactRosterItem*>(groupChildItem)) { //std::cerr << " - " << contact->getDisplayJID() << std::endl; section.items.push_back(Item(contact->getDisplayName(), contact->getStatusText(), contact->getDisplayJID(), contact->getStatusShow(), contact->getAvatarPath())); diff --git a/Swift/Controllers/Settings/SettingsProviderHierachy.cpp b/Swift/Controllers/Settings/SettingsProviderHierachy.cpp index 5156d14..a05fabc 100644 --- a/Swift/Controllers/Settings/SettingsProviderHierachy.cpp +++ b/Swift/Controllers/Settings/SettingsProviderHierachy.cpp @@ -1,20 +1,20 @@ /* - * Copyright (c) 2012 Isode Limited. + * Copyright (c) 2012-2016 Isode Limited. * All rights reserved. * See the COPYING file for more information. */ #include <Swift/Controllers/Settings/SettingsProviderHierachy.h> -#include <Swiften/Base/foreach.h> #include <Swiften/Base/Log.h> + namespace Swift { SettingsProviderHierachy::~SettingsProviderHierachy() { } bool SettingsProviderHierachy::hasSetting(const std::string& key) { - foreach (SettingsProvider* provider, providers_) { + for (auto provider : providers_) { if (provider->hasSetting(key)) { return true; } @@ -24,7 +24,7 @@ bool SettingsProviderHierachy::hasSetting(const std::string& key) { std::string SettingsProviderHierachy::getSetting(const Setting<std::string>& setting) { std::string value = setting.getDefaultValue(); - foreach (SettingsProvider* provider, providers_) { + for (auto provider : providers_) { std::string providerSetting = provider->getSetting(setting); if (provider->hasSetting(setting.getKey())) { value = providerSetting; @@ -44,7 +44,7 @@ void SettingsProviderHierachy::storeSetting(const Setting<std::string>& setting, bool SettingsProviderHierachy::getSetting(const Setting<bool>& setting) { bool value = setting.getDefaultValue(); - foreach (SettingsProvider* provider, providers_) { + for (auto provider : providers_) { bool providerSetting = provider->getSetting(setting); if (provider->hasSetting(setting.getKey())) { value = providerSetting; @@ -64,7 +64,7 @@ void SettingsProviderHierachy::storeSetting(const Setting<bool>& setting, const int SettingsProviderHierachy::getSetting(const Setting<int>& setting) { int value = setting.getDefaultValue(); - foreach (SettingsProvider* provider, providers_) { + for (auto provider : providers_) { int providerSetting = provider->getSetting(setting); if (provider->hasSetting(setting.getKey())) { value = providerSetting; @@ -97,7 +97,7 @@ void SettingsProviderHierachy::removeProfile(const std::string& profile) { bool SettingsProviderHierachy::getIsSettingFinal(const std::string& settingPath) { bool isFinal = false; - foreach (SettingsProvider* provider, providers_) { + for (auto provider : providers_) { isFinal |= provider->getIsSettingFinal(settingPath); } return isFinal; diff --git a/Swift/Controllers/ShowProfileController.cpp b/Swift/Controllers/ShowProfileController.cpp index add6e73..b379141 100644 --- a/Swift/Controllers/ShowProfileController.cpp +++ b/Swift/Controllers/ShowProfileController.cpp @@ -15,7 +15,6 @@ #include <boost/bind.hpp> #include <boost/date_time/posix_time/posix_time.hpp> -#include <Swiften/Base/foreach.h> #include <Swiften/VCards/VCardManager.h> #include <Swift/Controllers/UIEvents/ShowProfileForRosterItemUIEvent.h> @@ -30,8 +29,7 @@ ShowProfileController::ShowProfileController(VCardManager* vcardManager, Profile } ShowProfileController::~ShowProfileController() { - typedef std::pair<JID, ProfileWindow*> JIDProfileWindowPair; - foreach(const JIDProfileWindowPair& jidWndPair, openedProfileWindows) { + for (const auto& jidWndPair : openedProfileWindows) { jidWndPair.second->onWindowAboutToBeClosed.disconnect(boost::bind(&ShowProfileController::handleProfileWindowAboutToBeClosed, this, _1)); delete jidWndPair.second; } diff --git a/Swift/Controllers/Storages/AvatarFileStorage.cpp b/Swift/Controllers/Storages/AvatarFileStorage.cpp index cded945..a103920 100644 --- a/Swift/Controllers/Storages/AvatarFileStorage.cpp +++ b/Swift/Controllers/Storages/AvatarFileStorage.cpp @@ -12,7 +12,6 @@ #include <boost/filesystem/fstream.hpp> #include <Swiften/Base/String.h> -#include <Swiften/Base/foreach.h> #include <Swiften/Crypto/CryptoProvider.h> #include <Swiften/StringCodecs/Hexify.h> diff --git a/Swift/Controllers/Storages/CertificateMemoryStorage.cpp b/Swift/Controllers/Storages/CertificateMemoryStorage.cpp index 08c6ee7..545ca65 100644 --- a/Swift/Controllers/Storages/CertificateMemoryStorage.cpp +++ b/Swift/Controllers/Storages/CertificateMemoryStorage.cpp @@ -1,20 +1,18 @@ /* - * Copyright (c) 2011 Isode Limited. + * Copyright (c) 2011-2016 Isode Limited. * All rights reserved. * See the COPYING file for more information. */ #include <Swift/Controllers/Storages/CertificateMemoryStorage.h> -#include <Swiften/Base/foreach.h> - using namespace Swift; CertificateMemoryStorage::CertificateMemoryStorage() { } bool CertificateMemoryStorage::hasCertificate(Certificate::ref certificate) const { - foreach(Certificate::ref storedCert, certificates) { + for (auto&& storedCert : certificates) { if (storedCert->toDER() == certificate->toDER()) { return true; } diff --git a/Swift/Controllers/Storages/VCardFileStorage.cpp b/Swift/Controllers/Storages/VCardFileStorage.cpp index dbb6799..2fdadf6 100644 --- a/Swift/Controllers/Storages/VCardFileStorage.cpp +++ b/Swift/Controllers/Storages/VCardFileStorage.cpp @@ -13,7 +13,6 @@ #include <Swiften/Base/Path.h> #include <Swiften/Base/String.h> -#include <Swiften/Base/foreach.h> #include <Swiften/Crypto/CryptoProvider.h> #include <Swiften/Elements/VCard.h> #include <Swiften/Entity/GenericPayloadPersister.h> diff --git a/Swift/Controllers/UIInterfaces/ChatListWindow.h b/Swift/Controllers/UIInterfaces/ChatListWindow.h index c84d130..dde596e 100644 --- a/Swift/Controllers/UIInterfaces/ChatListWindow.h +++ b/Swift/Controllers/UIInterfaces/ChatListWindow.h @@ -14,7 +14,6 @@ #include <boost/filesystem/path.hpp> #include <boost/signals2.hpp> -#include <Swiften/Base/foreach.h> #include <Swiften/Elements/StatusShow.h> #include <Swiften/MUC/MUCBookmark.h> @@ -31,11 +30,11 @@ namespace Swift { if (impromptuJIDs.empty()) { return jid.toBare() == other.jid.toBare() && isMUC == other.isMUC; - } else { /* compare the chat occupant lists */ - typedef std::map<std::string, JID> JIDMap; - foreach (const JIDMap::value_type& jid, impromptuJIDs) { + } + else { /* compare the chat occupant lists */ + for (const auto& jid : impromptuJIDs) { bool found = false; - foreach (const JIDMap::value_type& otherJID, other.impromptuJIDs) { + for (const auto& otherJID : other.impromptuJIDs) { if (jid.second.toBare() == otherJID.second.toBare()) { found = true; break; @@ -58,9 +57,8 @@ namespace Swift { avatarPath = path; } std::string getImpromptuTitle() const { - typedef std::pair<std::string, JID> StringJIDPair; std::string title; - foreach(StringJIDPair pair, impromptuJIDs) { + for (auto& pair : impromptuJIDs) { if (title.empty()) { title += pair.first; } else { diff --git a/Swift/Controllers/UnitTest/ContactSuggesterTest.cpp b/Swift/Controllers/UnitTest/ContactSuggesterTest.cpp index 217a2f0..6ac51b2 100644 --- a/Swift/Controllers/UnitTest/ContactSuggesterTest.cpp +++ b/Swift/Controllers/UnitTest/ContactSuggesterTest.cpp @@ -12,8 +12,6 @@ #include <cppunit/extensions/HelperMacros.h> #include <cppunit/extensions/TestFactoryRegistry.h> -#include <Swiften/Base/foreach.h> - #include <Swift/Controllers/ContactSuggester.h> using namespace Swift; @@ -55,9 +53,9 @@ public: std::vector<Contact::ref> contacts; std::vector<std::string> words = wordList(); std::vector<StatusShow::Type> statuses = statusList(); - foreach (const std::string& name, words) { - foreach (const std::string& jid, words) { - foreach (const StatusShow::Type& status, statuses) { + for (const auto& name : words) { + for (const auto& jid : words) { + for (const auto& status : statuses) { contacts.push_back(std::make_shared<Contact>(name, jid, status, "")); } } @@ -68,7 +66,7 @@ public: /* a = a */ bool isReflexive(const boost::function<bool (const Contact::ref&, const Contact::ref&)>& comparitor) { std::vector<Contact::ref> contacts = contactList(); - foreach (const Contact::ref& a, contacts) { + for (const auto& a : contacts) { if (!comparitor(a, a)) { return false; } @@ -79,8 +77,8 @@ public: /* a = b -> b = a */ bool isSymmetric(const boost::function<bool (const Contact::ref&, const Contact::ref&)>& comparitor) { std::vector<Contact::ref> contacts = contactList(); - foreach (const Contact::ref& a, contacts) { - foreach (const Contact::ref& b, contacts) { + for (const auto& a : contacts) { + for (const auto& b : contacts) { if (comparitor(a, b)) { if (!comparitor(b, a)) { return false; @@ -94,9 +92,9 @@ public: /* a = b && b = c -> a = c */ bool isTransitive(const boost::function<bool (const Contact::ref&, const Contact::ref&)>& comparitor) { std::vector<Contact::ref> contacts = contactList(); - foreach (const Contact::ref& a, contacts) { - foreach (const Contact::ref& b, contacts) { - foreach (const Contact::ref& c, contacts) { + for (const auto& a : contacts) { + for (const auto& b : contacts) { + for (const auto& c : contacts) { if (comparitor(a, b) && comparitor(b, c)) { if (!comparitor(a, c)) { return false; @@ -120,7 +118,7 @@ public: void sortTest() { std::vector<std::string> words = wordList(); - foreach (const std::string& word, words) { + for (const auto& word : words) { CPPUNIT_ASSERT(isTransitive(boost::bind(Contact::sortPredicate, _1, _2, word))); } } diff --git a/Swift/Controllers/WhiteboardManager.cpp b/Swift/Controllers/WhiteboardManager.cpp index fab5380..37fe8e3 100644 --- a/Swift/Controllers/WhiteboardManager.cpp +++ b/Swift/Controllers/WhiteboardManager.cpp @@ -14,7 +14,6 @@ #include <boost/bind.hpp> -#include <Swiften/Base/foreach.h> #include <Swiften/Client/NickResolver.h> #include <Swiften/Client/StanzaChannel.h> #include <Swiften/Whiteboard/WhiteboardSessionManager.h> @@ -25,8 +24,6 @@ #include <Swift/Controllers/UIEvents/ShowWhiteboardUIEvent.h> namespace Swift { - typedef std::pair<JID, WhiteboardWindow*> JIDWhiteboardWindowPair; - WhiteboardManager::WhiteboardManager(WhiteboardWindowFactory* whiteboardWindowFactory, UIEventStream* uiEventStream, NickResolver* nickResolver, WhiteboardSessionManager* whiteboardSessionManager) : whiteboardWindowFactory_(whiteboardWindowFactory), uiEventStream_(uiEventStream), nickResolver_(nickResolver), whiteboardSessionManager_(whiteboardSessionManager) { #ifdef SWIFT_EXPERIMENTAL_WB @@ -36,7 +33,7 @@ namespace Swift { } WhiteboardManager::~WhiteboardManager() { - foreach (JIDWhiteboardWindowPair whiteboardWindowPair, whiteboardWindows_) { + for (auto&& whiteboardWindowPair : whiteboardWindows_) { delete whiteboardWindowPair.second; } } diff --git a/Swift/Controllers/XMPPEvents/EventController.cpp b/Swift/Controllers/XMPPEvents/EventController.cpp index f0debb9..f8fb192 100644 --- a/Swift/Controllers/XMPPEvents/EventController.cpp +++ b/Swift/Controllers/XMPPEvents/EventController.cpp @@ -11,8 +11,6 @@ #include <boost/bind.hpp> #include <boost/numeric/conversion/cast.hpp> -#include <Swiften/Base/foreach.h> - #include <Swift/Controllers/XMPPEvents/ErrorEvent.h> #include <Swift/Controllers/XMPPEvents/IncomingFileTransferEvent.h> #include <Swift/Controllers/XMPPEvents/MUCInviteEvent.h> @@ -25,7 +23,7 @@ EventController::EventController() { } EventController::~EventController() { - foreach(std::shared_ptr<StanzaEvent> event, events_) { + for (auto&& event : events_) { event->onConclusion.disconnect(boost::bind(&EventController::handleEventConcluded, this, event)); } } @@ -40,7 +38,7 @@ void EventController::handleIncomingEvent(std::shared_ptr<StanzaEvent> sourceEve /* If it's a duplicate subscription request, remove the previous request first */ if (subscriptionEvent) { EventList existingEvents(events_); - foreach(std::shared_ptr<StanzaEvent> existingEvent, existingEvents) { + for (auto&& existingEvent : existingEvents) { std::shared_ptr<SubscriptionRequestEvent> existingSubscriptionEvent = std::dynamic_pointer_cast<SubscriptionRequestEvent>(existingEvent); if (existingSubscriptionEvent) { if (existingSubscriptionEvent->getJID() == subscriptionEvent->getJID()) { diff --git a/Swift/QtUI/ChatList/ChatListGroupItem.h b/Swift/QtUI/ChatList/ChatListGroupItem.h index 427f00b..a9bb9b1 100644 --- a/Swift/QtUI/ChatList/ChatListGroupItem.h +++ b/Swift/QtUI/ChatList/ChatListGroupItem.h @@ -8,8 +8,6 @@ #include <QList> -#include <Swiften/Base/foreach.h> - #include <Swift/QtUI/ChatList/ChatListItem.h> namespace Swift { @@ -24,13 +22,12 @@ namespace Swift { int row(ChatListItem* item) {return items_.indexOf(item);} QVariant data(int role) const {return (role == Qt::DisplayRole) ? name_ : QVariant();} void clear() { - foreach (ChatListItem* item, items_) { + for (auto item : items_) { delete item; } items_.clear(); } - private: static bool pointerItemLessThan(const ChatListItem* first, const ChatListItem* second) { QString myName = first->data(Qt::DisplayRole).toString().toLower(); diff --git a/Swift/QtUI/ChatList/ChatListModel.cpp b/Swift/QtUI/ChatList/ChatListModel.cpp index e5e8963..416b786 100644 --- a/Swift/QtUI/ChatList/ChatListModel.cpp +++ b/Swift/QtUI/ChatList/ChatListModel.cpp @@ -96,7 +96,7 @@ void ChatListModel::setRecents(const std::list<ChatListWindow::Chat>& recents) { recents_->clear(); endRemoveRows(); beginInsertRows(recentsIndex_, 0, recents.size()); - foreach (const ChatListWindow::Chat chat, recents) { + for (const auto& chat : recents) { recents_->addItem(new ChatListRecentItem(chat, recents_)); //whiteboards_->addItem(new ChatListRecentItem(chat, whiteboards_)); } @@ -121,8 +121,7 @@ QMimeData* ChatListModel::mimeData(const QModelIndexList& indexes) const { } dataStream << P2QSTRING(chat.jid.toString()); } else { - typedef std::map<std::string, JID> JIDMap; - foreach (const JIDMap::value_type& jid, chat.impromptuJIDs) { + for (const auto& jid : chat.impromptuJIDs) { dataStream << P2QSTRING(jid.second.toString()); } } diff --git a/Swift/QtUI/ChatList/QtChatListWindow.cpp b/Swift/QtUI/ChatList/QtChatListWindow.cpp index 3fe462a..3caed57 100644 --- a/Swift/QtUI/ChatList/QtChatListWindow.cpp +++ b/Swift/QtUI/ChatList/QtChatListWindow.cpp @@ -180,7 +180,7 @@ void QtChatListWindow::contextMenuEvent(QContextMenuEvent* event) { ChatListItem* baseItem = index.isValid() ? static_cast<ChatListItem*>(index.internalPointer()) : nullptr; contextMenuItem_ = baseItem; - foreach(QAction* action, onlineOnlyActions_) { + for (auto action : onlineOnlyActions_) { action->setEnabled(isOnline_); } diff --git a/Swift/QtUI/ChatSnippet.cpp b/Swift/QtUI/ChatSnippet.cpp index 0369d0a..87dfac2 100644 --- a/Swift/QtUI/ChatSnippet.cpp +++ b/Swift/QtUI/ChatSnippet.cpp @@ -48,7 +48,7 @@ QString ChatSnippet::directionToCSS(Direction direction) { ChatSnippet::Direction ChatSnippet::getDirection(const ChatWindow::ChatMessage& message) { std::shared_ptr<ChatWindow::ChatTextMessagePart> textPart; std::string text = ""; - foreach (std::shared_ptr<ChatWindow::ChatMessagePart> part, message.getParts()) { + for (auto&& part : message.getParts()) { if ((textPart = std::dynamic_pointer_cast<ChatWindow::ChatTextMessagePart>(part))) { text = textPart->text; break; diff --git a/Swift/QtUI/ChatSnippet.h b/Swift/QtUI/ChatSnippet.h index f715cbf..d8bc209 100644 --- a/Swift/QtUI/ChatSnippet.h +++ b/Swift/QtUI/ChatSnippet.h @@ -11,8 +11,6 @@ #include <QDateTime> #include <QString> -#include <Swiften/Base/foreach.h> - #include <Swift/Controllers/UIInterfaces/ChatWindow.h> #include <Swift/QtUI/QtChatTheme.h> diff --git a/Swift/QtUI/CocoaUIHelpers.mm b/Swift/QtUI/CocoaUIHelpers.mm index 3ffa72c..1f4ffc1 100644 --- a/Swift/QtUI/CocoaUIHelpers.mm +++ b/Swift/QtUI/CocoaUIHelpers.mm @@ -13,6 +13,7 @@ #include "CocoaUIHelpers.h" #include <memory> + #include <boost/type_traits.hpp> #include <Cocoa/Cocoa.h> @@ -20,8 +21,6 @@ #include <Security/Security.h> #include <SecurityInterface/SFCertificatePanel.h> -#include <Swiften/Base/foreach.h> - #pragma GCC diagnostic ignored "-Wold-style-cast" namespace Swift { @@ -29,7 +28,7 @@ namespace Swift { void CocoaUIHelpers::displayCertificateChainAsSheet(QWidget* parent, const std::vector<Certificate::ref>& chain) { NSWindow* parentWindow = [((NSView*)parent->winId()) window]; NSMutableArray* certificates = [[NSMutableArray alloc] init]; - foreach(Certificate::ref cert, chain) { + for (auto&& cert : chain) { // convert chain to SecCertificateRef ByteArray certAsDER = cert->toDER(); std::shared_ptr<boost::remove_pointer<CFDataRef>::type> certData(CFDataCreate(nullptr, certAsDER.data(), certAsDER.size()), CFRelease); @@ -39,7 +38,6 @@ void CocoaUIHelpers::displayCertificateChainAsSheet(QWidget* parent, const std:: [certificates addObject: (id)macCert.get()]; } - SFCertificatePanel* panel = [[SFCertificatePanel alloc] init]; //[panel setPolicies:(id)policies.get()]; [panel beginSheetForWindow:parentWindow modalDelegate:nil didEndSelector:nullptr contextInfo:nullptr certificates:certificates showGroup:YES]; diff --git a/Swift/QtUI/EventViewer/EventModel.cpp b/Swift/QtUI/EventViewer/EventModel.cpp index e242003..5b97b3e 100644 --- a/Swift/QtUI/EventViewer/EventModel.cpp +++ b/Swift/QtUI/EventViewer/EventModel.cpp @@ -19,10 +19,10 @@ EventModel::EventModel() { } EventModel::~EventModel() { - foreach (QtEvent* event, activeEvents_) { + for (auto event : activeEvents_) { delete event; } - foreach (QtEvent* event, inactiveEvents_) { + for (auto event : inactiveEvents_) { delete event; } } diff --git a/Swift/QtUI/QtAdHocCommandWindow.cpp b/Swift/QtUI/QtAdHocCommandWindow.cpp index 6b982b1..65dac91 100644 --- a/Swift/QtUI/QtAdHocCommandWindow.cpp +++ b/Swift/QtUI/QtAdHocCommandWindow.cpp @@ -104,7 +104,7 @@ void QtAdHocCommandWindow::handleCompleteClicked() { void QtAdHocCommandWindow::handleNextStageReceived(Command::ref command) { QString notes; - foreach (Command::Note note, command->getNotes()) { + for (const auto& note : command->getNotes()) { if (!notes.isEmpty()) { notes += "\n"; } @@ -152,7 +152,7 @@ typedef std::pair<Command::Action, QPushButton*> ActionButton; void QtAdHocCommandWindow::setAvailableActions(Command::ref /*commandResult*/) { okButton_->show(); okButton_->setEnabled(true); - foreach (ActionButton pair, actions_) { + for (auto&& pair : actions_) { OutgoingAdHocCommandSession::ActionState state = command_->getActionState(pair.first); if (state & OutgoingAdHocCommandSession::Present) { okButton_->hide(); diff --git a/Swift/QtUI/QtAffiliationEditor.cpp b/Swift/QtUI/QtAffiliationEditor.cpp index 980b26a..92b6aff 100644 --- a/Swift/QtUI/QtAffiliationEditor.cpp +++ b/Swift/QtUI/QtAffiliationEditor.cpp @@ -37,7 +37,7 @@ const std::vector<std::pair<MUCOccupant::Affiliation, JID> >& QtAffiliationEdito void QtAffiliationEditor::handleCurrentIndexChanged(int index) { ui_.list->clear(); - foreach (const JID& jid, affiliations_[affiliationFromIndex(index)]) { + for (const auto& jid : affiliations_[affiliationFromIndex(index)]) { ui_.list->addItem(P2QSTRING(jid.toString())); } } diff --git a/Swift/QtUI/QtBlockListEditorWindow.cpp b/Swift/QtUI/QtBlockListEditorWindow.cpp index 9e13943..30c939f 100644 --- a/Swift/QtUI/QtBlockListEditorWindow.cpp +++ b/Swift/QtUI/QtBlockListEditorWindow.cpp @@ -20,7 +20,6 @@ #include <QStyledItemDelegate> #include <QValidator> -#include <Swiften/Base/foreach.h> #include <Swiften/Client/ClientBlockListManager.h> #include <Swiften/JID/JID.h> @@ -158,7 +157,7 @@ void QtBlockListEditorWindow::applyChanges() { void QtBlockListEditorWindow::setCurrentBlockList(const std::vector<JID> &blockedJIDs) { ui->blockListTreeWidget->clear(); - foreach(const JID& jid, blockedJIDs) { + for (const auto& jid : blockedJIDs) { QTreeWidgetItem* item = new QTreeWidgetItem(QStringList(P2QSTRING(jid.toString())) << ""); item->setFlags(item->flags() | Qt::ItemIsEditable); ui->blockListTreeWidget->addTopLevelItem(item); diff --git a/Swift/QtUI/QtCertificateViewerDialog.cpp b/Swift/QtUI/QtCertificateViewerDialog.cpp index a99c29a..6454d82 100644 --- a/Swift/QtUI/QtCertificateViewerDialog.cpp +++ b/Swift/QtUI/QtCertificateViewerDialog.cpp @@ -18,8 +18,6 @@ #include <QStringList> #include <QTreeWidgetItem> -#include <Swiften/Base/foreach.h> - #include <Swift/QtUI/ui_QtCertificateViewerDialog.h> namespace Swift { @@ -43,7 +41,7 @@ void QtCertificateViewerDialog::setCertificateChain(const std::vector<Certificat // convert Swift certificate chain to qt certificate chain (root goes first) currentChain.clear(); - foreach(Certificate::ref cert, chain) { + for (auto&& cert : chain) { ByteArray certAsDer = cert->toDER(); QByteArray dataArray(reinterpret_cast<const char*>(certAsDer.data()), certAsDer.size()); currentChain.push_front(QSslCertificate(dataArray, QSsl::Der)); @@ -125,8 +123,8 @@ void QtCertificateViewerDialog::setCertificateDetails(const QSslCertificate& cer #endif if (!altNames.empty()) { ADD_SECTION(tr("Alternate Subject Names")); - foreach (const SANTYPE &type, altNames.uniqueKeys()) { - foreach (QString name, altNames.values(type)) { + for (const auto& type : altNames.uniqueKeys()) { + for (auto&& name : altNames.values(type)) { if (type == QSsl::EmailEntry) { ADD_FIELD(tr("E-mail Address"), name); } else { diff --git a/Swift/QtUI/QtChatTabs.cpp b/Swift/QtUI/QtChatTabs.cpp index bb9c005..3241858 100644 --- a/Swift/QtUI/QtChatTabs.cpp +++ b/Swift/QtUI/QtChatTabs.cpp @@ -80,7 +80,7 @@ QtChatTabs::QtChatTabs(bool singleWindow, SettingsProvider* settingsProvider, bo } QtChatTabs::~QtChatTabs() { - foreach (QShortcut* shortcut, shortcuts_) { + for (auto shortcut : shortcuts_) { delete shortcut; } diff --git a/Swift/QtUI/QtChatTabsShortcutOnlySubstitute.cpp b/Swift/QtUI/QtChatTabsShortcutOnlySubstitute.cpp index fb41446..40ab17f 100644 --- a/Swift/QtUI/QtChatTabsShortcutOnlySubstitute.cpp +++ b/Swift/QtUI/QtChatTabsShortcutOnlySubstitute.cpp @@ -12,7 +12,6 @@ #include <QShortcut> #include <Swiften/Base/Log.h> -#include <Swiften/Base/foreach.h> #include <Swift/QtUI/QtTabbable.h> @@ -95,7 +94,7 @@ QList<QtTabbable*> QtChatTabsShortcutOnlySubstitute::tabbableWindows() const { QList<QWidget*> windows = qApp->topLevelWidgets(); QList<QtTabbable*> tabbables; - foreach(QWidget* topLevelWidget, windows) { + for (auto topLevelWidget : windows) { QtTabbable* tabbable = dynamic_cast<QtTabbable*>(topLevelWidget); if (tabbable) { tabbables << tabbable; diff --git a/Swift/QtUI/QtChatWindow.cpp b/Swift/QtUI/QtChatWindow.cpp index bda6b3e..d799e19 100644 --- a/Swift/QtUI/QtChatWindow.cpp +++ b/Swift/QtUI/QtChatWindow.cpp @@ -386,7 +386,7 @@ void QtChatWindow::setAvailableSecurityLabels(const std::vector<SecurityLabelsCa int i = 0; int defaultIndex = 0; labelsWidget_->setModel(labelModel_); - foreach (SecurityLabelsCatalog::Item label, labels) { + for (const auto& label : labels) { if (label.getIsDefault()) { defaultIndex = i; break; @@ -712,8 +712,7 @@ void QtChatWindow::handleActionButtonClicked() { } else { - foreach(ChatWindow::RoomAction availableAction, availableRoomActions_) - { + for (auto&& availableAction : availableRoomActions_) { if (impromptu_) { // hide options we don't need in impromptu chats if (availableAction == ChatWindow::ChangeSubject || diff --git a/Swift/QtUI/QtContactEditWidget.cpp b/Swift/QtUI/QtContactEditWidget.cpp index 4e9a7fe..17f5ccf 100644 --- a/Swift/QtUI/QtContactEditWidget.cpp +++ b/Swift/QtUI/QtContactEditWidget.cpp @@ -51,7 +51,7 @@ QtContactEditWidget::QtContactEditWidget(const std::set<std::string>& allGroups, groupsArea->setWidget(groups); QVBoxLayout* scrollLayout = new QVBoxLayout(groups); - foreach (std::string group, allGroups) { + for (const auto& group : allGroups) { QString groupName = doubleAmpersand(group); QCheckBox* check = new QCheckBox(groups); check->setText(groupName); @@ -79,7 +79,7 @@ void QtContactEditWidget::setName(const std::string& name) { std::string QtContactEditWidget::getName() const { std::string name = Q2PSTRING(name_->text()); QList<QRadioButton*> buttons = findChildren<QRadioButton*>(); - foreach(const QRadioButton* button, buttons) { + for (const auto button : buttons) { if (button->isChecked()) { if (button == nameRadioButton_) { name = Q2PSTRING(name_->text()); @@ -93,14 +93,14 @@ std::string QtContactEditWidget::getName() const { } void QtContactEditWidget::setSelectedGroups(const std::vector<std::string>& groups) { - foreach (std::string group, groups) { + for (auto&& group : groups) { checkBoxes_[group]->setCheckState(Qt::Checked); } } std::set<std::string> QtContactEditWidget::getSelectedGroups() const { std::set<std::string> groups; - foreach(const CheckBoxMap::value_type& group, checkBoxes_) { + for (const auto& group : checkBoxes_) { if (group.second->checkState() == Qt::Checked) { groups.insert(group.first); } @@ -124,7 +124,7 @@ void QtContactEditWidget::setNameSuggestions(const std::vector<std::string>& sug } // populate new suggestions - foreach(const std::string& name, suggestions) { + for (const auto& name : suggestions) { suggestionsLayout_->insertWidget(nameLayout_->count() - 2, new QRadioButton(doubleAmpersand(name), this)); } @@ -133,7 +133,7 @@ void QtContactEditWidget::setNameSuggestions(const std::vector<std::string>& sug QRadioButton* suggestedRadioButton = nullptr; QList<QRadioButton*> radioButtons = findChildren<QRadioButton*>(); - foreach (QRadioButton* candidate, radioButtons) { + for (auto candidate : radioButtons) { if (candidate->text() == name_->text()) { suggestedRadioButton = candidate; break; diff --git a/Swift/QtUI/QtContactEditWidget.h b/Swift/QtUI/QtContactEditWidget.h index d4ea609..0718fee 100644 --- a/Swift/QtUI/QtContactEditWidget.h +++ b/Swift/QtUI/QtContactEditWidget.h @@ -41,9 +41,9 @@ namespace Swift { private: QString doubleAmpersand(const std::string& name) const; std::string singleAmpersand(const QString& name) const; + private: - typedef std::map<std::string, QCheckBox*> CheckBoxMap; - CheckBoxMap checkBoxes_; + std::map<std::string, QCheckBox*> checkBoxes_; QHBoxLayout* nameLayout_; QHBoxLayout* suggestionsLayout_; QRadioButton* nameRadioButton_; diff --git a/Swift/QtUI/QtEmoticonsGrid.cpp b/Swift/QtUI/QtEmoticonsGrid.cpp index a81f516..4c8c024 100644 --- a/Swift/QtUI/QtEmoticonsGrid.cpp +++ b/Swift/QtUI/QtEmoticonsGrid.cpp @@ -14,16 +14,14 @@ #include <set> -#include <QPushButton> +#include <boost/range/adaptor/reversed.hpp> -#include <Swiften/Base/foreach.h> +#include <QPushButton> #include <Swift/QtUI/QtSwiftUtil.h> namespace Swift { -typedef std::map<std::string, std::string> EmoticonsMap; // Without this typedef compiler complains when using foreach - QtEmoticonsGrid::QtEmoticonsGrid(const std::map<std::string, std::string>& emoticons, QWidget* parent) : QGridLayout(parent) { makeUniqueEmoticonsMap(emoticons); @@ -31,7 +29,7 @@ QtEmoticonsGrid::QtEmoticonsGrid(const std::map<std::string, std::string>& emoti int row = 0; int column = 0; - foreach(EmoticonsMap::value_type emoticon, uniqueEmoticons_) { + for (auto&& emoticon : uniqueEmoticons_) { QtEmoticonCell* newCell = new QtEmoticonCell(P2QSTRING(emoticon.first), P2QSTRING(emoticon.second)); addWidget(newCell, row, column); connect(newCell, SIGNAL(emoticonClicked(QString)), this, SLOT(emoticonClickedSlot(QString))); @@ -50,7 +48,7 @@ QtEmoticonsGrid::~QtEmoticonsGrid() { void QtEmoticonsGrid::makeUniqueEmoticonsMap(const std::map<std::string, std::string>& emoticons) { std::set<std::string> paths; - reverse_foreach(EmoticonsMap::value_type emoticon, emoticons) { + for (auto&& emoticon : boost::adaptors::reverse(emoticons)) { if (paths.find(emoticon.second) == paths.end()) { uniqueEmoticons_.insert(emoticon); paths.insert(emoticon.second); diff --git a/Swift/QtUI/QtFormResultItemModel.cpp b/Swift/QtUI/QtFormResultItemModel.cpp index 60cf0c0..b35bb4f 100644 --- a/Swift/QtUI/QtFormResultItemModel.cpp +++ b/Swift/QtUI/QtFormResultItemModel.cpp @@ -14,8 +14,6 @@ #include <boost/algorithm/string/join.hpp> -#include <Swiften/Base/foreach.h> - #include <Swift/QtUI/QtSwiftUtil.h> namespace Swift { @@ -73,7 +71,7 @@ const std::string QtFormResultItemModel::getFieldValue(const Form::FormItem& ite // determine field name std::string name = formResult_->getReportedFields().at(column)->getName(); - foreach(FormField::ref field, item) { + for (auto&& field : item) { if (field->getName() == name) { std::string delimiter = ""; if (field->getType() == FormField::TextMultiType) { diff --git a/Swift/QtUI/QtFormWidget.cpp b/Swift/QtUI/QtFormWidget.cpp index 1d26815..96c2da0 100644 --- a/Swift/QtUI/QtFormWidget.cpp +++ b/Swift/QtUI/QtFormWidget.cpp @@ -20,8 +20,6 @@ #include <qdebug.h> -#include <Swiften/Base/foreach.h> - #include <Swift/QtUI/QtSwiftUtil.h> namespace Swift { @@ -43,7 +41,7 @@ QtFormWidget::QtFormWidget(Form::ref form, QWidget* parent) : QWidget(parent), f QGridLayout* layout = new QGridLayout(scroll); const std::vector<Form::FormItem> items = form->getItems(); if (items.empty()) { /* single item forms */ - foreach (FormField::ref field, form->getFields()) { + for (auto&& field : form->getFields()) { QWidget* widget = createWidget(field, field->getType(), 0); if (widget) { layout->addWidget(new QLabel(field->getLabel().c_str(), this), row, 0); @@ -80,12 +78,12 @@ QListWidget* QtFormWidget::createList(FormField::ref field) { std::vector<bool> selected; /* if this is an editable form, use the 'options' list, otherwise use the 'values' list */ if (form_->getType() != Form::FormType) { - foreach (const std::string& value, field->getValues()) { + for (const auto& value : field->getValues()) { listWidget->addItem(P2QSTRING(value)); selected.push_back(false); } } else { - foreach (FormField::Option option, field->getOptions()) { + for (auto&& option : field->getOptions()) { listWidget->addItem(option.label.c_str()); if (field->getType() == FormField::ListSingleType) { selected.push_back(!field->getValues().empty() && option.value == field->getValues()[0]); @@ -157,7 +155,7 @@ QWidget* QtFormWidget::createWidget(FormField::ref field, const FormField::Type Form::ref QtFormWidget::getCompletedForm() { Form::ref result(new Form(Form::SubmitType)); - foreach (std::shared_ptr<FormField> field, form_->getFields()) { + for (auto&& field : form_->getFields()) { std::shared_ptr<FormField> resultField = std::make_shared<FormField>(field->getType()); if (field->getType() == FormField::BooleanType) { resultField->setBoolValue(qobject_cast<QCheckBox*>(fields_[field->getName()])->checkState() == Qt::Checked); @@ -191,14 +189,14 @@ Form::ref QtFormWidget::getCompletedForm() { QString string = widget->toPlainText(); if (!string.isEmpty()) { QStringList lines = string.split("\n"); - foreach (QString line, lines) { + for (auto&& line : lines) { resultField->addValue(Q2PSTRING(line)); } } } if (field->getType() == FormField::ListMultiType) { QListWidget* listWidget = qobject_cast<QListWidget*>(fields_[field->getName()]); - foreach (QListWidgetItem* item, listWidget->selectedItems()) { + for (auto item : listWidget->selectedItems()) { resultField->addValue(field->getOptions()[listWidget->row(item)].value); } } @@ -226,7 +224,7 @@ void QtFormWidget::setEditable(bool editable) { if (!form_) { return; } - foreach (std::shared_ptr<FormField> field, form_->getFields()) { + for (auto&& field : form_->getFields()) { QWidget* widget = nullptr; if (field) { widget = fields_[field->getName()]; diff --git a/Swift/QtUI/QtHistoryWindow.cpp b/Swift/QtUI/QtHistoryWindow.cpp index 53e7ffe..77a7f12 100644 --- a/Swift/QtUI/QtHistoryWindow.cpp +++ b/Swift/QtUI/QtHistoryWindow.cpp @@ -176,7 +176,7 @@ void QtHistoryWindow::handleScrollRequested(int pos) { } QDate currentDate; - foreach (const QDate& date, dates_) { + for (const auto& date : dates_) { int snippetPosition = conversation_->getSnippetPositionByDate(date); if (snippetPosition <= pos) { currentDate = date; diff --git a/Swift/QtUI/QtLoginWindow.cpp b/Swift/QtUI/QtLoginWindow.cpp index d91f694..865d8b5 100644 --- a/Swift/QtUI/QtLoginWindow.cpp +++ b/Swift/QtUI/QtLoginWindow.cpp @@ -499,7 +499,7 @@ void QtLoginWindow::morphInto(MainWindow *mainWindow) { setInitialMenus(); std::vector<QMenu*> mainWindowMenus = qtMainWindow->getMenus(); viewMenu_ = mainWindowMenus[0]; - foreach (QMenu* menu, mainWindowMenus) { + for (auto menu : mainWindowMenus) { menuBar_->addMenu(menu); } setFocus(); diff --git a/Swift/QtUI/QtPlainChatView.cpp b/Swift/QtUI/QtPlainChatView.cpp index d682cfa..05a2eb0 100644 --- a/Swift/QtUI/QtPlainChatView.cpp +++ b/Swift/QtUI/QtPlainChatView.cpp @@ -18,7 +18,6 @@ #include <QVBoxLayout> #include <Swiften/Base/FileSize.h> -#include <Swiften/Base/foreach.h> #include <Swift/Controllers/UIEvents/JoinMUCUIEvent.h> #include <Swift/Controllers/UIEvents/UIEventStream.h> @@ -45,7 +44,7 @@ QtPlainChatView::~QtPlainChatView() { QString chatMessageToString(const ChatWindow::ChatMessage& message) { QString result; - foreach (std::shared_ptr<ChatWindow::ChatMessagePart> part, message.getParts()) { + for (auto&& part : message.getParts()) { std::shared_ptr<ChatWindow::ChatTextMessagePart> textPart; std::shared_ptr<ChatWindow::ChatURIMessagePart> uriPart; std::shared_ptr<ChatWindow::ChatEmoticonMessagePart> emoticonPart; diff --git a/Swift/QtUI/QtProfileWindow.cpp b/Swift/QtUI/QtProfileWindow.cpp index 461ea38..80e275b 100644 --- a/Swift/QtUI/QtProfileWindow.cpp +++ b/Swift/QtUI/QtProfileWindow.cpp @@ -156,7 +156,7 @@ void QtProfileWindow::handleAdjustSizeTimeout() { // Force recaluclation of all layout geometry in children widgets. // This is required on Windows to have the correct size even on first show. QList<QWidget *> children = findChildren<QWidget*>(); - foreach(QWidget* child, children) { + for (auto child : children) { child->updateGeometry(); } diff --git a/Swift/QtUI/QtSettingsProvider.cpp b/Swift/QtUI/QtSettingsProvider.cpp index 3c32dc8..42ac22d 100644 --- a/Swift/QtUI/QtSettingsProvider.cpp +++ b/Swift/QtUI/QtSettingsProvider.cpp @@ -77,7 +77,7 @@ void QtSettingsProvider::storeSetting(const Setting<int>& setting, const int& se std::vector<std::string> QtSettingsProvider::getAvailableProfiles() { std::vector<std::string> profiles; QVariant profilesVariant = settings_.value("profileList"); - foreach(QString profileQString, profilesVariant.toStringList()) { + for (const auto& profileQString : profilesVariant.toStringList()) { profiles.push_back(std::string(profileQString.toUtf8())); } return profiles; @@ -92,7 +92,7 @@ void QtSettingsProvider::createProfile(const std::string& profile) { void QtSettingsProvider::removeProfile(const std::string& profile) { QString profileStart(QString(profile.c_str()) + ":"); - foreach (QString key, settings_.allKeys()) { + for (auto&& key : settings_.allKeys()) { if (key.startsWith(profileStart)) { settings_.remove(key); } diff --git a/Swift/QtUI/QtSingleWindow.cpp b/Swift/QtUI/QtSingleWindow.cpp index ab7e81e..1fba497 100644 --- a/Swift/QtUI/QtSingleWindow.cpp +++ b/Swift/QtUI/QtSingleWindow.cpp @@ -6,8 +6,6 @@ #include <Swift/QtUI/QtSingleWindow.h> -#include <Swiften/Base/foreach.h> - #include <Swift/QtUI/QtChatTabs.h> #include <Swift/QtUI/QtSettingsProvider.h> @@ -45,7 +43,7 @@ void QtSingleWindow::handleTabsTitleChanged(const QString& title) { void QtSingleWindow::handleSplitterMoved(int, int) { QList<QVariant> variantValues; QList<int> intValues = sizes(); - foreach (int value, intValues) { + for (const auto& value : intValues) { variantValues.append(QVariant(value)); } settings_->getQSettings()->setValue(SINGLE_WINDOW_SPLITS, QVariant(variantValues)); @@ -54,7 +52,7 @@ void QtSingleWindow::handleSplitterMoved(int, int) { void QtSingleWindow::restoreSplitters() { QList<QVariant> variantValues = settings_->getQSettings()->value(SINGLE_WINDOW_SPLITS).toList(); QList<int> intValues; - foreach (QVariant value, variantValues) { + for (auto&& value : variantValues) { intValues.append(value.toInt()); } setSizes(intValues); diff --git a/Swift/QtUI/QtSpellCheckHighlighter.cpp b/Swift/QtUI/QtSpellCheckHighlighter.cpp index 6565b06..cb467e2 100644 --- a/Swift/QtUI/QtSpellCheckHighlighter.cpp +++ b/Swift/QtUI/QtSpellCheckHighlighter.cpp @@ -1,5 +1,5 @@ /* - * Copyright (c) 2014 Isode Limited. + * Copyright (c) 2014-2016 Isode Limited. * All rights reserved. * See the COPYING file for more information. */ @@ -29,7 +29,7 @@ void QtSpellCheckHighlighter::highlightBlock(const QString& text) { spellingErrorFormat.setUnderlineColor(QColor(Qt::red)); spellingErrorFormat.setUnderlineStyle(QTextCharFormat::SpellCheckUnderline); - foreach (PositionPair position, misspelledPositions_) { + for (auto&& position : misspelledPositions_) { setFormat(boost::get<0>(position), boost::get<1>(position) - boost::get<0>(position), spellingErrorFormat); }; } diff --git a/Swift/QtUI/QtStatusWidget.cpp b/Swift/QtUI/QtStatusWidget.cpp index 2e9e4cc..b175e5c 100644 --- a/Swift/QtUI/QtStatusWidget.cpp +++ b/Swift/QtUI/QtStatusWidget.cpp @@ -144,7 +144,7 @@ void QtStatusWidget::generateList() { QString text = statusEdit_->text(); newStatusText_ = text; menu_->clear(); - foreach (StatusShow::Type type, icons_.keys()) { + for (const auto& type : icons_.keys()) { QListWidgetItem* item = new QListWidgetItem(text == "" ? getNoMessage() : text, menu_); item->setIcon(icons_[type]); item->setToolTip(P2QSTRING(statusShowTypeToFriendlyName(type)) + ": " + item->text()); @@ -152,7 +152,7 @@ void QtStatusWidget::generateList() { item->setData(Qt::UserRole, QVariant(type)); } std::vector<StatusCache::PreviousStatus> previousStatuses = statusCache_->getMatches(Q2PSTRING(text), 8); - foreach (StatusCache::PreviousStatus savedStatus, previousStatuses) { + for (const auto& savedStatus : previousStatuses) { if (savedStatus.first.empty() || std::find_if(allTypes_.begin(), allTypes_.end(), savedStatus.second == lambda::_1 && savedStatus.first == lambda::bind(&statusShowTypeToFriendlyName, lambda::_1)) != allTypes_.end()) { continue; @@ -163,7 +163,7 @@ void QtStatusWidget::generateList() { item->setStatusTip(item->toolTip()); item->setData(Qt::UserRole, QVariant(savedStatus.second)); } - foreach (StatusShow::Type type, icons_.keys()) { + for (const auto& type : icons_.keys()) { if (Q2PSTRING(text) == statusShowTypeToFriendlyName(type)) { continue; } @@ -203,7 +203,7 @@ void QtStatusWidget::handleClicked() { if (x + width > screenWidth) { x = screenWidth - width; } - //foreach (StatusShow::Type type, allTypes_) { + //for (StatusShow::Type type : allTypes_) { // if (statusEdit_->text() == P2QSTRING(statusShowTypeToFriendlyName(type))) { statusEdit_->setText(""); // } diff --git a/Swift/QtUI/QtSubscriptionRequestWindow.cpp b/Swift/QtUI/QtSubscriptionRequestWindow.cpp index eea13f2..c8c4178 100644 --- a/Swift/QtUI/QtSubscriptionRequestWindow.cpp +++ b/Swift/QtUI/QtSubscriptionRequestWindow.cpp @@ -73,7 +73,7 @@ QtSubscriptionRequestWindow::~QtSubscriptionRequestWindow() { } QtSubscriptionRequestWindow* QtSubscriptionRequestWindow::getWindow(std::shared_ptr<SubscriptionRequestEvent> event, QWidget* parent) { - foreach (QtSubscriptionRequestWindow* window, windows_) { + for (auto window : windows_) { if (window->getEvent() == event) { return window; } diff --git a/Swift/QtUI/QtTabbable.cpp b/Swift/QtUI/QtTabbable.cpp index bad6315..ed0963b 100644 --- a/Swift/QtUI/QtTabbable.cpp +++ b/Swift/QtUI/QtTabbable.cpp @@ -11,7 +11,6 @@ #include <QShortcut> #include <Swiften/Base/Platform.h> -#include <Swiften/Base/foreach.h> #include <Swift/QtUI/QtChatTabs.h> #include <Swift/QtUI/QtUtilities.h> diff --git a/Swift/QtUI/QtVCardWidget/QtTagComboBox.cpp b/Swift/QtUI/QtVCardWidget/QtTagComboBox.cpp index ed36580..02ceb0a 100644 --- a/Swift/QtUI/QtVCardWidget/QtTagComboBox.cpp +++ b/Swift/QtUI/QtVCardWidget/QtTagComboBox.cpp @@ -50,7 +50,7 @@ void QtTagComboBox::addTag(const QString &id, const QString &label) { void QtTagComboBox::setTag(const QString &id, bool value) { QList<QAction*> tagActions = editMenu->actions(); - foreach(QAction* action, tagActions) { + for (auto action : tagActions) { if (action->data() == id) { action->setChecked(value); updateDisplayItem(); @@ -61,7 +61,7 @@ void QtTagComboBox::setTag(const QString &id, bool value) { bool QtTagComboBox::isTagSet(const QString &id) const { QList<QAction*> tagActions = editMenu->actions(); - foreach(QAction* action, tagActions) { + for (auto action : tagActions) { if (action->data() == id) { return action->isChecked(); } @@ -94,7 +94,7 @@ bool QtTagComboBox::event(QEvent* event) { void QtTagComboBox::updateDisplayItem() { QList<QAction*> tagActions = editMenu->actions(); QString text = ""; - foreach(QAction* action, tagActions) { + for (auto action : tagActions) { if (action->isChecked()) { if (text != "") { text += ", "; diff --git a/Swift/QtUI/QtVCardWidget/QtVCardAddressField.cpp b/Swift/QtUI/QtVCardWidget/QtVCardAddressField.cpp index 4043dbc..596006a 100644 --- a/Swift/QtUI/QtVCardWidget/QtVCardAddressField.cpp +++ b/Swift/QtUI/QtVCardWidget/QtVCardAddressField.cpp @@ -90,7 +90,7 @@ void QtVCardAddressField::setupContentWidgets() { } void QtVCardAddressField::customCleanup() { - foreach(QWidget* widget, textFields) { + for (auto widget : textFields) { widget->hide(); textFieldGridLayout->removeWidget(widget); } @@ -170,7 +170,7 @@ void QtVCardAddressField::handleEditibleChanged(bool isEditable) { domesticRadioButton->setVisible(isEditable); internationalRadioButton->setVisible(isEditable); - foreach (QWidget* widget, textFields) { + for (auto widget : textFields) { QtResizableLineEdit* lineEdit; if ((lineEdit = dynamic_cast<QtResizableLineEdit*>(widget))) { lineEdit->setVisible(isEditable ? true : !lineEdit->text().isEmpty()); diff --git a/Swift/QtUI/QtVCardWidget/QtVCardGeneralField.cpp b/Swift/QtUI/QtVCardWidget/QtVCardGeneralField.cpp index ab69cba..9bb6a35 100644 --- a/Swift/QtUI/QtVCardWidget/QtVCardGeneralField.cpp +++ b/Swift/QtUI/QtVCardWidget/QtVCardGeneralField.cpp @@ -121,7 +121,7 @@ QGridLayout* QtVCardGeneralField::getGridLayout() const { void QtVCardGeneralField::handleCloseButtonClicked() { customCleanup(); - foreach(QWidget* widget, childWidgets) { + for (auto widget : childWidgets) { widget->hide(); layout->removeWidget(widget); } diff --git a/Swift/QtUI/QtVCardWidget/QtVCardOrganizationField.cpp b/Swift/QtUI/QtVCardWidget/QtVCardOrganizationField.cpp index 9e303b7..5162c73 100644 --- a/Swift/QtUI/QtVCardWidget/QtVCardOrganizationField.cpp +++ b/Swift/QtUI/QtVCardWidget/QtVCardOrganizationField.cpp @@ -78,7 +78,7 @@ bool QtVCardOrganizationField::isEmpty() const { void QtVCardOrganizationField::setOrganization(const VCard::Organization& organization) { organizationLineEdit->setText(P2QSTRING(organization.name)); unitsTreeWidget->clear(); - foreach(std::string unit, organization.units) { + for (const auto& unit : organization.units) { QTreeWidgetItem* item = new QTreeWidgetItem(QStringList(P2QSTRING(unit)) << ""); item->setFlags(item->flags() | Qt::ItemIsEditable); unitsTreeWidget->addTopLevelItem(item); @@ -134,7 +134,7 @@ void QtVCardOrganizationField::handleRowsRemoved(const QModelIndex&, int, int) { void QtVCardOrganizationField::guaranteeEmptyRow() { bool hasEmptyRow = false; QList<QTreeWidgetItem*> rows = unitsTreeWidget->findItems("", Qt::MatchFixedString); - foreach(QTreeWidgetItem* row, rows) { + for (auto row : rows) { if (row->text(0).isEmpty()) { hasEmptyRow = true; } diff --git a/Swift/QtUI/QtWebKitChatView.cpp b/Swift/QtUI/QtWebKitChatView.cpp index c0ce3dc..6fe9397 100644 --- a/Swift/QtUI/QtWebKitChatView.cpp +++ b/Swift/QtUI/QtWebKitChatView.cpp @@ -499,7 +499,7 @@ QString QtWebKitChatView::getHighlightSpanStart(const HighlightAction& highlight QString QtWebKitChatView::chatMessageToHTML(const ChatWindow::ChatMessage& message) { QString result; - foreach (std::shared_ptr<ChatWindow::ChatMessagePart> part, message.getParts()) { + for (const auto& part : message.getParts()) { std::shared_ptr<ChatWindow::ChatTextMessagePart> textPart; std::shared_ptr<ChatWindow::ChatURIMessagePart> uriPart; std::shared_ptr<ChatWindow::ChatEmoticonMessagePart> emoticonPart; diff --git a/Swift/QtUI/Roster/QtFilterWidget.cpp b/Swift/QtUI/Roster/QtFilterWidget.cpp index d2e4d09..2e1ead9 100644 --- a/Swift/QtUI/Roster/QtFilterWidget.cpp +++ b/Swift/QtUI/Roster/QtFilterWidget.cpp @@ -100,7 +100,7 @@ bool QtFilterWidget::eventFilter(QObject*, QEvent* event) { void QtFilterWidget::popAllFilters() { std::vector<RosterFilter*> filters = treeView_->getRoster()->getFilters(); - foreach(RosterFilter* filter, filters) { + for (auto filter : filters) { filters_.push_back(filter); treeView_->getRoster()->removeFilter(filter); } @@ -111,7 +111,7 @@ void QtFilterWidget::popAllFilters() { void QtFilterWidget::pushAllFilters() { treeView_->getRoster()->onFilterAdded.disconnect(boost::bind(&QtFilterWidget::handleFilterAdded, this, _1)); treeView_->getRoster()->onFilterRemoved.disconnect(boost::bind(&QtFilterWidget::handleFilterRemoved, this, _1)); - foreach(RosterFilter* filter, filters_) { + for (auto filter : filters_) { treeView_->getRoster()->addFilter(filter); } filters_.clear(); diff --git a/Swift/QtUI/Roster/QtOccupantListWidget.cpp b/Swift/QtUI/Roster/QtOccupantListWidget.cpp index 03c14fd..a12863d 100644 --- a/Swift/QtUI/Roster/QtOccupantListWidget.cpp +++ b/Swift/QtUI/Roster/QtOccupantListWidget.cpp @@ -50,7 +50,7 @@ void QtOccupantListWidget::contextMenuEvent(QContextMenuEvent* event) { } else { std::map<QAction*, ChatWindow::OccupantAction> actions; - foreach (ChatWindow::OccupantAction availableAction, availableOccupantActions_) { + for (const auto& availableAction : availableOccupantActions_) { QString text = "Error: missing string"; switch (availableAction) { case ChatWindow::Kick: text = tr("Kick user"); break; diff --git a/Swift/QtUI/Roster/RosterModel.cpp b/Swift/QtUI/Roster/RosterModel.cpp index 3f77c86..ef4d778 100644 --- a/Swift/QtUI/Roster/RosterModel.cpp +++ b/Swift/QtUI/Roster/RosterModel.cpp @@ -53,7 +53,7 @@ void RosterModel::reLayout() { if (!roster_) { return; } - foreach (RosterItem* item, roster_->getRoot()->getDisplayedChildren()) { + for (auto item : roster_->getRoot()->getDisplayedChildren()) { GroupRosterItem* child = dynamic_cast<GroupRosterItem*>(item); if (!child) continue; emit itemExpanded(index(child), child->isExpanded()); diff --git a/Swift/QtUI/Roster/RosterTooltip.cpp b/Swift/QtUI/Roster/RosterTooltip.cpp index 8d467fd..ea4c9cd 100644 --- a/Swift/QtUI/Roster/RosterTooltip.cpp +++ b/Swift/QtUI/Roster/RosterTooltip.cpp @@ -122,7 +122,7 @@ QString RosterTooltip::buildVCardSummary(VCard::ref vcard) { // star | name | content QString currentBlock; - foreach (const VCard::Telephone& tel, vcard->getTelephones()) { + for (const auto& tel : vcard->getTelephones()) { QString type = tel.isFax ? QObject::tr("Fax") : QObject::tr("Telephone"); QString field = buildVCardField(tel.isPreferred, type, htmlEscape(P2QSTRING(tel.number))); if (tel.isPreferred) { @@ -134,7 +134,7 @@ QString RosterTooltip::buildVCardSummary(VCard::ref vcard) { summary += currentBlock; currentBlock = ""; - foreach (const VCard::EMailAddress& mail, vcard->getEMailAddresses()) { + for (const auto& mail : vcard->getEMailAddresses()) { QString field = buildVCardField(mail.isPreferred, QObject::tr("E-Mail"), htmlEscape(P2QSTRING(mail.address))); if (mail.isPreferred) { currentBlock = field; @@ -145,14 +145,14 @@ QString RosterTooltip::buildVCardSummary(VCard::ref vcard) { summary += currentBlock; currentBlock = ""; - foreach (const VCard::Organization& org, vcard->getOrganizations()) { + for (const auto& org : vcard->getOrganizations()) { QString field = buildVCardField(false, QObject::tr("Organization"), htmlEscape(P2QSTRING(org.name))); currentBlock += field; } summary += currentBlock; currentBlock = ""; - foreach(const std::string& title, vcard->getTitles()) { + for (const auto& title : vcard->getTitles()) { QString field = buildVCardField(false, QObject::tr("Title"), htmlEscape(P2QSTRING(title))); currentBlock += field; } diff --git a/Swift/QtUI/UserSearch/ContactListModel.cpp b/Swift/QtUI/UserSearch/ContactListModel.cpp index 376d3b1..6ef85d7 100644 --- a/Swift/QtUI/UserSearch/ContactListModel.cpp +++ b/Swift/QtUI/UserSearch/ContactListModel.cpp @@ -15,7 +15,6 @@ #include <QMimeData> #include <Swiften/Base/Path.h> -#include <Swiften/Base/foreach.h> #include <Swiften/Elements/StatusShow.h> #include <Swift/QtUI/QtResourceHelper.h> diff --git a/Swift/QtUI/UserSearch/QtContactListWidget.cpp b/Swift/QtUI/UserSearch/QtContactListWidget.cpp index 1dbfc1f..73a8482 100644 --- a/Swift/QtUI/UserSearch/QtContactListWidget.cpp +++ b/Swift/QtUI/UserSearch/QtContactListWidget.cpp @@ -85,8 +85,8 @@ bool QtContactListWidget::isFull() const { void QtContactListWidget::updateContacts(const std::vector<Contact::ref>& contactUpdates) { std::vector<Contact::ref> contacts = contactListModel_->getList(); - foreach(const Contact::ref& contactUpdate, contactUpdates) { - for(auto& contact : contacts) { + for (const auto& contactUpdate : contactUpdates) { + for (auto&& contact : contacts) { if (contactUpdate->jid == contact->jid) { contact = contactUpdate; break; diff --git a/Swift/QtUI/WinUIHelpers.cpp b/Swift/QtUI/WinUIHelpers.cpp index 4898916..ec39c38 100644 --- a/Swift/QtUI/WinUIHelpers.cpp +++ b/Swift/QtUI/WinUIHelpers.cpp @@ -19,8 +19,6 @@ #include <memory> -#include <Swiften/Base/foreach.h> - namespace Swift { void WinUIHelpers::displayCertificateChainAsSheet(QWidget* parent, const std::vector<Certificate::ref>& chain) { diff --git a/Swiften/Base/foreach.h b/Swiften/Base/foreach.h deleted file mode 100644 index 3e8ec43..0000000 --- a/Swiften/Base/foreach.h +++ /dev/null @@ -1,13 +0,0 @@ -/* - * Copyright (c) 2010 Isode Limited. - * All rights reserved. - * See the COPYING file for more information. - */ - -#pragma once - -#include <boost/foreach.hpp> - -#undef foreach -#define foreach BOOST_FOREACH -#define reverse_foreach BOOST_REVERSE_FOREACH diff --git a/Swiften/Chat/UnitTest/ChatStateNotifierTest.cpp b/Swiften/Chat/UnitTest/ChatStateNotifierTest.cpp index 278068a..7eeb531 100644 --- a/Swiften/Chat/UnitTest/ChatStateNotifierTest.cpp +++ b/Swiften/Chat/UnitTest/ChatStateNotifierTest.cpp @@ -9,7 +9,6 @@ #include <cppunit/extensions/HelperMacros.h> #include <cppunit/extensions/TestFactoryRegistry.h> -#include <Swiften/Base/foreach.h> #include <Swiften/Chat/ChatStateNotifier.h> #include <Swiften/Client/DummyStanzaChannel.h> #include <Swiften/Disco/DummyEntityCapsProvider.h> @@ -142,7 +141,7 @@ public: int getComposingCount() const { int result = 0; - foreach(std::shared_ptr<Stanza> stanza, stanzaChannel->sentStanzas) { + for (auto&& stanza : stanzaChannel->sentStanzas) { if (stanza->getPayload<ChatState>() && stanza->getPayload<ChatState>()->getChatState() == ChatState::Composing) { result++; } @@ -152,7 +151,7 @@ public: int getActiveCount() const { int result = 0; - foreach(std::shared_ptr<Stanza> stanza, stanzaChannel->sentStanzas) { + for (auto&& stanza : stanzaChannel->sentStanzas) { if (stanza->getPayload<ChatState>() && stanza->getPayload<ChatState>()->getChatState() == ChatState::Active) { result++; } diff --git a/Swiften/Client/BlockListImpl.cpp b/Swiften/Client/BlockListImpl.cpp index ebffff8..54dcdf5 100644 --- a/Swiften/Client/BlockListImpl.cpp +++ b/Swiften/Client/BlockListImpl.cpp @@ -1,5 +1,5 @@ /* - * Copyright (c) 2011-2015 Isode Limited. + * Copyright (c) 2011-2016 Isode Limited. * All rights reserved. * See the COPYING file for more information. */ @@ -8,8 +8,6 @@ #include <algorithm> -#include <Swiften/Base/foreach.h> - using namespace Swift; BlockListImpl::BlockListImpl() : state(Init) { @@ -18,14 +16,14 @@ BlockListImpl::BlockListImpl() : state(Init) { void BlockListImpl::setItems(const std::vector<JID>& newItems) { // JIDs which are in the current list but not in the new list, are removed. - foreach (const JID& jid, items) { + for (const auto& jid : items) { if (std::find(newItems.begin(), newItems.end(), jid) == newItems.end()) { onItemRemoved(jid); } } // JIDs which are in the new list but not in the current list, are added. - foreach (const JID& jid, newItems) { + for (const auto& jid : newItems) { if (std::find(items.begin(), items.end(), jid) == items.end()) { onItemAdded(jid); } @@ -56,14 +54,14 @@ void BlockListImpl::setState(State state) { } void BlockListImpl::addItems(const std::vector<JID>& items) { - foreach (const JID& item, items) { + for (const auto& item : items) { addItem(item); } } void BlockListImpl::removeItems(const std::vector<JID>& items) { std::vector<JID> itemsToRemove = items; - foreach (const JID& item, itemsToRemove) { + for (const auto& item : itemsToRemove) { removeItem(item); } } diff --git a/Swiften/Client/CoreClient.cpp b/Swiften/Client/CoreClient.cpp index c2f8fd7..3d75d8b 100644 --- a/Swiften/Client/CoreClient.cpp +++ b/Swiften/Client/CoreClient.cpp @@ -14,7 +14,6 @@ #include <Swiften/Base/Algorithm.h> #include <Swiften/Base/IDGenerator.h> #include <Swiften/Base/Log.h> -#include <Swiften/Base/foreach.h> #include <Swiften/Client/ClientSession.h> #include <Swiften/Client/ClientSessionStanzaChannel.h> #include <Swiften/Network/ChainedConnector.h> @@ -443,7 +442,7 @@ void CoreClient::purgePassword() { void CoreClient::resetConnector() { connector_->onConnectFinished.disconnect(boost::bind(&CoreClient::handleConnectorFinished, this, _1, _2)); connector_.reset(); - foreach(ConnectionFactory* f, proxyConnectionFactories) { + for (auto f : proxyConnectionFactories) { delete f; } proxyConnectionFactories.clear(); diff --git a/Swiften/Client/UnitTest/ClientBlockListManagerTest.cpp b/Swiften/Client/UnitTest/ClientBlockListManagerTest.cpp index aaf99e0..5d22cac 100644 --- a/Swiften/Client/UnitTest/ClientBlockListManagerTest.cpp +++ b/Swiften/Client/UnitTest/ClientBlockListManagerTest.cpp @@ -15,7 +15,6 @@ #include <cppunit/extensions/HelperMacros.h> #include <cppunit/extensions/TestFactoryRegistry.h> -#include <Swiften/Base/foreach.h> #include <Swiften/Client/ClientBlockListManager.h> #include <Swiften/Client/DummyStanzaChannel.h> #include <Swiften/Client/StanzaChannel.h> @@ -171,7 +170,7 @@ class ClientBlockListManagerTest : public CppUnit::TestFixture { // build IQ response std::shared_ptr<BlockListPayload> responsePayload = std::make_shared<BlockListPayload>(); - foreach(const JID& jid, blockedJids) { + for (const auto& jid : blockedJids) { responsePayload->addItem(jid); } diff --git a/Swiften/Client/XMLBeautifier.cpp b/Swiften/Client/XMLBeautifier.cpp index 9e9c4c5..e2cd58e 100644 --- a/Swiften/Client/XMLBeautifier.cpp +++ b/Swiften/Client/XMLBeautifier.cpp @@ -16,7 +16,6 @@ #include <stack> #include <Swiften/Base/Log.h> -#include <Swiften/Base/foreach.h> #include <Swiften/Parser/PlatformXMLParserFactory.h> namespace Swift { @@ -99,7 +98,7 @@ void XMLBeautifier::handleStartElement(const std::string& element, const std::st buffer << "\"" << (doColoring ? styleNamespace(ns) : ns) << "\""; } if (!attributes.getEntries().empty()) { - foreach(AttributeMap::Entry entry, attributes.getEntries()) { + for (const auto& entry : attributes.getEntries()) { buffer << " "; buffer << (doColoring ? styleAttribute(entry.getAttribute().getName()) : entry.getAttribute().getName()); buffer << "="; diff --git a/Swiften/Disco/CapsInfoGenerator.cpp b/Swiften/Disco/CapsInfoGenerator.cpp index b4637c7..961ef43 100644 --- a/Swiften/Disco/CapsInfoGenerator.cpp +++ b/Swiften/Disco/CapsInfoGenerator.cpp @@ -8,7 +8,6 @@ #include <algorithm> -#include <Swiften/Base/foreach.h> #include <Swiften/Crypto/CryptoProvider.h> #include <Swiften/Elements/DiscoInfo.h> #include <Swiften/Elements/FormField.h> @@ -30,28 +29,28 @@ CapsInfo CapsInfoGenerator::generateCapsInfo(const DiscoInfo& discoInfo) const { std::vector<DiscoInfo::Identity> identities(discoInfo.getIdentities()); std::sort(identities.begin(), identities.end()); - foreach (const DiscoInfo::Identity& identity, identities) { + for (const auto& identity : identities) { serializedCaps += identity.getCategory() + "/" + identity.getType() + "/" + identity.getLanguage() + "/" + identity.getName() + "<"; } std::vector<std::string> features(discoInfo.getFeatures()); std::sort(features.begin(), features.end()); - foreach (const std::string& feature, features) { + for (const auto& feature : features) { serializedCaps += feature + "<"; } - foreach(Form::ref extension, discoInfo.getExtensions()) { + for (const auto& extension : discoInfo.getExtensions()) { serializedCaps += extension->getFormType() + "<"; std::vector<FormField::ref> fields(extension->getFields()); std::sort(fields.begin(), fields.end(), &compareFields); - foreach(FormField::ref field, fields) { + for (const auto& field : fields) { if (field->getName() == "FORM_TYPE") { continue; } serializedCaps += field->getName() + "<"; std::vector<std::string> values(field->getValues()); std::sort(values.begin(), values.end()); - foreach(const std::string& value, values) { + for (const auto& value : values) { serializedCaps += value + "<"; } } diff --git a/Swiften/Disco/DiscoServiceWalker.cpp b/Swiften/Disco/DiscoServiceWalker.cpp index 761e6ab..a3f95d2 100644 --- a/Swiften/Disco/DiscoServiceWalker.cpp +++ b/Swiften/Disco/DiscoServiceWalker.cpp @@ -9,7 +9,6 @@ #include <boost/bind.hpp> #include <Swiften/Base/Log.h> -#include <Swiften/Base/foreach.h> namespace Swift { @@ -28,10 +27,10 @@ void DiscoServiceWalker::beginWalk() { void DiscoServiceWalker::endWalk() { if (active_) { SWIFT_LOG(debug) << "Ending walk to " << service_ << std::endl; - foreach (GetDiscoInfoRequest::ref request, pendingDiscoInfoRequests_) { + for (auto&& request : pendingDiscoInfoRequests_) { request->onResponse.disconnect(boost::bind(&DiscoServiceWalker::handleDiscoInfoResponse, this, _1, _2, request)); } - foreach (GetDiscoItemsRequest::ref request, pendingDiscoItemsRequests_) { + for (auto&& request : pendingDiscoItemsRequests_) { request->onResponse.disconnect(boost::bind(&DiscoServiceWalker::handleDiscoItemsResponse, this, _1, _2, request)); } active_ = false; @@ -65,7 +64,7 @@ void DiscoServiceWalker::handleDiscoInfoResponse(std::shared_ptr<DiscoInfo> info } bool couldContainServices = false; - foreach (DiscoInfo::Identity identity, info->getIdentities()) { + for (const auto& identity : info->getIdentities()) { if (identity.getCategory() == "server") { couldContainServices = true; } @@ -98,7 +97,7 @@ void DiscoServiceWalker::handleDiscoItemsResponse(std::shared_ptr<DiscoItems> it handleDiscoError(request->getReceiver(), error); return; } - foreach (DiscoItems::Item item, items->getItems()) { + for (auto&& item : items->getItems()) { if (item.getNode().empty()) { /* Don't look at noded items. It's possible that this will exclude some services, * but I've never seen one in the wild, and it's an easy fix for not looping. diff --git a/Swiften/Elements/Form.cpp b/Swiften/Elements/Form.cpp index f8414b2..dc4bd72 100644 --- a/Swiften/Elements/Form.cpp +++ b/Swiften/Elements/Form.cpp @@ -6,8 +6,6 @@ #include <Swiften/Elements/Form.h> -#include <Swiften/Base/foreach.h> - namespace Swift { std::string Form::getFormType() const { @@ -19,7 +17,7 @@ std::string Form::getFormType() const { } FormField::ref Form::getField(const std::string& name) const { - foreach(FormField::ref field, fields_) { + for (const auto& field : fields_) { if (field->getName() == name) { return field; } @@ -45,7 +43,7 @@ const std::vector<Form::FormItem>& Form::getItems() const { void Form::clearEmptyTextFields() { std::vector<FormField::ref> populatedFields; - foreach (FormField::ref field, fields_) { + for (const auto& field : fields_) { if (field->getType() == FormField::TextSingleType) { if (!field->getTextSingleValue().empty()) { populatedFields.push_back(field); diff --git a/Swiften/Elements/RosterItemExchangePayload.cpp b/Swiften/Elements/RosterItemExchangePayload.cpp index 1890811..79d0371 100644 --- a/Swiften/Elements/RosterItemExchangePayload.cpp +++ b/Swiften/Elements/RosterItemExchangePayload.cpp @@ -12,8 +12,6 @@ #include <Swiften/Elements/RosterItemExchangePayload.h> -#include <Swiften/Base/foreach.h> - namespace Swift { RosterItemExchangePayload::Item::Item(Action action) : action(action) { diff --git a/Swiften/Elements/RosterPayload.cpp b/Swiften/Elements/RosterPayload.cpp index b4be7d1..d745357 100644 --- a/Swiften/Elements/RosterPayload.cpp +++ b/Swiften/Elements/RosterPayload.cpp @@ -6,12 +6,10 @@ #include <Swiften/Elements/RosterPayload.h> -#include <Swiften/Base/foreach.h> - namespace Swift { boost::optional<RosterItemPayload> RosterPayload::getItem(const JID& jid) const { - foreach(const RosterItemPayload& item, items_) { + for (const auto& item : items_) { // FIXME: MSVC rejects this. Find out why. //if (item.getJID() == jid) { if (item.getJID().equals(jid, JID::WithResource)) { diff --git a/Swiften/Elements/Stanza.cpp b/Swiften/Elements/Stanza.cpp index f5a1b58..0ff6b3c 100644 --- a/Swiften/Elements/Stanza.cpp +++ b/Swiften/Elements/Stanza.cpp @@ -10,7 +10,6 @@ #include <boost/bind.hpp> -#include <Swiften/Base/foreach.h> #include <Swiften/Elements/Delay.h> namespace Swift { @@ -23,7 +22,7 @@ Stanza::~Stanza() { } void Stanza::updatePayload(std::shared_ptr<Payload> payload) { - foreach (std::shared_ptr<Payload>& i, payloads_) { + for (auto&& i : payloads_) { if (typeid(*i.get()) == typeid(*payload.get())) { i = payload; return; @@ -43,7 +42,7 @@ void Stanza::removePayloadOfSameType(std::shared_ptr<Payload> payload) { } std::shared_ptr<Payload> Stanza::getPayloadOfSameType(std::shared_ptr<Payload> payload) const { - foreach (const std::shared_ptr<Payload>& i, payloads_) { + for (const auto& i : payloads_) { if (typeid(*i.get()) == typeid(*payload.get())) { return i; } diff --git a/Swiften/Elements/VCard.cpp b/Swiften/Elements/VCard.cpp index f541d06..571ead4 100644 --- a/Swiften/Elements/VCard.cpp +++ b/Swiften/Elements/VCard.cpp @@ -1,17 +1,15 @@ /* - * Copyright (c) 2010 Isode Limited. + * Copyright (c) 2010-2016 Isode Limited. * All rights reserved. * See the COPYING file for more information. */ #include <Swiften/Elements/VCard.h> -#include <Swiften/Base/foreach.h> - namespace Swift { VCard::EMailAddress VCard::getPreferredEMailAddress() const { - foreach(const EMailAddress& address, emailAddresses_) { + for (const auto& address : emailAddresses_) { if (address.isPreferred) { return address; } diff --git a/Swiften/EventLoop/EventLoop.cpp b/Swiften/EventLoop/EventLoop.cpp index eefbf65..186616f 100644 --- a/Swiften/EventLoop/EventLoop.cpp +++ b/Swiften/EventLoop/EventLoop.cpp @@ -16,7 +16,6 @@ #include <boost/optional.hpp> #include <Swiften/Base/Log.h> -#include <Swiften/Base/foreach.h> namespace lambda = boost::lambda; @@ -61,7 +60,7 @@ void EventLoop::handleNextEvents() { callEventPosted = !events_.empty(); } if (!nextEvents.empty()) { - foreach (const Event& event, nextEvents) { + for (const auto& event : nextEvents) { invokeCallback(event); } } diff --git a/Swiften/EventLoop/SimpleEventLoop.cpp b/Swiften/EventLoop/SimpleEventLoop.cpp index 2397016..cac04e4 100644 --- a/Swiften/EventLoop/SimpleEventLoop.cpp +++ b/Swiften/EventLoop/SimpleEventLoop.cpp @@ -8,8 +8,6 @@ #include <boost/bind.hpp> -#include <Swiften/Base/foreach.h> - namespace Swift { SimpleEventLoop::SimpleEventLoop() : isRunning_(true), eventAvailable_(false) { diff --git a/Swiften/EventLoop/SingleThreadedEventLoop.cpp b/Swiften/EventLoop/SingleThreadedEventLoop.cpp index acb6e4d..0542f37 100644 --- a/Swiften/EventLoop/SingleThreadedEventLoop.cpp +++ b/Swiften/EventLoop/SingleThreadedEventLoop.cpp @@ -16,8 +16,6 @@ #include <boost/bind.hpp> -#include <Swiften/Base/foreach.h> - namespace Swift { SingleThreadedEventLoop::SingleThreadedEventLoop() @@ -35,8 +33,9 @@ void SingleThreadedEventLoop::waitForEvents() { eventAvailableCondition_.wait(lock); } - if (shouldShutDown_) + if (shouldShutDown_) { throw EventLoopCanceledException(); + } } void SingleThreadedEventLoop::handleEvents() { diff --git a/Swiften/Examples/MUCListAndJoin/MUCListAndJoin.cpp b/Swiften/Examples/MUCListAndJoin/MUCListAndJoin.cpp index c3983f1..10b0b40 100644 --- a/Swiften/Examples/MUCListAndJoin/MUCListAndJoin.cpp +++ b/Swiften/Examples/MUCListAndJoin/MUCListAndJoin.cpp @@ -9,7 +9,6 @@ #include <boost/optional.hpp> -#include <Swiften/Base/foreach.h> #include <Swiften/Client/Client.h> #include <Swiften/Client/ClientXMLTracer.h> #include <Swiften/Disco/GetDiscoItemsRequest.h> @@ -47,7 +46,7 @@ static void handleRoomsItemsResponse(std::shared_ptr<DiscoItems> items, ErrorPay int roomCount = 0; cout << "List of rooms at " << mucJID.toString() << endl; - foreach (DiscoItems::Item item, items->getItems()) { + for (auto&& item : items->getItems()) { roomCount++; cout << "\t" << roomCount << ". " << item.getJID().getNode() << " - " << item.getName() << std::endl; if (roomCount == 1) { diff --git a/Swiften/Examples/SendFile/ReceiveFile.cpp b/Swiften/Examples/SendFile/ReceiveFile.cpp index 0b61987..193c1b7 100644 --- a/Swiften/Examples/SendFile/ReceiveFile.cpp +++ b/Swiften/Examples/SendFile/ReceiveFile.cpp @@ -11,7 +11,6 @@ #include <boost/filesystem.hpp> #include <Swiften/Base/Log.h> -#include <Swiften/Base/foreach.h> #include <Swiften/Client/Client.h> #include <Swiften/Client/ClientXMLTracer.h> #include <Swiften/Disco/ClientDiscoManager.h> @@ -56,7 +55,8 @@ class FileReceiver { } void stop() { - foreach(const IncomingFileTransfer::ref transfer, incomingFileTransfers) { + for (const auto& transfer : incomingFileTransfers) { + (void)transfer; //transfer->stop(); } client->disconnect(); diff --git a/Swiften/FileTransfer/DefaultFileTransferTransporter.cpp b/Swiften/FileTransfer/DefaultFileTransferTransporter.cpp index aefafd9..c6987c0 100644 --- a/Swiften/FileTransfer/DefaultFileTransferTransporter.cpp +++ b/Swiften/FileTransfer/DefaultFileTransferTransporter.cpp @@ -11,7 +11,6 @@ #include <boost/bind.hpp> #include <Swiften/Base/Log.h> -#include <Swiften/Base/foreach.h> #include <Swiften/Crypto/CryptoProvider.h> #include <Swiften/FileTransfer/FailingTransportSession.h> #include <Swiften/FileTransfer/FileTransferOptions.h> @@ -295,7 +294,7 @@ void DefaultFileTransferTransporter::closeLocalSession() { s5bRegistry->setHasBytestream(getSOCKS5DstAddr(), false); if (s5bServerManager->getServer()) { std::vector<std::shared_ptr<SOCKS5BytestreamServerSession> > serverSessions = s5bServerManager->getServer()->getSessions(getSOCKS5DstAddr()); - foreach(std::shared_ptr<SOCKS5BytestreamServerSession> session, serverSessions) { + for (auto&& session : serverSessions) { session->stop(); } } diff --git a/Swiften/FileTransfer/IncomingJingleFileTransfer.cpp b/Swiften/FileTransfer/IncomingJingleFileTransfer.cpp index f73cd38..d5de5e4 100644 --- a/Swiften/FileTransfer/IncomingJingleFileTransfer.cpp +++ b/Swiften/FileTransfer/IncomingJingleFileTransfer.cpp @@ -12,7 +12,6 @@ #include <boost/bind.hpp> #include <Swiften/Base/Log.h> -#include <Swiften/Base/foreach.h> #include <Swiften/Elements/JingleFileTransferDescription.h> #include <Swiften/Elements/JingleFileTransferHash.h> #include <Swiften/Elements/JingleIBBTransportPayload.h> @@ -130,7 +129,7 @@ void IncomingJingleFileTransfer::handleLocalTransportCandidatesGenerated( transport->setSessionID(s5bSessionID); transport->setMode(JingleS5BTransportPayload::TCPMode); transport->setDstAddr(dstAddr); - foreach(JingleS5BTransportPayload::Candidate candidate, candidates) { + for (auto&& candidate : candidates) { transport->addCandidate(candidate); } session->sendAccept(getContentID(), initialContent->getDescriptions()[0], transport); @@ -197,7 +196,7 @@ void IncomingJingleFileTransfer::checkIfAllDataReceived() { if (receivedBytes == getFileSizeInBytes()) { SWIFT_LOG(debug) << "All data received." << std::endl; bool hashInfoAvailable = false; - foreach(const JingleFileTransferFileInfo::HashElementMap::value_type& hashElement, hashes) { + for (const auto& hashElement : hashes) { hashInfoAvailable |= !hashElement.second.empty(); } diff --git a/Swiften/FileTransfer/JingleFileTransfer.cpp b/Swiften/FileTransfer/JingleFileTransfer.cpp index 36725de..62c3a53 100644 --- a/Swiften/FileTransfer/JingleFileTransfer.cpp +++ b/Swiften/FileTransfer/JingleFileTransfer.cpp @@ -9,7 +9,6 @@ #include <boost/typeof/typeof.hpp> #include <Swiften/Base/Log.h> -#include <Swiften/Base/foreach.h> #include <Swiften/Crypto/CryptoProvider.h> #include <Swiften/FileTransfer/FileTransferTransporter.h> #include <Swiften/JID/JID.h> @@ -39,7 +38,7 @@ JingleFileTransfer::~JingleFileTransfer() { void JingleFileTransfer::fillCandidateMap(CandidateMap& map, const std::vector<JingleS5BTransportPayload::Candidate>& candidates) { map.clear(); - foreach (JingleS5BTransportPayload::Candidate candidate, candidates) { + for (auto&& candidate : candidates) { map[candidate.cid] = candidate; } } diff --git a/Swiften/FileTransfer/OutgoingJingleFileTransfer.cpp b/Swiften/FileTransfer/OutgoingJingleFileTransfer.cpp index fcc160a..367fc97 100644 --- a/Swiften/FileTransfer/OutgoingJingleFileTransfer.cpp +++ b/Swiften/FileTransfer/OutgoingJingleFileTransfer.cpp @@ -24,7 +24,6 @@ #include <Swiften/Base/IDGenerator.h> #include <Swiften/Base/Log.h> -#include <Swiften/Base/foreach.h> #include <Swiften/Crypto/CryptoProvider.h> #include <Swiften/Elements/JingleFileTransferDescription.h> #include <Swiften/Elements/JingleFileTransferHash.h> @@ -215,7 +214,7 @@ void OutgoingJingleFileTransfer::handleLocalTransportCandidatesGenerated( s5bTransport->setSessionID(s5bSessionID); s5bTransport->setMode(JingleS5BTransportPayload::TCPMode); s5bTransport->setDstAddr(dstAddr); - foreach(JingleS5BTransportPayload::Candidate candidate, candidates) { + for (auto&& candidate : candidates) { s5bTransport->addCandidate(candidate); SWIFT_LOG(debug) << "\t" << "S5B candidate: " << candidate.hostPort.toString() << std::endl; } diff --git a/Swiften/FileTransfer/RemoteJingleTransportCandidateSelector.cpp b/Swiften/FileTransfer/RemoteJingleTransportCandidateSelector.cpp index a0e7a6f..56013ca 100644 --- a/Swiften/FileTransfer/RemoteJingleTransportCandidateSelector.cpp +++ b/Swiften/FileTransfer/RemoteJingleTransportCandidateSelector.cpp @@ -18,7 +18,6 @@ #include <boost/signals2.hpp> #include <Swiften/Base/Log.h> -#include <Swiften/Base/foreach.h> #include <Swiften/Elements/JingleS5BTransportPayload.h> #include <Swiften/FileTransfer/SOCKS5BytestreamRegistry.h> #include <Swiften/Network/ConnectionFactory.h> @@ -39,7 +38,7 @@ RemoteJingleTransportCandidateSelector::~RemoteJingleTransportCandidateSelector( void RemoteJingleTransportCandidateSelector::addCandidates( const std::vector<JingleS5BTransportPayload::Candidate>& candidates) { - foreach(JingleS5BTransportPayload::Candidate c, candidates) { + for (auto&& c : candidates) { this->candidates.push(c); } } diff --git a/Swiften/FileTransfer/SOCKS5BytestreamProxyFinder.cpp b/Swiften/FileTransfer/SOCKS5BytestreamProxyFinder.cpp index 9624d4c..90c42dd 100644 --- a/Swiften/FileTransfer/SOCKS5BytestreamProxyFinder.cpp +++ b/Swiften/FileTransfer/SOCKS5BytestreamProxyFinder.cpp @@ -17,7 +17,6 @@ #include <boost/bind.hpp> #include <Swiften/Base/Log.h> -#include <Swiften/Base/foreach.h> #include <Swiften/Elements/S5BProxyRequest.h> #include <Swiften/Queries/GenericRequest.h> #include <Swiften/Queries/IQRouter.h> @@ -38,8 +37,7 @@ void SOCKS5BytestreamProxyFinder::start() { } void SOCKS5BytestreamProxyFinder::stop() { - typedef std::shared_ptr<GenericRequest<S5BProxyRequest> > S5BProxyRequestGenericRequest; - foreach (S5BProxyRequestGenericRequest requester, pendingRequests) { + for (auto&& requester : pendingRequests) { requester->onResponse.disconnect(boost::bind(&SOCKS5BytestreamProxyFinder::handleProxyResponse, this, requester, _1, _2)); } diff --git a/Swiften/FileTransfer/SOCKS5BytestreamRegistry.cpp b/Swiften/FileTransfer/SOCKS5BytestreamRegistry.cpp index 1591e24..9e214fc 100644 --- a/Swiften/FileTransfer/SOCKS5BytestreamRegistry.cpp +++ b/Swiften/FileTransfer/SOCKS5BytestreamRegistry.cpp @@ -10,7 +10,6 @@ #include <Swiften/Base/Algorithm.h> #include <Swiften/Base/Log.h> -#include <Swiften/Base/foreach.h> namespace Swift { diff --git a/Swiften/FileTransfer/SOCKS5BytestreamServer.cpp b/Swiften/FileTransfer/SOCKS5BytestreamServer.cpp index b68bd58..483ea18 100644 --- a/Swiften/FileTransfer/SOCKS5BytestreamServer.cpp +++ b/Swiften/FileTransfer/SOCKS5BytestreamServer.cpp @@ -9,7 +9,6 @@ #include <boost/bind.hpp> #include <Swiften/Base/Log.h> -#include <Swiften/Base/foreach.h> #include <Swiften/Crypto/CryptoProvider.h> #include <Swiften/FileTransfer/SOCKS5BytestreamRegistry.h> #include <Swiften/FileTransfer/SOCKS5BytestreamServerSession.h> @@ -30,7 +29,7 @@ void SOCKS5BytestreamServer::start() { void SOCKS5BytestreamServer::stop() { connectionServer->onNewConnection.disconnect(boost::bind(&SOCKS5BytestreamServer::handleNewConnection, this, _1)); - foreach (std::shared_ptr<SOCKS5BytestreamServerSession> session, sessions) { + for (auto&& session : sessions) { session->onFinished.disconnect(boost::bind(&SOCKS5BytestreamServer::handleSessionFinished, this, session)); session->stop(); } @@ -52,7 +51,7 @@ HostAddressPort SOCKS5BytestreamServer::getAddressPort() const { std::vector< std::shared_ptr<SOCKS5BytestreamServerSession> > SOCKS5BytestreamServer::getSessions( const std::string& streamID) const { std::vector< std::shared_ptr<SOCKS5BytestreamServerSession> > result; - foreach (std::shared_ptr<SOCKS5BytestreamServerSession> session, sessions) { + for (auto&& session : sessions) { if (session->getStreamID() == streamID) { result.push_back(session); } diff --git a/Swiften/Jingle/JingleSession.cpp b/Swiften/Jingle/JingleSession.cpp index 778ee1d..b5cfbef 100644 --- a/Swiften/Jingle/JingleSession.cpp +++ b/Swiften/Jingle/JingleSession.cpp @@ -7,12 +7,11 @@ #include <Swiften/Jingle/JingleSession.h> #include <algorithm> +#include <cassert> #include <memory> #include <boost/function.hpp> -#include <Swiften/Base/foreach.h> - using namespace Swift; JingleSession::JingleSession(const JID& initiator, const std::string& id) : initiator(initiator), id(id) { diff --git a/Swiften/Jingle/JingleSessionManager.cpp b/Swiften/Jingle/JingleSessionManager.cpp index ca6cebb..f7ed58e 100644 --- a/Swiften/Jingle/JingleSessionManager.cpp +++ b/Swiften/Jingle/JingleSessionManager.cpp @@ -8,7 +8,6 @@ #include <Swiften/Base/Algorithm.h> #include <Swiften/Base/Log.h> -#include <Swiften/Base/foreach.h> #include <Swiften/Jingle/IncomingJingleSessionHandler.h> #include <Swiften/Jingle/JingleResponder.h> @@ -44,7 +43,7 @@ void JingleSessionManager::registerOutgoingSession(const JID& initiator, JingleS void JingleSessionManager::handleIncomingSession(const JID& initiator, const JID& recipient, JingleSessionImpl::ref session, const std::vector<JingleContentPayload::ref>& contents) { sessions.insert(std::make_pair(JIDSession(initiator, session->getID()), session)); - foreach (IncomingJingleSessionHandler* handler, incomingSessionHandlers) { + for (auto handler : incomingSessionHandlers) { if (handler->handleIncomingJingleSession(session, contents, recipient)) { return; } diff --git a/Swiften/LinkLocal/DNSSD/Bonjour/BonjourQuerier.cpp b/Swiften/LinkLocal/DNSSD/Bonjour/BonjourQuerier.cpp index 9cfe3cd..0906ffc 100644 --- a/Swiften/LinkLocal/DNSSD/Bonjour/BonjourQuerier.cpp +++ b/Swiften/LinkLocal/DNSSD/Bonjour/BonjourQuerier.cpp @@ -11,7 +11,6 @@ #include <unistd.h> #include <Swiften/Base/Algorithm.h> -#include <Swiften/Base/foreach.h> #include <Swiften/LinkLocal/DNSSD/Bonjour/BonjourBrowseQuery.h> #include <Swiften/LinkLocal/DNSSD/Bonjour/BonjourRegisterQuery.h> #include <Swiften/LinkLocal/DNSSD/Bonjour/BonjourResolveHostnameQuery.h> @@ -106,7 +105,7 @@ void BonjourQuerier::run() { maxSocket = interruptSelectReadSocket; FD_SET(interruptSelectReadSocket, &fdSet); - foreach(const std::shared_ptr<BonjourQuery>& query, runningQueries) { + for (const auto& query : runningQueries) { int socketID = query->getSocketID(); maxSocket = std::max(maxSocket, socketID); FD_SET(socketID, &fdSet); @@ -124,7 +123,7 @@ void BonjourQuerier::run() { { std::lock_guard<std::mutex> lock(runningQueriesMutex); - foreach(std::shared_ptr<BonjourQuery> query, runningQueries) { + for (auto&& query : runningQueries) { if (FD_ISSET(query->getSocketID(), &fdSet)) { query->processResult(); } diff --git a/Swiften/LinkLocal/DNSSD/Fake/FakeDNSSDQuerier.cpp b/Swiften/LinkLocal/DNSSD/Fake/FakeDNSSDQuerier.cpp index 63ad3b8..c17f8b2 100644 --- a/Swiften/LinkLocal/DNSSD/Fake/FakeDNSSDQuerier.cpp +++ b/Swiften/LinkLocal/DNSSD/Fake/FakeDNSSDQuerier.cpp @@ -11,7 +11,6 @@ #include <boost/bind.hpp> #include <Swiften/Base/Algorithm.h> -#include <Swiften/Base/foreach.h> #include <Swiften/EventLoop/EventLoop.h> #include <Swiften/LinkLocal/DNSSD/Fake/FakeDNSSDBrowseQuery.h> #include <Swiften/LinkLocal/DNSSD/Fake/FakeDNSSDRegisterQuery.h> @@ -49,14 +48,14 @@ void FakeDNSSDQuerier::addRunningQuery(std::shared_ptr<FakeDNSSDQuery> query) { runningQueries.push_back(query); allQueriesEverRun.push_back(query); if (std::shared_ptr<FakeDNSSDBrowseQuery> browseQuery = std::dynamic_pointer_cast<FakeDNSSDBrowseQuery>(query)) { - foreach(const DNSSDServiceID& service, services) { + for (const auto& service : services) { eventLoop->postEvent(boost::bind(boost::ref(browseQuery->onServiceAdded), service), shared_from_this()); } } else if (std::shared_ptr<FakeDNSSDResolveServiceQuery> resolveQuery = std::dynamic_pointer_cast<FakeDNSSDResolveServiceQuery>(query)) { - for(ServiceInfoMap::const_iterator i = serviceInfo.begin(); i != serviceInfo.end(); ++i) { - if (i->first == resolveQuery->service) { - eventLoop->postEvent(boost::bind(boost::ref(resolveQuery->onServiceResolved), i->second), shared_from_this()); + for (const auto& i : serviceInfo) { + if (i.first == resolveQuery->service) { + eventLoop->postEvent(boost::bind(boost::ref(resolveQuery->onServiceResolved), i.second), shared_from_this()); } } } @@ -81,7 +80,7 @@ void FakeDNSSDQuerier::removeRunningQuery(std::shared_ptr<FakeDNSSDQuery> query) void FakeDNSSDQuerier::addService(const DNSSDServiceID& id) { services.insert(id); - foreach(const std::shared_ptr<FakeDNSSDBrowseQuery>& query, getQueries<FakeDNSSDBrowseQuery>()) { + for (const auto& query : getQueries<FakeDNSSDBrowseQuery>()) { eventLoop->postEvent(boost::bind(boost::ref(query->onServiceAdded), id), shared_from_this()); } } @@ -89,7 +88,7 @@ void FakeDNSSDQuerier::addService(const DNSSDServiceID& id) { void FakeDNSSDQuerier::removeService(const DNSSDServiceID& id) { services.erase(id); serviceInfo.erase(id); - foreach(const std::shared_ptr<FakeDNSSDBrowseQuery>& query, getQueries<FakeDNSSDBrowseQuery>()) { + for (const auto& query : getQueries<FakeDNSSDBrowseQuery>()) { eventLoop->postEvent(boost::bind(boost::ref(query->onServiceRemoved), id), shared_from_this()); } } @@ -99,7 +98,7 @@ void FakeDNSSDQuerier::setServiceInfo(const DNSSDServiceID& id, const DNSSDResol if (!r.second) { r.first->second = info; } - foreach(const std::shared_ptr<FakeDNSSDResolveServiceQuery>& query, getQueries<FakeDNSSDResolveServiceQuery>()) { + for (const auto& query : getQueries<FakeDNSSDResolveServiceQuery>()) { if (query->service == id) { eventLoop->postEvent(boost::bind(boost::ref(query->onServiceResolved), info), shared_from_this()); } @@ -107,7 +106,7 @@ void FakeDNSSDQuerier::setServiceInfo(const DNSSDServiceID& id, const DNSSDResol } bool FakeDNSSDQuerier::isServiceRegistered(const std::string& name, int port, const ByteArray& info) { - foreach(const std::shared_ptr<FakeDNSSDRegisterQuery>& query, getQueries<FakeDNSSDRegisterQuery>()) { + for (const auto& query : getQueries<FakeDNSSDRegisterQuery>()) { if (query->name == name && query->port == port && query->info == info) { return true; } @@ -116,20 +115,20 @@ bool FakeDNSSDQuerier::isServiceRegistered(const std::string& name, int port, co } void FakeDNSSDQuerier::setBrowseError() { - foreach(const std::shared_ptr<FakeDNSSDBrowseQuery>& query, getQueries<FakeDNSSDBrowseQuery>()) { + for (const auto& query : getQueries<FakeDNSSDBrowseQuery>()) { eventLoop->postEvent(boost::ref(query->onError), shared_from_this()); } } void FakeDNSSDQuerier::setRegisterError() { - foreach(const std::shared_ptr<FakeDNSSDRegisterQuery>& query, getQueries<FakeDNSSDRegisterQuery>()) { + for (const auto& query : getQueries<FakeDNSSDRegisterQuery>()) { eventLoop->postEvent(boost::bind(boost::ref(query->onRegisterFinished), boost::optional<DNSSDServiceID>()), shared_from_this()); } } void FakeDNSSDQuerier::setAddress(const std::string& hostname, boost::optional<HostAddress> address) { addresses[hostname] = address; - foreach(const std::shared_ptr<FakeDNSSDResolveHostnameQuery>& query, getQueries<FakeDNSSDResolveHostnameQuery>()) { + for (const auto& query : getQueries<FakeDNSSDResolveHostnameQuery>()) { if (query->hostname == hostname) { eventLoop->postEvent(boost::bind( boost::ref(query->onHostnameResolved), address), shared_from_this()); diff --git a/Swiften/LinkLocal/OutgoingLinkLocalSession.cpp b/Swiften/LinkLocal/OutgoingLinkLocalSession.cpp index f97d9a1..a639ec5 100644 --- a/Swiften/LinkLocal/OutgoingLinkLocalSession.cpp +++ b/Swiften/LinkLocal/OutgoingLinkLocalSession.cpp @@ -8,7 +8,6 @@ #include <boost/bind.hpp> -#include <Swiften/Base/foreach.h> #include <Swiften/Elements/IQ.h> #include <Swiften/Elements/ProtocolHeader.h> #include <Swiften/Elements/StreamFeatures.h> @@ -35,7 +34,7 @@ void OutgoingLinkLocalSession::handleSessionStarted() { } void OutgoingLinkLocalSession::handleStreamStart(const ProtocolHeader&) { - foreach(const std::shared_ptr<ToplevelElement>& stanza, queuedElements_) { + for (const auto& stanza : queuedElements_) { sendElement(stanza); } queuedElements_.clear(); diff --git a/Swiften/MUC/MUCBookmarkManager.cpp b/Swiften/MUC/MUCBookmarkManager.cpp index a06a0a2..9f8ae77 100644 --- a/Swiften/MUC/MUCBookmarkManager.cpp +++ b/Swiften/MUC/MUCBookmarkManager.cpp @@ -10,7 +10,6 @@ #include <boost/bind.hpp> -#include <Swiften/Base/foreach.h> #include <Swiften/Queries/IQRouter.h> #include <Swiften/Queries/Requests/GetPrivateStorageRequest.h> #include <Swiften/Queries/Requests/SetPrivateStorageRequest.h> @@ -36,12 +35,12 @@ void MUCBookmarkManager::handleBookmarksReceived(std::shared_ptr<Storage> payloa storage = payload; std::vector<MUCBookmark> receivedBookmarks; - foreach (Storage::Room room, payload->getRooms()) { + for (const auto& room : payload->getRooms()) { receivedBookmarks.push_back(MUCBookmark(room)); } std::vector<MUCBookmark> newBookmarks; - foreach (const MUCBookmark& oldBookmark, bookmarks_) { + for (const auto& oldBookmark : bookmarks_) { if (containsEquivalent(receivedBookmarks, oldBookmark)) { newBookmarks.push_back(oldBookmark); } else { @@ -49,7 +48,7 @@ void MUCBookmarkManager::handleBookmarksReceived(std::shared_ptr<Storage> payloa } } - foreach (const MUCBookmark& newBookmark, receivedBookmarks) { + for (const auto& newBookmark : receivedBookmarks) { if (!containsEquivalent(bookmarks_, newBookmark)) { newBookmarks.push_back(newBookmark); onBookmarkAdded(newBookmark); @@ -102,7 +101,7 @@ void MUCBookmarkManager::flush() { } // Update the storage element storage->clearRooms(); - foreach(const MUCBookmark& bookmark, bookmarks_) { + for (const auto& bookmark : bookmarks_) { storage->addRoom(bookmark.toStorage()); } diff --git a/Swiften/Network/BOSHConnectionPool.cpp b/Swiften/Network/BOSHConnectionPool.cpp index 9ce40d3..e4ca471 100644 --- a/Swiften/Network/BOSHConnectionPool.cpp +++ b/Swiften/Network/BOSHConnectionPool.cpp @@ -12,7 +12,6 @@ #include <Swiften/Base/Log.h> #include <Swiften/Base/SafeString.h> -#include <Swiften/Base/foreach.h> #include <Swiften/Network/CachingDomainNameResolver.h> #include <Swiften/Network/HTTPConnectProxiedConnectionFactory.h> @@ -40,13 +39,13 @@ BOSHConnectionPool::BOSHConnectionPool(const URL& boshURL, DomainNameResolver* r BOSHConnectionPool::~BOSHConnectionPool() { /* Don't do a normal close here. Instead kill things forcibly, as close() or writeFooter() will already have been called */ std::vector<BOSHConnection::ref> connectionCopies = connections; - foreach (BOSHConnection::ref connection, connectionCopies) { + for (auto&& connection : connectionCopies) { if (connection) { destroyConnection(connection); connection->disconnect(); } } - foreach (ConnectionFactory* factory, myConnectionFactories) { + for (auto factory : myConnectionFactories) { delete factory; } delete resolver; @@ -116,7 +115,7 @@ void BOSHConnectionPool::close() { else { pendingTerminate = true; std::vector<BOSHConnection::ref> connectionCopies = connections; - foreach (BOSHConnection::ref connection, connectionCopies) { + for (auto&& connection : connectionCopies) { if (connection) { connection->disconnect(); } @@ -157,7 +156,7 @@ void BOSHConnectionPool::handleConnectFinished(bool error, BOSHConnection::ref c BOSHConnection::ref BOSHConnectionPool::getSuitableConnection() { BOSHConnection::ref suitableConnection; - foreach (BOSHConnection::ref connection, connections) { + for (auto&& connection : connections) { if (connection->isReadyToSend()) { suitableConnection = connection; break; @@ -187,7 +186,7 @@ void BOSHConnectionPool::tryToSendQueuedData() { rid++; suitableConnection->setRID(rid); SafeByteArray data; - foreach (const SafeByteArray& datum, dataQueue) { + for (const auto& datum : dataQueue) { data.insert(data.end(), datum.begin(), datum.end()); } suitableConnection->write(data); @@ -204,7 +203,7 @@ void BOSHConnectionPool::tryToSendQueuedData() { if (!pendingTerminate) { /* Ensure there's always a session waiting to read data for us */ bool pending = false; - foreach (BOSHConnection::ref connection, connections) { + for (auto&& connection : connections) { if (connection && !connection->isReadyToSend()) { pending = true; } diff --git a/Swiften/Network/ChainedConnector.cpp b/Swiften/Network/ChainedConnector.cpp index fbea868..ea55db3 100644 --- a/Swiften/Network/ChainedConnector.cpp +++ b/Swiften/Network/ChainedConnector.cpp @@ -11,7 +11,6 @@ #include <boost/bind.hpp> #include <Swiften/Base/Log.h> -#include <Swiften/Base/foreach.h> #include <Swiften/Network/ConnectionFactory.h> #include <Swiften/Network/Connector.h> diff --git a/Swiften/Network/DummyTimerFactory.cpp b/Swiften/Network/DummyTimerFactory.cpp index cdc776c..0bad7be 100644 --- a/Swiften/Network/DummyTimerFactory.cpp +++ b/Swiften/Network/DummyTimerFactory.cpp @@ -8,7 +8,6 @@ #include <algorithm> -#include <Swiften/Base/foreach.h> #include <Swiften/Network/Timer.h> namespace Swift { @@ -49,7 +48,7 @@ std::shared_ptr<Timer> DummyTimerFactory::createTimer(int milliseconds) { void DummyTimerFactory::setTime(int time) { assert(time > currentTime); - foreach(std::shared_ptr<DummyTimer> timer, timers) { + for (auto&& timer : timers) { if (timer->getAlarmTime() > currentTime && timer->getAlarmTime() <= time && timer->isRunning) { timer->onTick(); } diff --git a/Swiften/Network/HTTPConnectProxiedConnection.cpp b/Swiften/Network/HTTPConnectProxiedConnection.cpp index b9ab604..b5e521b 100644 --- a/Swiften/Network/HTTPConnectProxiedConnection.cpp +++ b/Swiften/Network/HTTPConnectProxiedConnection.cpp @@ -24,7 +24,6 @@ #include <Swiften/Base/ByteArray.h> #include <Swiften/Base/Log.h> #include <Swiften/Base/String.h> -#include <Swiften/Base/foreach.h> #include <Swiften/Network/ConnectionFactory.h> #include <Swiften/Network/HTTPTrafficFilter.h> #include <Swiften/Network/HostAddressPort.h> @@ -68,8 +67,7 @@ void HTTPConnectProxiedConnection::initializeProxy() { append(data, createSafeByteArray("\r\n")); } else if (!nextHTTPRequestHeaders_.empty()) { - typedef std::pair<std::string, std::string> StringPair; - foreach(const StringPair& headerField, nextHTTPRequestHeaders_) { + for (const auto& headerField : nextHTTPRequestHeaders_) { append(data, createSafeByteArray(headerField.first)); append(data, createSafeByteArray(": ")); append(data, createSafeByteArray(headerField.second)); @@ -101,11 +99,10 @@ void HTTPConnectProxiedConnection::parseHTTPHeader(const std::string& data, std: } void HTTPConnectProxiedConnection::sendHTTPRequest(const std::string& statusLine, const std::vector<std::pair<std::string, std::string> >& headerFields) { - typedef std::pair<std::string, std::string> HTTPHeaderField; std::stringstream request; request << statusLine << "\r\n"; - foreach (const HTTPHeaderField& field, headerFields) { + for (const auto& field : headerFields) { request << field.first << ":" << field.second << "\r\n"; } request << "\r\n"; diff --git a/Swiften/Network/NetworkEnvironment.cpp b/Swiften/Network/NetworkEnvironment.cpp index 19f727c..87883c1 100644 --- a/Swiften/Network/NetworkEnvironment.cpp +++ b/Swiften/Network/NetworkEnvironment.cpp @@ -6,7 +6,6 @@ #include <Swiften/Network/NetworkEnvironment.h> -#include <Swiften/Base/foreach.h> #include <Swiften/Network/HostAddress.h> #include <Swiften/Network/NetworkInterface.h> @@ -17,9 +16,9 @@ NetworkEnvironment::~NetworkEnvironment() { HostAddress NetworkEnvironment::getLocalAddress() const { std::vector<NetworkInterface> networkInterfaces = getNetworkInterfaces(); - foreach (const NetworkInterface& iface, networkInterfaces) { + for (const auto& iface : networkInterfaces) { if (!iface.isLoopback()) { - foreach (const HostAddress& address, iface.getAddresses()) { + for (const auto& address : iface.getAddresses()) { if (address.getRawAddress().is_v4()) { return address; } diff --git a/Swiften/Network/PlatformDomainNameServiceQuery.cpp b/Swiften/Network/PlatformDomainNameServiceQuery.cpp index 71611f5..5cffcdb 100644 --- a/Swiften/Network/PlatformDomainNameServiceQuery.cpp +++ b/Swiften/Network/PlatformDomainNameServiceQuery.cpp @@ -1,5 +1,5 @@ /* - * Copyright (c) 2010-2015 Isode Limited. + * Copyright (c) 2010-2016 Isode Limited. * All rights reserved. * See the COPYING file for more information. */ @@ -29,7 +29,6 @@ #include <Swiften/Base/ByteArray.h> #include <Swiften/EventLoop/EventLoop.h> -#include <Swiften/Base/foreach.h> #include <Swiften/Base/BoostRandomGenerator.h> #include <Swiften/Base/Log.h> #include <Swiften/Network/PlatformDomainNameResolver.h> diff --git a/Swiften/Network/UnixProxyProvider.cpp b/Swiften/Network/UnixProxyProvider.cpp index 6c23add..e6afa3d 100644 --- a/Swiften/Network/UnixProxyProvider.cpp +++ b/Swiften/Network/UnixProxyProvider.cpp @@ -12,7 +12,6 @@ #include <Swiften/Network/UnixProxyProvider.h> -#include <Swiften/Base/foreach.h> #if defined(HAVE_GCONF) # include "Swiften/Network/GConfProxyProvider.h" #endif diff --git a/Swiften/Network/WindowsNetworkEnvironment.cpp b/Swiften/Network/WindowsNetworkEnvironment.cpp index 6ce41de..e90a5c6 100644 --- a/Swiften/Network/WindowsNetworkEnvironment.cpp +++ b/Swiften/Network/WindowsNetworkEnvironment.cpp @@ -22,7 +22,6 @@ #include <winsock2.h> #include <Swiften/Base/ByteArray.h> -#include <Swiften/Base/foreach.h> #include <Swiften/Network/HostAddress.h> #include <Swiften/Network/NetworkInterface.h> @@ -65,8 +64,8 @@ std::vector<NetworkInterface> WindowsNetworkEnvironment::getNetworkInterfaces() } } - for (std::map<std::string,NetworkInterface>::const_iterator i = interfaces.begin(); i != interfaces.end(); ++i) { - result.push_back(i->second); + for (const auto& interface : interfaces) { + result.push_back(interface.second); } return result; } diff --git a/Swiften/Parser/PayloadParsers/BytestreamsParser.cpp b/Swiften/Parser/PayloadParsers/BytestreamsParser.cpp index 8a0ecd2..405c593 100644 --- a/Swiften/Parser/PayloadParsers/BytestreamsParser.cpp +++ b/Swiften/Parser/PayloadParsers/BytestreamsParser.cpp @@ -1,5 +1,5 @@ /* - * Copyright (c) 2010 Isode Limited. + * Copyright (c) 2010-2016 Isode Limited. * All rights reserved. * See the COPYING file for more information. */ @@ -8,8 +8,6 @@ #include <boost/lexical_cast.hpp> -#include <Swiften/Base/foreach.h> - namespace Swift { BytestreamsParser::BytestreamsParser() : level(TopLevel) { diff --git a/Swiften/Parser/PayloadParsers/FormParser.cpp b/Swiften/Parser/PayloadParsers/FormParser.cpp index 5ea75c5..dff45df 100644 --- a/Swiften/Parser/PayloadParsers/FormParser.cpp +++ b/Swiften/Parser/PayloadParsers/FormParser.cpp @@ -7,8 +7,6 @@ #include <map> -#include <Swiften/Base/foreach.h> - namespace Swift { FormParser::FormParser() : level_(TopLevel), parsingItem_(false), parsingReported_(false), parsingOption_(false), hasReportedRef_(false){ @@ -190,15 +188,15 @@ void FormParser::handleEndElement(const std::string& element, const std::string& } else { if (currentPages_.size() > 0) { - foreach (std::shared_ptr<FormPage> page, currentPages_) { - foreach (std::string pageRef, page->getFieldRefs()) { + for (const auto& page : currentPages_) { + for (const auto& pageRef : page->getFieldRefs()) { if (pageRef == currentField_->getName()) { page->addField(currentField_); } } } - foreach (std::shared_ptr<FormSection> section, currentSections_) { - foreach (std::string sectionRef, section->getFieldRefs()) { + for (const auto& section : currentSections_) { + for (const auto& sectionRef : section->getFieldRefs()) { if (sectionRef == currentField_->getName()) { section->addField(currentField_); } diff --git a/Swiften/Parser/PayloadParsers/FullPayloadParserFactoryCollection.cpp b/Swiften/Parser/PayloadParsers/FullPayloadParserFactoryCollection.cpp index a231397..b67556e 100644 --- a/Swiften/Parser/PayloadParsers/FullPayloadParserFactoryCollection.cpp +++ b/Swiften/Parser/PayloadParsers/FullPayloadParserFactoryCollection.cpp @@ -6,7 +6,6 @@ #include <Swiften/Parser/PayloadParsers/FullPayloadParserFactoryCollection.h> -#include <Swiften/Base/foreach.h> #include <Swiften/Elements/BlockListPayload.h> #include <Swiften/Elements/BlockPayload.h> #include <Swiften/Elements/UnblockPayload.h> @@ -167,7 +166,7 @@ FullPayloadParserFactoryCollection::FullPayloadParserFactoryCollection() { factories_.push_back(std::make_shared<GenericPayloadParserFactory2<CarbonsSentParser> >("sent", "urn:xmpp:carbons:2", this)); factories_.push_back(std::make_shared<GenericPayloadParserFactory<CarbonsPrivateParser> >("private", "urn:xmpp:carbons:2")); - foreach(std::shared_ptr<PayloadParserFactory> factory, factories_) { + for (auto& factory : factories_) { addFactory(factory.get()); } defaultFactory_ = new RawXMLPayloadParserFactory(); @@ -177,7 +176,7 @@ FullPayloadParserFactoryCollection::FullPayloadParserFactoryCollection() { FullPayloadParserFactoryCollection::~FullPayloadParserFactoryCollection() { setDefaultFactory(nullptr); delete defaultFactory_; - foreach(std::shared_ptr<PayloadParserFactory> factory, factories_) { + for (auto& factory : factories_) { removeFactory(factory.get()); } } diff --git a/Swiften/Parser/PayloadParsers/IBBParser.cpp b/Swiften/Parser/PayloadParsers/IBBParser.cpp index 4a6b841..9b6babc 100644 --- a/Swiften/Parser/PayloadParsers/IBBParser.cpp +++ b/Swiften/Parser/PayloadParsers/IBBParser.cpp @@ -8,7 +8,6 @@ #include <boost/lexical_cast.hpp> -#include <Swiften/Base/foreach.h> #include <Swiften/StringCodecs/Base64.h> namespace Swift { diff --git a/Swiften/Parser/PayloadParsers/MUCAdminPayloadParser.cpp b/Swiften/Parser/PayloadParsers/MUCAdminPayloadParser.cpp index 1fbff1c..bac2a78 100644 --- a/Swiften/Parser/PayloadParsers/MUCAdminPayloadParser.cpp +++ b/Swiften/Parser/PayloadParsers/MUCAdminPayloadParser.cpp @@ -1,5 +1,5 @@ /* - * Copyright (c) 2011 Isode Limited. + * Copyright (c) 2011-2016 Isode Limited. * All rights reserved. * See the COPYING file for more information. */ @@ -8,13 +8,12 @@ #include <boost/lexical_cast.hpp> -#include <Swiften/Base/foreach.h> #include <Swiften/Elements/MUCOccupant.h> namespace Swift { void MUCAdminPayloadParser::handleTree(ParserElement::ref root) { - foreach (ParserElement::ref itemElement, root->getChildren("item", "http://jabber.org/protocol/muc#admin")) { + for (const auto& itemElement : root->getChildren("item", "http://jabber.org/protocol/muc#admin")) { MUCItem item = MUCItemParser::itemFromTree(itemElement); getPayloadInternal()->addItem(item); } diff --git a/Swiften/Parser/PayloadParsers/MUCDestroyPayloadParser.cpp b/Swiften/Parser/PayloadParsers/MUCDestroyPayloadParser.cpp index 95ff8c5..46bc9c5 100644 --- a/Swiften/Parser/PayloadParsers/MUCDestroyPayloadParser.cpp +++ b/Swiften/Parser/PayloadParsers/MUCDestroyPayloadParser.cpp @@ -1,13 +1,11 @@ /* - * Copyright (c) 2011 Isode Limited. + * Copyright (c) 2011-2016 Isode Limited. * All rights reserved. * See the COPYING file for more information. */ #include <Swiften/Parser/PayloadParsers/MUCDestroyPayloadParser.h> -#include <Swiften/Base/foreach.h> - namespace Swift { void MUCDestroyPayloadParser::handleTree(ParserElement::ref root) { diff --git a/Swiften/Parser/PayloadParsers/MUCUserPayloadParser.cpp b/Swiften/Parser/PayloadParsers/MUCUserPayloadParser.cpp index 00a5d4f..b1bf78e 100644 --- a/Swiften/Parser/PayloadParsers/MUCUserPayloadParser.cpp +++ b/Swiften/Parser/PayloadParsers/MUCUserPayloadParser.cpp @@ -8,7 +8,6 @@ #include <boost/lexical_cast.hpp> -#include <Swiften/Base/foreach.h> #include <Swiften/Elements/MUCOccupant.h> #include <Swiften/Parser/PayloadParserFactory.h> #include <Swiften/Parser/PayloadParserFactoryCollection.h> @@ -17,7 +16,7 @@ namespace Swift { void MUCUserPayloadParser::handleTree(ParserElement::ref root) { - foreach (ParserElement::ref child, root->getAllChildren()) { + for (const auto& child : root->getAllChildren()) { if (child->getName() == "item" && child->getNamespace() == root->getNamespace()) { MUCItem item = MUCItemParser::itemFromTree(child); getPayloadInternal()->addItem(item); diff --git a/Swiften/Parser/PayloadParsers/StreamInitiationParser.cpp b/Swiften/Parser/PayloadParsers/StreamInitiationParser.cpp index 1b0c95d..ad66b3f 100644 --- a/Swiften/Parser/PayloadParsers/StreamInitiationParser.cpp +++ b/Swiften/Parser/PayloadParsers/StreamInitiationParser.cpp @@ -13,8 +13,6 @@ #include <Swiften/Parser/PayloadParsers/FormParserFactory.h> #include <Swiften/Parser/PayloadParsers/FormParser.h> -#include <Swiften/Base/foreach.h> - #define FILE_TRANSFER_NS "http://jabber.org/protocol/si/profile/file-transfer" #define FEATURE_NEG_NS "http://jabber.org/protocol/feature-neg" @@ -93,7 +91,7 @@ void StreamInitiationParser::handleEndElement(const std::string& element, const FormField::ref field = std::dynamic_pointer_cast<FormField>(form->getField("stream-method")); if (field) { if (form->getType() == Form::FormType) { - foreach (const FormField::Option& option, field->getOptions()) { + for (const auto& option : field->getOptions()) { getPayloadInternal()->addProvidedMethod(option.value); } } diff --git a/Swiften/Parser/PayloadParsers/UnitTest/MUCUserPayloadParserTest.cpp b/Swiften/Parser/PayloadParsers/UnitTest/MUCUserPayloadParserTest.cpp index 18597bd..f0cf68d 100644 --- a/Swiften/Parser/PayloadParsers/UnitTest/MUCUserPayloadParserTest.cpp +++ b/Swiften/Parser/PayloadParsers/UnitTest/MUCUserPayloadParserTest.cpp @@ -7,7 +7,6 @@ #include <cppunit/extensions/HelperMacros.h> #include <cppunit/extensions/TestFactoryRegistry.h> -#include <Swiften/Base/foreach.h> #include <Swiften/Elements/MUCDestroyPayload.h> #include <Swiften/Parser/PayloadParsers/MUCUserPayloadParser.h> #include <Swiften/Parser/PayloadParsers/UnitTest/PayloadsParserTester.h> @@ -36,7 +35,7 @@ class MUCUserPayloadParserTest : public CppUnit::TestFixture MUCUserPayload::ref payload = std::dynamic_pointer_cast<MUCUserPayload>(parser.getPayload()); - foreach (MUCUserPayload::StatusCode status, payload->getStatusCodes()) { + for (const auto& status : payload->getStatusCodes()) { if (status.code == 110) found110 = true; if (status.code == 210) found210 = true; } diff --git a/Swiften/Parser/PayloadParsers/VCardParser.cpp b/Swiften/Parser/PayloadParsers/VCardParser.cpp index 7867b2c..f8779d1 100644 --- a/Swiften/Parser/PayloadParsers/VCardParser.cpp +++ b/Swiften/Parser/PayloadParsers/VCardParser.cpp @@ -9,7 +9,6 @@ #include <cassert> #include <Swiften/Base/DateTime.h> -#include <Swiften/Base/foreach.h> #include <Swiften/Parser/SerializingParser.h> #include <Swiften/StringCodecs/Base64.h> @@ -282,7 +281,7 @@ void VCardParser::handleCharacterData(const std::string& text) { std::string VCardParser::getElementHierarchy() const { std::string result; - foreach(const std::string& element, elementStack_) { + for (const auto& element : elementStack_) { result += "/" + element; } return result; diff --git a/Swiften/Parser/SerializingParser.cpp b/Swiften/Parser/SerializingParser.cpp index ad794aa..85b0dd4 100644 --- a/Swiften/Parser/SerializingParser.cpp +++ b/Swiften/Parser/SerializingParser.cpp @@ -9,7 +9,6 @@ #include <cassert> #include <memory> -#include <Swiften/Base/foreach.h> #include <Swiften/Serializer/XML/XMLTextNode.h> namespace Swift { @@ -20,7 +19,7 @@ SerializingParser::SerializingParser() { void SerializingParser::handleStartElement(const std::string& tag, const std::string& ns, const AttributeMap& attributes) { std::shared_ptr<XMLElement> element = std::make_shared<XMLElement>(tag, ns); // FIXME: Ignoring attribute namespace - foreach (const AttributeMap::Entry& e, attributes.getEntries()) { + for (const auto& e : attributes.getEntries()) { element->setAttribute(e.getAttribute().getName(), e.getValue()); } diff --git a/Swiften/Parser/Tree/TreeReparser.cpp b/Swiften/Parser/Tree/TreeReparser.cpp index 7fc74cf..6993d73 100644 --- a/Swiften/Parser/Tree/TreeReparser.cpp +++ b/Swiften/Parser/Tree/TreeReparser.cpp @@ -11,7 +11,6 @@ #include <boost/lexical_cast.hpp> -#include <Swiften/Base/foreach.h> #include <Swiften/Elements/MUCOccupant.h> #include <Swiften/Parser/PayloadParser.h> #include <Swiften/Parser/PayloadParserFactory.h> @@ -31,7 +30,7 @@ std::shared_ptr<Payload> TreeReparser::parseTree(ParserElement::ref root, Payloa if (current.second) { stack.push_back(ElementState(current.first, false)); parser->handleStartElement(current.first->getName(), current.first->getNamespace(), current.first->getAttributes()); - foreach(ParserElement::ref child, current.first->getAllChildren()) { + for (const auto& child : current.first->getAllChildren()) { stack.push_back(ElementState(child, true)); } } else { diff --git a/Swiften/Presence/DirectedPresenceSender.cpp b/Swiften/Presence/DirectedPresenceSender.cpp index c1ce3a0..c1134c7 100644 --- a/Swiften/Presence/DirectedPresenceSender.cpp +++ b/Swiften/Presence/DirectedPresenceSender.cpp @@ -6,8 +6,6 @@ #include <Swiften/Presence/DirectedPresenceSender.h> -#include <Swiften/Base/foreach.h> - namespace Swift { DirectedPresenceSender::DirectedPresenceSender(PresenceSender* sender) : sender(sender) { @@ -22,7 +20,7 @@ void DirectedPresenceSender::sendPresence(std::shared_ptr<Presence> presence) { if (!presence->getTo().isValid()) { std::shared_ptr<Presence> presenceCopy(new Presence(*presence)); - foreach(const JID& jid, directedPresenceReceivers) { + for (const auto& jid : directedPresenceReceivers) { presenceCopy->setTo(jid); sender->sendPresence(presenceCopy); } diff --git a/Swiften/Presence/SubscriptionManager.cpp b/Swiften/Presence/SubscriptionManager.cpp index 8de152c..83009e9 100644 --- a/Swiften/Presence/SubscriptionManager.cpp +++ b/Swiften/Presence/SubscriptionManager.cpp @@ -1,5 +1,5 @@ /* - * Copyright (c) 2010 Isode Limited. + * Copyright (c) 2010-2016 Isode Limited. * All rights reserved. * See the COPYING file for more information. */ @@ -8,7 +8,6 @@ #include <boost/bind.hpp> -#include <Swiften/Base/foreach.h> #include <Swiften/Client/StanzaChannel.h> namespace Swift { diff --git a/Swiften/QA/ConcurrentFileTransferTest/ConcurrentFileTransferTest.cpp b/Swiften/QA/ConcurrentFileTransferTest/ConcurrentFileTransferTest.cpp index 8122c63..664a87b 100644 --- a/Swiften/QA/ConcurrentFileTransferTest/ConcurrentFileTransferTest.cpp +++ b/Swiften/QA/ConcurrentFileTransferTest/ConcurrentFileTransferTest.cpp @@ -14,7 +14,6 @@ #include <Swiften/Base/BoostRandomGenerator.h> #include <Swiften/Base/Debug.h> #include <Swiften/Base/Log.h> -#include <Swiften/Base/foreach.h> #include <Swiften/Base/sleep.h> #include <Swiften/Client/Client.h> #include <Swiften/Client/ClientXMLTracer.h> diff --git a/Swiften/QA/FileTransferTest/FileTransferTest.cpp b/Swiften/QA/FileTransferTest/FileTransferTest.cpp index 4cf4048..b627b30 100644 --- a/Swiften/QA/FileTransferTest/FileTransferTest.cpp +++ b/Swiften/QA/FileTransferTest/FileTransferTest.cpp @@ -13,7 +13,6 @@ #include <Swiften/Base/BoostRandomGenerator.h> #include <Swiften/Base/Debug.h> #include <Swiften/Base/Log.h> -#include <Swiften/Base/foreach.h> #include <Swiften/Base/sleep.h> #include <Swiften/Client/Client.h> #include <Swiften/Client/ClientXMLTracer.h> @@ -346,7 +345,7 @@ int main(int argc, char** argv) { std::vector<std::string> configurations; std::string configs_env = std::string(getenv("SWIFT_FILETRANSFERTEST_CONFIG")); boost::split(configurations, configs_env, boost::is_any_of("|")); - foreach(const std::string& config, configurations) { + for (const auto& config : configurations) { std::vector<std::string> split_config; boost::split(split_config, config, boost::is_any_of(":")); assert(split_config.size() == 2); @@ -360,8 +359,7 @@ int main(int argc, char** argv) { } } - typedef std::pair<int, int> IntPair; - foreach(IntPair failedTest, failedTestPairs) { + for (auto&& failedTest : failedTestPairs) { std::cout << "Failed test: " << "( " << failedTest.first << ", " << failedTest.second << ") " << std::endl; } } @@ -377,8 +375,7 @@ int main(int argc, char** argv) { } } - typedef std::pair<int, int> IntPair; - foreach(IntPair failedTest, failedTestPairs) { + for (auto&& failedTest : failedTestPairs) { std::cout << "Failed test: " << "( " << failedTest.first << ", " << failedTest.second << ") " << std::endl; } } diff --git a/Swiften/QA/ProxyProviderTest/ProxyProviderTest.cpp b/Swiften/QA/ProxyProviderTest/ProxyProviderTest.cpp index 2b6bfa8..53f9e60 100644 --- a/Swiften/QA/ProxyProviderTest/ProxyProviderTest.cpp +++ b/Swiften/QA/ProxyProviderTest/ProxyProviderTest.cpp @@ -12,7 +12,6 @@ #include <iostream> -#include <Swiften/Base/foreach.h> #include <Swiften/Network/PlatformProxyProvider.h> using namespace Swift; diff --git a/Swiften/Queries/IQRouter.cpp b/Swiften/Queries/IQRouter.cpp index e28c2f4..286b65f 100644 --- a/Swiften/Queries/IQRouter.cpp +++ b/Swiften/Queries/IQRouter.cpp @@ -9,7 +9,6 @@ #include <boost/bind.hpp> #include <Swiften/Base/Algorithm.h> -#include <Swiften/Base/foreach.h> #include <Swiften/Elements/ErrorPayload.h> #include <Swiften/Queries/IQChannel.h> #include <Swiften/Queries/IQHandler.h> @@ -53,7 +52,7 @@ void IQRouter::handleIQ(std::shared_ptr<IQ> iq) { } void IQRouter::processPendingRemoves() { - foreach(std::shared_ptr<IQHandler> handler, queuedRemoves_) { + for (auto&& handler : queuedRemoves_) { erase(handlers_, handler); } queuedRemoves_.clear(); diff --git a/Swiften/Roster/XMPPRosterController.cpp b/Swiften/Roster/XMPPRosterController.cpp index 57b0645..8ee9755 100644 --- a/Swiften/Roster/XMPPRosterController.cpp +++ b/Swiften/Roster/XMPPRosterController.cpp @@ -9,7 +9,6 @@ #include <boost/bind.hpp> #include <Swiften/Base/Log.h> -#include <Swiften/Base/foreach.h> #include <Swiften/Elements/RosterItemPayload.h> #include <Swiften/Queries/IQRouter.h> #include <Swiften/Roster/GetRosterRequest.h> @@ -51,7 +50,7 @@ void XMPPRosterController::requestRoster() { void XMPPRosterController::handleRosterReceived(std::shared_ptr<RosterPayload> rosterPayload, bool initial, std::shared_ptr<RosterPayload> previousRoster) { if (rosterPayload) { - foreach(const RosterItemPayload& item, rosterPayload->getItems()) { + for (const auto& item : rosterPayload->getItems()) { //Don't worry about the updated case, the XMPPRoster sorts that out. if (item.getSubscription() == RosterItemPayload::Remove) { xmppRoster_->removeContact(item.getJID()); @@ -62,7 +61,7 @@ void XMPPRosterController::handleRosterReceived(std::shared_ptr<RosterPayload> r } else if (previousRoster) { // The cached version hasn't changed; emit all items - foreach(const RosterItemPayload& item, previousRoster->getItems()) { + for (const auto& item : previousRoster->getItems()) { if (item.getSubscription() != RosterItemPayload::Remove) { xmppRoster_->addContact(item.getJID(), item.getName(), item.getGroups(), item.getSubscription()); } @@ -83,7 +82,7 @@ void XMPPRosterController::saveRoster(const std::string& version) { std::vector<XMPPRosterItem> items = xmppRoster_->getItems(); std::shared_ptr<RosterPayload> roster(new RosterPayload()); roster->setVersion(version); - foreach(const XMPPRosterItem& item, items) { + for (const auto& item : items) { roster->addItem(RosterItemPayload(item.getJID(), item.getName(), item.getSubscription(), item.getGroups())); } rosterStorage_->setRoster(roster); diff --git a/Swiften/Roster/XMPPRosterImpl.cpp b/Swiften/Roster/XMPPRosterImpl.cpp index 9a2ea7a..74f634f 100644 --- a/Swiften/Roster/XMPPRosterImpl.cpp +++ b/Swiften/Roster/XMPPRosterImpl.cpp @@ -1,13 +1,11 @@ /* - * Copyright (c) 2010-2015 Isode Limited. + * Copyright (c) 2010-2016 Isode Limited. * All rights reserved. * See the COPYING file for more information. */ #include <Swiften/Roster/XMPPRosterImpl.h> -#include <Swiften/Base/foreach.h> - namespace Swift { XMPPRosterImpl::XMPPRosterImpl() { @@ -78,7 +76,7 @@ RosterItemPayload::Subscription XMPPRosterImpl::getSubscriptionStateForJID(const std::vector<XMPPRosterItem> XMPPRosterImpl::getItems() const { std::vector<XMPPRosterItem> result; - foreach(const RosterMap::value_type& entry, entries_) { + for (const auto& entry : entries_) { result.push_back(entry.second); } return result; @@ -96,7 +94,7 @@ boost::optional<XMPPRosterItem> XMPPRosterImpl::getItem(const JID& jid) const { std::set<std::string> XMPPRosterImpl::getGroups() const { std::set<std::string> result; - foreach(const RosterMap::value_type& entry, entries_) { + for (const auto& entry : entries_) { std::vector<std::string> groups = entry.second.getGroups(); result.insert(groups.begin(), groups.end()); } diff --git a/Swiften/Serializer/PayloadSerializers/BytestreamsSerializer.cpp b/Swiften/Serializer/PayloadSerializers/BytestreamsSerializer.cpp index 93eab75..78bb0eb 100644 --- a/Swiften/Serializer/PayloadSerializers/BytestreamsSerializer.cpp +++ b/Swiften/Serializer/PayloadSerializers/BytestreamsSerializer.cpp @@ -10,7 +10,6 @@ #include <boost/lexical_cast.hpp> -#include <Swiften/Base/foreach.h> #include <Swiften/Serializer/PayloadSerializerCollection.h> #include <Swiften/Serializer/XML/XMLElement.h> @@ -22,7 +21,7 @@ BytestreamsSerializer::BytestreamsSerializer() { std::string BytestreamsSerializer::serializePayload(std::shared_ptr<Bytestreams> bytestreams) const { XMLElement queryElement("query", "http://jabber.org/protocol/bytestreams"); queryElement.setAttribute("sid", bytestreams->getStreamID()); - foreach(const Bytestreams::StreamHost& streamHost, bytestreams->getStreamHosts()) { + for (const auto& streamHost : bytestreams->getStreamHosts()) { std::shared_ptr<XMLElement> streamHostElement(new XMLElement("streamhost")); streamHostElement->setAttribute("host", streamHost.host); streamHostElement->setAttribute("jid", streamHost.jid.toString()); diff --git a/Swiften/Serializer/PayloadSerializers/CommandSerializer.cpp b/Swiften/Serializer/PayloadSerializers/CommandSerializer.cpp index e1dd6ed..25a70f6 100644 --- a/Swiften/Serializer/PayloadSerializers/CommandSerializer.cpp +++ b/Swiften/Serializer/PayloadSerializers/CommandSerializer.cpp @@ -8,7 +8,6 @@ #include <memory> -#include <Swiften/Base/foreach.h> #include <Swiften/Serializer/PayloadSerializers/FormSerializer.h> #include <Swiften/Serializer/XML/XMLElement.h> #include <Swiften/Serializer/XML/XMLRawTextNode.h> @@ -50,14 +49,14 @@ std::string CommandSerializer::serializePayload(std::shared_ptr<Command> command actions += " execute='" + executeAction + "'"; } actions += ">"; - foreach (Command::Action action, command->getAvailableActions()) { + for (const auto& action : command->getAvailableActions()) { actions += "<" + actionToString(action) + "/>"; } actions += "</actions>"; commandElement.addNode(std::make_shared<XMLRawTextNode>(actions)); } - foreach (Command::Note note, command->getNotes()) { + for (const auto& note : command->getNotes()) { std::shared_ptr<XMLElement> noteElement(new XMLElement("note")); std::string type; switch (note.type) { diff --git a/Swiften/Serializer/PayloadSerializers/DiscoInfoSerializer.cpp b/Swiften/Serializer/PayloadSerializers/DiscoInfoSerializer.cpp index 73e2585..06cad2b 100644 --- a/Swiften/Serializer/PayloadSerializers/DiscoInfoSerializer.cpp +++ b/Swiften/Serializer/PayloadSerializers/DiscoInfoSerializer.cpp @@ -8,7 +8,6 @@ #include <memory> -#include <Swiften/Base/foreach.h> #include <Swiften/Serializer/PayloadSerializers/FormSerializer.h> #include <Swiften/Serializer/XML/XMLElement.h> #include <Swiften/Serializer/XML/XMLRawTextNode.h> @@ -23,7 +22,7 @@ std::string DiscoInfoSerializer::serializePayload(std::shared_ptr<DiscoInfo> dis if (!discoInfo->getNode().empty()) { queryElement.setAttribute("node", discoInfo->getNode()); } - foreach(const DiscoInfo::Identity& identity, discoInfo->getIdentities()) { + for (const auto& identity : discoInfo->getIdentities()) { std::shared_ptr<XMLElement> identityElement(new XMLElement("identity")); if (!identity.getLanguage().empty()) { identityElement->setAttribute("xml:lang", identity.getLanguage()); @@ -33,12 +32,12 @@ std::string DiscoInfoSerializer::serializePayload(std::shared_ptr<DiscoInfo> dis identityElement->setAttribute("type", identity.getType()); queryElement.addNode(identityElement); } - foreach(const std::string& feature, discoInfo->getFeatures()) { + for (const auto& feature : discoInfo->getFeatures()) { std::shared_ptr<XMLElement> featureElement(new XMLElement("feature")); featureElement->setAttribute("var", feature); queryElement.addNode(featureElement); } - foreach(const Form::ref extension, discoInfo->getExtensions()) { + for (const auto& extension : discoInfo->getExtensions()) { queryElement.addNode(std::make_shared<XMLRawTextNode>(FormSerializer().serialize(extension))); } return queryElement.serialize(); diff --git a/Swiften/Serializer/PayloadSerializers/DiscoItemsSerializer.cpp b/Swiften/Serializer/PayloadSerializers/DiscoItemsSerializer.cpp index 1b734dc..a8eafef 100644 --- a/Swiften/Serializer/PayloadSerializers/DiscoItemsSerializer.cpp +++ b/Swiften/Serializer/PayloadSerializers/DiscoItemsSerializer.cpp @@ -8,7 +8,6 @@ #include <memory> -#include <Swiften/Base/foreach.h> #include <Swiften/Serializer/XML/XMLElement.h> namespace Swift { @@ -21,7 +20,7 @@ std::string DiscoItemsSerializer::serializePayload(std::shared_ptr<DiscoItems> d if (!discoItems->getNode().empty()) { queryElement.setAttribute("node", discoItems->getNode()); } - foreach(const DiscoItems::Item& item, discoItems->getItems()) { + for (const auto& item : discoItems->getItems()) { std::shared_ptr<XMLElement> itemElement(new XMLElement("item")); itemElement->setAttribute("name", item.getName()); itemElement->setAttribute("jid", item.getJID()); diff --git a/Swiften/Serializer/PayloadSerializers/FormSerializer.cpp b/Swiften/Serializer/PayloadSerializers/FormSerializer.cpp index ed010b4..f723ead 100644 --- a/Swiften/Serializer/PayloadSerializers/FormSerializer.cpp +++ b/Swiften/Serializer/PayloadSerializers/FormSerializer.cpp @@ -11,7 +11,6 @@ #include <Swiften/Base/Algorithm.h> #include <Swiften/Base/String.h> -#include <Swiften/Base/foreach.h> #include <Swiften/Serializer/XML/XMLRawTextNode.h> #include <Swiften/Serializer/XML/XMLTextNode.h> @@ -52,33 +51,33 @@ std::string FormSerializer::serializePayload(std::shared_ptr<Form> form) const if (!form->getInstructions().empty()) { multiLineify(form->getInstructions(), "instructions", formElement); } - foreach(std::shared_ptr<FormPage> page, form->getPages()) { + for (const auto& page : form->getPages()) { formElement->addNode(pageToXML(page)); } - foreach(std::shared_ptr<FormField> field, form->getFields()) { + for (const auto& field : form->getFields()) { formElement->addNode(fieldToXML(field, true)); } if (!form->getReportedFields().empty()) { std::shared_ptr<XMLElement> reportedElement(new XMLElement("reported")); - foreach(FormField::ref field, form->getReportedFields()) { + for (const auto& field : form->getReportedFields()) { reportedElement->addNode(fieldToXML(field, true)); } formElement->addNode(reportedElement); } - foreach(Form::FormItem item, form->getItems()) { + for (const auto& item : form->getItems()) { std::shared_ptr<XMLElement> itemElement(new XMLElement("item")); - foreach(FormField::ref field, item) { + for (const auto& field : item) { itemElement->addNode(fieldToXML(field, false)); } formElement->addNode(itemElement); } - foreach(const FormText::text text, form->getTextElements()) { + for (const auto& text : form->getTextElements()) { formElement->addNode(textToXML(text)); } - foreach (std::shared_ptr<FormField> field, fields_) { + for (const auto& field : fields_) { formElement->addNode(fieldToXML(field,true)); } @@ -103,17 +102,18 @@ std::shared_ptr<XMLElement> FormSerializer::pageToXML(std::shared_ptr<FormPage> if (!page->getLabel().empty()) { pageElement->setAttribute("label", page->getLabel()); } - foreach(const FormText::text text, page->getTextElements()) { + for (const auto& text : page->getTextElements()) { pageElement->addNode(textToXML(text)); } - foreach (const std::shared_ptr<FormField> field, page->getFields()) { + for (const auto& field : page->getFields()) { pageElement->addNode(fieldRefToXML(field->getName())); fields_.push_back(field); } - foreach(const FormReportedRef::ref reportedRef, page->getReportedRefs()) { + for (const auto& reportedRef: page->getReportedRefs()) { + (void)reportedRef; pageElement->addNode(std::make_shared<XMLElement>("reportedref")); } - foreach(const FormSection::section section, page->getChildSections()) { + for (const auto& section : page->getChildSections()) { pageElement->addNode(sectionToXML(section)); } return pageElement; @@ -124,17 +124,18 @@ std::shared_ptr<XMLElement> FormSerializer::sectionToXML(std::shared_ptr<FormSec if (!section->getLabel().empty()) { sectionElement->setAttribute("label", section->getLabel()); } - foreach(const FormText::text text, section->getTextElements()) { + for (const auto& text : section->getTextElements()) { sectionElement->addNode(textToXML(text)); } - foreach(const std::shared_ptr<FormField> field, section->getFields()) { + for (const auto& field : section->getFields()) { sectionElement->addNode(fieldRefToXML(field->getName())); fields_.push_back(field); } - foreach(const FormReportedRef::ref reportedRef, section->getReportedRefs()) { + for (const auto& reportedRef : section->getReportedRefs()) { + (void)reportedRef; sectionElement->addNode(std::make_shared<XMLElement>("reportedref")); } - foreach(const FormSection::section childSection, section->getChildSections()) { + for (const auto& childSection : section->getChildSections()) { sectionElement->addNode(sectionToXML(childSection)); } return sectionElement; @@ -175,13 +176,13 @@ std::shared_ptr<XMLElement> FormSerializer::fieldToXML(std::shared_ptr<FormField if (!fieldType.empty() && withTypeAttribute) { fieldElement->setAttribute("type", fieldType); } - foreach (const std::string& value, field->getValues()) { + for (const auto& value : field->getValues()) { std::shared_ptr<XMLElement> valueElement = std::make_shared<XMLElement>("value"); valueElement->addNode(std::make_shared<XMLTextNode>(value)); fieldElement->addNode(valueElement); } - foreach (const FormField::Option& option, field->getOptions()) { + for (const auto& option : field->getOptions()) { std::shared_ptr<XMLElement> optionElement(new XMLElement("option")); if (!option.label.empty()) { optionElement->setAttribute("label", option.label); @@ -199,7 +200,7 @@ void FormSerializer::multiLineify(const std::string& text, const std::string& el std::string unRdText(text); erase(unRdText, '\r'); std::vector<std::string> lines = String::split(unRdText, '\n'); - foreach (std::string line, lines) { + for (const auto& line : lines) { std::shared_ptr<XMLElement> lineElement(new XMLElement(elementName)); lineElement->addNode(std::make_shared<XMLTextNode>(line)); element->addNode(lineElement); diff --git a/Swiften/Serializer/PayloadSerializers/FullPayloadSerializerCollection.cpp b/Swiften/Serializer/PayloadSerializers/FullPayloadSerializerCollection.cpp index 175de1e..cf0b54c 100644 --- a/Swiften/Serializer/PayloadSerializers/FullPayloadSerializerCollection.cpp +++ b/Swiften/Serializer/PayloadSerializers/FullPayloadSerializerCollection.cpp @@ -6,7 +6,6 @@ #include <Swiften/Serializer/PayloadSerializers/FullPayloadSerializerCollection.h> -#include <Swiften/Base/foreach.h> #include <Swiften/Elements/BlockListPayload.h> #include <Swiften/Elements/BlockPayload.h> #include <Swiften/Elements/UnblockPayload.h> @@ -165,13 +164,13 @@ FullPayloadSerializerCollection::FullPayloadSerializerCollection() { serializers_.push_back(new IsodeIQDelegationSerializer(this)); - foreach(PayloadSerializer* serializer, serializers_) { + for (auto serializer : serializers_) { addSerializer(serializer); } } FullPayloadSerializerCollection::~FullPayloadSerializerCollection() { - foreach(PayloadSerializer* serializer, serializers_) { + for (auto serializer : serializers_) { removeSerializer(serializer); delete serializer; } diff --git a/Swiften/Serializer/PayloadSerializers/IBBSerializer.cpp b/Swiften/Serializer/PayloadSerializers/IBBSerializer.cpp index 36d82a2..e41ff8c 100644 --- a/Swiften/Serializer/PayloadSerializers/IBBSerializer.cpp +++ b/Swiften/Serializer/PayloadSerializers/IBBSerializer.cpp @@ -11,7 +11,6 @@ #include <boost/lexical_cast.hpp> -#include <Swiften/Base/foreach.h> #include <Swiften/Serializer/XML/XMLElement.h> #include <Swiften/Serializer/XML/XMLTextNode.h> #include <Swiften/StringCodecs/Base64.h> diff --git a/Swiften/Serializer/PayloadSerializers/InBandRegistrationPayloadSerializer.cpp b/Swiften/Serializer/PayloadSerializers/InBandRegistrationPayloadSerializer.cpp index 31b023f..04b7c56 100644 --- a/Swiften/Serializer/PayloadSerializers/InBandRegistrationPayloadSerializer.cpp +++ b/Swiften/Serializer/PayloadSerializers/InBandRegistrationPayloadSerializer.cpp @@ -8,7 +8,6 @@ #include <memory> -#include <Swiften/Base/foreach.h> #include <Swiften/Serializer/PayloadSerializers/FormSerializer.h> #include <Swiften/Serializer/XML/XMLElement.h> #include <Swiften/Serializer/XML/XMLRawTextNode.h> diff --git a/Swiften/Serializer/PayloadSerializers/JingleContentPayloadSerializer.cpp b/Swiften/Serializer/PayloadSerializers/JingleContentPayloadSerializer.cpp index 02e0f2a..39eb149 100644 --- a/Swiften/Serializer/PayloadSerializers/JingleContentPayloadSerializer.cpp +++ b/Swiften/Serializer/PayloadSerializers/JingleContentPayloadSerializer.cpp @@ -15,7 +15,6 @@ #include <memory> #include <Swiften/Base/Log.h> -#include <Swiften/Base/foreach.h> #include <Swiften/Serializer/PayloadSerializers/JingleFileTransferDescriptionSerializer.h> #include <Swiften/Serializer/PayloadSerializers/JingleIBBTransportPayloadSerializer.h> #include <Swiften/Serializer/PayloadSerializers/JingleS5BTransportPayloadSerializer.h> @@ -38,7 +37,7 @@ std::string JingleContentPayloadSerializer::serializePayload(std::shared_ptr<Jin JingleFileTransferDescriptionSerializer ftSerializer; JingleFileTransferDescription::ref filetransfer; - foreach(JingleDescription::ref desc, payload->getDescriptions()) { + for (auto&& desc : payload->getDescriptions()) { if ((filetransfer = std::dynamic_pointer_cast<JingleFileTransferDescription>(desc))) { payloadXML.addNode(std::make_shared<XMLRawTextNode>(ftSerializer.serializePayload(filetransfer))); } @@ -54,7 +53,7 @@ std::string JingleContentPayloadSerializer::serializePayload(std::shared_ptr<Jin JingleS5BTransportPayloadSerializer s5bSerializer; JingleS5BTransportPayload::ref s5b; - foreach(JingleTransportPayload::ref transport, payload->getTransports()) { + for (auto&& transport : payload->getTransports()) { if ((ibb = std::dynamic_pointer_cast<JingleIBBTransportPayload>(transport))) { payloadXML.addNode(std::make_shared<XMLRawTextNode>(ibbSerializer.serializePayload(ibb))); } else if ((s5b = std::dynamic_pointer_cast<JingleS5BTransportPayload>(transport))) { diff --git a/Swiften/Serializer/PayloadSerializers/JingleFileTransferDescriptionSerializer.cpp b/Swiften/Serializer/PayloadSerializers/JingleFileTransferDescriptionSerializer.cpp index b002482..27e3b33 100644 --- a/Swiften/Serializer/PayloadSerializers/JingleFileTransferDescriptionSerializer.cpp +++ b/Swiften/Serializer/PayloadSerializers/JingleFileTransferDescriptionSerializer.cpp @@ -17,7 +17,6 @@ #include <boost/lexical_cast.hpp> #include <Swiften/Base/DateTime.h> -#include <Swiften/Base/foreach.h> #include <Swiften/Serializer/PayloadSerializers/JingleFileTransferFileInfoSerializer.h> #include <Swiften/Serializer/XML/XMLElement.h> #include <Swiften/Serializer/XML/XMLNode.h> diff --git a/Swiften/Serializer/PayloadSerializers/JingleFileTransferFileInfoSerializer.cpp b/Swiften/Serializer/PayloadSerializers/JingleFileTransferFileInfoSerializer.cpp index d78d7df..35a0a6e 100644 --- a/Swiften/Serializer/PayloadSerializers/JingleFileTransferFileInfoSerializer.cpp +++ b/Swiften/Serializer/PayloadSerializers/JingleFileTransferFileInfoSerializer.cpp @@ -11,7 +11,6 @@ #include <boost/lexical_cast.hpp> #include <Swiften/Base/DateTime.h> -#include <Swiften/Base/foreach.h> #include <Swiften/Serializer/XML/XMLElement.h> #include <Swiften/Serializer/XML/XMLRawTextNode.h> #include <Swiften/Serializer/XML/XMLTextNode.h> @@ -54,7 +53,7 @@ std::string JingleFileTransferFileInfoSerializer::serializePayload(std::shared_p fileElement.addNode(std::make_shared<XMLElement>("size", "", boost::lexical_cast<std::string>(fileInfo->getSize()))); } - foreach (JingleFileTransferFileInfo::HashElementMap::value_type hashElement, fileInfo->getHashes()) { + for (const auto& hashElement : fileInfo->getHashes()) { std::shared_ptr<XMLElement> hash = std::make_shared<XMLElement>("hash", "urn:xmpp:hashes:1", Base64::encode(hashElement.second)); hash->setAttribute("algo", hashElement.first); fileElement.addNode(hash); diff --git a/Swiften/Serializer/PayloadSerializers/JingleFileTransferHashSerializer.cpp b/Swiften/Serializer/PayloadSerializers/JingleFileTransferHashSerializer.cpp index 1f6ead7..7629721 100644 --- a/Swiften/Serializer/PayloadSerializers/JingleFileTransferHashSerializer.cpp +++ b/Swiften/Serializer/PayloadSerializers/JingleFileTransferHashSerializer.cpp @@ -16,7 +16,6 @@ #include <memory> #include <string> -#include <Swiften/Base/foreach.h> #include <Swiften/Serializer/PayloadSerializers/JingleFileTransferFileInfoSerializer.h> #include <Swiften/Serializer/XML/XMLElement.h> #include <Swiften/Serializer/XML/XMLNode.h> diff --git a/Swiften/Serializer/PayloadSerializers/JingleIBBTransportPayloadSerializer.cpp b/Swiften/Serializer/PayloadSerializers/JingleIBBTransportPayloadSerializer.cpp index 52e6c16..9930e44 100644 --- a/Swiften/Serializer/PayloadSerializers/JingleIBBTransportPayloadSerializer.cpp +++ b/Swiften/Serializer/PayloadSerializers/JingleIBBTransportPayloadSerializer.cpp @@ -16,7 +16,6 @@ #include <boost/lexical_cast.hpp> -#include <Swiften/Base/foreach.h> #include <Swiften/Serializer/XML/XMLElement.h> #include <Swiften/Serializer/XML/XMLNode.h> #include <Swiften/Serializer/XML/XMLRawTextNode.h> diff --git a/Swiften/Serializer/PayloadSerializers/JinglePayloadSerializer.cpp b/Swiften/Serializer/PayloadSerializers/JinglePayloadSerializer.cpp index 8b37929..aaac757 100644 --- a/Swiften/Serializer/PayloadSerializers/JinglePayloadSerializer.cpp +++ b/Swiften/Serializer/PayloadSerializers/JinglePayloadSerializer.cpp @@ -15,7 +15,6 @@ #include <memory> #include <Swiften/Base/Log.h> -#include <Swiften/Base/foreach.h> #include <Swiften/Elements/JingleContentPayload.h> #include <Swiften/Elements/JingleFileTransferDescription.h> #include <Swiften/Elements/JingleFileTransferHash.h> @@ -41,7 +40,7 @@ std::string JinglePayloadSerializer::serializePayload(std::shared_ptr<JinglePayl std::vector<std::shared_ptr<Payload> > payloads = payload->getPayloads(); if (!payloads.empty()) { - foreach(std::shared_ptr<Payload> subPayload, payloads) { + for (auto&& subPayload : payloads) { PayloadSerializer* serializer = serializers->getPayloadSerializer(subPayload); if (serializer) { jinglePayload.addNode(std::make_shared<XMLRawTextNode>(serializer->serialize(subPayload))); diff --git a/Swiften/Serializer/PayloadSerializers/JingleS5BTransportPayloadSerializer.cpp b/Swiften/Serializer/PayloadSerializers/JingleS5BTransportPayloadSerializer.cpp index 61447cd..5e74d8e 100644 --- a/Swiften/Serializer/PayloadSerializers/JingleS5BTransportPayloadSerializer.cpp +++ b/Swiften/Serializer/PayloadSerializers/JingleS5BTransportPayloadSerializer.cpp @@ -17,7 +17,6 @@ #include <boost/lexical_cast.hpp> #include <Swiften/Base/Log.h> -#include <Swiften/Base/foreach.h> #include <Swiften/Serializer/XML/XMLElement.h> #include <Swiften/Serializer/XML/XMLNode.h> #include <Swiften/Serializer/XML/XMLRawTextNode.h> @@ -35,7 +34,7 @@ std::string JingleS5BTransportPayloadSerializer::serializePayload(std::shared_pt payloadXML.setAttribute("dstaddr", payload->getDstAddr()); } - foreach(JingleS5BTransportPayload::Candidate candidate, payload->getCandidates()) { + for (const auto& candidate : payload->getCandidates()) { std::shared_ptr<XMLElement> candidateXML = std::make_shared<XMLElement>("candidate"); candidateXML->setAttribute("cid", candidate.cid); candidateXML->setAttribute("host", candidate.hostPort.getAddress().toString()); diff --git a/Swiften/Serializer/PayloadSerializers/MUCAdminPayloadSerializer.cpp b/Swiften/Serializer/PayloadSerializers/MUCAdminPayloadSerializer.cpp index 385c181..157c99e 100644 --- a/Swiften/Serializer/PayloadSerializers/MUCAdminPayloadSerializer.cpp +++ b/Swiften/Serializer/PayloadSerializers/MUCAdminPayloadSerializer.cpp @@ -9,7 +9,6 @@ #include <memory> #include <sstream> -#include <Swiften/Base/foreach.h> #include <Swiften/Serializer/PayloadSerializers/MUCItemSerializer.h> #include <Swiften/Serializer/XML/XMLElement.h> #include <Swiften/Serializer/XML/XMLTextNode.h> @@ -21,7 +20,7 @@ MUCAdminPayloadSerializer::MUCAdminPayloadSerializer() : GenericPayloadSerialize std::string MUCAdminPayloadSerializer::serializePayload(std::shared_ptr<MUCAdminPayload> payload) const { XMLElement mucElement("query", "http://jabber.org/protocol/muc#admin"); - foreach (const MUCItem& item, payload->getItems()) { + for (const auto& item : payload->getItems()) { mucElement.addNode(MUCItemSerializer::itemToElement(item)); } return mucElement.serialize(); diff --git a/Swiften/Serializer/PayloadSerializers/MUCDestroyPayloadSerializer.cpp b/Swiften/Serializer/PayloadSerializers/MUCDestroyPayloadSerializer.cpp index 3d807be..96116c7 100644 --- a/Swiften/Serializer/PayloadSerializers/MUCDestroyPayloadSerializer.cpp +++ b/Swiften/Serializer/PayloadSerializers/MUCDestroyPayloadSerializer.cpp @@ -8,7 +8,6 @@ #include <memory> -#include <Swiften/Base/foreach.h> #include <Swiften/Serializer/XML/XMLElement.h> #include <Swiften/Serializer/XML/XMLTextNode.h> diff --git a/Swiften/Serializer/PayloadSerializers/MUCInvitationPayloadSerializer.cpp b/Swiften/Serializer/PayloadSerializers/MUCInvitationPayloadSerializer.cpp index 4b978af..2004f4c 100644 --- a/Swiften/Serializer/PayloadSerializers/MUCInvitationPayloadSerializer.cpp +++ b/Swiften/Serializer/PayloadSerializers/MUCInvitationPayloadSerializer.cpp @@ -8,7 +8,6 @@ #include <memory> -#include <Swiften/Base/foreach.h> #include <Swiften/Serializer/PayloadSerializers/MUCItemSerializer.h> #include <Swiften/Serializer/XML/XMLElement.h> #include <Swiften/Serializer/XML/XMLTextNode.h> diff --git a/Swiften/Serializer/PayloadSerializers/MUCUserPayloadSerializer.cpp b/Swiften/Serializer/PayloadSerializers/MUCUserPayloadSerializer.cpp index 52ab489..f0f3cfa 100644 --- a/Swiften/Serializer/PayloadSerializers/MUCUserPayloadSerializer.cpp +++ b/Swiften/Serializer/PayloadSerializers/MUCUserPayloadSerializer.cpp @@ -9,7 +9,6 @@ #include <memory> #include <sstream> -#include <Swiften/Base/foreach.h> #include <Swiften/Serializer/PayloadSerializerCollection.h> #include <Swiften/Serializer/PayloadSerializers/MUCItemSerializer.h> #include <Swiften/Serializer/XML/XMLElement.h> @@ -23,14 +22,14 @@ MUCUserPayloadSerializer::MUCUserPayloadSerializer(PayloadSerializerCollection* std::string MUCUserPayloadSerializer::serializePayload(std::shared_ptr<MUCUserPayload> payload) const { XMLElement mucElement("x", "http://jabber.org/protocol/muc#user"); - foreach (const MUCUserPayload::StatusCode statusCode, payload->getStatusCodes()) { + for (const auto& statusCode : payload->getStatusCodes()) { std::shared_ptr<XMLElement> statusElement(new XMLElement("status")); std::ostringstream code; code << statusCode.code; statusElement->setAttribute("code", code.str()); mucElement.addNode(statusElement); } - foreach (const MUCItem& item, payload->getItems()) { + for (const auto& item : payload->getItems()) { mucElement.addNode(MUCItemSerializer::itemToElement(item)); } diff --git a/Swiften/Serializer/PayloadSerializers/PrivateStorageSerializer.cpp b/Swiften/Serializer/PayloadSerializers/PrivateStorageSerializer.cpp index 87a2eeb..fc410fb 100644 --- a/Swiften/Serializer/PayloadSerializers/PrivateStorageSerializer.cpp +++ b/Swiften/Serializer/PayloadSerializers/PrivateStorageSerializer.cpp @@ -8,7 +8,6 @@ #include <memory> -#include <Swiften/Base/foreach.h> #include <Swiften/Serializer/PayloadSerializerCollection.h> #include <Swiften/Serializer/XML/XMLElement.h> #include <Swiften/Serializer/XML/XMLRawTextNode.h> diff --git a/Swiften/Serializer/PayloadSerializers/PubSubAffiliationsSerializer.cpp b/Swiften/Serializer/PayloadSerializers/PubSubAffiliationsSerializer.cpp index 07b427c..9c810da 100644 --- a/Swiften/Serializer/PayloadSerializers/PubSubAffiliationsSerializer.cpp +++ b/Swiften/Serializer/PayloadSerializers/PubSubAffiliationsSerializer.cpp @@ -4,13 +4,10 @@ * See the COPYING file for more information. */ - - #include <Swiften/Serializer/PayloadSerializers/PubSubAffiliationsSerializer.h> #include <memory> -#include <Swiften/Base/foreach.h> #include <Swiften/Serializer/PayloadSerializerCollection.h> #include <Swiften/Serializer/PayloadSerializers/PubSubAffiliationSerializer.h> #include <Swiften/Serializer/XML/XMLElement.h> @@ -32,7 +29,7 @@ std::string PubSubAffiliationsSerializer::serializePayload(std::shared_ptr<PubSu if (payload->getNode()) { element.setAttribute("node", *payload->getNode()); } - foreach(std::shared_ptr<PubSubAffiliation> item, payload->getAffiliations()) { + for (const auto& item : payload->getAffiliations()) { element.addNode(std::make_shared<XMLRawTextNode>(PubSubAffiliationSerializer(serializers).serialize(item))); } return element.serialize(); diff --git a/Swiften/Serializer/PayloadSerializers/PubSubEventItemSerializer.cpp b/Swiften/Serializer/PayloadSerializers/PubSubEventItemSerializer.cpp index 61b6cb5..2743ff6 100644 --- a/Swiften/Serializer/PayloadSerializers/PubSubEventItemSerializer.cpp +++ b/Swiften/Serializer/PayloadSerializers/PubSubEventItemSerializer.cpp @@ -4,13 +4,10 @@ * See the COPYING file for more information. */ - - #include <Swiften/Serializer/PayloadSerializers/PubSubEventItemSerializer.h> #include <memory> -#include <Swiften/Base/foreach.h> #include <Swiften/Serializer/PayloadSerializerCollection.h> #include <Swiften/Serializer/XML/XMLElement.h> #include <Swiften/Serializer/XML/XMLRawTextNode.h> @@ -34,7 +31,7 @@ std::string PubSubEventItemSerializer::serializePayload(std::shared_ptr<PubSubEv if (payload->getPublisher()) { element.setAttribute("publisher", *payload->getPublisher()); } - foreach(std::shared_ptr<Payload> item, payload->getData()) { + for (const auto& item : payload->getData()) { element.addNode(std::make_shared<XMLRawTextNode>(serializers->getPayloadSerializer(item)->serialize(item))); } if (payload->getID()) { diff --git a/Swiften/Serializer/PayloadSerializers/PubSubEventItemsSerializer.cpp b/Swiften/Serializer/PayloadSerializers/PubSubEventItemsSerializer.cpp index c8704ea..67d611b 100644 --- a/Swiften/Serializer/PayloadSerializers/PubSubEventItemsSerializer.cpp +++ b/Swiften/Serializer/PayloadSerializers/PubSubEventItemsSerializer.cpp @@ -4,13 +4,10 @@ * See the COPYING file for more information. */ - - #include <Swiften/Serializer/PayloadSerializers/PubSubEventItemsSerializer.h> #include <memory> -#include <Swiften/Base/foreach.h> #include <Swiften/Serializer/PayloadSerializerCollection.h> #include <Swiften/Serializer/PayloadSerializers/PubSubEventItemSerializer.h> #include <Swiften/Serializer/PayloadSerializers/PubSubEventRetractSerializer.h> @@ -31,10 +28,10 @@ std::string PubSubEventItemsSerializer::serializePayload(std::shared_ptr<PubSubE } XMLElement element("items", "http://jabber.org/protocol/pubsub#event"); element.setAttribute("node", payload->getNode()); - foreach(std::shared_ptr<PubSubEventItem> item, payload->getItems()) { + for (const auto& item : payload->getItems()) { element.addNode(std::make_shared<XMLRawTextNode>(PubSubEventItemSerializer(serializers).serialize(item))); } - foreach(std::shared_ptr<PubSubEventRetract> item, payload->getRetracts()) { + for (const auto& item : payload->getRetracts()) { element.addNode(std::make_shared<XMLRawTextNode>(PubSubEventRetractSerializer(serializers).serialize(item))); } return element.serialize(); diff --git a/Swiften/Serializer/PayloadSerializers/PubSubEventSerializer.cpp b/Swiften/Serializer/PayloadSerializers/PubSubEventSerializer.cpp index d0b14ae..51b8b46 100644 --- a/Swiften/Serializer/PayloadSerializers/PubSubEventSerializer.cpp +++ b/Swiften/Serializer/PayloadSerializers/PubSubEventSerializer.cpp @@ -8,7 +8,6 @@ #include <memory> -#include <Swiften/Base/foreach.h> #include <Swiften/Serializer/PayloadSerializers/PubSubEventCollectionSerializer.h> #include <Swiften/Serializer/PayloadSerializers/PubSubEventConfigurationSerializer.h> #include <Swiften/Serializer/PayloadSerializers/PubSubEventDeleteSerializer.h> @@ -38,7 +37,7 @@ std::string PubSubEventSerializer::serializePayload(std::shared_ptr<PubSubEvent> } XMLElement element("event", "http://jabber.org/protocol/pubsub#event"); std::shared_ptr<PubSubEventPayload> p = payload->getPayload(); - foreach(std::shared_ptr<PayloadSerializer> serializer, pubsubSerializers) { + for (const auto& serializer : pubsubSerializers) { if (serializer->canSerialize(p)) { element.addNode(std::make_shared<XMLRawTextNode>(serializer->serialize(p))); } diff --git a/Swiften/Serializer/PayloadSerializers/PubSubItemSerializer.cpp b/Swiften/Serializer/PayloadSerializers/PubSubItemSerializer.cpp index d2e5977..a202c88 100644 --- a/Swiften/Serializer/PayloadSerializers/PubSubItemSerializer.cpp +++ b/Swiften/Serializer/PayloadSerializers/PubSubItemSerializer.cpp @@ -4,13 +4,10 @@ * See the COPYING file for more information. */ - - #include <Swiften/Serializer/PayloadSerializers/PubSubItemSerializer.h> #include <memory> -#include <Swiften/Base/foreach.h> #include <Swiften/Serializer/PayloadSerializerCollection.h> #include <Swiften/Serializer/XML/XMLElement.h> #include <Swiften/Serializer/XML/XMLRawTextNode.h> @@ -28,7 +25,7 @@ std::string PubSubItemSerializer::serializePayload(std::shared_ptr<PubSubItem> p return ""; } XMLElement element("item", "http://jabber.org/protocol/pubsub"); - foreach(std::shared_ptr<Payload> item, payload->getData()) { + for (const auto& item : payload->getData()) { element.addNode(std::make_shared<XMLRawTextNode>(serializers->getPayloadSerializer(item)->serialize(item))); } if (!payload->getID().empty()) { diff --git a/Swiften/Serializer/PayloadSerializers/PubSubItemsSerializer.cpp b/Swiften/Serializer/PayloadSerializers/PubSubItemsSerializer.cpp index ae6433a..9786f51 100644 --- a/Swiften/Serializer/PayloadSerializers/PubSubItemsSerializer.cpp +++ b/Swiften/Serializer/PayloadSerializers/PubSubItemsSerializer.cpp @@ -4,8 +4,6 @@ * See the COPYING file for more information. */ - - #include <Swiften/Serializer/PayloadSerializers/PubSubItemsSerializer.h> #include <memory> @@ -13,7 +11,6 @@ #include <boost/lexical_cast.hpp> #include <Swiften/Base/Log.h> -#include <Swiften/Base/foreach.h> #include <Swiften/Serializer/PayloadSerializerCollection.h> #include <Swiften/Serializer/PayloadSerializers/PubSubItemSerializer.h> #include <Swiften/Serializer/XML/XMLElement.h> @@ -36,7 +33,7 @@ std::string PubSubItemsSerializer::serializePayload(std::shared_ptr<PubSubItems> SWIFT_LOG(warning) << "Serializing PubSubItems with empty node attribute"; } element.setAttribute("node", payload->getNode()); - foreach(std::shared_ptr<PubSubItem> item, payload->getItems()) { + for (const auto& item : payload->getItems()) { element.addNode(std::make_shared<XMLRawTextNode>(PubSubItemSerializer(serializers).serialize(item))); } if (payload->getMaximumItems()) { diff --git a/Swiften/Serializer/PayloadSerializers/PubSubOwnerAffiliationsSerializer.cpp b/Swiften/Serializer/PayloadSerializers/PubSubOwnerAffiliationsSerializer.cpp index 7810e2f..b9f6bcc 100644 --- a/Swiften/Serializer/PayloadSerializers/PubSubOwnerAffiliationsSerializer.cpp +++ b/Swiften/Serializer/PayloadSerializers/PubSubOwnerAffiliationsSerializer.cpp @@ -6,10 +6,8 @@ #include <Swiften/Serializer/PayloadSerializers/PubSubOwnerAffiliationsSerializer.h> -#include <cassert> #include <memory> -#include <Swiften/Base/foreach.h> #include <Swiften/Serializer/PayloadSerializerCollection.h> #include <Swiften/Serializer/PayloadSerializers/PubSubOwnerAffiliationSerializer.h> #include <Swiften/Serializer/XML/XMLElement.h> @@ -29,7 +27,7 @@ std::string PubSubOwnerAffiliationsSerializer::serializePayload(std::shared_ptr< } XMLElement element("affiliations", "http://jabber.org/protocol/pubsub#owner"); element.setAttribute("node", payload->getNode()); - foreach(std::shared_ptr<PubSubOwnerAffiliation> item, payload->getAffiliations()) { + for (const auto& item : payload->getAffiliations()) { element.addNode(std::make_shared<XMLRawTextNode>(PubSubOwnerAffiliationSerializer(serializers).serialize(item))); } return element.serialize(); diff --git a/Swiften/Serializer/PayloadSerializers/PubSubOwnerPubSubSerializer.cpp b/Swiften/Serializer/PayloadSerializers/PubSubOwnerPubSubSerializer.cpp index cacd8d9..b2dfd21 100644 --- a/Swiften/Serializer/PayloadSerializers/PubSubOwnerPubSubSerializer.cpp +++ b/Swiften/Serializer/PayloadSerializers/PubSubOwnerPubSubSerializer.cpp @@ -8,7 +8,6 @@ #include <memory> -#include <Swiften/Base/foreach.h> #include <Swiften/Serializer/PayloadSerializers/PubSubOwnerAffiliationsSerializer.h> #include <Swiften/Serializer/PayloadSerializers/PubSubOwnerConfigureSerializer.h> #include <Swiften/Serializer/PayloadSerializers/PubSubOwnerDefaultSerializer.h> @@ -38,7 +37,7 @@ std::string PubSubOwnerPubSubSerializer::serializePayload(std::shared_ptr<PubSub } XMLElement element("pubsub", "http://jabber.org/protocol/pubsub#owner"); std::shared_ptr<PubSubOwnerPayload> p = payload->getPayload(); - foreach(std::shared_ptr<PayloadSerializer> serializer, pubsubSerializers) { + for (const auto& serializer : pubsubSerializers) { if (serializer->canSerialize(p)) { element.addNode(std::make_shared<XMLRawTextNode>(serializer->serialize(p))); } diff --git a/Swiften/Serializer/PayloadSerializers/PubSubOwnerSubscriptionsSerializer.cpp b/Swiften/Serializer/PayloadSerializers/PubSubOwnerSubscriptionsSerializer.cpp index 9a6ca32..a5940f6 100644 --- a/Swiften/Serializer/PayloadSerializers/PubSubOwnerSubscriptionsSerializer.cpp +++ b/Swiften/Serializer/PayloadSerializers/PubSubOwnerSubscriptionsSerializer.cpp @@ -6,10 +6,8 @@ #include <Swiften/Serializer/PayloadSerializers/PubSubOwnerSubscriptionsSerializer.h> -#include <cassert> #include <memory> -#include <Swiften/Base/foreach.h> #include <Swiften/Serializer/PayloadSerializerCollection.h> #include <Swiften/Serializer/PayloadSerializers/PubSubOwnerSubscriptionSerializer.h> #include <Swiften/Serializer/XML/XMLElement.h> @@ -29,7 +27,7 @@ std::string PubSubOwnerSubscriptionsSerializer::serializePayload(std::shared_ptr } XMLElement element("subscriptions", "http://jabber.org/protocol/pubsub#owner"); element.setAttribute("node", payload->getNode()); - foreach(std::shared_ptr<PubSubOwnerSubscription> item, payload->getSubscriptions()) { + for (const auto& item : payload->getSubscriptions()) { element.addNode(std::make_shared<XMLRawTextNode>(PubSubOwnerSubscriptionSerializer(serializers).serialize(item))); } return element.serialize(); diff --git a/Swiften/Serializer/PayloadSerializers/PubSubPublishSerializer.cpp b/Swiften/Serializer/PayloadSerializers/PubSubPublishSerializer.cpp index 871845f..ce8706d 100644 --- a/Swiften/Serializer/PayloadSerializers/PubSubPublishSerializer.cpp +++ b/Swiften/Serializer/PayloadSerializers/PubSubPublishSerializer.cpp @@ -4,13 +4,10 @@ * See the COPYING file for more information. */ - - #include <Swiften/Serializer/PayloadSerializers/PubSubPublishSerializer.h> #include <memory> -#include <Swiften/Base/foreach.h> #include <Swiften/Serializer/PayloadSerializerCollection.h> #include <Swiften/Serializer/PayloadSerializers/PubSubItemSerializer.h> #include <Swiften/Serializer/XML/XMLElement.h> @@ -30,7 +27,7 @@ std::string PubSubPublishSerializer::serializePayload(std::shared_ptr<PubSubPubl } XMLElement element("publish", "http://jabber.org/protocol/pubsub"); element.setAttribute("node", payload->getNode()); - foreach(std::shared_ptr<PubSubItem> item, payload->getItems()) { + for (const auto& item : payload->getItems()) { element.addNode(std::make_shared<XMLRawTextNode>(PubSubItemSerializer(serializers).serialize(item))); } return element.serialize(); diff --git a/Swiften/Serializer/PayloadSerializers/PubSubRetractSerializer.cpp b/Swiften/Serializer/PayloadSerializers/PubSubRetractSerializer.cpp index 99b425e..c82089a 100644 --- a/Swiften/Serializer/PayloadSerializers/PubSubRetractSerializer.cpp +++ b/Swiften/Serializer/PayloadSerializers/PubSubRetractSerializer.cpp @@ -8,7 +8,6 @@ #include <memory> -#include <Swiften/Base/foreach.h> #include <Swiften/Serializer/PayloadSerializerCollection.h> #include <Swiften/Serializer/PayloadSerializers/PubSubItemSerializer.h> #include <Swiften/Serializer/XML/XMLElement.h> @@ -28,7 +27,7 @@ std::string PubSubRetractSerializer::serializePayload(std::shared_ptr<PubSubRetr } XMLElement element("retract", "http://jabber.org/protocol/pubsub"); element.setAttribute("node", payload->getNode()); - foreach(std::shared_ptr<PubSubItem> item, payload->getItems()) { + for (const auto& item : payload->getItems()) { element.addNode(std::make_shared<XMLRawTextNode>(PubSubItemSerializer(serializers).serialize(item))); } if (payload->isNotify().is_initialized()) { diff --git a/Swiften/Serializer/PayloadSerializers/PubSubSerializer.cpp b/Swiften/Serializer/PayloadSerializers/PubSubSerializer.cpp index dbef36e..648c5a3 100644 --- a/Swiften/Serializer/PayloadSerializers/PubSubSerializer.cpp +++ b/Swiften/Serializer/PayloadSerializers/PubSubSerializer.cpp @@ -4,13 +4,10 @@ * See the COPYING file for more information. */ - - #include <Swiften/Serializer/PayloadSerializers/PubSubSerializer.h> #include <memory> -#include <Swiften/Base/foreach.h> #include <Swiften/Serializer/PayloadSerializerCollection.h> #include <Swiften/Serializer/PayloadSerializers/PubSubAffiliationsSerializer.h> #include <Swiften/Serializer/PayloadSerializers/PubSubConfigureSerializer.h> @@ -52,7 +49,7 @@ std::string PubSubSerializer::serializePayload(std::shared_ptr<PubSub> payload) } XMLElement element("pubsub", "http://jabber.org/protocol/pubsub"); std::shared_ptr<PubSubPayload> p = payload->getPayload(); - foreach(std::shared_ptr<PayloadSerializer> serializer, pubsubSerializers) { + for (const auto& serializer : pubsubSerializers) { if (serializer->canSerialize(p)) { element.addNode(std::make_shared<XMLRawTextNode>(serializer->serialize(p))); if (std::shared_ptr<PubSubCreate> create = std::dynamic_pointer_cast<PubSubCreate>(p)) { diff --git a/Swiften/Serializer/PayloadSerializers/PubSubSubscriptionsSerializer.cpp b/Swiften/Serializer/PayloadSerializers/PubSubSubscriptionsSerializer.cpp index e154109..6e01881 100644 --- a/Swiften/Serializer/PayloadSerializers/PubSubSubscriptionsSerializer.cpp +++ b/Swiften/Serializer/PayloadSerializers/PubSubSubscriptionsSerializer.cpp @@ -8,7 +8,6 @@ #include <memory> -#include <Swiften/Base/foreach.h> #include <Swiften/Serializer/PayloadSerializerCollection.h> #include <Swiften/Serializer/PayloadSerializers/PubSubSubscriptionSerializer.h> #include <Swiften/Serializer/XML/XMLElement.h> @@ -30,7 +29,7 @@ std::string PubSubSubscriptionsSerializer::serializePayload(std::shared_ptr<PubS if (payload->getNode()) { element.setAttribute("node", *payload->getNode()); } - foreach(std::shared_ptr<PubSubSubscription> item, payload->getSubscriptions()) { + for (const auto& item : payload->getSubscriptions()) { element.addNode(std::make_shared<XMLRawTextNode>(PubSubSubscriptionSerializer(serializers).serialize(item))); } return element.serialize(); diff --git a/Swiften/Serializer/PayloadSerializers/RosterItemExchangeSerializer.cpp b/Swiften/Serializer/PayloadSerializers/RosterItemExchangeSerializer.cpp index 24cc301..c7fdc5b 100644 --- a/Swiften/Serializer/PayloadSerializers/RosterItemExchangeSerializer.cpp +++ b/Swiften/Serializer/PayloadSerializers/RosterItemExchangeSerializer.cpp @@ -14,7 +14,6 @@ #include <memory> -#include <Swiften/Base/foreach.h> #include <Swiften/Serializer/XML/XMLElement.h> #include <Swiften/Serializer/XML/XMLRawTextNode.h> #include <Swiften/Serializer/XML/XMLTextNode.h> @@ -26,7 +25,7 @@ RosterItemExchangeSerializer::RosterItemExchangeSerializer() : GenericPayloadSer std::string RosterItemExchangeSerializer::serializePayload(std::shared_ptr<RosterItemExchangePayload> roster) const { XMLElement queryElement("x", "http://jabber.org/protocol/rosterx"); - foreach(const RosterItemExchangePayload::Item& item, roster->getItems()) { + for (const auto& item : roster->getItems()) { std::shared_ptr<XMLElement> itemElement(new XMLElement("item")); itemElement->setAttribute("jid", item.getJID()); itemElement->setAttribute("name", item.getName()); @@ -37,7 +36,7 @@ std::string RosterItemExchangeSerializer::serializePayload(std::shared_ptr<Roste case RosterItemExchangePayload::Item::Delete: itemElement->setAttribute("action", "delete"); break; } - foreach(const std::string& group, item.getGroups()) { + for (const auto& group : item.getGroups()) { std::shared_ptr<XMLElement> groupElement(new XMLElement("group")); groupElement->addNode(std::make_shared<XMLTextNode>(group)); itemElement->addNode(groupElement); diff --git a/Swiften/Serializer/PayloadSerializers/RosterSerializer.cpp b/Swiften/Serializer/PayloadSerializers/RosterSerializer.cpp index 8c857ab..e706542 100644 --- a/Swiften/Serializer/PayloadSerializers/RosterSerializer.cpp +++ b/Swiften/Serializer/PayloadSerializers/RosterSerializer.cpp @@ -8,7 +8,6 @@ #include <memory> -#include <Swiften/Base/foreach.h> #include <Swiften/Serializer/XML/XMLElement.h> #include <Swiften/Serializer/XML/XMLRawTextNode.h> #include <Swiften/Serializer/XML/XMLTextNode.h> @@ -23,7 +22,7 @@ std::string RosterSerializer::serializePayload(std::shared_ptr<RosterPayload> ro if (roster->getVersion()) { queryElement.setAttribute("ver", *roster->getVersion()); } - foreach(const RosterItemPayload& item, roster->getItems()) { + for (const auto& item : roster->getItems()) { std::shared_ptr<XMLElement> itemElement(new XMLElement("item")); itemElement->setAttribute("jid", item.getJID()); itemElement->setAttribute("name", item.getName()); @@ -40,7 +39,7 @@ std::string RosterSerializer::serializePayload(std::shared_ptr<RosterPayload> ro itemElement->setAttribute("ask", "subscribe"); } - foreach(const std::string& group, item.getGroups()) { + for (const auto& group : item.getGroups()) { std::shared_ptr<XMLElement> groupElement(new XMLElement("group")); groupElement->addNode(std::make_shared<XMLTextNode>(group)); itemElement->addNode(groupElement); diff --git a/Swiften/Serializer/PayloadSerializers/SearchPayloadSerializer.cpp b/Swiften/Serializer/PayloadSerializers/SearchPayloadSerializer.cpp index 6e55f46..befd76d 100644 --- a/Swiften/Serializer/PayloadSerializers/SearchPayloadSerializer.cpp +++ b/Swiften/Serializer/PayloadSerializers/SearchPayloadSerializer.cpp @@ -8,7 +8,6 @@ #include <memory> -#include <Swiften/Base/foreach.h> #include <Swiften/Serializer/PayloadSerializers/FormSerializer.h> #include <Swiften/Serializer/XML/XMLElement.h> #include <Swiften/Serializer/XML/XMLRawTextNode.h> @@ -41,7 +40,7 @@ std::string SearchPayloadSerializer::serializePayload(std::shared_ptr<SearchPayl searchElement.addNode(XMLElement::ref(new XMLElement("email", "", *searchPayload->getEMail()))); } - foreach(const SearchPayload::Item& item, searchPayload->getItems()) { + for (const auto& item : searchPayload->getItems()) { XMLElement::ref itemElement(new XMLElement("item")); itemElement->setAttribute("jid", item.jid); itemElement->addNode(XMLElement::ref(new XMLElement("first", "", item.first))); diff --git a/Swiften/Serializer/PayloadSerializers/SecurityLabelSerializer.cpp b/Swiften/Serializer/PayloadSerializers/SecurityLabelSerializer.cpp index 97c5411..b8faf73 100644 --- a/Swiften/Serializer/PayloadSerializers/SecurityLabelSerializer.cpp +++ b/Swiften/Serializer/PayloadSerializers/SecurityLabelSerializer.cpp @@ -8,7 +8,6 @@ #include <memory> -#include <Swiften/Base/foreach.h> #include <Swiften/Serializer/XML/XMLElement.h> #include <Swiften/Serializer/XML/XMLRawTextNode.h> #include <Swiften/Serializer/XML/XMLTextNode.h> @@ -36,7 +35,7 @@ std::string SecurityLabelSerializer::serializePayload(std::shared_ptr<SecurityLa labelElement->addNode(std::make_shared<XMLRawTextNode>(label->getLabel())); element.addNode(labelElement); - foreach(const std::string& equivalentLabel, label->getEquivalentLabels()) { + for (const auto& equivalentLabel : label->getEquivalentLabels()) { std::shared_ptr<XMLElement> equivalentLabelElement(new XMLElement("equivalentlabel")); equivalentLabelElement->addNode(std::make_shared<XMLRawTextNode>(equivalentLabel)); element.addNode(equivalentLabelElement); diff --git a/Swiften/Serializer/PayloadSerializers/SecurityLabelsCatalogSerializer.cpp b/Swiften/Serializer/PayloadSerializers/SecurityLabelsCatalogSerializer.cpp index e8d2a1b..36401a6 100644 --- a/Swiften/Serializer/PayloadSerializers/SecurityLabelsCatalogSerializer.cpp +++ b/Swiften/Serializer/PayloadSerializers/SecurityLabelsCatalogSerializer.cpp @@ -8,7 +8,6 @@ #include <memory> -#include <Swiften/Base/foreach.h> #include <Swiften/Serializer/PayloadSerializers/SecurityLabelSerializer.h> #include <Swiften/Serializer/XML/XMLElement.h> #include <Swiften/Serializer/XML/XMLRawTextNode.h> @@ -29,7 +28,7 @@ std::string SecurityLabelsCatalogSerializer::serializePayload(std::shared_ptr<Se if (!catalog->getDescription().empty()) { element.setAttribute("desc", catalog->getDescription()); } - foreach (const SecurityLabelsCatalog::Item& item, catalog->getItems()) { + for (const auto& item : catalog->getItems()) { std::shared_ptr<XMLElement> itemElement(new XMLElement("item")); itemElement->setAttribute("selector", item.getSelector()); if (item.getIsDefault()) { diff --git a/Swiften/Serializer/PayloadSerializers/StorageSerializer.cpp b/Swiften/Serializer/PayloadSerializers/StorageSerializer.cpp index 31720f7..ffebcf4 100644 --- a/Swiften/Serializer/PayloadSerializers/StorageSerializer.cpp +++ b/Swiften/Serializer/PayloadSerializers/StorageSerializer.cpp @@ -8,7 +8,6 @@ #include <memory> -#include <Swiften/Base/foreach.h> #include <Swiften/Serializer/XML/XMLElement.h> #include <Swiften/Serializer/XML/XMLTextNode.h> @@ -20,7 +19,7 @@ StorageSerializer::StorageSerializer() : GenericPayloadSerializer<Storage>() { std::string StorageSerializer::serializePayload(std::shared_ptr<Storage> storage) const { XMLElement storageElement("storage", "storage:bookmarks"); - foreach(const Storage::Room& room, storage->getRooms()) { + for (const auto& room : storage->getRooms()) { std::shared_ptr<XMLElement> conferenceElement(new XMLElement("conference")); conferenceElement->setAttribute("name", room.name); conferenceElement->setAttribute("jid", room.jid); @@ -38,7 +37,7 @@ std::string StorageSerializer::serializePayload(std::shared_ptr<Storage> storage storageElement.addNode(conferenceElement); } - foreach(const Storage::URL& url, storage->getURLs()) { + for (const auto& url : storage->getURLs()) { std::shared_ptr<XMLElement> urlElement(new XMLElement("url")); urlElement->setAttribute("name", url.name); urlElement->setAttribute("url", url.url); diff --git a/Swiften/Serializer/PayloadSerializers/StreamInitiationFileInfoSerializer.cpp b/Swiften/Serializer/PayloadSerializers/StreamInitiationFileInfoSerializer.cpp index e15ab77..ba296f9 100644 --- a/Swiften/Serializer/PayloadSerializers/StreamInitiationFileInfoSerializer.cpp +++ b/Swiften/Serializer/PayloadSerializers/StreamInitiationFileInfoSerializer.cpp @@ -17,7 +17,6 @@ #include <boost/lexical_cast.hpp> #include <Swiften/Base/DateTime.h> -#include <Swiften/Base/foreach.h> #include <Swiften/Serializer/XML/XMLElement.h> #include <Swiften/Serializer/XML/XMLRawTextNode.h> #include <Swiften/Serializer/XML/XMLTextNode.h> diff --git a/Swiften/Serializer/PayloadSerializers/StreamInitiationSerializer.cpp b/Swiften/Serializer/PayloadSerializers/StreamInitiationSerializer.cpp index fcfb063..3faa5b7 100644 --- a/Swiften/Serializer/PayloadSerializers/StreamInitiationSerializer.cpp +++ b/Swiften/Serializer/PayloadSerializers/StreamInitiationSerializer.cpp @@ -10,7 +10,6 @@ #include <memory> #include <boost/lexical_cast.hpp> -#include <Swiften/Base/foreach.h> #include <Swiften/Serializer/XML/XMLElement.h> #include <Swiften/Serializer/XML/XMLTextNode.h> #include <Swiften/Serializer/XML/XMLRawTextNode.h> @@ -54,7 +53,7 @@ std::string StreamInitiationSerializer::serializePayload(std::shared_ptr<StreamI Form::ref form(new Form(Form::FormType)); FormField::ref field = std::make_shared<FormField>(FormField::ListSingleType); field->setName("stream-method"); - foreach(const std::string& method, streamInitiation->getProvidedMethods()) { + for (const auto& method : streamInitiation->getProvidedMethods()) { field->addOption(FormField::Option("", method)); } form->addField(field); diff --git a/Swiften/Serializer/PayloadSerializers/VCardSerializer.cpp b/Swiften/Serializer/PayloadSerializers/VCardSerializer.cpp index a1393cb..725d125 100644 --- a/Swiften/Serializer/PayloadSerializers/VCardSerializer.cpp +++ b/Swiften/Serializer/PayloadSerializers/VCardSerializer.cpp @@ -9,7 +9,6 @@ #include <memory> #include <Swiften/Base/DateTime.h> -#include <Swiften/Base/foreach.h> #include <Swiften/Serializer/XML/XMLElement.h> #include <Swiften/Serializer/XML/XMLRawTextNode.h> #include <Swiften/Serializer/XML/XMLTextNode.h> @@ -47,7 +46,7 @@ std::string VCardSerializer::serializePayload(std::shared_ptr<VCard> vcard) con } queryElement.addNode(nameElement); } - foreach(const VCard::EMailAddress& emailAddress, vcard->getEMailAddresses()) { + for (const auto& emailAddress : vcard->getEMailAddresses()) { std::shared_ptr<XMLElement> emailElement(new XMLElement("EMAIL")); emailElement->addNode(std::make_shared<XMLElement>("USERID", "", emailAddress.address)); if (emailAddress.isHome) { @@ -84,7 +83,7 @@ std::string VCardSerializer::serializePayload(std::shared_ptr<VCard> vcard) con queryElement.addNode(std::make_shared<XMLElement>("BDAY", "", dateTimeToString(vcard->getBirthday()))); } - foreach(const VCard::Telephone& telephone, vcard->getTelephones()) { + for (const auto& telephone : vcard->getTelephones()) { std::shared_ptr<XMLElement> telElement(new XMLElement("TEL")); telElement->addNode(std::make_shared<XMLElement>("NUMBER", "", telephone.number)); if (telephone.isHome) { @@ -129,7 +128,7 @@ std::string VCardSerializer::serializePayload(std::shared_ptr<VCard> vcard) con queryElement.addNode(telElement); } - foreach(const VCard::Address& address, vcard->getAddresses()) { + for (const auto& address : vcard->getAddresses()) { std::shared_ptr<XMLElement> adrElement = std::make_shared<XMLElement>("ADR"); if (!address.poBox.empty()) { adrElement->addNode(std::make_shared<XMLElement>("POBOX", "", address.poBox)); @@ -177,10 +176,10 @@ std::string VCardSerializer::serializePayload(std::shared_ptr<VCard> vcard) con queryElement.addNode(adrElement); } - foreach(const VCard::AddressLabel& addressLabel, vcard->getAddressLabels()) { + for (const auto& addressLabel : vcard->getAddressLabels()) { std::shared_ptr<XMLElement> labelElement = std::make_shared<XMLElement>("LABEL"); - foreach(const std::string& line, addressLabel.lines) { + for (const auto& line : addressLabel.lines) { labelElement->addNode(std::make_shared<XMLElement>("LINE", "", line)); } @@ -208,7 +207,7 @@ std::string VCardSerializer::serializePayload(std::shared_ptr<VCard> vcard) con queryElement.addNode(labelElement); } - foreach(const JID& jid, vcard->getJIDs()) { + for (const auto& jid : vcard->getJIDs()) { queryElement.addNode(std::make_shared<XMLElement>("JID", "", jid.toString())); } @@ -216,28 +215,28 @@ std::string VCardSerializer::serializePayload(std::shared_ptr<VCard> vcard) con queryElement.addNode(std::make_shared<XMLElement>("DESC", "", vcard->getDescription())); } - foreach(const VCard::Organization& org, vcard->getOrganizations()) { + for (const auto& org : vcard->getOrganizations()) { std::shared_ptr<XMLElement> orgElement = std::make_shared<XMLElement>("ORG"); if (!org.name.empty()) { orgElement->addNode(std::make_shared<XMLElement>("ORGNAME", "", org.name)); } if (!org.units.empty()) { - foreach(const std::string& unit, org.units) { + for (const auto& unit : org.units) { orgElement->addNode(std::make_shared<XMLElement>("ORGUNIT", "", unit)); } } queryElement.addNode(orgElement); } - foreach(const std::string& title, vcard->getTitles()) { + for (const auto& title : vcard->getTitles()) { queryElement.addNode(std::make_shared<XMLElement>("TITLE", "", title)); } - foreach(const std::string& role, vcard->getRoles()) { + for (const auto& role : vcard->getRoles()) { queryElement.addNode(std::make_shared<XMLElement>("ROLE", "", role)); } - foreach(const std::string& url, vcard->getURLs()) { + for (const auto& url : vcard->getURLs()) { queryElement.addNode(std::make_shared<XMLElement>("URL", "", url)); } diff --git a/Swiften/Serializer/StanzaSerializer.cpp b/Swiften/Serializer/StanzaSerializer.cpp index 6440fbb..f2f5529 100644 --- a/Swiften/Serializer/StanzaSerializer.cpp +++ b/Swiften/Serializer/StanzaSerializer.cpp @@ -10,7 +10,6 @@ #include <typeinfo> #include <Swiften/Base/Log.h> -#include <Swiften/Base/foreach.h> #include <Swiften/Elements/Stanza.h> #include <Swiften/Serializer/PayloadSerializer.h> #include <Swiften/Serializer/PayloadSerializerCollection.h> @@ -47,7 +46,7 @@ SafeByteArray StanzaSerializer::serialize(std::shared_ptr<ToplevelElement> eleme setStanzaSpecificAttributes(stanza, stanzaElement); std::string serializedPayloads; - foreach (const std::shared_ptr<Payload>& payload, stanza->getPayloads()) { + for (const auto& payload : stanza->getPayloads()) { PayloadSerializer* serializer = payloadSerializers_->getPayloadSerializer(payload); if (serializer) { serializedPayloads += serializer->serialize(payload); diff --git a/Swiften/Serializer/StreamFeaturesSerializer.cpp b/Swiften/Serializer/StreamFeaturesSerializer.cpp index 820b96c..2534db0 100644 --- a/Swiften/Serializer/StreamFeaturesSerializer.cpp +++ b/Swiften/Serializer/StreamFeaturesSerializer.cpp @@ -8,7 +8,6 @@ #include <memory> -#include <Swiften/Base/foreach.h> #include <Swiften/Serializer/XML/XMLElement.h> #include <Swiften/Serializer/XML/XMLTextNode.h> @@ -26,7 +25,7 @@ SafeByteArray StreamFeaturesSerializer::serialize(std::shared_ptr<ToplevelElemen } if (!streamFeatures->getCompressionMethods().empty()) { std::shared_ptr<XMLElement> compressionElement(new XMLElement("compression", "http://jabber.org/features/compress")); - foreach(const std::string& method, streamFeatures->getCompressionMethods()) { + for (const auto& method : streamFeatures->getCompressionMethods()) { std::shared_ptr<XMLElement> methodElement(new XMLElement("method")); methodElement->addNode(std::make_shared<XMLTextNode>(method)); compressionElement->addNode(methodElement); @@ -35,7 +34,7 @@ SafeByteArray StreamFeaturesSerializer::serialize(std::shared_ptr<ToplevelElemen } if (!streamFeatures->getAuthenticationMechanisms().empty()) { std::shared_ptr<XMLElement> mechanismsElement(new XMLElement("mechanisms", "urn:ietf:params:xml:ns:xmpp-sasl")); - foreach(const std::string& mechanism, streamFeatures->getAuthenticationMechanisms()) { + for (const auto& mechanism : streamFeatures->getAuthenticationMechanisms()) { std::shared_ptr<XMLElement> mechanismElement(new XMLElement("mechanism")); mechanismElement->addNode(std::make_shared<XMLTextNode>(mechanism)); mechanismsElement->addNode(mechanismElement); diff --git a/Swiften/Serializer/XML/XMLElement.cpp b/Swiften/Serializer/XML/XMLElement.cpp index 4a874ab..f2397ca 100644 --- a/Swiften/Serializer/XML/XMLElement.cpp +++ b/Swiften/Serializer/XML/XMLElement.cpp @@ -6,7 +6,6 @@ #include <Swiften/Serializer/XML/XMLElement.h> -#include <Swiften/Base/foreach.h> #include <Swiften/Serializer/XML/XMLTextNode.h> namespace Swift { @@ -23,14 +22,13 @@ XMLElement::XMLElement(const std::string& tag, const std::string& xmlns, const s std::string XMLElement::serialize() { std::string result; result += "<" + tag_; - typedef std::pair<std::string,std::string> Pair; - foreach(const Pair& p, attributes_) { + for (const auto& p : attributes_) { result += " " + p.first + "=\"" + p.second + "\""; } if (!childNodes_.empty()) { result += ">"; - foreach (std::shared_ptr<XMLNode> node, childNodes_) { + for (auto& node : childNodes_) { result += node->serialize(); } result += "</" + tag_ + ">"; diff --git a/Swiften/Serializer/XMPPSerializer.cpp b/Swiften/Serializer/XMPPSerializer.cpp index 08b5485..9cde777 100644 --- a/Swiften/Serializer/XMPPSerializer.cpp +++ b/Swiften/Serializer/XMPPSerializer.cpp @@ -12,7 +12,6 @@ #include <boost/bind.hpp> #include <Swiften/Base/Log.h> -#include <Swiften/Base/foreach.h> #include <Swiften/Elements/ProtocolHeader.h> #include <Swiften/Serializer/AuthChallengeSerializer.h> #include <Swiften/Serializer/AuthFailureSerializer.h> diff --git a/Swiften/Session/BOSHSessionStream.cpp b/Swiften/Session/BOSHSessionStream.cpp index 635fd69..4c7bdee 100644 --- a/Swiften/Session/BOSHSessionStream.cpp +++ b/Swiften/Session/BOSHSessionStream.cpp @@ -12,7 +12,6 @@ #include <boost/random/uniform_int.hpp> #include <boost/random/variate_generator.hpp> -#include <Swiften/Base/foreach.h> #include <Swiften/Elements/StreamType.h> #include <Swiften/EventLoop/EventLoop.h> #include <Swiften/StreamStack/CompressionLayer.h> diff --git a/Swiften/StreamStack/StreamStack.cpp b/Swiften/StreamStack/StreamStack.cpp index 0bcd1b3..44a018d 100644 --- a/Swiften/StreamStack/StreamStack.cpp +++ b/Swiften/StreamStack/StreamStack.cpp @@ -8,7 +8,6 @@ #include <boost/bind.hpp> -#include <Swiften/Base/foreach.h> #include <Swiften/StreamStack/LowLayer.h> #include <Swiften/StreamStack/StreamLayer.h> #include <Swiften/StreamStack/XMPPLayer.h> diff --git a/Swiften/TLS/ServerIdentityVerifier.cpp b/Swiften/TLS/ServerIdentityVerifier.cpp index 872717b..226e94b 100644 --- a/Swiften/TLS/ServerIdentityVerifier.cpp +++ b/Swiften/TLS/ServerIdentityVerifier.cpp @@ -8,7 +8,6 @@ #include <boost/algorithm/string.hpp> -#include <Swiften/Base/foreach.h> #include <Swiften/IDN/IDNConverter.h> namespace Swift { @@ -30,7 +29,7 @@ bool ServerIdentityVerifier::certificateVerifies(Certificate::ref certificate) { } // DNS names std::vector<std::string> dnsNames = certificate->getDNSNames(); - foreach (const std::string& dnsName, dnsNames) { + for (const auto& dnsName : dnsNames) { if (matchesDomain(dnsName)) { return true; } @@ -39,7 +38,7 @@ bool ServerIdentityVerifier::certificateVerifies(Certificate::ref certificate) { // SRV names std::vector<std::string> srvNames = certificate->getSRVNames(); - foreach (const std::string& srvName, srvNames) { + for (const auto& srvName : srvNames) { // Only match SRV names that begin with the service; this isn't required per // spec, but we're being purist about this. if (boost::starts_with(srvName, "_xmpp-client.") && matchesDomain(srvName.substr(std::string("_xmpp-client.").size(), srvName.npos))) { @@ -50,7 +49,7 @@ bool ServerIdentityVerifier::certificateVerifies(Certificate::ref certificate) { // XmppAddr std::vector<std::string> xmppAddresses = certificate->getXMPPAddresses(); - foreach (const std::string& xmppAddress, xmppAddresses) { + for (const auto& xmppAddress : xmppAddresses) { if (matchesAddress(xmppAddress)) { return true; } @@ -60,7 +59,7 @@ bool ServerIdentityVerifier::certificateVerifies(Certificate::ref certificate) { // CommonNames. Only check this if there was no SAN (according to spec). if (!hasSAN) { std::vector<std::string> commonNames = certificate->getCommonNames(); - foreach (const std::string& commonName, commonNames) { + for (const auto& commonName : commonNames) { if (matchesDomain(commonName)) { return true; } diff --git a/Swiften/Whiteboard/WhiteboardSessionManager.cpp b/Swiften/Whiteboard/WhiteboardSessionManager.cpp index 66b5ef8..59f6c47 100644 --- a/Swiften/Whiteboard/WhiteboardSessionManager.cpp +++ b/Swiften/Whiteboard/WhiteboardSessionManager.cpp @@ -17,7 +17,6 @@ #include <boost/bind.hpp> -#include <Swiften/Base/foreach.h> #include <Swiften/Disco/EntityCapsProvider.h> #include <Swiften/Presence/PresenceOracle.h> #include <Swiften/Queries/IQRouter.h> @@ -80,7 +79,7 @@ namespace Swift { std::vector<Presence::ref> presences = presenceOracle_->getAllPresence(bareJID); //iterate over them - foreach(Presence::ref pres, presences) { + for (const auto& pres : presences) { if (pres->getPriority() > priority) { // look up caps from the jid DiscoInfo::ref info = capsProvider_->getCaps(pres->getFrom()); |