summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTobias Markmann <tm@ayena.de>2015-07-24 15:42:17 (GMT)
committerTobias Markmann <tm@ayena.de>2015-07-24 15:42:17 (GMT)
commit744884d4ed76658880a3d25f6e6551ef92700a8f (patch)
tree5fd09d05a22a9d2f10ac937e402bd68a23fec4e2
parent6ca201d0b48f4273e24dd7bff17c4a46eeaddf39 (diff)
downloadswift-744884d4ed76658880a3d25f6e6551ef92700a8f.zip
swift-744884d4ed76658880a3d25f6e6551ef92700a8f.tar.bz2
Add missing includes for dependencies in public header files
Added Swiften/Base/Concat.h to the exception list for <algorithm> include, as Concat.h uses std::copy, defined in <algorithm>. Added Swiften/FileTransfer/S5BTransportSession.h to the exception list for <boost/bind.hpp> include, as S5BTransportSession.h declares a template class using boost::bind. Test-Information: Tested that each of Swiften's public header files compiles on its own. Change-Id: Iac794b6e0f5959cd8261888a67761813b710fe85
-rwxr-xr-xBuildTools/CheckHeaders.py4
-rw-r--r--Swiften/Base/Concat.h4
-rw-r--r--Swiften/Base/Listenable.h9
-rw-r--r--Swiften/Elements/CompressRequest.h2
-rw-r--r--Swiften/Elements/FormReportedRef.h2
-rw-r--r--Swiften/Elements/Whiteboard/WhiteboardPolygonElement.h4
-rw-r--r--Swiften/FileTransfer/S5BTransportSession.h4
-rw-r--r--Swiften/Serializer/PayloadSerializers/StartSessionSerializer.h3
-rw-r--r--Swiften/Serializer/XML/XMLTextNode.h4
9 files changed, 26 insertions, 10 deletions
diff --git a/BuildTools/CheckHeaders.py b/BuildTools/CheckHeaders.py
index b599099..8d20f4e 100755
--- a/BuildTools/CheckHeaders.py
+++ b/BuildTools/CheckHeaders.py
@@ -3,14 +3,14 @@
import os, sys
FORBIDDEN_INCLUDES = [
("iostream", ["Swiften/Base/format.h"]),
("Base/Log.h", []),
("Base/format.h", []),
- ("algorithm", ["Swiften/Base/Algorithm.h", "Swiften/Base/SafeAllocator.h", "Swiften/Base/Listenable.h"]),
- ("boost/bind.hpp", ["Swiften/Base/Listenable.h"]),
+ ("algorithm", ["Swiften/Base/Algorithm.h", "Swiften/Base/SafeAllocator.h", "Swiften/Base/Listenable.h", "Swiften/Base/Concat.h"]),
+ ("boost/bind.hpp", ["Swiften/Base/Listenable.h", "Swiften/FileTransfer/S5BTransportSession.h"]),
("boost/filesystem.hpp", []),
("Base/foreach.h", []),
("boost/date_time/date_time.hpp", []),
("boost/filesystem/filesystem.hpp", []),
# To avoid
diff --git a/Swiften/Base/Concat.h b/Swiften/Base/Concat.h
index 97b04f2..1d158d5 100644
--- a/Swiften/Base/Concat.h
+++ b/Swiften/Base/Concat.h
@@ -1,14 +1,16 @@
/*
- * Copyright (c) 2011 Isode Limited.
+ * Copyright (c) 2011-2015 Isode Limited.
* All rights reserved.
* See the COPYING file for more information.
*/
#pragma once
+#include <algorithm>
+
namespace Swift {
template<typename C>
C concat(const C& c1, const C& c2) {
C result;
result.resize(c1.size() + c2.size());
std::copy(c2.begin(), c2.end(), std::copy(c1.begin(), c1.end(), result.begin()));
diff --git a/Swiften/Base/Listenable.h b/Swiften/Base/Listenable.h
index 994480d..655599a 100644
--- a/Swiften/Base/Listenable.h
+++ b/Swiften/Base/Listenable.h
@@ -1,17 +1,20 @@
/*
- * Copyright (c) 2013 Isode Limited.
+ * Copyright (c) 2013-2015 Isode Limited.
* All rights reserved.
* See the COPYING file for more information.
*/
#pragma once
-#include <Swiften/Base/API.h>
-#include <boost/bind.hpp>
#include <algorithm>
+#include <vector>
+
+#include <boost/bind.hpp>
+
+#include <Swiften/Base/API.h>
namespace Swift {
template<typename T>
class SWIFTEN_API Listenable {
public:
void addListener(T* listener) {
diff --git a/Swiften/Elements/CompressRequest.h b/Swiften/Elements/CompressRequest.h
index 4e2a3a4..1c3fb39 100644
--- a/Swiften/Elements/CompressRequest.h
+++ b/Swiften/Elements/CompressRequest.h
@@ -3,12 +3,14 @@
* All rights reserved.
* See the COPYING file for more information.
*/
#pragma once
+#include <string>
+
#include <Swiften/Base/API.h>
#include <Swiften/Elements/ToplevelElement.h>
namespace Swift {
class SWIFTEN_API CompressRequest : public ToplevelElement
{
diff --git a/Swiften/Elements/FormReportedRef.h b/Swiften/Elements/FormReportedRef.h
index b985167..03a89d1 100644
--- a/Swiften/Elements/FormReportedRef.h
+++ b/Swiften/Elements/FormReportedRef.h
@@ -2,12 +2,14 @@
* Copyright (c) 2015 Isode Limited.
* All rights reserved.
* See the COPYING file for more information.
*/
#pragma once
+#include <boost/shared_ptr.hpp>
+
#include <Swiften/Base/API.h>
namespace Swift {
class SWIFTEN_API FormReportedRef {
diff --git a/Swiften/Elements/Whiteboard/WhiteboardPolygonElement.h b/Swiften/Elements/Whiteboard/WhiteboardPolygonElement.h
index f885d3b..38bc3e1 100644
--- a/Swiften/Elements/Whiteboard/WhiteboardPolygonElement.h
+++ b/Swiften/Elements/Whiteboard/WhiteboardPolygonElement.h
@@ -9,15 +9,17 @@
* All rights reserved.
* See the COPYING file for more information.
*/
#pragma once
+#include <vector>
+
#include <Swiften/Base/API.h>
-#include <Swiften/Elements/Whiteboard/WhiteboardElement.h>
#include <Swiften/Elements/Whiteboard/WhiteboardColor.h>
+#include <Swiften/Elements/Whiteboard/WhiteboardElement.h>
namespace Swift {
class SWIFTEN_API WhiteboardPolygonElement : public WhiteboardElement {
typedef std::pair<int, int> Point;
public:
typedef boost::shared_ptr<WhiteboardPolygonElement> ref;
diff --git a/Swiften/FileTransfer/S5BTransportSession.h b/Swiften/FileTransfer/S5BTransportSession.h
index 234c491..b3eee3c 100644
--- a/Swiften/FileTransfer/S5BTransportSession.h
+++ b/Swiften/FileTransfer/S5BTransportSession.h
@@ -3,16 +3,18 @@
* All rights reserved.
* See the COPYING file for more information.
*/
#pragma once
+#include <boost/bind.hpp>
+
#include <Swiften/Base/API.h>
#include <Swiften/Base/boost_bsignals.h>
-#include <Swiften/FileTransfer/TransportSession.h>
#include <Swiften/FileTransfer/ReadBytestream.h>
+#include <Swiften/FileTransfer/TransportSession.h>
#include <Swiften/FileTransfer/WriteBytestream.h>
namespace Swift {
template <typename T>
class SWIFTEN_API S5BTransportSession : public TransportSession {
diff --git a/Swiften/Serializer/PayloadSerializers/StartSessionSerializer.h b/Swiften/Serializer/PayloadSerializers/StartSessionSerializer.h
index d629db2..1815955 100644
--- a/Swiften/Serializer/PayloadSerializers/StartSessionSerializer.h
+++ b/Swiften/Serializer/PayloadSerializers/StartSessionSerializer.h
@@ -6,14 +6,15 @@
#pragma once
#include <boost/lexical_cast.hpp>
#include <Swiften/Base/API.h>
-#include <Swiften/Serializer/GenericPayloadSerializer.h>
#include <Swiften/Elements/StartSession.h>
+#include <Swiften/Serializer/GenericPayloadSerializer.h>
+#include <Swiften/Serializer/XML/XMLElement.h>
namespace Swift {
class SWIFTEN_API StartSessionSerializer : public GenericPayloadSerializer<StartSession> {
public:
StartSessionSerializer() : GenericPayloadSerializer<StartSession>() {}
diff --git a/Swiften/Serializer/XML/XMLTextNode.h b/Swiften/Serializer/XML/XMLTextNode.h
index 65d6459..86efdf1 100644
--- a/Swiften/Serializer/XML/XMLTextNode.h
+++ b/Swiften/Serializer/XML/XMLTextNode.h
@@ -3,15 +3,17 @@
* All rights reserved.
* See the COPYING file for more information.
*/
#pragma once
+#include <boost/shared_ptr.hpp>
+
#include <Swiften/Base/API.h>
-#include <Swiften/Serializer/XML/XMLNode.h>
#include <Swiften/Base/String.h>
+#include <Swiften/Serializer/XML/XMLNode.h>
namespace Swift {
class SWIFTEN_API XMLTextNode : public XMLNode {
public:
typedef boost::shared_ptr<XMLTextNode> ref;