summaryrefslogtreecommitdiff
path: root/src/core/model
diff options
context:
space:
mode:
authorAndreas Stöckel <astoecke@techfak.uni-bielefeld.de>2015-01-11 13:53:15 +0100
committerAndreas Stöckel <astoecke@techfak.uni-bielefeld.de>2015-01-11 13:53:15 +0100
commit6940aa0e6837f9d83f9b5c5b37d4fd7747c95c67 (patch)
tree75d0944ff4fd1754f2db55b081588c71482efd71 /src/core/model
parente6a7bbd753cba97f7bda154341d93d3f1241d2c4 (diff)
Forward declaring Rtti stuff for fewer dependencies in the Rtti.hpp header
Diffstat (limited to 'src/core/model')
-rw-r--r--src/core/model/Document.hpp6
-rw-r--r--src/core/model/Domain.hpp8
-rw-r--r--src/core/model/Node.cpp1
-rw-r--r--src/core/model/Node.hpp6
-rw-r--r--src/core/model/Typesystem.hpp8
5 files changed, 26 insertions, 3 deletions
diff --git a/src/core/model/Document.hpp b/src/core/model/Document.hpp
index c367e50..e27b577 100644
--- a/src/core/model/Document.hpp
+++ b/src/core/model/Document.hpp
@@ -108,6 +108,12 @@
#include "Typesystem.hpp"
namespace ousia {
+
+// Forward declarations
+class RttiType;
+template<class T>
+class Rtti;
+
namespace model {
class StructuredEntity;
diff --git a/src/core/model/Domain.hpp b/src/core/model/Domain.hpp
index 7412ef4..c80d057 100644
--- a/src/core/model/Domain.hpp
+++ b/src/core/model/Domain.hpp
@@ -192,7 +192,6 @@
#ifndef _OUSIA_MODEL_DOMAIN_HPP_
#define _OUSIA_MODEL_DOMAIN_HPP_
-#include <core/common/Rtti.hpp>
#include <core/managed/ManagedContainer.hpp>
#include <core/RangeSet.hpp>
@@ -200,8 +199,15 @@
#include "Typesystem.hpp"
namespace ousia {
+
+// Forward declarations
+class RttiType;
+template<class T>
+class Rtti;
+
namespace model {
+// Forward declarations
class Descriptor;
class StructuredClass;
class Domain;
diff --git a/src/core/model/Node.cpp b/src/core/model/Node.cpp
index 284f323..bac420b 100644
--- a/src/core/model/Node.cpp
+++ b/src/core/model/Node.cpp
@@ -20,6 +20,7 @@
#include <unordered_set>
#include <core/common/Exceptions.hpp>
+#include <core/common/Rtti.hpp>
#include "Node.hpp"
diff --git a/src/core/model/Node.hpp b/src/core/model/Node.hpp
index 54a1497..c24aacb 100644
--- a/src/core/model/Node.hpp
+++ b/src/core/model/Node.hpp
@@ -32,7 +32,6 @@
#include <string>
#include <vector>
-#include <core/common/Rtti.hpp>
#include <core/managed/Managed.hpp>
#include <core/managed/ManagedContainer.hpp>
@@ -40,6 +39,11 @@
namespace ousia {
+// Forward declarations
+class RttiType;
+template<class T>
+class Rtti;
+
/**
* Structure describing a single result obtained from the resolution function.
*/
diff --git a/src/core/model/Typesystem.hpp b/src/core/model/Typesystem.hpp
index c0e0fb1..22b747f 100644
--- a/src/core/model/Typesystem.hpp
+++ b/src/core/model/Typesystem.hpp
@@ -34,14 +34,20 @@
#include <core/common/Exceptions.hpp>
#include <core/common/Logger.hpp>
-#include <core/common/Rtti.hpp>
#include <core/common/Variant.hpp>
#include "Node.hpp"
namespace ousia {
+
+// Forward declarations
+class RttiType;
+template<class T>
+class Rtti;
+
namespace model {
+// Forward declarations
class Typesystem;
/**