summaryrefslogtreecommitdiff
path: root/src/core/model
diff options
context:
space:
mode:
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;
/**