summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndreas Stöckel <astoecke@techfak.uni-bielefeld.de>2014-12-16 02:34:36 +0100
committerAndreas Stöckel <astoecke@techfak.uni-bielefeld.de>2014-12-16 02:34:36 +0100
commitc6aa669aac80466ea287e9a27348c1068cc1f17e (patch)
treed72a74f50bf8a56ee267585635a4d7df73b9b277
parent71346efac9d56a8753ee9032f7f96aa90fba9959 (diff)
changed paths to new location of the Managed class, adapted NodeVector and NodeMap to the slightly changed conditions in the Node class
-rw-r--r--CMakeLists.txt152
-rw-r--r--src/core/CSS.hpp2
-rw-r--r--src/core/Node.hpp41
-rw-r--r--src/core/model/Domain.hpp2
-rw-r--r--src/core/model/Typesystem.hpp3
-rw-r--r--test/core/NodeTest.cpp2
6 files changed, 99 insertions, 103 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt
index af5928a..efef6d6 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -99,57 +99,57 @@ ADD_DEFINITIONS(
)
ADD_LIBRARY(ousia_core
-# src/core/CodeTokenizer
-# src/core/CSS
-# src/core/Node
-# src/core/Registry
-# src/core/ResourceLocator
-# src/core/Tokenizer
-# src/core/common/CharReader
-# src/core/common/Exceptions
-# src/core/common/Logger
-# src/core/common/Utils
-# src/core/common/Variant
-# src/core/common/VariantReader
+ src/core/CodeTokenizer
+ src/core/CSS
+ src/core/Node
+ src/core/Registry
+ src/core/ResourceLocator
+ src/core/Tokenizer
+ src/core/common/CharReader
+ src/core/common/Exceptions
+ src/core/common/Logger
+ src/core/common/Utils
+ src/core/common/Variant
+ src/core/common/VariantReader
src/core/managed/Managed
src/core/managed/ManagedType
src/core/managed/Manager
# src/core/model/Domain
-# src/core/model/Typesystem
-# src/core/parser/Parser
-# src/core/parser/ParserStack
-# src/core/parser/Scope
+ src/core/model/Typesystem
+ src/core/parser/Parser
+ src/core/parser/ParserStack
+ src/core/parser/Scope
# src/core/script/Function
# src/core/script/Object
# src/core/script/ScriptEngine
# src/core/script/Variant
)
-#ADD_LIBRARY(ousia_boost
-# src/plugins/boost/FileLocator
-#)
+ADD_LIBRARY(ousia_boost
+ src/plugins/boost/FileLocator
+)
-#TARGET_LINK_LIBRARIES(ousia_boost
-# ousia_core
-# ${Boost_LIBRARIES}
-#)
+TARGET_LINK_LIBRARIES(ousia_boost
+ ousia_core
+ ${Boost_LIBRARIES}
+)
-#ADD_LIBRARY(ousia_css
-# src/plugins/css/CSSParser
-#)
+ADD_LIBRARY(ousia_css
+ src/plugins/css/CSSParser
+)
-#TARGET_LINK_LIBRARIES(ousia_css
-# ousia_core
-#)
+TARGET_LINK_LIBRARIES(ousia_css
+ ousia_core
+)
-#ADD_LIBRARY(ousia_xml
-# src/plugins/xml/XmlParser
-#)
+ADD_LIBRARY(ousia_xml
+ src/plugins/xml/XmlParser
+)
-#TARGET_LINK_LIBRARIES(ousia_xml
-# ousia_core
-# ${EXPAT_LIBRARIES}
-#)
+TARGET_LINK_LIBRARIES(ousia_xml
+ ousia_core
+ ${EXPAT_LIBRARIES}
+)
#ADD_LIBRARY(ousia_mozjs
# src/plugins/mozjs/MozJsScriptEngine
@@ -168,22 +168,22 @@ IF(TEST)
)
ADD_EXECUTABLE(ousia_test_core
-# test/core/CodeTokenizerTest
-# test/core/CSSTest
-# test/core/NodeTest
-# test/core/RangeSetTest
-# test/core/RegistryTest
-# test/core/ResourceLocatorTest
-# test/core/TokenizerTest
-# test/core/common/CharReaderTest
-# test/core/common/LoggerTest
-# test/core/common/VariantReaderTest
-# test/core/common/VariantTest
-# test/core/common/UtilsTest
+ test/core/CodeTokenizerTest
+ test/core/CSSTest
+ test/core/NodeTest
+ test/core/RangeSetTest
+ test/core/RegistryTest
+ test/core/ResourceLocatorTest
+ test/core/TokenizerTest
+ test/core/common/CharReaderTest
+ test/core/common/LoggerTest
+ test/core/common/VariantReaderTest
+ test/core/common/VariantTest
+ test/core/common/UtilsTest
test/core/managed/ManagedContainerTest
test/core/managed/ManagedTest
test/core/managed/ManagerTest
-# test/core/parser/ParserStackTest
+ test/core/parser/ParserStackTest
# test/core/script/FunctionTest
# test/core/script/ObjectTest
# test/core/script/VariantTest
@@ -194,35 +194,35 @@ IF(TEST)
ousia_core
)
-# ADD_EXECUTABLE(ousia_test_boost
-# test/plugins/boost/FileLocatorTest
-# )
+ ADD_EXECUTABLE(ousia_test_boost
+ test/plugins/boost/FileLocatorTest
+ )
-# TARGET_LINK_LIBRARIES(ousia_test_boost
-# ${GTEST_LIBRARIES}
-# ousia_core
-# ousia_boost
-# )
+ TARGET_LINK_LIBRARIES(ousia_test_boost
+ ${GTEST_LIBRARIES}
+ ousia_core
+ ousia_boost
+ )
-# ADD_EXECUTABLE(ousia_test_css
-# test/plugins/css/CSSParserTest
-# )
+ ADD_EXECUTABLE(ousia_test_css
+ test/plugins/css/CSSParserTest
+ )
-# TARGET_LINK_LIBRARIES(ousia_test_css
-# ${GTEST_LIBRARIES}
-# ousia_core
-# ousia_css
-# )
+ TARGET_LINK_LIBRARIES(ousia_test_css
+ ${GTEST_LIBRARIES}
+ ousia_core
+ ousia_css
+ )
-# ADD_EXECUTABLE(ousia_test_xml
-# test/plugins/xml/XmlParserTest
-# )
+ ADD_EXECUTABLE(ousia_test_xml
+ test/plugins/xml/XmlParserTest
+ )
-# TARGET_LINK_LIBRARIES(ousia_test_xml
-# ${GTEST_LIBRARIES}
-# ousia_core
-# ousia_xml
-# )
+ TARGET_LINK_LIBRARIES(ousia_test_xml
+ ${GTEST_LIBRARIES}
+ ousia_core
+ ousia_xml
+ )
# ADD_EXECUTABLE(ousia_test_mozjs
# test/plugins/mozjs/MozJsScriptEngineTest
@@ -236,9 +236,9 @@ IF(TEST)
# Register the unit tests
ADD_TEST(ousia_test_core ousia_test_core)
-# ADD_TEST(ousia_test_boost ousia_test_boost)
-# ADD_TEST(ousia_test_xml ousia_test_xml)
-# ADD_TEST(ousia_test_css ousia_test_css)
+ ADD_TEST(ousia_test_boost ousia_test_boost)
+ ADD_TEST(ousia_test_xml ousia_test_xml)
+ ADD_TEST(ousia_test_css ousia_test_css)
# ADD_TEST(ousia_test_mozjs ousia_test_mozjs)
ENDIF()
diff --git a/src/core/CSS.hpp b/src/core/CSS.hpp
index a54d956..06ddfc8 100644
--- a/src/core/CSS.hpp
+++ b/src/core/CSS.hpp
@@ -24,8 +24,8 @@
#include <tuple>
#include <core/common/Variant.hpp>
+#include <core/managed/Managed.hpp>
-#include "Managed.hpp"
#include "Node.hpp"
namespace ousia {
diff --git a/src/core/Node.hpp b/src/core/Node.hpp
index b7d050d..4bc95be 100644
--- a/src/core/Node.hpp
+++ b/src/core/Node.hpp
@@ -25,8 +25,8 @@
#include <vector>
#include <unordered_set>
-#include "Managed.hpp"
-#include "ManagedContainers.hpp"
+#include <core/managed/Managed.hpp>
+#include <core/managed/ManagedContainer.hpp>
namespace ousia {
@@ -512,33 +512,30 @@ public:
bool triggerEvent(Event &event, bool fromChild = false);
};
-template <class T, class Collection>
-class NodeGenericList : public ManagedGenericList<T, Collection> {
-protected:
- // TODO: Override addElement, deleteElement once this is necessary
-public:
- using ManagedGenericList<T, Collection>::ManagedGenericList;
-};
+// TODO: Use a different listener here for updating name maps
-template <class K, class T, class Collection>
-class NodeGenericMap : public ManagedGenericMap<K, T, Collection> {
-protected:
- // TODO: Override addElement, deleteElement once this is necessary
+template <class T, class Listener = DefaultListener<Handle<T>>>
+class NodeVector
+ : public ManagedGenericList<T, std::vector<Handle<T>>,
+ ListAccessor<Handle<T>>, Listener> {
public:
- using ManagedGenericMap<K, T, std::vector<Owned<T>>>::ManagedGenericMap;
+ using Base = ManagedGenericList<T, std::vector<Handle<T>>,
+ ListAccessor<Handle<T>>, Listener>;
+ using Base::ManagedGenericList;
};
-template <class T>
-class NodeVector : public NodeGenericList<T, std::vector<Owned<T>>> {
+template <class K, class T,
+ class Listener = DefaultListener<std::pair<K, Handle<T>>>>
+class NodeMap
+ : public ManagedGenericMap<K, T, std::map<K, Handle<T>>,
+ MapAccessor<std::pair<K, Handle<T>>>, Listener> {
public:
- using NodeGenericList<T, std::vector<Owned<T>>>::NodeGenericList;
+ using Base =
+ ManagedGenericMap<K, T, std::map<K, Handle<T>>,
+ MapAccessor<std::pair<K, Handle<T>>>, Listener>;
+ using Base::ManagedGenericMap;
};
-template <class K, class T>
-class NodeMap : public NodeGenericMap<K, T, std::map<K, Owned<T>>> {
-public:
- using NodeGenericMap<K, T, std::map<K, Owned<T>>>::NodeGenericMap;
-};
}
diff --git a/src/core/model/Domain.hpp b/src/core/model/Domain.hpp
index 565313f..40b48c6 100644
--- a/src/core/model/Domain.hpp
+++ b/src/core/model/Domain.hpp
@@ -27,7 +27,7 @@
#ifndef _OUSIA_MODEL_DOMAIN_HPP_
#define _OUSIA_MODEL_DOMAIN_HPP_
-#include <core/ManagedContainers.hpp>
+#include <core/managed/ManagedContainer.hpp>
#include <core/Node.hpp>
namespace ousia {
diff --git a/src/core/model/Typesystem.hpp b/src/core/model/Typesystem.hpp
index 77a862b..347adb8 100644
--- a/src/core/model/Typesystem.hpp
+++ b/src/core/model/Typesystem.hpp
@@ -30,7 +30,6 @@
#include <map>
#include <vector>
-#include <core/ManagedContainers.hpp>
#include <core/Node.hpp>
#include <core/common/Exceptions.hpp>
#include <core/common/Logger.hpp>
@@ -361,7 +360,7 @@ public:
class Typesystem : public Node {
private:
- ManagedVector<Type> types;
+ NodeVector<Type> types;
public:
Typesystem(Manager &mgr, std::string name, Handle<Node> parent = nullptr)
diff --git a/test/core/NodeTest.cpp b/test/core/NodeTest.cpp
index 182dfdd..334fcc8 100644
--- a/test/core/NodeTest.cpp
+++ b/test/core/NodeTest.cpp
@@ -18,7 +18,7 @@
#include <gtest/gtest.h>
-#include <core/Managed.hpp>
+#include <core/managed/Managed.hpp>
#include <core/Node.hpp>