diff --git a/alib2common/src/container/ObjectsDeque.cpp b/alib2common/src/container/ObjectsDeque.cpp index 252bcd8fcf28b7f9f6b22fd8f132e075dd82c17c..7d1699eeef46cd8fd328cf0c21fc3b85b8717c7c 100644 --- a/alib2common/src/container/ObjectsDeque.cpp +++ b/alib2common/src/container/ObjectsDeque.cpp @@ -7,11 +7,12 @@ #include "ObjectsDeque.h" #include "Container.h" -#include <object/Object.h> + +#include <registration/TypeRegistration.hpp> namespace alib { -auto objectsDequeParserRegister = xmlApi < container::Container >::ParserRegister < container::ObjectsDeque < > > (); -auto objectsDequeParserRegister2 = xmlApi < alib::Object >::ParserRegister < container::ObjectsDeque < > > (); +auto objectsDequeType = registration::TypeRegister < container::Container, container::ObjectsDeque < > > (); +auto objectsDequeType2 = registration::TypeRegister < alib::Object, container::ObjectsDeque < > > (); } /* namespace alib */ diff --git a/alib2common/src/container/ObjectsList.cpp b/alib2common/src/container/ObjectsList.cpp index 03444089e9263940c32dd9a076e5e0884e1a4d6f..9a63bc195e057737d00558c15170550d3117333d 100644 --- a/alib2common/src/container/ObjectsList.cpp +++ b/alib2common/src/container/ObjectsList.cpp @@ -6,12 +6,13 @@ */ #include "ObjectsList.h" - #include "Container.h" +#include <registration/TypeRegistration.hpp> + namespace alib { -auto objectsListParserRegister = xmlApi < container::Container >::ParserRegister < container::ObjectsList < > > (); -auto objectsListParserRegister2 = xmlApi < alib::Object >::ParserRegister < container::ObjectsList < > > (); +auto objectsListType = registration::TypeRegister < container::Container, container::ObjectsList < > > (); +auto objectsListType2 = registration::TypeRegister < alib::Object, container::ObjectsList < > > (); } /* namespace alib */ diff --git a/alib2common/src/container/ObjectsMap.cpp b/alib2common/src/container/ObjectsMap.cpp index e6b75bf7c13dc0e6f68bb6b6f8e423b57528ac3a..5619bc67a9a332b0c987473117315442b336d2d1 100644 --- a/alib2common/src/container/ObjectsMap.cpp +++ b/alib2common/src/container/ObjectsMap.cpp @@ -6,13 +6,13 @@ */ #include "ObjectsMap.h" - #include "Container.h" -#include <core/xmlApi.hpp> + +#include <registration/TypeRegistration.hpp> namespace alib { -auto objectsMapParserRegister = xmlApi < container::Container >::ParserRegister < container::ObjectsMap < > > ( ); -auto objectsMapParserRegister2 = xmlApi < alib::Object >::ParserRegister < container::ObjectsMap < > > ( ); +auto objectsMapType = registration::TypeRegister < container::Container, container::ObjectsMap < > > ( ); +auto objectsMapType2 = registration::TypeRegister < alib::Object, container::ObjectsMap < > > ( ); } /* namespace alib */ diff --git a/alib2common/src/container/ObjectsPair.cpp b/alib2common/src/container/ObjectsPair.cpp index c647e48734d985f0449c8f49470b1b10b112882b..c26f9c1b0c3993b0e56ebe99338ee8630d4172a9 100644 --- a/alib2common/src/container/ObjectsPair.cpp +++ b/alib2common/src/container/ObjectsPair.cpp @@ -6,14 +6,13 @@ */ #include "ObjectsPair.h" - - #include "Container.h" -#include <core/xmlApi.hpp> + +#include <registration/TypeRegistration.hpp> namespace alib { -auto objectsPairParserRegister = xmlApi < container::Container >::ParserRegister < container::ObjectsPair < > > ( ); -auto objectsPairParserRegister2 = xmlApi < alib::Object >::ParserRegister < container::ObjectsPair < > > ( ); +auto objectsPairType = registration::TypeRegister < container::Container, container::ObjectsPair < > > ( ); +auto objectsPairType2 = registration::TypeRegister < alib::Object, container::ObjectsPair < > > ( ); } /* namespace alib */ diff --git a/alib2common/src/container/ObjectsSet.cpp b/alib2common/src/container/ObjectsSet.cpp index 34d3ebc2d9c5c28a866ddd1a104e642e75edeedc..2fc45818e3b344e9709e4de7a85a73fb823cd8b5 100644 --- a/alib2common/src/container/ObjectsSet.cpp +++ b/alib2common/src/container/ObjectsSet.cpp @@ -6,12 +6,13 @@ */ #include "ObjectsSet.h" - #include "Container.h" +#include <registration/TypeRegistration.hpp> + namespace alib { -auto objectsSetParserRegister = xmlApi < container::Container >::ParserRegister < container::ObjectsSet < > > ( ); -auto objectsSetParserRegister2 = xmlApi < alib::Object >::ParserRegister < container::ObjectsSet < > > ( ); +auto objectsSetType = registration::TypeRegister < container::Container, container::ObjectsSet < > > ( ); +auto objectsSetType2 = registration::TypeRegister < alib::Object, container::ObjectsSet < > > ( ); } /* namespace alib */ diff --git a/alib2common/src/container/ObjectsTree.cpp b/alib2common/src/container/ObjectsTree.cpp index 18a44a84c09f62a70f61cba6baf83469b4adfefa..e132a97821f66c961ab93a286212f4a6d12f50b3 100644 --- a/alib2common/src/container/ObjectsTree.cpp +++ b/alib2common/src/container/ObjectsTree.cpp @@ -6,12 +6,13 @@ */ #include "ObjectsTree.h" - #include "Container.h" +#include <registration/TypeRegistration.hpp> + namespace alib { -auto objectsTreeParserRegister = xmlApi < container::Container >::ParserRegister < container::ObjectsTree < > > ( ); -auto objectsTreeParserRegister2 = xmlApi < alib::Object >::ParserRegister < container::ObjectsTree < > > ( ); +auto objectsTreeType = registration::TypeRegister < container::Container, container::ObjectsTree < > > ( ); +auto objectsTreeType2 = registration::TypeRegister < alib::Object, container::ObjectsTree < > > ( ); } /* namespace alib */ diff --git a/alib2common/src/container/ObjectsTrie.cpp b/alib2common/src/container/ObjectsTrie.cpp index 866e7dec42d95aee4f9dd8a2e789e576d9095ddc..9f3f3fbc63cb240d14684cef97fad80828aa15bc 100644 --- a/alib2common/src/container/ObjectsTrie.cpp +++ b/alib2common/src/container/ObjectsTrie.cpp @@ -6,12 +6,13 @@ */ #include "ObjectsTrie.h" - #include "Container.h" +#include <registration/TypeRegistration.hpp> + namespace alib { -auto objectsTrieParserRegister = xmlApi < container::Container >::ParserRegister < container::ObjectsTrie < > > ( ); -auto objectsTrieParserRegister2 = xmlApi < alib::Object >::ParserRegister < container::ObjectsTrie < > > ( ); +auto objectsTrieType = registration::TypeRegister < container::Container, container::ObjectsTrie < > > ( ); +auto objectsTrieType2 = registration::TypeRegister < alib::Object, container::ObjectsTrie < > > ( ); } /* namespace alib */ diff --git a/alib2common/src/container/ObjectsVector.cpp b/alib2common/src/container/ObjectsVector.cpp index 8ac252629ac157999c0191b0c73433d0469eaf15..dfe18abccdf2c45e87b34177d5bae6270ea78b62 100644 --- a/alib2common/src/container/ObjectsVector.cpp +++ b/alib2common/src/container/ObjectsVector.cpp @@ -6,12 +6,13 @@ */ #include "ObjectsVector.h" - #include "Container.h" +#include <registration/TypeRegistration.hpp> + namespace alib { -auto objectsVectorParserRegister = xmlApi < container::Container >::ParserRegister < container::ObjectsVector < > > ( ); -auto objectsVectorParserRegister2 = xmlApi < alib::Object >::ParserRegister < container::ObjectsVector < > > ( ); +auto objectsVectorType = registration::TypeRegister < container::Container, container::ObjectsVector < > > ( ); +auto objectsVectorType2 = registration::TypeRegister < alib::Object, container::ObjectsVector < > > ( ); } /* namespace alib */ diff --git a/alib2common/src/core/xmlApi.hpp b/alib2common/src/core/xmlApi.hpp index f57dd9b6b2101061cfe0fbde8a74f33bcdaca64c..4f3dbdf35bc2245bcf1d72015ea8cee2895838dd 100644 --- a/alib2common/src/core/xmlApi.hpp +++ b/alib2common/src/core/xmlApi.hpp @@ -21,13 +21,9 @@ #include "exception/CommonException.h" #include <global/GlobalData.h> -#include <introspection/DataTypes.hpp> namespace alib { -template < typename T, typename Enable = void > -struct xmlApi { }; - class xmlApiInputContext : public std::deque < sax::Token >::iterator { template < typename T, typename Enable > friend struct xmlApi; @@ -80,37 +76,49 @@ public: }; +template < typename T, typename Enable = void > +struct xmlApi { }; + +template < typename Type > +struct xmlApi < Type, typename std::enable_if < std::is_base_of < ObjectBase, Type >::value >::type > { + static Type parse ( std::deque < sax::Token >::iterator & input ) { + return Type::parse ( input ); + } + + static bool first ( const std::deque < sax::Token >::const_iterator & input ) { + return sax::FromXMLParserHelper::isToken ( input, sax::Token::TokenType::START_ELEMENT, xmlTagName() ); + } + + static std::string xmlTagName ( ) { + return Type::getXmlTagName(); + } + + static void compose ( std::deque < sax::Token > & output, const Type & data ) { + data.compose ( output ); + } + +}; + template < typename Group > struct xmlApi < Group, typename std::enable_if < std::is_base_of < WrapperBaseBase, Group >::value >::type > { - class ParserRegisterBase { +private: + class GroupParser { public: virtual Group parse ( std::deque < sax::Token >::iterator & input ) = 0; }; - static std::map < std::string, typename xmlApi < Group >::ParserRegisterBase * > & parseFunctions ( ) { - static std::map < std::string, typename xmlApi < Group >::ParserRegisterBase * > res; + static std::map < std::string, typename xmlApi < Group >::GroupParser * > & parseFunctions ( ) { + static std::map < std::string, typename xmlApi < Group >::GroupParser * > res; return res; } -public: template < class Type > - class ParserRegister : public ParserRegisterBase { + class ParserRegister : public GroupParser { std::function < Type ( std::deque < sax::Token >::iterator & ) > parseFunction; public: ParserRegister( ) : parseFunction ( Type::parse ) { - bool res = parseFunctions ( ).insert ( std::make_pair ( Type::getXmlTagName(), this ) ).second; - if ( ! res ) { - std::string groupName = std::type_name < Group > ( ); - std::string typeName = std::type_name < Type > ( ); - - throw::exception::CommonException ( "Parse callback of " + typeName + " already registered in group " + groupName + "." ); - } - - // maybe not so good since empty group may not be created but at least it does not polute the code of datatypes - introspection::DataTypes::registerTypeInGroup < Type, Group > ( ); - introspection::DataTypes::registerGroup < Group > ( ); } virtual Group parse ( std::deque < sax::Token >::iterator & input ) { @@ -119,6 +127,18 @@ public: }; +public: + template < class Type > + static void registerType ( ) { + bool res = parseFunctions ( ).insert ( std::make_pair ( xmlApi < Type >::xmlTagName(), new ParserRegister < Type > ( ) ) ).second; + if ( ! res ) { + std::string groupName = std::type_name < Group > ( ); + std::string typeName = std::type_name < Type > ( ); + + throw::exception::CommonException ( "Parse callback of " + typeName + " already registered in group " + groupName + "." ); + } + } + static Group parse ( std::deque < sax::Token >::iterator & data ) { xmlApiInputContext & input = ( xmlApiInputContext & ) data; sax::FromXMLParserHelper::skipAttributes ( input, sax::Token::TokenType::START_ELEMENT ); @@ -139,7 +159,7 @@ public: return * ( ( Group * ) elem->second ); } else { - typename std::map < std::string, ParserRegisterBase * >::iterator callback = parseFunctions ( ).find ( tagName ); + typename std::map < std::string, GroupParser * >::iterator callback = parseFunctions ( ).find ( tagName ); if ( callback == parseFunctions ( ).end ( ) ) throw exception::CommonException ( "Parse callback for " + tagName + " tag not registered." ); @@ -166,7 +186,7 @@ public: if ( tagName == "Ref" ) return true; - typename std::map < std::string, ParserRegisterBase * >::iterator callback = parseFunctions ( ).find ( tagName ); + typename std::map < std::string, GroupParser * >::iterator callback = parseFunctions ( ).find ( tagName ); if ( callback == parseFunctions ( ).end ( ) ) return false; @@ -214,26 +234,6 @@ public: }; -template < typename Type > -struct xmlApi < Type, typename std::enable_if < std::is_base_of < ObjectBase, Type >::value >::type > { - static Type parse ( std::deque < sax::Token >::iterator & input ) { - return Type::parse ( input ); - } - - static bool first ( const std::deque < sax::Token >::const_iterator & input ) { - return sax::FromXMLParserHelper::isToken ( input, sax::Token::TokenType::START_ELEMENT, xmlTagName() ); - } - - static std::string xmlTagName ( ) { - return Type::getXmlTagName(); - } - - static void compose ( std::deque < sax::Token > & output, const Type & data ) { - data.compose ( output ); - } - -}; - } /* namespace alib */ #endif /* XML_API_HPP_ */ diff --git a/alib2common/src/exception/CommonException.cpp b/alib2common/src/exception/CommonException.cpp index 42227afaec3b0d5c3063b731e665a6195f466fef..329b18f71d9e18f626d48ccfafddb35a4fb800f1 100644 --- a/alib2common/src/exception/CommonException.cpp +++ b/alib2common/src/exception/CommonException.cpp @@ -13,6 +13,8 @@ #include "../object/UniqueObject.h" #include "../global/GlobalData.h" +#include <registration/TypeRegistration.hpp> + #ifdef DEBUG #include "../debug/simpleStacktrace.h" #endif @@ -124,6 +126,6 @@ alib::ObjectBase* CommonException::inc() && { namespace alib { -auto alibExceptionParserRegister2 = xmlApi<alib::Object>::ParserRegister<exception::CommonException>(); +auto alibExceptionType = registration::TypeRegister<alib::Object, exception::CommonException>(); } /* namespace alib */ diff --git a/alib2common/src/object/UniqueObject.cpp b/alib2common/src/object/UniqueObject.cpp index ad422577814a08c2734f34f65ac49ba08610bc0a..c8c8597974ea3e6733cf81411692314f01de8ee6 100644 --- a/alib2common/src/object/UniqueObject.cpp +++ b/alib2common/src/object/UniqueObject.cpp @@ -8,7 +8,8 @@ #include "UniqueObject.h" #include <sstream> #include <sax/FromXMLParserHelper.h> -#include <core/xmlApi.hpp> + +#include <registration/TypeRegistration.hpp> namespace alib { @@ -83,6 +84,6 @@ ObjectBase* UniqueObject::inc() && { namespace alib { -auto uniqueSymbolParserRegister2 = xmlApi<alib::Object>::ParserRegister<alib::UniqueObject>(); +auto uniqueSymbolType2 = registration::TypeRegister < alib::Object, alib::UniqueObject > (); } /* namespace alib */ diff --git a/alib2common/src/object/Void.cpp b/alib2common/src/object/Void.cpp index 4a9850c37957154599830206b6a46721a20dd679..82c9515b5d645f4b43b3845f5742cc62ad7ffbc1 100644 --- a/alib2common/src/object/Void.cpp +++ b/alib2common/src/object/Void.cpp @@ -8,9 +8,10 @@ #include "Void.h" #include "../sax/FromXMLParserHelper.h" #include "Object.h" -#include "../core/xmlApi.hpp" #include "UniqueObject.h" +#include <registration/TypeRegistration.hpp> + namespace alib { Void::Void() { @@ -70,7 +71,7 @@ void xmlApi<void>::compose(std::deque<sax::Token>& output) { output.emplace_back(Void::getXmlTagName(), sax::Token::TokenType::END_ELEMENT); } -auto voidParserRegister = xmlApi<alib::Object>::ParserRegister<alib::Void>(); +auto voidType = registration::TypeRegister < alib::Object, alib::Void > (); } /* namespace alib */ diff --git a/alib2common/src/primitive/Bool.cpp b/alib2common/src/primitive/Bool.cpp index 3bcf20c114c3a8c607fa1bfde59609f4a9360241..ac2513e84d0044e7e1dcb00366cb3ac7e671c037 100644 --- a/alib2common/src/primitive/Bool.cpp +++ b/alib2common/src/primitive/Bool.cpp @@ -11,6 +11,8 @@ #include "Primitive.h" #include <object/Object.h> +#include <registration/TypeRegistration.hpp> + namespace primitive { Bool::Bool(bool data) : m_data(data) { @@ -105,7 +107,7 @@ void xmlApi<bool>::compose(std::deque<sax::Token>& output, bool data) { primitive::Bool::compose(output, data); } -auto boolParserRegister = xmlApi<primitive::Primitive>::ParserRegister<primitive::Bool>(); -auto boolParserRegister2 = xmlApi<alib::Object>::ParserRegister<primitive::Bool>(); +auto boolType = registration::TypeRegister < primitive::Primitive, primitive::Bool > (); +auto boolType2 = registration::TypeRegister < alib::Object, primitive::Bool > (); } /* namespace alib */ diff --git a/alib2common/src/primitive/Character.cpp b/alib2common/src/primitive/Character.cpp index 297ced502f0d545c16ef3cb326d5af98be6c16f6..de5d9244a5d2c7bfe7aa8afc33a9693feeab71c6 100644 --- a/alib2common/src/primitive/Character.cpp +++ b/alib2common/src/primitive/Character.cpp @@ -10,6 +10,8 @@ #include "Primitive.h" #include <object/Object.h> +#include <registration/TypeRegistration.hpp> + namespace primitive { Character::Character(char data) : m_data(data) { @@ -94,8 +96,8 @@ void xmlApi<char>::compose(std::deque<sax::Token>& output, char data) { primitive::Character::compose(output, data); } -auto characterParserRegister = xmlApi<primitive::Primitive>::ParserRegister<primitive::Character>(); -auto characterParserRegister2 = xmlApi<alib::Object>::ParserRegister<primitive::Character>(); +auto characterType = registration::TypeRegister < primitive::Primitive, primitive::Character > (); +auto characterType2 = registration::TypeRegister < alib::Object, primitive::Character > (); } /* namespace alib */ diff --git a/alib2common/src/primitive/Double.cpp b/alib2common/src/primitive/Double.cpp index 3acb1e041f0571a205c7c28aade67fadc5180e58..80f17cc3b2bfc67b826e66b998fd30f8dec676c1 100644 --- a/alib2common/src/primitive/Double.cpp +++ b/alib2common/src/primitive/Double.cpp @@ -10,6 +10,8 @@ #include "Primitive.h" #include <object/Object.h> +#include <registration/TypeRegistration.hpp> + namespace primitive { Double::Double(double data) : m_data(data) { @@ -99,8 +101,8 @@ void xmlApi<double>::compose(std::deque<sax::Token>& output, double data) { primitive::Double::compose(output, data); } -auto doubleParserRegister = xmlApi<primitive::Primitive>::ParserRegister<primitive::Double>(); -auto doubleParserRegister2 = xmlApi<alib::Object>::ParserRegister<primitive::Double>(); +auto doubleType = registration::TypeRegister < primitive::Primitive, primitive::Double > (); +auto doubleType2 = registration::TypeRegister < alib::Object, primitive::Double > (); } /* namespace alib */ diff --git a/alib2common/src/primitive/Integer.cpp b/alib2common/src/primitive/Integer.cpp index 89b960661d67fdfcda1c69905301c1b4bd63a24b..d20f8689966a30731b6f93ea67f84e90bff91b97 100644 --- a/alib2common/src/primitive/Integer.cpp +++ b/alib2common/src/primitive/Integer.cpp @@ -10,6 +10,8 @@ #include "Primitive.h" #include <object/Object.h> +#include <registration/TypeRegistration.hpp> + namespace primitive { Integer::Integer(int data) : m_data(data) { @@ -94,8 +96,8 @@ void xmlApi<int>::compose(std::deque<sax::Token>& output, int data) { primitive::Integer::compose(output, data); } -auto integerParserRegister = xmlApi<primitive::Primitive>::ParserRegister<primitive::Integer>(); -auto integerParserRegister2 = xmlApi<alib::Object>::ParserRegister<primitive::Integer>(); +auto integerType = registration::TypeRegister < primitive::Primitive, primitive::Integer > (); +auto integerType2 = registration::TypeRegister < alib::Object, primitive::Integer > (); } /* namespace alib */ diff --git a/alib2common/src/primitive/String.cpp b/alib2common/src/primitive/String.cpp index 0799334fd71aa9d57f22d78ee868bda4a562fc53..223bc4061cf19e2b7e03cab1241dbf13dc712e58 100644 --- a/alib2common/src/primitive/String.cpp +++ b/alib2common/src/primitive/String.cpp @@ -10,6 +10,8 @@ #include "Primitive.h" #include <object/Object.h> +#include <registration/TypeRegistration.hpp> + namespace primitive { String::String(std::string data) : m_data(std::move(data)) { @@ -97,8 +99,8 @@ void xmlApi<std::string>::compose(std::deque<sax::Token>& output, std::string da primitive::String::compose(output, data); } -auto stringParserRegister = xmlApi<primitive::Primitive>::ParserRegister<primitive::String>(); -auto stringParserRegister2 = xmlApi<alib::Object>::ParserRegister<primitive::String>(); +auto stringType = registration::TypeRegister < primitive::Primitive, primitive::String > (); +auto stringType2 = registration::TypeRegister < alib::Object, primitive::String > (); } /* namespace alib */ diff --git a/alib2common/src/primitive/Unsigned.cpp b/alib2common/src/primitive/Unsigned.cpp index 0b0f02eb564766f91fd74949af4b13a1b8f443fc..2eff2fd218ba7cbca51d6aa27e15e335db4f5441 100644 --- a/alib2common/src/primitive/Unsigned.cpp +++ b/alib2common/src/primitive/Unsigned.cpp @@ -10,6 +10,8 @@ #include "Primitive.h" #include <object/Object.h> +#include <registration/TypeRegistration.hpp> + namespace primitive { Unsigned::Unsigned(unsigned data) : m_data(data) { @@ -98,8 +100,8 @@ void xmlApi<unsigned>::compose(std::deque<sax::Token>& output, unsigned data) { primitive::Unsigned::compose(output, data); } -auto unsignedParserRegister = xmlApi<primitive::Primitive>::ParserRegister<primitive::Unsigned>(); -auto unsignedParserRegister2 = xmlApi<alib::Object>::ParserRegister<primitive::Unsigned>(); +auto unsignedType = registration::TypeRegister < primitive::Primitive, primitive::Unsigned > (); +auto unsignedType2 = registration::TypeRegister < alib::Object, primitive::Unsigned > (); } /* namespace alib */ diff --git a/alib2common/src/primitive/UnsignedLong.cpp b/alib2common/src/primitive/UnsignedLong.cpp index 0fed03b14f380c19962b931addd1a62710d27019..154b5bbc10c7899bc0333b97738830911a560b6c 100644 --- a/alib2common/src/primitive/UnsignedLong.cpp +++ b/alib2common/src/primitive/UnsignedLong.cpp @@ -10,6 +10,8 @@ #include "Primitive.h" #include <object/Object.h> +#include <registration/TypeRegistration.hpp> + namespace primitive { UnsignedLong::UnsignedLong(unsigned long data) : m_data(data) { @@ -94,8 +96,8 @@ void xmlApi<unsigned long>::compose(std::deque<sax::Token>& output, unsigned lon primitive::UnsignedLong::compose(output, data); } -auto unsignedLongParserRegister = xmlApi<primitive::Primitive>::ParserRegister<primitive::UnsignedLong>(); -auto unsignedLongParserRegister2 = xmlApi<alib::Object>::ParserRegister<primitive::UnsignedLong>(); +auto unsignedLongType = registration::TypeRegister < primitive::Primitive, primitive::UnsignedLong > (); +auto unsignedLongType2 = registration::TypeRegister < alib::Object, primitive::UnsignedLong > (); } /* namespace alib */ diff --git a/alib2common/src/registration/TypeRegistration.hpp b/alib2common/src/registration/TypeRegistration.hpp new file mode 100644 index 0000000000000000000000000000000000000000..00042d31f1e3ff3285fdf4c4ec043bcae32190f2 --- /dev/null +++ b/alib2common/src/registration/TypeRegistration.hpp @@ -0,0 +1,21 @@ +#ifndef _TYPE_REGISTRATION_HPP_ +#define _TYPE_REGISTRATION_HPP_ + +#include <core/xmlApi.hpp> +#include <introspection/DataTypes.hpp> + +namespace registration { + +template < class Group, class Type > +class TypeRegister { +public: + TypeRegister ( ) { + alib::xmlApi < Group >::template registerType < Type > ( ); + introspection::DataTypes::registerTypeInGroup < Type, Group > ( ); + introspection::DataTypes::registerGroup < Group > ( ); + } +}; + +} /* namespace registration */ + +#endif // _TYPE_REGISTRATION_HPP_ diff --git a/alib2data/src/alphabet/BarSymbol.cpp b/alib2data/src/alphabet/BarSymbol.cpp index d18bfb07b53d3a4af426efc7d31089f6864e9dab..8da1d499cbbf3161c795d6f4198b5b431ac09c76 100644 --- a/alib2data/src/alphabet/BarSymbol.cpp +++ b/alib2data/src/alphabet/BarSymbol.cpp @@ -9,7 +9,7 @@ #include <sax/FromXMLParserHelper.h> #include "Symbol.h" #include <object/Object.h> -#include <core/xmlApi.hpp> +#include <registration/TypeRegistration.hpp> #include "UniqueSymbol.h" namespace alphabet { @@ -57,7 +57,7 @@ SymbolBase* BarSymbol::inc() && { namespace alib { -auto barSymbolParserRegister = xmlApi<alphabet::Symbol>::ParserRegister<alphabet::BarSymbol>(); -auto barSymbolParserRegister2 = xmlApi<alib::Object>::ParserRegister<alphabet::BarSymbol>(); +auto barSymbolType = registration::TypeRegister < alphabet::Symbol, alphabet::BarSymbol > (); +auto barSymbolType2 = registration::TypeRegister < alib::Object, alphabet::BarSymbol > (); } /* namespace alib */ diff --git a/alib2data/src/alphabet/BlankSymbol.cpp b/alib2data/src/alphabet/BlankSymbol.cpp index 2551a6b65e65996e4b2ee9c615254db1d61118c4..b9fce512de7c1f614cd226c09ceaab5941db1018 100644 --- a/alib2data/src/alphabet/BlankSymbol.cpp +++ b/alib2data/src/alphabet/BlankSymbol.cpp @@ -9,7 +9,7 @@ #include <sax/FromXMLParserHelper.h> #include "Symbol.h" #include <object/Object.h> -#include <core/xmlApi.hpp> +#include <registration/TypeRegistration.hpp> #include "UniqueSymbol.h" namespace alphabet { @@ -57,7 +57,7 @@ SymbolBase* BlankSymbol::inc() && { namespace alib { -auto blankSymbolParserRegister = xmlApi<alphabet::Symbol>::ParserRegister<alphabet::BlankSymbol>(); -auto blankSymbolParserRegister2 = xmlApi<alib::Object>::ParserRegister<alphabet::BlankSymbol>(); +auto blankSymbolType = registration::TypeRegister < alphabet::Symbol, alphabet::BlankSymbol > (); +auto blankSymbolType2 = registration::TypeRegister < alib::Object, alphabet::BlankSymbol > (); } /* namespace alib */ diff --git a/alib2data/src/alphabet/BottomOfTheStackSymbol.cpp b/alib2data/src/alphabet/BottomOfTheStackSymbol.cpp index ec403cd907700e55ef4254e3b5950736afb99497..c81b0768153f242386e0feff0590b93e908a02cc 100644 --- a/alib2data/src/alphabet/BottomOfTheStackSymbol.cpp +++ b/alib2data/src/alphabet/BottomOfTheStackSymbol.cpp @@ -9,7 +9,7 @@ #include <sax/FromXMLParserHelper.h> #include "Symbol.h" #include <object/Object.h> -#include <core/xmlApi.hpp> +#include <registration/TypeRegistration.hpp> #include "UniqueSymbol.h" namespace alphabet { @@ -58,7 +58,7 @@ SymbolBase* BottomOfTheStackSymbol::inc() && { namespace alib { -auto bottomOfTheStackSymbolParserRegister = xmlApi<alphabet::Symbol>::ParserRegister<alphabet::BottomOfTheStackSymbol>(); -auto bottomOfTheStackSymbolParserRegister2 = xmlApi<alib::Object>::ParserRegister<alphabet::BottomOfTheStackSymbol>(); +auto bottomOfTheStackSymbolType = registration::TypeRegister < alphabet::Symbol, alphabet::BottomOfTheStackSymbol > (); +auto bottomOfTheStackSymbolType2 = registration::TypeRegister < alib::Object, alphabet::BottomOfTheStackSymbol > (); } /* namespace alib */ diff --git a/alib2data/src/alphabet/EndSymbol.cpp b/alib2data/src/alphabet/EndSymbol.cpp index 74fab90d2f53eb75ee244e32bab833bc74b7ad93..0140143ca73314e853b2571e5faa834c73ae76ad 100644 --- a/alib2data/src/alphabet/EndSymbol.cpp +++ b/alib2data/src/alphabet/EndSymbol.cpp @@ -9,7 +9,7 @@ #include <sax/FromXMLParserHelper.h> #include "Symbol.h" #include <object/Object.h> -#include <core/xmlApi.hpp> +#include <registration/TypeRegistration.hpp> #include "UniqueSymbol.h" namespace alphabet { @@ -57,7 +57,7 @@ SymbolBase* EndSymbol::inc() && { namespace alib { -auto endSymbolParserRegister = xmlApi<alphabet::Symbol>::ParserRegister<alphabet::EndSymbol>(); -auto endSymbolParserRegister2 = xmlApi<alib::Object>::ParserRegister<alphabet::EndSymbol>(); +auto endSymbolType = registration::TypeRegister < alphabet::Symbol, alphabet::EndSymbol > (); +auto endSymbolType2 = registration::TypeRegister < alib::Object, alphabet::EndSymbol > (); } /* namespace alib */ diff --git a/alib2data/src/alphabet/InitialSymbol.cpp b/alib2data/src/alphabet/InitialSymbol.cpp index 16a32d941d77a2a27b36372c62f7872fcbda71f0..e4d690cd80159dd66385e7ef8948c098275ec8aa 100644 --- a/alib2data/src/alphabet/InitialSymbol.cpp +++ b/alib2data/src/alphabet/InitialSymbol.cpp @@ -9,7 +9,7 @@ #include <sax/FromXMLParserHelper.h> #include "Symbol.h" #include <object/Object.h> -#include <core/xmlApi.hpp> +#include <registration/TypeRegistration.hpp> #include "UniqueSymbol.h" namespace alphabet { @@ -57,7 +57,7 @@ SymbolBase* InitialSymbol::inc() && { namespace alib { -auto initialStateParserRegister = xmlApi<alphabet::Symbol>::ParserRegister<alphabet::InitialSymbol>(); -auto initialStateParserRegister2 = xmlApi<alib::Object>::ParserRegister<alphabet::InitialSymbol>(); +auto initialStateType = registration::TypeRegister < alphabet::Symbol, alphabet::InitialSymbol > (); +auto initialStateType2 = registration::TypeRegister < alib::Object, alphabet::InitialSymbol > (); } /* namespace alib */ diff --git a/alib2data/src/alphabet/LabeledSymbol.cpp b/alib2data/src/alphabet/LabeledSymbol.cpp index e84759fef8d6672f6ee0d2ac97c9e92448814463..fab8dfaeeb6c6e6484afc4f6d3b5dabefc75f1fe 100644 --- a/alib2data/src/alphabet/LabeledSymbol.cpp +++ b/alib2data/src/alphabet/LabeledSymbol.cpp @@ -9,7 +9,7 @@ #include <sax/FromXMLParserHelper.h> #include "Symbol.h" #include <object/Object.h> -#include <core/xmlApi.hpp> +#include <registration/TypeRegistration.hpp> namespace alphabet { @@ -79,7 +79,7 @@ SymbolBase* LabeledSymbol::inc() && { namespace alib { -auto labeledSymbolParserRegister = xmlApi<alphabet::Symbol>::ParserRegister<alphabet::LabeledSymbol>(); -auto labeledSymbolParserRegister2 = xmlApi<alib::Object>::ParserRegister<alphabet::LabeledSymbol>(); +auto labeledSymbolType = registration::TypeRegister < alphabet::Symbol, alphabet::LabeledSymbol > (); +auto labeledSymbolType2 = registration::TypeRegister < alib::Object, alphabet::LabeledSymbol > (); } /* namespace alib */ diff --git a/alib2data/src/alphabet/NonlinearVariableSymbol.cpp b/alib2data/src/alphabet/NonlinearVariableSymbol.cpp index b2e025120f52e3d924761448821384b36fe8acd5..a6864b65b6ddcd013ab8b54b99d5b7e4d08c757d 100644 --- a/alib2data/src/alphabet/NonlinearVariableSymbol.cpp +++ b/alib2data/src/alphabet/NonlinearVariableSymbol.cpp @@ -8,11 +8,11 @@ #include "NonlinearVariableSymbol.h" #include "Symbol.h" #include <object/Object.h> -#include <core/xmlApi.hpp> +#include <registration/TypeRegistration.hpp> namespace alib { -auto nonlinearVariableSymbolParserRegister = xmlApi < alphabet::Symbol >::ParserRegister < alphabet::NonlinearVariableSymbol < > > ( ); -auto nonlinearVariableSymbolParserRegister2 = xmlApi < alib::Object >::ParserRegister < alphabet::NonlinearVariableSymbol < > > ( ); +auto nonlinearVariableSymbolType = registration::TypeRegister < alphabet::Symbol, alphabet::NonlinearVariableSymbol < > > ( ); +auto nonlinearVariableSymbolType2 = registration::TypeRegister < alib::Object, alphabet::NonlinearVariableSymbol < > > ( ); } /* namespace alib */ diff --git a/alib2data/src/alphabet/RankedSymbol.cpp b/alib2data/src/alphabet/RankedSymbol.cpp index a312a7452ba3e54dbb5e8f3c810f282ea1919038..002b5778581111f8aa1cbd4cf26de4e2bb38454f 100644 --- a/alib2data/src/alphabet/RankedSymbol.cpp +++ b/alib2data/src/alphabet/RankedSymbol.cpp @@ -7,11 +7,11 @@ #include "RankedSymbol.h" #include <object/Object.h> -#include <core/xmlApi.hpp> +#include <registration/TypeRegistration.hpp> namespace alib { -auto rankedSymbolParserRegister = xmlApi<alphabet::Symbol>::ParserRegister<alphabet::RankedSymbol < > >(); -auto rankedSymbolParserRegister2 = xmlApi<alib::Object>::ParserRegister<alphabet::RankedSymbol < > >(); +auto rankedSymbolType = registration::TypeRegister < alphabet::Symbol, alphabet::RankedSymbol < > > (); +auto rankedSymbolType2 = registration::TypeRegister < alib::Object, alphabet::RankedSymbol < > > (); } /* namespace alib */ diff --git a/alib2data/src/alphabet/StartSymbol.cpp b/alib2data/src/alphabet/StartSymbol.cpp index 64c3525af8a85100645d3eeb2d4914d961fb9042..ea257039ca1cc9f40c037636fa25a9d29c9e7bcb 100644 --- a/alib2data/src/alphabet/StartSymbol.cpp +++ b/alib2data/src/alphabet/StartSymbol.cpp @@ -9,7 +9,7 @@ #include <sax/FromXMLParserHelper.h> #include "Symbol.h" #include <object/Object.h> -#include <core/xmlApi.hpp> +#include <registration/TypeRegistration.hpp> #include "UniqueSymbol.h" namespace alphabet { @@ -57,7 +57,7 @@ SymbolBase* StartSymbol::inc() && { namespace alib { -auto startSymbolParserRegister = xmlApi<alphabet::Symbol>::ParserRegister<alphabet::StartSymbol>(); -auto startSymbolParserRegister2 = xmlApi<alib::Object>::ParserRegister<alphabet::StartSymbol>(); +auto startSymbolType = registration::TypeRegister < alphabet::Symbol, alphabet::StartSymbol > (); +auto startSymbolType2 = registration::TypeRegister < alib::Object, alphabet::StartSymbol > (); } /* namespace alib */ diff --git a/alib2data/src/alphabet/SubtreeWildcardSymbol.cpp b/alib2data/src/alphabet/SubtreeWildcardSymbol.cpp index bc7e63b7cc9df8735618c6be94f3d9cb68daa04c..5eccfae951e00446d8ce773daf4ce1b7482a6628 100644 --- a/alib2data/src/alphabet/SubtreeWildcardSymbol.cpp +++ b/alib2data/src/alphabet/SubtreeWildcardSymbol.cpp @@ -9,7 +9,7 @@ #include <sax/FromXMLParserHelper.h> #include "Symbol.h" #include <object/Object.h> -#include <core/xmlApi.hpp> +#include <registration/TypeRegistration.hpp> #include "UniqueSymbol.h" namespace alphabet { @@ -57,7 +57,7 @@ SymbolBase* SubtreeWildcardSymbol::inc() && { namespace alib { -auto subtreeWildcardSymbolParserRegister = xmlApi<alphabet::Symbol>::ParserRegister<alphabet::SubtreeWildcardSymbol>(); -auto subtreeWildcardSymbolParserRegister2 = xmlApi<alib::Object>::ParserRegister<alphabet::SubtreeWildcardSymbol>(); +auto subtreeWildcardSymbolType = registration::TypeRegister < alphabet::Symbol, alphabet::SubtreeWildcardSymbol > (); +auto subtreeWildcardSymbolType2 = registration::TypeRegister < alib::Object, alphabet::SubtreeWildcardSymbol > (); } /* namespace alib */ diff --git a/alib2data/src/alphabet/UniqueSymbol.cpp b/alib2data/src/alphabet/UniqueSymbol.cpp index 85aa4edfd0498293b03d1945ed63760380ef6e02..8952695e39f8c533dba4fbd25c1f86cd15654512 100644 --- a/alib2data/src/alphabet/UniqueSymbol.cpp +++ b/alib2data/src/alphabet/UniqueSymbol.cpp @@ -10,7 +10,7 @@ #include <sax/FromXMLParserHelper.h> #include "Symbol.h" #include <object/Object.h> -#include <core/xmlApi.hpp> +#include <registration/TypeRegistration.hpp> namespace alphabet { @@ -85,7 +85,7 @@ SymbolBase* UniqueSymbol::inc() && { namespace alib { -auto uniqueSymbolParserRegister = xmlApi<alphabet::Symbol>::ParserRegister<alphabet::UniqueSymbol>(); -auto uniqueSymbolParserRegister2 = xmlApi<alib::Object>::ParserRegister<alphabet::UniqueSymbol>(); +auto uniqueSymbolType = registration::TypeRegister < alphabet::Symbol, alphabet::UniqueSymbol > (); +auto uniqueSymbolType2 = registration::TypeRegister < alib::Object, alphabet::UniqueSymbol > (); } /* namespace alib */ diff --git a/alib2data/src/alphabet/VariablesBarSymbol.cpp b/alib2data/src/alphabet/VariablesBarSymbol.cpp index 97f583978e75ccabceba548539fc94c3a0eb52d7..d2d0f8dd4050cc0d7802295b07c8c082ee7652e6 100644 --- a/alib2data/src/alphabet/VariablesBarSymbol.cpp +++ b/alib2data/src/alphabet/VariablesBarSymbol.cpp @@ -9,7 +9,7 @@ #include <sax/FromXMLParserHelper.h> #include "Symbol.h" #include <object/Object.h> -#include <core/xmlApi.hpp> +#include <registration/TypeRegistration.hpp> #include "UniqueSymbol.h" namespace alphabet { @@ -57,7 +57,7 @@ SymbolBase * VariablesBarSymbol::inc ( ) && { namespace alib { -auto variablesBarSymbolParserRegister = xmlApi < alphabet::Symbol >::ParserRegister < alphabet::VariablesBarSymbol > (); -auto variablesBarSymbolParserRegister2 = xmlApi < alib::Object >::ParserRegister < alphabet::VariablesBarSymbol > (); +auto variablesBarSymbolType = registration::TypeRegister < alphabet::Symbol, alphabet::VariablesBarSymbol > (); +auto variablesBarSymbolType2 = registration::TypeRegister < alib::Object, alphabet::VariablesBarSymbol > (); } /* namespace alib */ diff --git a/alib2data/src/automaton/FSM/CompactNFA.cpp b/alib2data/src/automaton/FSM/CompactNFA.cpp index 1415738c660909626215ffb28ba58a951b3442e0..29975eac55d0632b3aafa6184dffd96c28e41e7a 100644 --- a/alib2data/src/automaton/FSM/CompactNFA.cpp +++ b/alib2data/src/automaton/FSM/CompactNFA.cpp @@ -8,7 +8,7 @@ #include "CompactNFA.h" #include "../Automaton.h" #include <object/Object.h> -#include <core/xmlApi.hpp> +#include <registration/TypeRegistration.hpp> #include <core/castApi.hpp> @@ -18,8 +18,8 @@ namespace automaton { namespace alib { -auto compactNFAParserRegister = xmlApi < automaton::Automaton >::ParserRegister < automaton::CompactNFA < > > ( ); -auto compactNFAParserRegister2 = xmlApi < alib::Object >::ParserRegister < automaton::CompactNFA < > > ( ); +auto compactNFAType = registration::TypeRegister < automaton::Automaton, automaton::CompactNFA < > > ( ); +auto compactNFAType2 = registration::TypeRegister < alib::Object, automaton::CompactNFA < > > ( ); auto CompactNFAFromDFA = castApi::CastRegister < automaton::CompactNFA < >, automaton::DFA < > > ( ); auto CompactNFAFromNFA = castApi::CastRegister < automaton::CompactNFA < >, automaton::NFA < > > ( ); diff --git a/alib2data/src/automaton/FSM/DFA.cpp b/alib2data/src/automaton/FSM/DFA.cpp index a55370658d7d7dfd0f209a4c800111e5772b2623..bf0baab933cccf0e580998f1749647324699b333 100644 --- a/alib2data/src/automaton/FSM/DFA.cpp +++ b/alib2data/src/automaton/FSM/DFA.cpp @@ -8,11 +8,11 @@ #include "DFA.h" #include "../Automaton.h" #include <object/Object.h> -#include <core/xmlApi.hpp> +#include <registration/TypeRegistration.hpp> namespace alib { -auto DFAParserRegister = xmlApi < automaton::Automaton >::ParserRegister < automaton::DFA<> > ( ); -auto DFAParserRegister2 = xmlApi < alib::Object >::ParserRegister < automaton::DFA<> > ( ); +auto DFAType = registration::TypeRegister < automaton::Automaton, automaton::DFA < > > ( ); +auto DFAType2 = registration::TypeRegister < alib::Object, automaton::DFA < > > ( ); } /* namespace alib */ diff --git a/alib2data/src/automaton/FSM/EpsilonNFA.cpp b/alib2data/src/automaton/FSM/EpsilonNFA.cpp index 42c130800e7f71b224af63b7ab2d66b41da85598..8eb2a1cb8fcdec69cc6bf78ea172ca032c722e01 100644 --- a/alib2data/src/automaton/FSM/EpsilonNFA.cpp +++ b/alib2data/src/automaton/FSM/EpsilonNFA.cpp @@ -8,14 +8,14 @@ #include "EpsilonNFA.h" #include "../Automaton.h" #include <object/Object.h> -#include <core/xmlApi.hpp> +#include <registration/TypeRegistration.hpp> #include <core/castApi.hpp> namespace alib { -auto epsilonNFAParserRegister = xmlApi < automaton::Automaton >::ParserRegister < automaton::EpsilonNFA < > > ( ); -auto epsilonNFAParserRegister2 = xmlApi < alib::Object >::ParserRegister < automaton::EpsilonNFA < > > ( ); +auto epsilonNFAType = registration::TypeRegister < automaton::Automaton, automaton::EpsilonNFA < > > ( ); +auto epsilonNFAType2 = registration::TypeRegister < alib::Object, automaton::EpsilonNFA < > > ( ); auto EpsilonNFAFromDFA = castApi::CastRegister < automaton::EpsilonNFA < >, automaton::DFA < > > ( ); auto EpsilonNFAFromNFA = castApi::CastRegister < automaton::EpsilonNFA < >, automaton::NFA < > > ( ); diff --git a/alib2data/src/automaton/FSM/ExtendedNFA.cpp b/alib2data/src/automaton/FSM/ExtendedNFA.cpp index 6e777e0172e1f05728a73ded38ab15d6ce276396..ade894859ea0f3a23267a125cd02bf4413a913c3 100644 --- a/alib2data/src/automaton/FSM/ExtendedNFA.cpp +++ b/alib2data/src/automaton/FSM/ExtendedNFA.cpp @@ -8,14 +8,14 @@ #include "ExtendedNFA.h" #include "../Automaton.h" #include <object/Object.h> -#include <core/xmlApi.hpp> +#include <registration/TypeRegistration.hpp> #include <core/castApi.hpp> namespace alib { -auto extendedNFAParserRegister = xmlApi < automaton::Automaton >::ParserRegister < automaton::ExtendedNFA < > > ( ); -auto extendedNFAParserRegister2 = xmlApi < alib::Object >::ParserRegister < automaton::ExtendedNFA < > > ( ); +auto extendedNFAType = registration::TypeRegister < automaton::Automaton, automaton::ExtendedNFA < > > ( ); +auto extendedNFAType2 = registration::TypeRegister < alib::Object, automaton::ExtendedNFA < > > ( ); auto ExtendedNFAFromDFA = castApi::CastRegister < automaton::ExtendedNFA < >, automaton::DFA < > > ( ); auto ExtendedNFAFromNFA = castApi::CastRegister < automaton::ExtendedNFA < >, automaton::NFA < > > ( ); diff --git a/alib2data/src/automaton/FSM/MultiInitialStateNFA.cpp b/alib2data/src/automaton/FSM/MultiInitialStateNFA.cpp index 81efbccbb168e5689da197af2364a3d621727fee..0eabd35e7dfb05945bf27a877012f8de7f432994 100644 --- a/alib2data/src/automaton/FSM/MultiInitialStateNFA.cpp +++ b/alib2data/src/automaton/FSM/MultiInitialStateNFA.cpp @@ -8,14 +8,14 @@ #include "MultiInitialStateNFA.h" #include "../Automaton.h" #include <object/Object.h> -#include <core/xmlApi.hpp> +#include <registration/TypeRegistration.hpp> #include <core/castApi.hpp> namespace alib { -auto multiInitialStateNFAParserRegister = xmlApi < automaton::Automaton >::ParserRegister < automaton::MultiInitialStateNFA < > > ( ); -auto multiInitialStateNFAParserRegister2 = xmlApi < alib::Object >::ParserRegister < automaton::MultiInitialStateNFA < > > ( ); +auto multiInitialStateNFAType = registration::TypeRegister < automaton::Automaton, automaton::MultiInitialStateNFA < > > ( ); +auto multiInitialStateNFAType2 = registration::TypeRegister < alib::Object, automaton::MultiInitialStateNFA < > > ( ); auto MultiInitialStateNFAFromDFA = castApi::CastRegister < automaton::MultiInitialStateNFA < >, automaton::DFA < > > ( ); auto MultiInitialStateNFAFromNFA = castApi::CastRegister < automaton::MultiInitialStateNFA < >, automaton::NFA < > > ( ); diff --git a/alib2data/src/automaton/FSM/NFA.cpp b/alib2data/src/automaton/FSM/NFA.cpp index 16891d884192d2c2f12fa687a3df24484163a5ae..bf24cca71868f5c60e025886012b1d14fd1dd660 100644 --- a/alib2data/src/automaton/FSM/NFA.cpp +++ b/alib2data/src/automaton/FSM/NFA.cpp @@ -8,14 +8,14 @@ #include "NFA.h" #include "../Automaton.h" #include <object/Object.h> -#include <core/xmlApi.hpp> +#include <registration/TypeRegistration.hpp> #include <core/castApi.hpp> namespace alib { -auto NFAParserRegister = xmlApi < automaton::Automaton >::ParserRegister < automaton::NFA < > > ( ); -auto NFAParserRegister2 = xmlApi < alib::Object >::ParserRegister < automaton::NFA < > > ( ); +auto NFAType = registration::TypeRegister < automaton::Automaton, automaton::NFA < > > ( ); +auto NFAType2 = registration::TypeRegister < alib::Object, automaton::NFA < > > ( ); auto NFAFromDFA = castApi::CastRegister < automaton::NFA < >, automaton::DFA < > > ( ); auto NFACastBinder = castApi::CastPoolStringBinder < automaton::NFA < > > ( automaton::NFA < >::getXmlTagName() ); diff --git a/alib2data/src/automaton/PDA/DPDA.cpp b/alib2data/src/automaton/PDA/DPDA.cpp index 85fecdc13a690f2c123e0ecff02915df7b3b1452..aaba74d9f8906172270245edaa2ae7cf9090bec0 100644 --- a/alib2data/src/automaton/PDA/DPDA.cpp +++ b/alib2data/src/automaton/PDA/DPDA.cpp @@ -8,13 +8,13 @@ #include "DPDA.h" #include "../Automaton.h" #include <object/Object.h> -#include <core/xmlApi.hpp> +#include <registration/TypeRegistration.hpp> #include <core/castApi.hpp> namespace alib { -auto DPDAParserRegister = xmlApi<automaton::Automaton>::ParserRegister<automaton::DPDA < > >(); -auto DPDAParserRegister2 = xmlApi<alib::Object>::ParserRegister<automaton::DPDA < > >(); +auto DPDAType = registration::TypeRegister < automaton::Automaton, automaton::DPDA < > > ( ); +auto DPDAType2 = registration::TypeRegister < alib::Object, automaton::DPDA < > > ( ); auto DPDACastBinder = castApi::CastPoolStringBinder<automaton::DPDA < > >(automaton::DPDA < >::getXmlTagName()); diff --git a/alib2data/src/automaton/PDA/InputDrivenDPDA.cpp b/alib2data/src/automaton/PDA/InputDrivenDPDA.cpp index c02aa33af975681b3683b0839e6e7429c25f759c..1cab6fb2b9e6cf75ac9f53c1ba711ed86e02b525 100644 --- a/alib2data/src/automaton/PDA/InputDrivenDPDA.cpp +++ b/alib2data/src/automaton/PDA/InputDrivenDPDA.cpp @@ -8,11 +8,11 @@ #include "InputDrivenDPDA.h" #include "../Automaton.h" #include <object/Object.h> -#include <core/xmlApi.hpp> +#include <registration/TypeRegistration.hpp> namespace alib { -auto inputDivenDPDAParserRegister = xmlApi<automaton::Automaton>::ParserRegister<automaton::InputDrivenDPDA < > >(); -auto inputDivenDPDAParserRegister2 = xmlApi<alib::Object>::ParserRegister<automaton::InputDrivenDPDA< > >(); +auto inputDivenDPDAType = registration::TypeRegister < automaton::Automaton, automaton::InputDrivenDPDA < > > ( ); +auto inputDivenDPDAType2 = registration::TypeRegister < alib::Object, automaton::InputDrivenDPDA< > > ( ); } /* namespace alib */ diff --git a/alib2data/src/automaton/PDA/InputDrivenNPDA.cpp b/alib2data/src/automaton/PDA/InputDrivenNPDA.cpp index f7bc0ed04637d31856fcea02df39be48005fa017..f2714b19c1d4feee1749cc083ad6314fdee5f48c 100644 --- a/alib2data/src/automaton/PDA/InputDrivenNPDA.cpp +++ b/alib2data/src/automaton/PDA/InputDrivenNPDA.cpp @@ -8,11 +8,11 @@ #include "InputDrivenNPDA.h" #include "../Automaton.h" #include <object/Object.h> -#include <core/xmlApi.hpp> +#include <registration/TypeRegistration.hpp> namespace alib { -auto inputDrivenNPDAParserRegister = xmlApi<automaton::Automaton>::ParserRegister<automaton::InputDrivenNPDA < > >(); -auto inputDrivenNPDAParserRegister2 = xmlApi<alib::Object>::ParserRegister<automaton::InputDrivenNPDA < > >(); +auto inputDrivenNPDAType = registration::TypeRegister < automaton::Automaton, automaton::InputDrivenNPDA < > > ( ); +auto inputDrivenNPDAType2 = registration::TypeRegister < alib::Object, automaton::InputDrivenNPDA < > > ( ); } /* namespace alib */ diff --git a/alib2data/src/automaton/PDA/NPDA.cpp b/alib2data/src/automaton/PDA/NPDA.cpp index 9d6ef19205ebc46b55e104707742ca627e281690..9115fef9fddde7f8d5587456c945bd0931861f1d 100644 --- a/alib2data/src/automaton/PDA/NPDA.cpp +++ b/alib2data/src/automaton/PDA/NPDA.cpp @@ -8,13 +8,13 @@ #include "NPDA.h" #include "../Automaton.h" #include <object/Object.h> -#include <core/xmlApi.hpp> +#include <registration/TypeRegistration.hpp> #include <core/castApi.hpp> namespace alib { -auto NPDAParserRegister = xmlApi<automaton::Automaton>::ParserRegister<automaton::NPDA < > >(); -auto NPDAParserRegister2 = xmlApi<alib::Object>::ParserRegister<automaton::NPDA < > >(); +auto NPDAType = registration::TypeRegister < automaton::Automaton, automaton::NPDA < > > ( ); +auto NPDAType2 = registration::TypeRegister < alib::Object, automaton::NPDA < > > ( ); auto NPDACastBinder = castApi::CastPoolStringBinder<automaton::NPDA < > >(automaton::NPDA < >::getXmlTagName()); diff --git a/alib2data/src/automaton/PDA/NPDTA.cpp b/alib2data/src/automaton/PDA/NPDTA.cpp index c719ec8441ed5bd373d526fd48d347b7b7386616..47e80d8d3444d0195b740a1bdab6067ecfd10d92 100644 --- a/alib2data/src/automaton/PDA/NPDTA.cpp +++ b/alib2data/src/automaton/PDA/NPDTA.cpp @@ -8,13 +8,13 @@ #include "NPDTA.h" #include "../Automaton.h" #include <object/Object.h> -#include <core/xmlApi.hpp> +#include <registration/TypeRegistration.hpp> #include <core/castApi.hpp> namespace alib { -auto NPDTAParserRegister = xmlApi<automaton::Automaton>::ParserRegister<automaton::NPDTA < > >(); -auto NPDTAParserRegister2 = xmlApi<alib::Object>::ParserRegister<automaton::NPDTA < > >(); +auto NPDTAType = registration::TypeRegister < automaton::Automaton, automaton::NPDTA < > > ( ); +auto NPDTAType2 = registration::TypeRegister < alib::Object, automaton::NPDTA < > > ( ); auto NPDTACastBinder = castApi::CastPoolStringBinder<automaton::NPDTA < > >(automaton::NPDTA < >::getXmlTagName()); diff --git a/alib2data/src/automaton/PDA/RealTimeHeightDeterministicDPDA.cpp b/alib2data/src/automaton/PDA/RealTimeHeightDeterministicDPDA.cpp index f22653780c746559de8fa4ff310be2fba0243e31..e82f6b04a68cc2965ae1be5b520395db51472622 100644 --- a/alib2data/src/automaton/PDA/RealTimeHeightDeterministicDPDA.cpp +++ b/alib2data/src/automaton/PDA/RealTimeHeightDeterministicDPDA.cpp @@ -8,13 +8,13 @@ #include "RealTimeHeightDeterministicDPDA.h" #include "../Automaton.h" #include <object/Object.h> -#include <core/xmlApi.hpp> +#include <registration/TypeRegistration.hpp> #include <core/castApi.hpp> namespace alib { -auto realTimeHeightDeterministicDPDAParserRegister = xmlApi<automaton::Automaton>::ParserRegister<automaton::RealTimeHeightDeterministicDPDA < > >(); -auto realTimeHeightDeterministicDPDAParserRegister2 = xmlApi<alib::Object>::ParserRegister<automaton::RealTimeHeightDeterministicDPDA < > >(); +auto realTimeHeightDeterministicDPDAType = registration::TypeRegister < automaton::Automaton, automaton::RealTimeHeightDeterministicDPDA < > > ( ); +auto realTimeHeightDeterministicDPDAType2 = registration::TypeRegister < alib::Object, automaton::RealTimeHeightDeterministicDPDA < > > ( ); auto RealTimeHeightDeterministicDPDACastBinder = castApi::CastPoolStringBinder<automaton::RealTimeHeightDeterministicDPDA < > >(automaton::RealTimeHeightDeterministicDPDA < >::getXmlTagName()); diff --git a/alib2data/src/automaton/PDA/RealTimeHeightDeterministicNPDA.cpp b/alib2data/src/automaton/PDA/RealTimeHeightDeterministicNPDA.cpp index 6c597e25049372cbcf37f65e8111cbf0bfed3e49..9f7d4e0d814ea65cf53caf47c8c4da48b4e2e82d 100644 --- a/alib2data/src/automaton/PDA/RealTimeHeightDeterministicNPDA.cpp +++ b/alib2data/src/automaton/PDA/RealTimeHeightDeterministicNPDA.cpp @@ -8,13 +8,13 @@ #include "RealTimeHeightDeterministicNPDA.h" #include "../Automaton.h" #include <object/Object.h> -#include <core/xmlApi.hpp> +#include <registration/TypeRegistration.hpp> #include <core/castApi.hpp> namespace alib { -auto realTimeHeightDeterministicNPDAParserRegister = xmlApi<automaton::Automaton>::ParserRegister<automaton::RealTimeHeightDeterministicNPDA < > >(); -auto realTimeHeightDeterministicNPDAParserRegister2 = xmlApi<alib::Object>::ParserRegister<automaton::RealTimeHeightDeterministicNPDA < > >(); +auto realTimeHeightDeterministicNPDAType = registration::TypeRegister < automaton::Automaton, automaton::RealTimeHeightDeterministicNPDA < > > ( ); +auto realTimeHeightDeterministicNPDAType2 = registration::TypeRegister < alib::Object, automaton::RealTimeHeightDeterministicNPDA < > > ( ); auto RealTimeHeightDeterministicNPDACastBinder = castApi::CastPoolStringBinder<automaton::RealTimeHeightDeterministicNPDA < > >(automaton::RealTimeHeightDeterministicNPDA < >::getXmlTagName()); diff --git a/alib2data/src/automaton/PDA/SinglePopDPDA.cpp b/alib2data/src/automaton/PDA/SinglePopDPDA.cpp index 208b27151f43c15578877360850f155766bac6b1..e8440e9ded33c7953854d01a1a56ce9957461600 100644 --- a/alib2data/src/automaton/PDA/SinglePopDPDA.cpp +++ b/alib2data/src/automaton/PDA/SinglePopDPDA.cpp @@ -8,11 +8,11 @@ #include "SinglePopDPDA.h" #include "../Automaton.h" #include <object/Object.h> -#include <core/xmlApi.hpp> +#include <registration/TypeRegistration.hpp> namespace alib { -auto singlePopDPDAParserRegister = xmlApi<automaton::Automaton>::ParserRegister<automaton::SinglePopDPDA < > >(); -auto singlePopDPDAParserRegister2 = xmlApi<alib::Object>::ParserRegister<automaton::SinglePopDPDA < > >(); +auto singlePopDPDAType = registration::TypeRegister < automaton::Automaton, automaton::SinglePopDPDA < > > ( ); +auto singlePopDPDAType2 = registration::TypeRegister < alib::Object, automaton::SinglePopDPDA < > > ( ); } /* namespace alib */ diff --git a/alib2data/src/automaton/PDA/SinglePopNPDA.cpp b/alib2data/src/automaton/PDA/SinglePopNPDA.cpp index 81994ff1431bc95996e26918f2d46d5dfbf4fd59..b7df303ddd8ff49d4c6057388999f0fd3265ec4f 100644 --- a/alib2data/src/automaton/PDA/SinglePopNPDA.cpp +++ b/alib2data/src/automaton/PDA/SinglePopNPDA.cpp @@ -8,11 +8,11 @@ #include "SinglePopNPDA.h" #include "../Automaton.h" #include <object/Object.h> -#include <core/xmlApi.hpp> +#include <registration/TypeRegistration.hpp> namespace alib { -auto singlePopNPDAParserRegister = xmlApi<automaton::Automaton>::ParserRegister<automaton::SinglePopNPDA < > >(); -auto singlePopNPDAParserRegister2 = xmlApi<alib::Object>::ParserRegister<automaton::SinglePopNPDA < > >(); +auto singlePopNPDAType = registration::TypeRegister < automaton::Automaton, automaton::SinglePopNPDA < > > ( ); +auto singlePopNPDAType2 = registration::TypeRegister < alib::Object, automaton::SinglePopNPDA < > > ( ); } /* namespace alib */ diff --git a/alib2data/src/automaton/PDA/VisiblyPushdownDPDA.cpp b/alib2data/src/automaton/PDA/VisiblyPushdownDPDA.cpp index effd1c68c1671ee5f8b53814cfd9fae1e847aa0f..3703339b8584c0fdd319a0234331e2421f382804 100644 --- a/alib2data/src/automaton/PDA/VisiblyPushdownDPDA.cpp +++ b/alib2data/src/automaton/PDA/VisiblyPushdownDPDA.cpp @@ -8,11 +8,11 @@ #include "VisiblyPushdownDPDA.h" #include "../Automaton.h" #include <object/Object.h> -#include <core/xmlApi.hpp> +#include <registration/TypeRegistration.hpp> namespace alib { -auto visiblyPushdownDPDAParserRegister = xmlApi<automaton::Automaton>::ParserRegister<automaton::VisiblyPushdownDPDA < > >(); -auto visiblyPushdownDPDAParserRegister2 = xmlApi<alib::Object>::ParserRegister<automaton::VisiblyPushdownDPDA < > >(); +auto visiblyPushdownDPDAType = registration::TypeRegister < automaton::Automaton, automaton::VisiblyPushdownDPDA < > > ( ); +auto visiblyPushdownDPDAType2 = registration::TypeRegister < alib::Object, automaton::VisiblyPushdownDPDA < > > ( ); } /* namespace alib */ diff --git a/alib2data/src/automaton/PDA/VisiblyPushdownNPDA.cpp b/alib2data/src/automaton/PDA/VisiblyPushdownNPDA.cpp index ed7b30d1f55f03fdc5e86b04fa69a4f67ee5c3a9..d1f444e4bafdafbfd7ffac990dcdd08177f8e07c 100644 --- a/alib2data/src/automaton/PDA/VisiblyPushdownNPDA.cpp +++ b/alib2data/src/automaton/PDA/VisiblyPushdownNPDA.cpp @@ -8,11 +8,11 @@ #include "VisiblyPushdownNPDA.h" #include "../Automaton.h" #include <object/Object.h> -#include <core/xmlApi.hpp> +#include <registration/TypeRegistration.hpp> namespace alib { -auto visiblyPushdownNPDAParserRegister = xmlApi<automaton::Automaton>::ParserRegister<automaton::VisiblyPushdownNPDA < > >(); -auto visiblyPushdownNPDAParserRegister2 = xmlApi<alib::Object>::ParserRegister<automaton::VisiblyPushdownNPDA < > >(); +auto visiblyPushdownNPDAType = registration::TypeRegister < automaton::Automaton, automaton::VisiblyPushdownNPDA < > > ( ); +auto visiblyPushdownNPDAType2 = registration::TypeRegister < alib::Object, automaton::VisiblyPushdownNPDA < > > ( ); } /* namespace alib */ diff --git a/alib2data/src/automaton/TA/DFTA.cpp b/alib2data/src/automaton/TA/DFTA.cpp index 2c670f4c28b10328a89440f9ead778c01291246d..6c262c1532187d8fed2ffe6bcb2c4668ec56063f 100644 --- a/alib2data/src/automaton/TA/DFTA.cpp +++ b/alib2data/src/automaton/TA/DFTA.cpp @@ -8,11 +8,11 @@ #include "DFTA.h" #include "../Automaton.h" #include <object/Object.h> -#include <core/xmlApi.hpp> +#include <registration/TypeRegistration.hpp> namespace alib { -auto DFTAParserRegister = xmlApi<automaton::Automaton>::ParserRegister<automaton::DFTA < > >(); -auto DFTAParserRegister2 = xmlApi<alib::Object>::ParserRegister<automaton::DFTA < > >(); +auto DFTAType = registration::TypeRegister < automaton::Automaton, automaton::DFTA < > > ( ); +auto DFTAType2 = registration::TypeRegister < alib::Object, automaton::DFTA < > > ( ); } /* namespace alib */ diff --git a/alib2data/src/automaton/TA/NFTA.cpp b/alib2data/src/automaton/TA/NFTA.cpp index 813cb3491c915fdfd4cdd07d7fe6d990ecb964d1..253c1c7331a57fc15ef5f46c8ca05234016482e1 100644 --- a/alib2data/src/automaton/TA/NFTA.cpp +++ b/alib2data/src/automaton/TA/NFTA.cpp @@ -8,11 +8,11 @@ #include "NFTA.h" #include "../Automaton.h" #include <object/Object.h> -#include <core/xmlApi.hpp> +#include <registration/TypeRegistration.hpp> namespace alib { -auto NFTAParserRegister = xmlApi < automaton::Automaton >::ParserRegister < automaton::NFTA < > > ( ); -auto NFTAParserRegister2 = xmlApi < alib::Object >::ParserRegister < automaton::NFTA < > > ( ); +auto NFTAType = registration::TypeRegister < automaton::Automaton, automaton::NFTA < > > ( ); +auto NFTAType2 = registration::TypeRegister < alib::Object, automaton::NFTA < > > ( ); } /* namespace alib */ diff --git a/alib2data/src/automaton/TM/OneTapeDTM.cpp b/alib2data/src/automaton/TM/OneTapeDTM.cpp index 482957cc9ebb6e0244b8f68aba523d1dd6e72b06..79c899276bec08fee0ad10bde5e83895b110708a 100644 --- a/alib2data/src/automaton/TM/OneTapeDTM.cpp +++ b/alib2data/src/automaton/TM/OneTapeDTM.cpp @@ -9,11 +9,11 @@ #include <automaton/Automaton.h> #include <object/Object.h> -#include <core/xmlApi.hpp> +#include <registration/TypeRegistration.hpp> namespace alib { -auto oneTapeDTMParserRegister = xmlApi<automaton::Automaton>::ParserRegister<automaton::OneTapeDTM<>>(); -auto oneTapeDTMParserRegister2 = xmlApi<alib::Object>::ParserRegister<automaton::OneTapeDTM<>>(); +auto oneTapeDTMType = registration::TypeRegister < automaton::Automaton, automaton::OneTapeDTM < > > ( ); +auto oneTapeDTMType2 = registration::TypeRegister < alib::Object, automaton::OneTapeDTM < > > ( ); } /* namespace alib */ diff --git a/alib2data/src/grammar/ContextFree/CFG.cpp b/alib2data/src/grammar/ContextFree/CFG.cpp index c862634920672e7243b8249d45b392cb65dc0c95..3a4dce0d19eaabf5907ef2ca2a07bd4701f83b07 100644 --- a/alib2data/src/grammar/ContextFree/CFG.cpp +++ b/alib2data/src/grammar/ContextFree/CFG.cpp @@ -8,14 +8,14 @@ #include "CFG.h" #include "../Grammar.h" #include <object/Object.h> -#include <core/xmlApi.hpp> +#include <registration/TypeRegistration.hpp> #include <core/castApi.hpp> namespace alib { -auto CFGParserRegister = xmlApi < grammar::Grammar >::ParserRegister < grammar::CFG < > > ( ); -auto CFGParserRegister2 = xmlApi < alib::Object >::ParserRegister < grammar::CFG < > > ( ); +auto CFGType = registration::TypeRegister < grammar::Grammar, grammar::CFG < > > ( ); +auto CFGType2 = registration::TypeRegister < alib::Object, grammar::CFG < > > ( ); auto CFGEpsilonFreeCFG = castApi::CastRegister < grammar::CFG < >, grammar::EpsilonFreeCFG < > > ( ); auto CFGCastBinder = castApi::CastPoolStringBinder < grammar::CFG < > > ( grammar::CFG < >::getXmlTagName() ); diff --git a/alib2data/src/grammar/ContextFree/CNF.cpp b/alib2data/src/grammar/ContextFree/CNF.cpp index 611d2d630c9778801667e21a4c9ad80f30b81a8d..ef42116d2996b293817dd0740b9d87df74c0c222 100644 --- a/alib2data/src/grammar/ContextFree/CNF.cpp +++ b/alib2data/src/grammar/ContextFree/CNF.cpp @@ -8,11 +8,11 @@ #include "CNF.h" #include "../Grammar.h" #include <object/Object.h> -#include <core/xmlApi.hpp> +#include <registration/TypeRegistration.hpp> namespace alib { -auto CNFParserRegister = xmlApi < grammar::Grammar >::ParserRegister < grammar::CNF < > > ( ); -auto CNFParserRegister2 = xmlApi < alib::Object >::ParserRegister < grammar::CNF < > > ( ); +auto CNFType = registration::TypeRegister < grammar::Grammar, grammar::CNF < > > ( ); +auto CNFType2 = registration::TypeRegister < alib::Object, grammar::CNF < > > ( ); } /* namespace alib */ diff --git a/alib2data/src/grammar/ContextFree/EpsilonFreeCFG.cpp b/alib2data/src/grammar/ContextFree/EpsilonFreeCFG.cpp index 33ebc9b764fab00e7681d2a6a03015a14505e3ec..3a55d65bcd4d0d5cfbc14f70703626a4669c3538 100644 --- a/alib2data/src/grammar/ContextFree/EpsilonFreeCFG.cpp +++ b/alib2data/src/grammar/ContextFree/EpsilonFreeCFG.cpp @@ -8,11 +8,11 @@ #include "EpsilonFreeCFG.h" #include "../Grammar.h" #include <object/Object.h> -#include <core/xmlApi.hpp> +#include <registration/TypeRegistration.hpp> namespace alib { -auto EpsilonFreeCFGParserRegister = xmlApi < grammar::Grammar >::ParserRegister < grammar::EpsilonFreeCFG < > > ( ); -auto EpsilonFreeCFGParserRegister2 = xmlApi < alib::Object >::ParserRegister < grammar::EpsilonFreeCFG < > > ( ); +auto EpsilonFreeCFGType = registration::TypeRegister < grammar::Grammar, grammar::EpsilonFreeCFG < > > ( ); +auto EpsilonFreeCFGType2 = registration::TypeRegister < alib::Object, grammar::EpsilonFreeCFG < > > ( ); } /* namespace alib */ diff --git a/alib2data/src/grammar/ContextFree/GNF.cpp b/alib2data/src/grammar/ContextFree/GNF.cpp index 2c2884abef81c8d18e08e69212ffffc1db70a708..145c445ebf66efc59a8cdbd28cebe882aa03e1dd 100644 --- a/alib2data/src/grammar/ContextFree/GNF.cpp +++ b/alib2data/src/grammar/ContextFree/GNF.cpp @@ -8,11 +8,11 @@ #include "GNF.h" #include "../Grammar.h" #include <object/Object.h> -#include <core/xmlApi.hpp> +#include <registration/TypeRegistration.hpp> namespace alib { -auto GNFParserRegister = xmlApi < grammar::Grammar >::ParserRegister < grammar::GNF < > > ( ); -auto GNFParserRegister2 = xmlApi < alib::Object >::ParserRegister < grammar::GNF < > > ( ); +auto GNFType = registration::TypeRegister < grammar::Grammar, grammar::GNF < > > ( ); +auto GNFType2 = registration::TypeRegister < alib::Object, grammar::GNF < > > ( ); } /* namespace alib */ diff --git a/alib2data/src/grammar/ContextFree/LG.cpp b/alib2data/src/grammar/ContextFree/LG.cpp index 3cc651951a232463ec4f3f8b25a23bc197ebe15e..2dccbd20fb52297098ddaa5812fb67de5bf448ce 100644 --- a/alib2data/src/grammar/ContextFree/LG.cpp +++ b/alib2data/src/grammar/ContextFree/LG.cpp @@ -8,11 +8,11 @@ #include "LG.h" #include "../Grammar.h" #include <object/Object.h> -#include <core/xmlApi.hpp> +#include <registration/TypeRegistration.hpp> namespace alib { -auto LGParserRegister = xmlApi < grammar::Grammar >::ParserRegister < grammar::LG < > > ( ); -auto LGParserRegister2 = xmlApi < alib::Object >::ParserRegister < grammar::LG < > > ( ); +auto LGType = registration::TypeRegister < grammar::Grammar, grammar::LG < > > ( ); +auto LGType2 = registration::TypeRegister < alib::Object, grammar::LG < > > ( ); } /* namespace alib */ diff --git a/alib2data/src/grammar/ContextSensitive/CSG.cpp b/alib2data/src/grammar/ContextSensitive/CSG.cpp index 572c4158530d048ebc1461320c7ced32a6f035a8..2d00cd7b37887345e42933dd5c9192f4f38b9a81 100644 --- a/alib2data/src/grammar/ContextSensitive/CSG.cpp +++ b/alib2data/src/grammar/ContextSensitive/CSG.cpp @@ -8,11 +8,11 @@ #include "CSG.h" #include "../Grammar.h" #include <object/Object.h> -#include <core/xmlApi.hpp> +#include <registration/TypeRegistration.hpp> namespace alib { -auto CSGParserRegister = xmlApi < grammar::Grammar >::ParserRegister < grammar::CSG < > > ( ); -auto CSGParserRegister2 = xmlApi < alib::Object >::ParserRegister < grammar::CSG < > > ( ); +auto CSGType = registration::TypeRegister < grammar::Grammar, grammar::CSG < > > ( ); +auto CSGType2 = registration::TypeRegister < alib::Object, grammar::CSG < > > ( ); } /* namespace alib */ diff --git a/alib2data/src/grammar/ContextSensitive/NonContractingGrammar.cpp b/alib2data/src/grammar/ContextSensitive/NonContractingGrammar.cpp index 881fc4cff7bbcd2ff8d66d635d7ea614c4080f53..8635fed192fc583d6258ebfe6e5e54644df19a21 100644 --- a/alib2data/src/grammar/ContextSensitive/NonContractingGrammar.cpp +++ b/alib2data/src/grammar/ContextSensitive/NonContractingGrammar.cpp @@ -8,11 +8,11 @@ #include "NonContractingGrammar.h" #include "../Grammar.h" #include <object/Object.h> -#include <core/xmlApi.hpp> +#include <registration/TypeRegistration.hpp> namespace alib { -auto nonContractingGrammarParserRegister = xmlApi < grammar::Grammar >::ParserRegister < grammar::NonContractingGrammar < > > ( ); -auto nonContractingGrammarParserRegister2 = xmlApi < alib::Object >::ParserRegister < grammar::NonContractingGrammar < > > ( ); +auto nonContractingGrammarType = registration::TypeRegister < grammar::Grammar, grammar::NonContractingGrammar < > > ( ); +auto nonContractingGrammarType2 = registration::TypeRegister < alib::Object, grammar::NonContractingGrammar < > > ( ); } /* namespace alib */ diff --git a/alib2data/src/grammar/Regular/LeftLG.cpp b/alib2data/src/grammar/Regular/LeftLG.cpp index 9e707e9301f15efd66d14038e1823042cb9e4e19..3565fd0756715abf3a84fa0ff37e3c4a9bf7f4f6 100644 --- a/alib2data/src/grammar/Regular/LeftLG.cpp +++ b/alib2data/src/grammar/Regular/LeftLG.cpp @@ -8,11 +8,11 @@ #include "LeftLG.h" #include "../Grammar.h" #include <object/Object.h> -#include <core/xmlApi.hpp> +#include <registration/TypeRegistration.hpp> namespace alib { -auto LeftLGParserRegister = xmlApi < grammar::Grammar >::ParserRegister < grammar::LeftLG < > > ( ); -auto LeftLGParserRegister2 = xmlApi < alib::Object >::ParserRegister < grammar::LeftLG < > > ( ); +auto LeftLGType = registration::TypeRegister < grammar::Grammar, grammar::LeftLG < > > ( ); +auto LeftLGType2 = registration::TypeRegister < alib::Object, grammar::LeftLG < > > ( ); } /* namespace alib */ diff --git a/alib2data/src/grammar/Regular/LeftRG.cpp b/alib2data/src/grammar/Regular/LeftRG.cpp index 1eff5bcac7c3632a422c5013e3d319c38492320a..93674133c7bb9b35dd90eb7a4669be50401e72d2 100644 --- a/alib2data/src/grammar/Regular/LeftRG.cpp +++ b/alib2data/src/grammar/Regular/LeftRG.cpp @@ -8,11 +8,11 @@ #include "LeftRG.h" #include "../Grammar.h" #include <object/Object.h> -#include <core/xmlApi.hpp> +#include <registration/TypeRegistration.hpp> namespace alib { -auto LeftRGParserRegister = xmlApi < grammar::Grammar >::ParserRegister < grammar::LeftRG < > > ( ); -auto LeftRGParserRegister2 = xmlApi < alib::Object >::ParserRegister < grammar::LeftRG < > > ( ); +auto LeftRGType = registration::TypeRegister < grammar::Grammar, grammar::LeftRG < > > ( ); +auto LeftRGType2 = registration::TypeRegister < alib::Object, grammar::LeftRG < > > ( ); } /* namespace alib */ diff --git a/alib2data/src/grammar/Regular/RightLG.cpp b/alib2data/src/grammar/Regular/RightLG.cpp index 95ba0886a94219e0caa01b1b6bfa4afcc6e8d4af..703ac95adcfd7ed3c78c99b29524961a65177255 100644 --- a/alib2data/src/grammar/Regular/RightLG.cpp +++ b/alib2data/src/grammar/Regular/RightLG.cpp @@ -8,11 +8,11 @@ #include "RightLG.h" #include "../Grammar.h" #include <object/Object.h> -#include <core/xmlApi.hpp> +#include <registration/TypeRegistration.hpp> namespace alib { -auto RightLGParserRegister = xmlApi < grammar::Grammar >::ParserRegister < grammar::RightLG < > > ( ); -auto RightLGParserRegister2 = xmlApi < alib::Object >::ParserRegister < grammar::RightLG < > > ( ); +auto RightLGType = registration::TypeRegister < grammar::Grammar, grammar::RightLG < > > ( ); +auto RightLGType2 = registration::TypeRegister < alib::Object, grammar::RightLG < > > ( ); } /* namespace alib */ diff --git a/alib2data/src/grammar/Regular/RightRG.cpp b/alib2data/src/grammar/Regular/RightRG.cpp index 45884e7a259658f7fb7e90e5af565b4921558337..1c4246e101c635621dfd8f187890369e36deff5d 100644 --- a/alib2data/src/grammar/Regular/RightRG.cpp +++ b/alib2data/src/grammar/Regular/RightRG.cpp @@ -8,11 +8,11 @@ #include "RightRG.h" #include "../Grammar.h" #include <object/Object.h> -#include <core/xmlApi.hpp> +#include <registration/TypeRegistration.hpp> namespace alib { -auto RightRGParserRegister = xmlApi < grammar::Grammar >::ParserRegister < grammar::RightRG < > > ( ); -auto RightRGParserRegister2 = xmlApi < alib::Object >::ParserRegister < grammar::RightRG < > > ( ); +auto RightRGType = registration::TypeRegister < grammar::Grammar, grammar::RightRG < > > ( ); +auto RightRGType2 = registration::TypeRegister < alib::Object, grammar::RightRG < > > ( ); } /* namespace alib */ diff --git a/alib2data/src/grammar/Unrestricted/ContextPreservingUnrestrictedGrammar.cpp b/alib2data/src/grammar/Unrestricted/ContextPreservingUnrestrictedGrammar.cpp index 53e74b2e8843bfdb2e8e6c3e96597ddc79b904f7..76481e532ecc30d09ec576c8165b17a4ec097fc5 100644 --- a/alib2data/src/grammar/Unrestricted/ContextPreservingUnrestrictedGrammar.cpp +++ b/alib2data/src/grammar/Unrestricted/ContextPreservingUnrestrictedGrammar.cpp @@ -8,11 +8,11 @@ #include "ContextPreservingUnrestrictedGrammar.h" #include "../Grammar.h" #include <object/Object.h> -#include <core/xmlApi.hpp> +#include <registration/TypeRegistration.hpp> namespace alib { -auto ContextPreservingUnrestrictedGrammarParserRegister = xmlApi < grammar::Grammar >::ParserRegister < grammar::ContextPreservingUnrestrictedGrammar < > > ( ); -auto ContextPreservingUnrestrictedGrammarParserRegister2 = xmlApi < alib::Object >::ParserRegister < grammar::ContextPreservingUnrestrictedGrammar < > > ( ); +auto ContextPreservingUnrestrictedGrammarType = registration::TypeRegister < grammar::Grammar, grammar::ContextPreservingUnrestrictedGrammar < > > ( ); +auto ContextPreservingUnrestrictedGrammarType2 = registration::TypeRegister < alib::Object, grammar::ContextPreservingUnrestrictedGrammar < > > ( ); } /* namespace alib */ diff --git a/alib2data/src/grammar/Unrestricted/UnrestrictedGrammar.cpp b/alib2data/src/grammar/Unrestricted/UnrestrictedGrammar.cpp index 29c29a37f11fe693eb4fa30ffbeb64467ed9ea73..a4f8deb173493ab7f5d6662922e4c6c68091db3d 100644 --- a/alib2data/src/grammar/Unrestricted/UnrestrictedGrammar.cpp +++ b/alib2data/src/grammar/Unrestricted/UnrestrictedGrammar.cpp @@ -8,11 +8,11 @@ #include "UnrestrictedGrammar.h" #include "../Grammar.h" #include <object/Object.h> -#include <core/xmlApi.hpp> +#include <registration/TypeRegistration.hpp> namespace alib { -auto UnrestrictedGrammarParserRegister = xmlApi < grammar::Grammar >::ParserRegister < grammar::UnrestrictedGrammar < > > ( ); -auto UnrestrictedGrammarParserRegister2 = xmlApi < alib::Object >::ParserRegister < grammar::UnrestrictedGrammar < > > ( ); +auto UnrestrictedGrammarType = registration::TypeRegister < grammar::Grammar, grammar::UnrestrictedGrammar < > > ( ); +auto UnrestrictedGrammarType2 = registration::TypeRegister < alib::Object, grammar::UnrestrictedGrammar < > > ( ); } /* namespace alib */ diff --git a/alib2data/src/indexes/arbology/CompressedBitParallelTreeIndex.cpp b/alib2data/src/indexes/arbology/CompressedBitParallelTreeIndex.cpp index 1a9cd05af0d77eb922851535eba384f38ad324b1..72166173b63ec1451c8e916cbdd749fff1f1ebbf 100644 --- a/alib2data/src/indexes/arbology/CompressedBitParallelTreeIndex.cpp +++ b/alib2data/src/indexes/arbology/CompressedBitParallelTreeIndex.cpp @@ -6,9 +6,10 @@ */ #include "CompressedBitParallelTreeIndex.h" +#include <registration/TypeRegistration.hpp> namespace alib { -auto arbologyCompressedBitParallelIndexParserRegister = xmlApi < alib::Object >::ParserRegister < indexes::arbology::CompressedBitParallelTreeIndex < > > ( ); +auto arbologyCompressedBitParallelIndexType = registration::TypeRegister < alib::Object, indexes::arbology::CompressedBitParallelTreeIndex < > > ( ); } /* namespace alib */ diff --git a/alib2data/src/indexes/arbology/FullAndLinearIndex.cpp b/alib2data/src/indexes/arbology/FullAndLinearIndex.cpp index ec593e1bcc18c30709083a3e0c282986604ef246..2f57df5ae32d105109be79fd90ff525ad0541870 100644 --- a/alib2data/src/indexes/arbology/FullAndLinearIndex.cpp +++ b/alib2data/src/indexes/arbology/FullAndLinearIndex.cpp @@ -6,9 +6,10 @@ */ #include "FullAndLinearIndex.h" +#include <registration/TypeRegistration.hpp> namespace alib { -auto arbologyFullAndLinearIndexParserRegister = xmlApi < alib::Object >::ParserRegister < indexes::arbology::FullAndLinearIndex < > > ( ); +auto arbologyFullAndLinearIndexType = registration::TypeRegister < alib::Object, indexes::arbology::FullAndLinearIndex < > > ( ); } /* namespace alib */ diff --git a/alib2data/src/indexes/arbology/NonlinearFullAndLinearIndex.cpp b/alib2data/src/indexes/arbology/NonlinearFullAndLinearIndex.cpp index 83aef508f4e6ea0902dcaabbc29b2a3a9b39e0a0..3a7e8653bfcd3f05f336086dc691771340f483f0 100644 --- a/alib2data/src/indexes/arbology/NonlinearFullAndLinearIndex.cpp +++ b/alib2data/src/indexes/arbology/NonlinearFullAndLinearIndex.cpp @@ -6,9 +6,10 @@ */ #include "NonlinearFullAndLinearIndex.h" +#include <registration/TypeRegistration.hpp> namespace alib { -auto arbologyNonlinearFullAndLinearIndexParserRegister = xmlApi < alib::Object >::ParserRegister < indexes::arbology::NonlinearFullAndLinearIndex < > > ( ); +auto arbologyNonlinearFullAndLinearIndexType = registration::TypeRegister < alib::Object, indexes::arbology::NonlinearFullAndLinearIndex < > > ( ); } /* namespace alib */ diff --git a/alib2data/src/indexes/stringology/BNDMMatcher.cpp b/alib2data/src/indexes/stringology/BNDMMatcher.cpp index 091929d0e491ca33b3ff8d007ffceec652529ff1..f5085ca019da5e593fcce7a0dcc66dccc991017b 100644 --- a/alib2data/src/indexes/stringology/BNDMMatcher.cpp +++ b/alib2data/src/indexes/stringology/BNDMMatcher.cpp @@ -6,9 +6,10 @@ */ #include "BNDMMatcher.h" +#include <registration/TypeRegistration.hpp> namespace alib { -auto bndmMatcherParserRegister = xmlApi < alib::Object >::ParserRegister < indexes::stringology::BNDMMatcher < > > ( ); +auto bndmMatcherType = registration::TypeRegister < alib::Object, indexes::stringology::BNDMMatcher < > > ( ); } /* namespace alib */ diff --git a/alib2data/src/indexes/stringology/BitParallelIndex.cpp b/alib2data/src/indexes/stringology/BitParallelIndex.cpp index 150aa89b2d065872e3e9d822acd6c44e1a04f4a9..3d251feca81036a6f70ace224bca8b5488135e00 100644 --- a/alib2data/src/indexes/stringology/BitParallelIndex.cpp +++ b/alib2data/src/indexes/stringology/BitParallelIndex.cpp @@ -6,9 +6,10 @@ */ #include "BitParallelIndex.h" +#include <registration/TypeRegistration.hpp> namespace alib { -auto bitParallelIndexParserRegister = xmlApi < alib::Object >::ParserRegister < indexes::stringology::BitParallelIndex < > > ( ); +auto bitParallelIndexType = registration::TypeRegister < alib::Object, indexes::stringology::BitParallelIndex < > > ( ); } /* namespace alib */ diff --git a/alib2data/src/indexes/stringology/CompressedBitParallelIndex.cpp b/alib2data/src/indexes/stringology/CompressedBitParallelIndex.cpp index c33b2e224c2e1f6c8a79e32963bf28b52713125b..78a68de240c051ab5b639cf4809bf6cfda01e277 100644 --- a/alib2data/src/indexes/stringology/CompressedBitParallelIndex.cpp +++ b/alib2data/src/indexes/stringology/CompressedBitParallelIndex.cpp @@ -6,9 +6,10 @@ */ #include "CompressedBitParallelIndex.h" +#include <registration/TypeRegistration.hpp> namespace alib { -auto compressedBitParallelIndexParserRegister = xmlApi < alib::Object >::ParserRegister < indexes::stringology::CompressedBitParallelIndex < > > ( ); +auto compressedBitParallelIndexType = registration::TypeRegister < alib::Object, indexes::stringology::CompressedBitParallelIndex < > > ( ); } /* namespace alib */ diff --git a/alib2data/src/indexes/stringology/PositionHeap.cpp b/alib2data/src/indexes/stringology/PositionHeap.cpp index 0b973aca0a9d7917d6fd07b2bc681019a27ca8bb..fd86a59a6b8ab4aba850c280d044194fd7c70180 100644 --- a/alib2data/src/indexes/stringology/PositionHeap.cpp +++ b/alib2data/src/indexes/stringology/PositionHeap.cpp @@ -6,9 +6,10 @@ */ #include "PositionHeap.h" +#include <registration/TypeRegistration.hpp> namespace alib { -auto positionHeapParserRegister = xmlApi < alib::Object >::ParserRegister < indexes::stringology::PositionHeap < > > ( ); +auto positionHeapType = registration::TypeRegister < alib::Object, indexes::stringology::PositionHeap < > > ( ); } /* namespace alib */ diff --git a/alib2data/src/indexes/stringology/SuffixArray.cpp b/alib2data/src/indexes/stringology/SuffixArray.cpp index 6da125bfb0b59722df6e4821e07a77231dfb80a2..d2013865d143d2e1c2032fdb4672bdfc6660c1d3 100644 --- a/alib2data/src/indexes/stringology/SuffixArray.cpp +++ b/alib2data/src/indexes/stringology/SuffixArray.cpp @@ -6,9 +6,10 @@ */ #include "SuffixArray.h" +#include <registration/TypeRegistration.hpp> namespace alib { -auto suffixArrayParserRegister = xmlApi < alib::Object >::ParserRegister < indexes::stringology::SuffixArray < > > ( ); +auto suffixArrayType = registration::TypeRegister < alib::Object, indexes::stringology::SuffixArray < > > ( ); } /* namespace alib */ diff --git a/alib2data/src/indexes/stringology/SuffixTrie.cpp b/alib2data/src/indexes/stringology/SuffixTrie.cpp index 16dea4cef077d51c5364f7b944b259961d288b6f..be93ae7a171dbb88810b7727a174e9276574365f 100644 --- a/alib2data/src/indexes/stringology/SuffixTrie.cpp +++ b/alib2data/src/indexes/stringology/SuffixTrie.cpp @@ -6,9 +6,10 @@ */ #include "SuffixTrie.h" +#include <registration/TypeRegistration.hpp> namespace alib { -auto suffixTrieParserRegister = xmlApi < alib::Object >::ParserRegister < indexes::stringology::SuffixTrie < > > ( ); +auto suffixTrieType = registration::TypeRegister < alib::Object, indexes::stringology::SuffixTrie < > > ( ); } /* namespace alib */ diff --git a/alib2data/src/label/FailStateLabel.cpp b/alib2data/src/label/FailStateLabel.cpp index b68fa76dc09327ad9be757771d027230321e20eb..78af83e895a93b8bd011d9949c9007ae1d48e09d 100644 --- a/alib2data/src/label/FailStateLabel.cpp +++ b/alib2data/src/label/FailStateLabel.cpp @@ -9,7 +9,7 @@ #include <sax/FromXMLParserHelper.h> #include "Label.h" #include <object/Object.h> -#include <core/xmlApi.hpp> +#include <registration/TypeRegistration.hpp> #include "UniqueLabel.h" namespace label { @@ -57,7 +57,7 @@ LabelBase* FailStateLabel::inc() && { namespace alib { -auto failStateLabelParserRegister = xmlApi<label::Label>::ParserRegister<label::FailStateLabel>(); -auto failStateLabelParserRegister2 = xmlApi<alib::Object>::ParserRegister<label::FailStateLabel>(); +auto failStateLabelType = registration::TypeRegister < label::Label, label::FailStateLabel > ( ); +auto failStateLabelType2 = registration::TypeRegister < alib::Object, label::FailStateLabel > ( ); } /* namespace alib */ diff --git a/alib2data/src/label/FinalStateLabel.cpp b/alib2data/src/label/FinalStateLabel.cpp index 69b6a35f39fad7a1ec3546313b13bdadc8134ec5..7397f2ff34e0d0ad0d59989175bcbba7c780b188 100644 --- a/alib2data/src/label/FinalStateLabel.cpp +++ b/alib2data/src/label/FinalStateLabel.cpp @@ -9,7 +9,7 @@ #include <sax/FromXMLParserHelper.h> #include "Label.h" #include <object/Object.h> -#include <core/xmlApi.hpp> +#include <registration/TypeRegistration.hpp> #include "UniqueLabel.h" namespace label { @@ -57,7 +57,7 @@ LabelBase* FinalStateLabel::inc() && { namespace alib { -auto finalStateLabelParserRegister = xmlApi<label::Label>::ParserRegister<label::FinalStateLabel>(); -auto finalStateLabelParserRegister2 = xmlApi<alib::Object>::ParserRegister<label::FinalStateLabel>(); +auto finalStateLabelType = registration::TypeRegister < label::Label, label::FinalStateLabel > ( ); +auto finalStateLabelType2 = registration::TypeRegister < alib::Object, label::FinalStateLabel > ( ); } /* namespace alib */ diff --git a/alib2data/src/label/HexavigesimalLabel.cpp b/alib2data/src/label/HexavigesimalLabel.cpp index 106cce5d7a735036e2952799cdd79db599cd8287..560afce384e21f47084fc7d88f2bac0ee7b49589 100644 --- a/alib2data/src/label/HexavigesimalLabel.cpp +++ b/alib2data/src/label/HexavigesimalLabel.cpp @@ -9,7 +9,7 @@ #include <sax/FromXMLParserHelper.h> #include "Label.h" #include <object/Object.h> -#include <core/xmlApi.hpp> +#include <registration/TypeRegistration.hpp> namespace label { @@ -67,7 +67,7 @@ LabelBase* HexavigesimalLabel::inc() && { namespace alib { -auto hexavigesimalLabelParserRegister = xmlApi<label::Label>::ParserRegister<label::HexavigesimalLabel>(); -auto hexavigesimalLabelParserRegister2 = xmlApi<alib::Object>::ParserRegister<label::HexavigesimalLabel>(); +auto hexavigesimalLabelType = registration::TypeRegister < label::Label, label::HexavigesimalLabel > ( ); +auto hexavigesimalLabelType2 = registration::TypeRegister < alib::Object, label::HexavigesimalLabel > ( ); } /* namespace alib */ diff --git a/alib2data/src/label/InitialStateLabel.cpp b/alib2data/src/label/InitialStateLabel.cpp index 3e668edd0df67ecfc5989a22f5bb379f148b32d6..2c529dcb83d20633428501f06eccf4902329a214 100644 --- a/alib2data/src/label/InitialStateLabel.cpp +++ b/alib2data/src/label/InitialStateLabel.cpp @@ -9,7 +9,7 @@ #include <sax/FromXMLParserHelper.h> #include "Label.h" #include <object/Object.h> -#include <core/xmlApi.hpp> +#include <registration/TypeRegistration.hpp> #include "UniqueLabel.h" namespace label { @@ -57,7 +57,7 @@ LabelBase* InitialStateLabel::inc() && { namespace alib { -auto initialStateLabelParserRegister = xmlApi<label::Label>::ParserRegister<label::InitialStateLabel>(); -auto initialStateLabelParserRegister2 = xmlApi<alib::Object>::ParserRegister<label::InitialStateLabel>(); +auto initialStateLabelType = registration::TypeRegister < label::Label, label::InitialStateLabel > ( ); +auto initialStateLabelType2 = registration::TypeRegister < alib::Object, label::InitialStateLabel > ( ); } /* namespace alib */ diff --git a/alib2data/src/label/ObjectLabel.cpp b/alib2data/src/label/ObjectLabel.cpp index 67de15198dd918d03591aec4dfd64df214311652..88dbeebf49c6e52c9e66fb3152516602ae645cd3 100644 --- a/alib2data/src/label/ObjectLabel.cpp +++ b/alib2data/src/label/ObjectLabel.cpp @@ -9,7 +9,7 @@ #include <sax/FromXMLParserHelper.h> #include "Label.h" #include <object/Object.h> -#include <core/xmlApi.hpp> +#include <registration/TypeRegistration.hpp> #include "UniqueLabel.h" namespace label { @@ -63,7 +63,7 @@ LabelBase* ObjectLabel::inc() && { namespace alib { -auto objectLabelParserRegister = xmlApi<label::Label>::ParserRegister<label::ObjectLabel>(); -auto objectLabelParserRegister2 = xmlApi<alib::Object>::ParserRegister<label::ObjectLabel>(); +auto objectLabelType = registration::TypeRegister < label::Label, label::ObjectLabel > ( ); +auto objectLabelType2 = registration::TypeRegister < alib::Object, label::ObjectLabel > ( ); } /* namespace alib */ diff --git a/alib2data/src/label/PrimitiveLabel.cpp b/alib2data/src/label/PrimitiveLabel.cpp index 281e544ee173319acdfaf07677082a423bba6519..1a4efa6969e4f98a34eadbf833d155c0ad2e5d1d 100644 --- a/alib2data/src/label/PrimitiveLabel.cpp +++ b/alib2data/src/label/PrimitiveLabel.cpp @@ -9,7 +9,7 @@ #include <sax/FromXMLParserHelper.h> #include "Label.h" #include <object/Object.h> -#include <core/xmlApi.hpp> +#include <registration/TypeRegistration.hpp> #include "UniqueLabel.h" namespace label { @@ -68,7 +68,7 @@ LabelBase* PrimitiveLabel::inc() && { namespace alib { -auto primitiveLabelParserRegister = xmlApi<label::Label>::ParserRegister<label::PrimitiveLabel>(); -auto primitiveLabelParserRegister2 = xmlApi<alib::Object>::ParserRegister<label::PrimitiveLabel>(); +auto primitiveLabelType = registration::TypeRegister < label::Label, label::PrimitiveLabel > ( ); +auto primitiveLabelType2 = registration::TypeRegister < alib::Object, label::PrimitiveLabel > ( ); } /* namespace alib */ diff --git a/alib2data/src/label/UniqueLabel.cpp b/alib2data/src/label/UniqueLabel.cpp index 6839764cb77ce7a4a92067dbcc178b91400cdf2c..a2f63ed8f1ef4f116fa30fb633d3dc86dffa8107 100644 --- a/alib2data/src/label/UniqueLabel.cpp +++ b/alib2data/src/label/UniqueLabel.cpp @@ -10,7 +10,7 @@ #include <sax/FromXMLParserHelper.h> #include "Label.h" #include <object/Object.h> -#include <core/xmlApi.hpp> +#include <registration/TypeRegistration.hpp> namespace label { @@ -85,7 +85,7 @@ LabelBase* UniqueLabel::inc() && { namespace alib { -auto uniqueLabelParserRegister = xmlApi<label::Label>::ParserRegister<label::UniqueLabel>(); -auto uniqueLabelParserRegister2 = xmlApi<alib::Object>::ParserRegister<label::UniqueLabel>(); +auto uniqueLabelType = registration::TypeRegister < label::Label, label::UniqueLabel > ( ); +auto uniqueLabelType2 = registration::TypeRegister < alib::Object, label::UniqueLabel > ( ); } /* namespace alib */ diff --git a/alib2data/src/regexp/formal/FormalRegExp.cpp b/alib2data/src/regexp/formal/FormalRegExp.cpp index 7a64ab14820b98d0b8a75b5b097f62d5ac8721d6..94a7e8b51e05f8beedb8248a9e0061943124c61f 100644 --- a/alib2data/src/regexp/formal/FormalRegExp.cpp +++ b/alib2data/src/regexp/formal/FormalRegExp.cpp @@ -8,14 +8,14 @@ #include "FormalRegExp.h" #include "../RegExp.h" #include <object/Object.h> -#include <core/xmlApi.hpp> +#include <registration/TypeRegistration.hpp> #include <core/castApi.hpp> namespace alib { -auto formalRegExpParserRegister = xmlApi < regexp::RegExp >::ParserRegister < regexp::FormalRegExp < > > ( ); -auto formalRegExpParserRegister2 = xmlApi < alib::Object >::ParserRegister < regexp::FormalRegExp < > > ( ); +auto formalRegExpType = registration::TypeRegister < regexp::RegExp, regexp::FormalRegExp < > > ( ); +auto formalRegExpType2 = registration::TypeRegister < alib::Object, regexp::FormalRegExp < > > ( ); auto FormalRegExpFromUnboundedRegExp = castApi::CastRegister < regexp::FormalRegExp < >, regexp::UnboundedRegExp < > > ( ); auto FormalRegExpCastBinder = castApi::CastPoolStringBinder < regexp::FormalRegExp < > > ( regexp::FormalRegExp < >::getXmlTagName() ); diff --git a/alib2data/src/regexp/unbounded/UnboundedRegExp.cpp b/alib2data/src/regexp/unbounded/UnboundedRegExp.cpp index afe48d961ae545f6bf223d3b8b8146202700380b..2cc259f294fae13a74df0bda431b5b9289a353c1 100644 --- a/alib2data/src/regexp/unbounded/UnboundedRegExp.cpp +++ b/alib2data/src/regexp/unbounded/UnboundedRegExp.cpp @@ -8,13 +8,13 @@ #include "UnboundedRegExp.h" #include "../RegExp.h" #include <object/Object.h> -#include <core/xmlApi.hpp> +#include <registration/TypeRegistration.hpp> #include <core/castApi.hpp> namespace alib { -auto unboundedRegExpParserRegister = xmlApi < regexp::RegExp >::ParserRegister < regexp::UnboundedRegExp < > > ( ); -auto unboundedRegExpParserRegister2 = xmlApi < alib::Object >::ParserRegister < regexp::UnboundedRegExp < > > ( ); +auto unboundedRegExpType = registration::TypeRegister < regexp::RegExp, regexp::UnboundedRegExp < > > ( ); +auto unboundedRegExpType2 = registration::TypeRegister < alib::Object, regexp::UnboundedRegExp < > > ( ); auto UnboundedRegExpFromFormalRegExp = castApi::CastRegister < regexp::UnboundedRegExp < >, regexp::FormalRegExp < > > ( ); auto UnboundedRegExpCastBinder = castApi::CastPoolStringBinder < regexp::UnboundedRegExp < > > ( regexp::UnboundedRegExp < >::getXmlTagName() ); diff --git a/alib2data/src/rte/formal/FormalRTE.cpp b/alib2data/src/rte/formal/FormalRTE.cpp index 3ddb5f98f44efc693ec2fe08f894ddec50a1ffc3..879420b1b7987f6012db31bee6776c046805a7c2 100644 --- a/alib2data/src/rte/formal/FormalRTE.cpp +++ b/alib2data/src/rte/formal/FormalRTE.cpp @@ -7,14 +7,14 @@ #include "FormalRTE.h" #include "../RTE.h" -#include <core/xmlApi.hpp> +#include <registration/TypeRegistration.hpp> #include <core/castApi.hpp> #include <object/Object.h> namespace alib { -auto formalRTEParserRegister = xmlApi < rte::RTE >::ParserRegister < rte::FormalRTE < > > ( ); -auto formalRTEParserRegister2 = xmlApi < alib::Object >::ParserRegister < rte::FormalRTE < > > ( ); +auto formalRTEType = registration::TypeRegister < rte::RTE, rte::FormalRTE < > > ( ); +auto formalRTEType2 = registration::TypeRegister < alib::Object, rte::FormalRTE < > > ( ); auto FormalRTECastBinder = castApi::CastPoolStringBinder < rte::FormalRTE < > > ( rte::FormalRTE < >::getXmlTagName ( ) ); diff --git a/alib2data/src/string/CyclicString.cpp b/alib2data/src/string/CyclicString.cpp index 5e74b56505c79ada9903b39fd841fc5bf4dee2a6..701efc9a1f64f3135264a34cd3c45be8e9b40667 100644 --- a/alib2data/src/string/CyclicString.cpp +++ b/alib2data/src/string/CyclicString.cpp @@ -8,13 +8,13 @@ #include "CyclicString.h" #include "String.h" #include <object/Object.h> -#include <core/xmlApi.hpp> +#include <registration/TypeRegistration.hpp> #include <core/castApi.hpp> namespace alib { -auto cyclicStringParserRegister = xmlApi<string::String>::ParserRegister<string::CyclicString < > >(); -auto cyclicStringParserRegister2 = xmlApi<alib::Object>::ParserRegister<string::CyclicString < > >(); +auto cyclicStringType = registration::TypeRegister < string::String, string::CyclicString < > > (); +auto cyclicStringType2 = registration::TypeRegister < alib::Object, string::CyclicString < > > (); auto CyclicStringFromEpsilon = castApi::CastRegister<string::CyclicString < >, string::Epsilon < > >(); auto CyclicStringCastBinder = castApi::CastPoolStringBinder<string::CyclicString < > >(string::CyclicString < >::getXmlTagName()); diff --git a/alib2data/src/string/Epsilon.cpp b/alib2data/src/string/Epsilon.cpp index 74122568d308a4143b98da9e068df5afa8e68848..3defbc43d120fb40f9a16b8bb7e42baaa4fcf0b5 100644 --- a/alib2data/src/string/Epsilon.cpp +++ b/alib2data/src/string/Epsilon.cpp @@ -9,11 +9,11 @@ #include "String.h" #include <object/Object.h> -#include <core/xmlApi.hpp> +#include <registration/TypeRegistration.hpp> namespace alib { -auto epsilonParserRegister = xmlApi<string::String>::ParserRegister<string::Epsilon < > >(); -auto epsilonParserRegister2 = xmlApi<alib::Object>::ParserRegister<string::Epsilon < > >(); +auto epsilonType = registration::TypeRegister < string::String, string::Epsilon < > > (); +auto epsilonType2 = registration::TypeRegister < alib::Object, string::Epsilon < > > (); } /* namespace alib */ diff --git a/alib2data/src/string/LinearString.cpp b/alib2data/src/string/LinearString.cpp index 843aae4867c216d016bb08a0b15c0030263a05c9..f5ef9ab65c0477eeecb899ce3fad02651d76a30e 100644 --- a/alib2data/src/string/LinearString.cpp +++ b/alib2data/src/string/LinearString.cpp @@ -9,13 +9,13 @@ #include "String.h" #include <object/Object.h> -#include <core/xmlApi.hpp> +#include <registration/TypeRegistration.hpp> #include <core/castApi.hpp> namespace alib { -auto linearStringParserRegister = xmlApi < string::String >::ParserRegister < string::LinearString < > > (); -auto linearStringParserRegister2 = xmlApi < alib::Object >::ParserRegister < string::LinearString < > > (); +auto linearStringType = registration::TypeRegister < string::String, string::LinearString < > > ( ); +auto linearStringType2 = registration::TypeRegister < alib::Object, string::LinearString < > > ( ); auto LinearStringFromEpsilon = castApi::CastRegister < string::LinearString < >, string::Epsilon < > > ( ); auto LinearStringFromPrefixBarTree = castApi::CastRegister < string::LinearString < >, tree::PrefixBarTree < > > ( ); diff --git a/alib2data/src/tree/ranked/PostfixRankedTree.cpp b/alib2data/src/tree/ranked/PostfixRankedTree.cpp index 37559b0ea1a7337d91ab54e6bcbed71f93da7d49..c9f608d7a72287283d1125dc44e74b7420036d52 100644 --- a/alib2data/src/tree/ranked/PostfixRankedTree.cpp +++ b/alib2data/src/tree/ranked/PostfixRankedTree.cpp @@ -9,14 +9,14 @@ #include "../Tree.h" #include "../RankedTreeWrapper.h" #include <object/Object.h> -#include <core/xmlApi.hpp> +#include <registration/TypeRegistration.hpp> #include <core/castApi.hpp> namespace alib { -auto postfixRankedTreeParserRegister = xmlApi < ::tree::Tree >::ParserRegister < ::tree::PostfixRankedTree < > > ( ); -auto postfixRankedTreeParserRegister2 = xmlApi < ::tree::RankedTreeWrapper >::ParserRegister < ::tree::PostfixRankedTree < > > ( ); -auto postfixRankedTreeParserRegister3 = xmlApi < alib::Object >::ParserRegister < ::tree::PostfixRankedTree < > > ( ); +auto postfixRankedTreeType = registration::TypeRegister < ::tree::Tree, ::tree::PostfixRankedTree < > > ( ); +auto postfixRankedTreeType2 = registration::TypeRegister < ::tree::RankedTreeWrapper, ::tree::PostfixRankedTree < > > ( ); +auto postfixRankedTreeType3 = registration::TypeRegister < alib::Object, ::tree::PostfixRankedTree < > > ( ); auto PostfixRankedTreeFromRankedTree = castApi::CastRegister < ::tree::PostfixRankedTree < >, ::tree::RankedTree < > > ( ); auto PostfixRankedTreeCastBinder = castApi::CastPoolStringBinder < ::tree::PostfixRankedTree < > > ( ::tree::PostfixRankedTree < >::getXmlTagName ( ) ); diff --git a/alib2data/src/tree/ranked/PrefixRankedBarNonlinearPattern.cpp b/alib2data/src/tree/ranked/PrefixRankedBarNonlinearPattern.cpp index eb0ff1e9d4a43b002ae331b098f08a419ac212da..2eb97c178bb57f19bf217541cc3bb009fad66f84 100644 --- a/alib2data/src/tree/ranked/PrefixRankedBarNonlinearPattern.cpp +++ b/alib2data/src/tree/ranked/PrefixRankedBarNonlinearPattern.cpp @@ -9,14 +9,14 @@ #include "../Tree.h" #include "../RankedTreeWrapper.h" #include <object/Object.h> -#include <core/xmlApi.hpp> +#include <registration/TypeRegistration.hpp> #include <core/castApi.hpp> namespace alib { -auto prefixRankedBarNonlinearPatternParserRegister = xmlApi < ::tree::Tree >::ParserRegister < ::tree::PrefixRankedBarNonlinearPattern < > > ( ); -auto prefixRankedBarNonlinearPatternParserRegister2 = xmlApi < ::tree::RankedTreeWrapper >::ParserRegister < ::tree::PrefixRankedBarNonlinearPattern < > > ( ); -auto prefixRankedBarNonlinearPatternParserRegister3 = xmlApi < alib::Object >::ParserRegister < ::tree::PrefixRankedBarNonlinearPattern < > > ( ); +auto prefixRankedBarNonlinearPatternType = registration::TypeRegister < ::tree::Tree, ::tree::PrefixRankedBarNonlinearPattern < > > ( ); +auto prefixRankedBarNonlinearPatternType2 = registration::TypeRegister < ::tree::RankedTreeWrapper, ::tree::PrefixRankedBarNonlinearPattern < > > ( ); +auto prefixRankedBarNonlinearPatternType3 = registration::TypeRegister < alib::Object, ::tree::PrefixRankedBarNonlinearPattern < > > ( ); auto PrefixRankedBarNonlinearPatternFromRankedTree = castApi::CastRegister < ::tree::PrefixRankedBarNonlinearPattern < >, ::tree::RankedTree < > > ( ); auto PrefixRankedBarNonlinearPatternFromRankedPattern = castApi::CastRegister < ::tree::PrefixRankedBarNonlinearPattern < >, ::tree::RankedPattern < > > ( ); diff --git a/alib2data/src/tree/ranked/PrefixRankedBarPattern.cpp b/alib2data/src/tree/ranked/PrefixRankedBarPattern.cpp index 9c70251b31bad5b12347f55542000a91b66c5043..02709d7a916824593292d488b1fe6038b0ede84d 100644 --- a/alib2data/src/tree/ranked/PrefixRankedBarPattern.cpp +++ b/alib2data/src/tree/ranked/PrefixRankedBarPattern.cpp @@ -9,14 +9,14 @@ #include "../Tree.h" #include "../RankedTreeWrapper.h" #include <object/Object.h> -#include <core/xmlApi.hpp> +#include <registration/TypeRegistration.hpp> #include <core/castApi.hpp> namespace alib { -auto prefixRankedBarPatternParserRegister = xmlApi < ::tree::Tree >::ParserRegister < ::tree::PrefixRankedBarPattern < > > (); -auto prefixRankedBarPatternParserRegister2 = xmlApi < ::tree::RankedTreeWrapper >::ParserRegister < ::tree::PrefixRankedBarPattern < > > (); -auto prefixRankedBarPatternParserRegister3 = xmlApi < alib::Object >::ParserRegister < ::tree::PrefixRankedBarPattern < > > (); +auto prefixRankedBarPatternType = registration::TypeRegister < ::tree::Tree, ::tree::PrefixRankedBarPattern < > > ( ); +auto prefixRankedBarPatternType2 = registration::TypeRegister < ::tree::RankedTreeWrapper, ::tree::PrefixRankedBarPattern < > > ( ); +auto prefixRankedBarPatternType3 = registration::TypeRegister < alib::Object, ::tree::PrefixRankedBarPattern < > > ( ); auto PrefixRankedBarPatternFromRankedPattern = castApi::CastRegister < ::tree::PrefixRankedBarPattern < >, ::tree::RankedPattern < > > ( ); auto PrefixRankedBarPatternFromPrefixRankedBarTree = castApi::CastRegister < ::tree::PrefixRankedBarPattern < >, ::tree::PrefixRankedBarTree < > > ( ); diff --git a/alib2data/src/tree/ranked/PrefixRankedBarTree.cpp b/alib2data/src/tree/ranked/PrefixRankedBarTree.cpp index 2f7916cd46ed78e9a187206cd9e2ce88b3f55401..ca194a42709f4598b415f84ab683b8184978860e 100644 --- a/alib2data/src/tree/ranked/PrefixRankedBarTree.cpp +++ b/alib2data/src/tree/ranked/PrefixRankedBarTree.cpp @@ -9,14 +9,14 @@ #include "../Tree.h" #include "../RankedTreeWrapper.h" #include <object/Object.h> -#include <core/xmlApi.hpp> +#include <registration/TypeRegistration.hpp> #include <core/castApi.hpp> namespace alib { -auto prefixRankedBarTreeParserRegister = xmlApi < ::tree::Tree >::ParserRegister < ::tree::PrefixRankedBarTree < > > (); -auto prefixRankedBarTreeParserRegister2 = xmlApi < ::tree::RankedTreeWrapper >::ParserRegister < ::tree::PrefixRankedBarTree < > > (); -auto prefixRankedBarTreeParserRegister3 = xmlApi < alib::Object >::ParserRegister < ::tree::PrefixRankedBarTree < > > (); +auto prefixRankedBarTreeType = registration::TypeRegister < ::tree::Tree, ::tree::PrefixRankedBarTree < > > ( ); +auto prefixRankedBarTreeType2 = registration::TypeRegister < ::tree::RankedTreeWrapper, ::tree::PrefixRankedBarTree < > > ( ); +auto prefixRankedBarTreeType3 = registration::TypeRegister < alib::Object, ::tree::PrefixRankedBarTree < > > ( ); auto PrefixRankedBarTreeFromRankedTree = castApi::CastRegister < ::tree::PrefixRankedBarTree < >, ::tree::RankedTree < > > ( ); auto PrefixRankedBarTreeCastBinder = castApi::CastPoolStringBinder < ::tree::PrefixRankedBarTree < > > ( ::tree::PrefixRankedBarTree < >::getXmlTagName() ); diff --git a/alib2data/src/tree/ranked/PrefixRankedNonlinearPattern.cpp b/alib2data/src/tree/ranked/PrefixRankedNonlinearPattern.cpp index b5caaf11bbc3cd5e480c1b7a2b41cc105ea8a4dc..b4b2ef800fe8759cacc308c2e5fe3500d6fedef2 100644 --- a/alib2data/src/tree/ranked/PrefixRankedNonlinearPattern.cpp +++ b/alib2data/src/tree/ranked/PrefixRankedNonlinearPattern.cpp @@ -9,14 +9,14 @@ #include "../Tree.h" #include "../RankedTreeWrapper.h" #include <object/Object.h> -#include <core/xmlApi.hpp> +#include <registration/TypeRegistration.hpp> #include <core/castApi.hpp> namespace alib { -auto prefixRankedNonlinearPatternParserRegister = xmlApi < ::tree::Tree >::ParserRegister < ::tree::PrefixRankedNonlinearPattern < > > ( ); -auto prefixRankedNonlinearPatternParserRegister2 = xmlApi < ::tree::RankedTreeWrapper >::ParserRegister < ::tree::PrefixRankedNonlinearPattern < > > ( ); -auto prefixRankedNonlinearPatternParserRegister3 = xmlApi < alib::Object >::ParserRegister < ::tree::PrefixRankedNonlinearPattern < > > ( ); +auto prefixRankedNonlinearPatternType = registration::TypeRegister < ::tree::Tree, ::tree::PrefixRankedNonlinearPattern < > > ( ); +auto prefixRankedNonlinearPatternType2 = registration::TypeRegister < ::tree::RankedTreeWrapper, ::tree::PrefixRankedNonlinearPattern < > > ( ); +auto prefixRankedNonlinearPatternType3 = registration::TypeRegister < alib::Object, ::tree::PrefixRankedNonlinearPattern < > > ( ); auto PrefixRankedNonlinearPatternFromRankedTree = castApi::CastRegister < ::tree::PrefixRankedNonlinearPattern < >, ::tree::RankedTree < > > ( ); auto PrefixRankedNonlinearPatternFromRankedPattern = castApi::CastRegister < ::tree::PrefixRankedNonlinearPattern < >, ::tree::RankedPattern < > > ( ); diff --git a/alib2data/src/tree/ranked/PrefixRankedPattern.cpp b/alib2data/src/tree/ranked/PrefixRankedPattern.cpp index e9d0ef70dd9c2cbd5b9c6c3633e8603b3fc4dcae..f1a913c09bce86e223fbe5cab41e76e92512f812 100644 --- a/alib2data/src/tree/ranked/PrefixRankedPattern.cpp +++ b/alib2data/src/tree/ranked/PrefixRankedPattern.cpp @@ -9,14 +9,14 @@ #include "../Tree.h" #include "../RankedTreeWrapper.h" #include <object/Object.h> -#include <core/xmlApi.hpp> +#include <registration/TypeRegistration.hpp> #include <core/castApi.hpp> namespace alib { -auto prefixRankedPatternParserRegister = xmlApi < ::tree::Tree >::ParserRegister < ::tree::PrefixRankedPattern < > > (); -auto prefixRankedPatternParserRegister2 = xmlApi < ::tree::RankedTreeWrapper >::ParserRegister < ::tree::PrefixRankedPattern < > > (); -auto prefixRankedPatternParserRegister3 = xmlApi < alib::Object >::ParserRegister < ::tree::PrefixRankedPattern < > > (); +auto prefixRankedPatternType = registration::TypeRegister < ::tree::Tree, ::tree::PrefixRankedPattern < > > ( ); +auto prefixRankedPatternType2 = registration::TypeRegister < ::tree::RankedTreeWrapper, ::tree::PrefixRankedPattern < > > ( ); +auto prefixRankedPatternType3 = registration::TypeRegister < alib::Object, ::tree::PrefixRankedPattern < > > ( ); auto PrefixRankedPatternFromRankedPattern = castApi::CastRegister < ::tree::PrefixRankedPattern < >, ::tree::RankedPattern < > > ( ); auto PrefixRankedPatternFromPrefixRankedTree = castApi::CastRegister < ::tree::PrefixRankedPattern < >, ::tree::PrefixRankedTree < > > ( ); diff --git a/alib2data/src/tree/ranked/PrefixRankedTree.cpp b/alib2data/src/tree/ranked/PrefixRankedTree.cpp index a5d2ba61bbf5c76ec13f843468665d73128991e4..2baa29fe6806e959aa490e348f37c3ebe327dd58 100644 --- a/alib2data/src/tree/ranked/PrefixRankedTree.cpp +++ b/alib2data/src/tree/ranked/PrefixRankedTree.cpp @@ -9,14 +9,14 @@ #include "../Tree.h" #include "../RankedTreeWrapper.h" #include <object/Object.h> -#include <core/xmlApi.hpp> +#include <registration/TypeRegistration.hpp> #include <core/castApi.hpp> namespace alib { -auto prefixRankedTreeParserRegister = xmlApi < ::tree::Tree >::ParserRegister < ::tree::PrefixRankedTree < > > (); -auto prefixRankedTreeParserRegister2 = xmlApi < ::tree::RankedTreeWrapper >::ParserRegister < ::tree::PrefixRankedTree < > > (); -auto prefixRankedTreeParserRegister3 = xmlApi < alib::Object >::ParserRegister < ::tree::PrefixRankedTree < > > (); +auto prefixRankedTreeType = registration::TypeRegister < ::tree::Tree, ::tree::PrefixRankedTree < > > ( ); +auto prefixRankedTreeType2 = registration::TypeRegister < ::tree::RankedTreeWrapper, ::tree::PrefixRankedTree < > > ( ); +auto prefixRankedTreeType3 = registration::TypeRegister < alib::Object, ::tree::PrefixRankedTree < > > ( ); auto PrefixRankedTreeFromRankedTree = castApi::CastRegister < ::tree::PrefixRankedTree < > , ::tree::RankedTree < > > ( ); auto PrefixRankedTreeCastBinder = castApi::CastPoolStringBinder < ::tree::PrefixRankedTree < > > ( ::tree::PrefixRankedTree < >::getXmlTagName() ); diff --git a/alib2data/src/tree/ranked/RankedNonlinearPattern.cpp b/alib2data/src/tree/ranked/RankedNonlinearPattern.cpp index 8295592ef46d1447c90b45d2dcb00a43657df5c9..ba11e59d4c832725eae1407d808062705d415164 100644 --- a/alib2data/src/tree/ranked/RankedNonlinearPattern.cpp +++ b/alib2data/src/tree/ranked/RankedNonlinearPattern.cpp @@ -9,13 +9,13 @@ #include "../Tree.h" #include "../RankedTreeWrapper.h" #include <object/Object.h> -#include <core/xmlApi.hpp> +#include <registration/TypeRegistration.hpp> #include <core/castApi.hpp> namespace alib { -auto RankedNonlinearPatternParserRegister = xmlApi < ::tree::Tree >::ParserRegister < ::tree::RankedNonlinearPattern < > > ( ); -auto RankedNonlinearPatternParserRegister2 = xmlApi < ::tree::RankedTreeWrapper >::ParserRegister < ::tree::RankedNonlinearPattern < > > ( ); -auto RankedNonlinearPatternParserRegister3 = xmlApi < alib::Object >::ParserRegister < ::tree::RankedNonlinearPattern < > > ( ); +auto RankedNonlinearPatternType = registration::TypeRegister < ::tree::Tree, ::tree::RankedNonlinearPattern < > > ( ); +auto RankedNonlinearPatternType2 = registration::TypeRegister < ::tree::RankedTreeWrapper, ::tree::RankedNonlinearPattern < > > ( ); +auto RankedNonlinearPatternType3 = registration::TypeRegister < alib::Object, ::tree::RankedNonlinearPattern < > > ( ); } /* namespace alib */ diff --git a/alib2data/src/tree/ranked/RankedPattern.cpp b/alib2data/src/tree/ranked/RankedPattern.cpp index bc0f2b82f270e6d457d32d09ddb6c35ef7a9d0a8..6b616e53654b93013fbbeeadf59f5e5fae95944f 100644 --- a/alib2data/src/tree/ranked/RankedPattern.cpp +++ b/alib2data/src/tree/ranked/RankedPattern.cpp @@ -9,14 +9,14 @@ #include "../Tree.h" #include "../RankedTreeWrapper.h" #include <object/Object.h> -#include <core/xmlApi.hpp> +#include <registration/TypeRegistration.hpp> #include <core/castApi.hpp> namespace alib { -auto rankedPatternParserRegister = xmlApi < ::tree::Tree >::ParserRegister < ::tree::RankedPattern < > > (); -auto rankedPatternParserRegister2 = xmlApi < ::tree::RankedTreeWrapper >::ParserRegister < ::tree::RankedPattern < > > (); -auto rankedPatternParserRegister3 = xmlApi < alib::Object >::ParserRegister < ::tree::RankedPattern < > > (); +auto rankedPatternType = registration::TypeRegister < ::tree::Tree, ::tree::RankedPattern < > > ( ); +auto rankedPatternType2 = registration::TypeRegister < ::tree::RankedTreeWrapper, ::tree::RankedPattern < > > ( ); +auto rankedPatternType3 = registration::TypeRegister < alib::Object, ::tree::RankedPattern < > > ( ); auto RankedPatternFromUnrankedPattern = castApi::CastRegister < ::tree::RankedPattern < >, ::tree::UnrankedPattern < > > ( ); auto RankedPatternCastBinder = castApi::CastPoolStringBinder < ::tree::RankedPattern < > > ( ::tree::RankedPattern < >::getXmlTagName() ); diff --git a/alib2data/src/tree/ranked/RankedTree.cpp b/alib2data/src/tree/ranked/RankedTree.cpp index 2da2063c6da2bc9e6d356a2008cf2ea7da5e3147..7898070f5a218e0078950efab5d1d16407e468b0 100644 --- a/alib2data/src/tree/ranked/RankedTree.cpp +++ b/alib2data/src/tree/ranked/RankedTree.cpp @@ -9,14 +9,14 @@ #include "../Tree.h" #include "../RankedTreeWrapper.h" #include <object/Object.h> -#include <core/xmlApi.hpp> +#include <registration/TypeRegistration.hpp> #include <core/castApi.hpp> namespace alib { -auto rankedTreeParserRegister = xmlApi < ::tree::Tree >::ParserRegister < ::tree::RankedTree < > > (); -auto rankedTreeParserRegister2 = xmlApi < ::tree::RankedTreeWrapper >::ParserRegister < ::tree::RankedTree < > > (); -auto rankedTreeParserRegister3 = xmlApi < alib::Object >::ParserRegister < ::tree::RankedTree < > > (); +auto rankedTreeType = registration::TypeRegister < ::tree::Tree, ::tree::RankedTree < > > ( ); +auto rankedTreeType2 = registration::TypeRegister < ::tree::RankedTreeWrapper, ::tree::RankedTree < > > ( ); +auto rankedTreeType3 = registration::TypeRegister < alib::Object, ::tree::RankedTree < > > ( ); auto RankedTreeFromUnrankedTree = castApi::CastRegister < ::tree::RankedTree < >, ::tree::UnrankedTree < > > ( ); auto RankedTreeFromPostfixRankedTree = castApi::CastRegister < ::tree::RankedTree < >, ::tree::PostfixRankedTree < > > ( ); diff --git a/alib2data/src/tree/unranked/PrefixBarTree.cpp b/alib2data/src/tree/unranked/PrefixBarTree.cpp index 83a9f82f8b4421ff6b9422beeda78798f5ae5d3c..9d4eb3b8126365ab85979788c29536a6561e907d 100644 --- a/alib2data/src/tree/unranked/PrefixBarTree.cpp +++ b/alib2data/src/tree/unranked/PrefixBarTree.cpp @@ -9,14 +9,14 @@ #include "../Tree.h" #include "../UnrankedTreeWrapper.h" #include <object/Object.h> -#include <core/xmlApi.hpp> +#include <registration/TypeRegistration.hpp> #include <core/castApi.hpp> namespace alib { -auto prefixBarTreeParserRegister = xmlApi < tree::Tree >::ParserRegister < tree::PrefixBarTree < > > ( ); -auto prefixBarTreeParserRegister2 = xmlApi < tree::UnrankedTreeWrapper >::ParserRegister < tree::PrefixBarTree < > > ( ); -auto prefixBarTreeParserRegister3 = xmlApi < alib::Object >::ParserRegister < tree::PrefixBarTree < > > ( ); +auto prefixBarTreeType = registration::TypeRegister < tree::Tree, tree::PrefixBarTree < > > ( ); +auto prefixBarTreeType2 = registration::TypeRegister < tree::UnrankedTreeWrapper, tree::PrefixBarTree < > > ( ); +auto prefixBarTreeType3 = registration::TypeRegister < alib::Object, tree::PrefixBarTree < > > ( ); auto PrefixBarTreeFromUnrankedTree = castApi::CastRegister < tree::PrefixBarTree < > , tree::UnrankedTree < > > ( ); auto PrefixBarTreeCastBinder = castApi::CastPoolStringBinder < tree::PrefixBarTree < > > ( tree::PrefixBarTree < >::getXmlTagName() ); diff --git a/alib2data/src/tree/unranked/UnrankedNonlinearPattern.cpp b/alib2data/src/tree/unranked/UnrankedNonlinearPattern.cpp index 8a5a88a3463e52fc1b09bbd3fd88d7c3a893d0ce..7aa205bae607f430b6a7fa963d12cce897319f09 100644 --- a/alib2data/src/tree/unranked/UnrankedNonlinearPattern.cpp +++ b/alib2data/src/tree/unranked/UnrankedNonlinearPattern.cpp @@ -9,13 +9,13 @@ #include "../Tree.h" #include "../UnrankedTreeWrapper.h" #include <object/Object.h> -#include <core/xmlApi.hpp> +#include <registration/TypeRegistration.hpp> #include <core/castApi.hpp> namespace alib { -auto UnrankedNonlinearPatternParserRegister = xmlApi < ::tree::Tree >::ParserRegister < ::tree::UnrankedNonlinearPattern < > > ( ); -auto UnrankedNonlinearPatternParserRegister2 = xmlApi < ::tree::UnrankedTreeWrapper >::ParserRegister < ::tree::UnrankedNonlinearPattern < > > ( ); -auto UnrankedNonlinearPatternParserRegister3 = xmlApi < alib::Object >::ParserRegister < ::tree::UnrankedNonlinearPattern < > > ( ); +auto UnrankedNonlinearPatternType = registration::TypeRegister < ::tree::Tree, ::tree::UnrankedNonlinearPattern < > > ( ); +auto UnrankedNonlinearPatternType2 = registration::TypeRegister < ::tree::UnrankedTreeWrapper, ::tree::UnrankedNonlinearPattern < > > ( ); +auto UnrankedNonlinearPatternType3 = registration::TypeRegister < alib::Object, ::tree::UnrankedNonlinearPattern < > > ( ); } /* namespace alib */ diff --git a/alib2data/src/tree/unranked/UnrankedPattern.cpp b/alib2data/src/tree/unranked/UnrankedPattern.cpp index 4dd19bca3579f859b4a4e259371e057a3a863299..a6d32a291592a4279815134bf0a4fdb1d7112e9e 100644 --- a/alib2data/src/tree/unranked/UnrankedPattern.cpp +++ b/alib2data/src/tree/unranked/UnrankedPattern.cpp @@ -9,14 +9,14 @@ #include "../Tree.h" #include "../UnrankedTreeWrapper.h" #include <object/Object.h> -#include <core/xmlApi.hpp> +#include <registration/TypeRegistration.hpp> #include <core/castApi.hpp> namespace alib { -auto unrankedPatternParserRegister = xmlApi < ::tree::Tree >::ParserRegister < ::tree::UnrankedPattern < > > ( ); -auto unrankedPatternParserRegister2 = xmlApi < ::tree::UnrankedTreeWrapper >::ParserRegister < ::tree::UnrankedPattern < > > ( ); -auto unrankedPatternParserRegister3 = xmlApi < alib::Object >::ParserRegister < ::tree::UnrankedPattern < > > ( ); +auto unrankedPatternType = registration::TypeRegister < ::tree::Tree, ::tree::UnrankedPattern < > > ( ); +auto unrankedPatternType2 = registration::TypeRegister < ::tree::UnrankedTreeWrapper, ::tree::UnrankedPattern < > > ( ); +auto unrankedPatternType3 = registration::TypeRegister < alib::Object, ::tree::UnrankedPattern < > > ( ); auto UnrankedPatternFromRankedPattern = castApi::CastRegister < ::tree::UnrankedPattern < >, ::tree::RankedPattern < > > ( ); auto UnrankedPatternCastBinder = castApi::CastPoolStringBinder < ::tree::UnrankedPattern < > > ( ::tree::UnrankedPattern < >::getXmlTagName() ); diff --git a/alib2data/src/tree/unranked/UnrankedTree.cpp b/alib2data/src/tree/unranked/UnrankedTree.cpp index e01aee4d893945be04f4a46fd9cce81336926698..ae2172109a8a8129076964929baa1922d2b32c0b 100644 --- a/alib2data/src/tree/unranked/UnrankedTree.cpp +++ b/alib2data/src/tree/unranked/UnrankedTree.cpp @@ -9,14 +9,14 @@ #include "../Tree.h" #include "../UnrankedTreeWrapper.h" #include <object/Object.h> -#include <core/xmlApi.hpp> +#include <registration/TypeRegistration.hpp> #include <core/castApi.hpp> namespace alib { -auto unrankedTreeParserRegister = xmlApi < ::tree::Tree >::ParserRegister < ::tree::UnrankedTree < > > ( ); -auto unrankedTreeParserRegister2 = xmlApi < ::tree::UnrankedTreeWrapper >::ParserRegister < ::tree::UnrankedTree < > > ( ); -auto unrankedTreeParserRegister3 = xmlApi < alib::Object >::ParserRegister < ::tree::UnrankedTree < > > ( ); +auto unrankedTreeType = registration::TypeRegister < ::tree::Tree, ::tree::UnrankedTree < > > ( ); +auto unrankedTreeType2 = registration::TypeRegister < ::tree::UnrankedTreeWrapper, ::tree::UnrankedTree < > > ( ); +auto unrankedTreeType3 = registration::TypeRegister < alib::Object, ::tree::UnrankedTree < > > ( ); auto UnrankedTreeFromRankedTree = castApi::CastRegister < ::tree::UnrankedTree < >, ::tree::RankedTree < > > ( ); auto UnrankedTreeCastBinder = castApi::CastPoolStringBinder < ::tree::UnrankedTree < > > ( ::tree::UnrankedTree < >::getXmlTagName() ); diff --git a/alib2data_experimental/src/graph/directed/AdjacencyListDirectedGraph.cpp b/alib2data_experimental/src/graph/directed/AdjacencyListDirectedGraph.cpp index 9c386470ee88f26a2a65470b2214f29edc46613d..c1d319631a6949d5c3f6872d82c30923d2d6aaa0 100644 --- a/alib2data_experimental/src/graph/directed/AdjacencyListDirectedGraph.cpp +++ b/alib2data_experimental/src/graph/directed/AdjacencyListDirectedGraph.cpp @@ -11,7 +11,7 @@ #include <compare> #include <object/Object.h> -#include <core/xmlApi.hpp> +#include <registration/TypeRegistration.hpp> #include <sax/FromXMLParserHelper.h> #include <object/UniqueObject.h> #include "../common/GraphFromXMLParser.h" @@ -326,7 +326,7 @@ alib::ObjectBase* AdjacencyListDirectedGraph::inc() && { namespace alib { -auto adjListDirGraphParserRegister = xmlApi<graph::Graph>::ParserRegister<graph::AdjacencyListDirectedGraph>(); -auto adjListDirGraphParserRegister2 = xmlApi<alib::Object>::ParserRegister<graph::AdjacencyListDirectedGraph>(); +auto adjListDirGraphType = registration::TypeRegister < graph::Graph, graph::AdjacencyListDirectedGraph > (); +auto adjListDirGraphType2 = registration::TypeRegister < alib::Object, graph::AdjacencyListDirectedGraph > (); } /* namespace alib */ diff --git a/alib2data_experimental/src/graph/directed/AdjacencyMatrixDirectedGraph.cpp b/alib2data_experimental/src/graph/directed/AdjacencyMatrixDirectedGraph.cpp index 6caf427762c485b9bc7dff83a02311ed65456ee5..8daefd71f1f272c6f214cca966d4678f504d04ef 100644 --- a/alib2data_experimental/src/graph/directed/AdjacencyMatrixDirectedGraph.cpp +++ b/alib2data_experimental/src/graph/directed/AdjacencyMatrixDirectedGraph.cpp @@ -11,7 +11,7 @@ #include <compare> #include <object/Object.h> -#include <core/xmlApi.hpp> +#include <registration/TypeRegistration.hpp> #include <sax/FromXMLParserHelper.h> #include <object/UniqueObject.h> #include "../common/GraphFromXMLParser.h" @@ -327,7 +327,7 @@ alib::ObjectBase* AdjacencyMatrixDirectedGraph::inc() && { namespace alib { -auto adjMatDirGraphParserRegister = xmlApi<graph::Graph>::ParserRegister<graph::AdjacencyMatrixDirectedGraph>(); -auto adjMatDirGraphParserRegister2 = xmlApi<alib::Object>::ParserRegister<graph::AdjacencyMatrixDirectedGraph>(); +auto adjMatDirGraphType = registration::TypeRegister < graph::Graph, graph::AdjacencyMatrixDirectedGraph > (); +auto adjMatDirGraphType2 = registration::TypeRegister < alib::Object, graph::AdjacencyMatrixDirectedGraph > (); } /* namespace alib */ diff --git a/alib2data_experimental/src/graph/undirected/AdjacencyListUndirectedGraph.cpp b/alib2data_experimental/src/graph/undirected/AdjacencyListUndirectedGraph.cpp index a135a4c31e2ebd8ac99cae6d3dfec51700bb6c3c..3c6b29c827d5622cdc7d1a02e85bb22c8888e853 100644 --- a/alib2data_experimental/src/graph/undirected/AdjacencyListUndirectedGraph.cpp +++ b/alib2data_experimental/src/graph/undirected/AdjacencyListUndirectedGraph.cpp @@ -11,7 +11,7 @@ #include <compare> #include <object/Object.h> -#include <core/xmlApi.hpp> +#include <registration/TypeRegistration.hpp> #include <sax/FromXMLParserHelper.h> #include <object/UniqueObject.h> #include "../common/GraphFromXMLParser.h" @@ -256,7 +256,7 @@ alib::ObjectBase* AdjacencyListUndirectedGraph::inc() && { namespace alib { -auto adjListUndirGraphParserRegister = xmlApi<graph::Graph>::ParserRegister<graph::AdjacencyListUndirectedGraph>(); -auto adjListUndirGraphParserRegister2 = xmlApi<alib::Object>::ParserRegister<graph::AdjacencyListUndirectedGraph>(); +auto adjListUndirGraphType = registration::TypeRegister < graph::Graph, graph::AdjacencyListUndirectedGraph > (); +auto adjListUndirGraphType2 = registration::TypeRegister < alib::Object, graph::AdjacencyListUndirectedGraph > (); } /* namespace alib */ diff --git a/alib2data_experimental/src/graph/undirected/AdjacencyMatrixUndirectedGraph.cpp b/alib2data_experimental/src/graph/undirected/AdjacencyMatrixUndirectedGraph.cpp index 9a491f95886669d2995e4ea3b39551cf6ff7b76d..6b33111624d694af02b013d36b88e261da443c5b 100644 --- a/alib2data_experimental/src/graph/undirected/AdjacencyMatrixUndirectedGraph.cpp +++ b/alib2data_experimental/src/graph/undirected/AdjacencyMatrixUndirectedGraph.cpp @@ -11,7 +11,7 @@ #include <compare> #include <object/Object.h> -#include <core/xmlApi.hpp> +#include <registration/TypeRegistration.hpp> #include <sax/FromXMLParserHelper.h> #include <object/UniqueObject.h> #include "../common/GraphFromXMLParser.h" @@ -269,7 +269,7 @@ alib::ObjectBase* AdjacencyMatrixUndirectedGraph::inc() && { namespace alib { -auto adjMatUndirGraphParserRegister = xmlApi<graph::Graph>::ParserRegister<graph::AdjacencyMatrixUndirectedGraph>(); -auto adjMatUndirGraphParserRegister2 = xmlApi<alib::Object>::ParserRegister<graph::AdjacencyMatrixUndirectedGraph>(); +auto adjMatUndirGraphType = registration::TypeRegister < graph::Graph, graph::AdjacencyMatrixUndirectedGraph > (); +auto adjMatUndirGraphType2 = registration::TypeRegister < alib::Object, graph::AdjacencyMatrixUndirectedGraph > (); } /* namespace alib */ diff --git a/alib2data_experimental/src/indexes/suffixTrie/SuffixTrieTerminatingSymbol.cpp b/alib2data_experimental/src/indexes/suffixTrie/SuffixTrieTerminatingSymbol.cpp index 11a2fd3c34b127d1d10de63eeb270b026685f55d..f2f1bdff320431f97c557f4c5322395ac3fb8fb5 100644 --- a/alib2data_experimental/src/indexes/suffixTrie/SuffixTrieTerminatingSymbol.cpp +++ b/alib2data_experimental/src/indexes/suffixTrie/SuffixTrieTerminatingSymbol.cpp @@ -16,7 +16,7 @@ #include "../common/IndexFromXMLParser.h" #include "../common/IndexToXMLComposer.h" #include <object/Object.h> -#include <core/xmlApi.hpp> +#include <registration/TypeRegistration.hpp> #include <object/UniqueObject.h> namespace indexes { @@ -139,6 +139,6 @@ alib::ObjectBase* SuffixTrieTerminatingSymbol::inc() && { namespace alib { -auto suffixTreeTerminatingSymbolParserRegister = xmlApi < alib::Object >::ParserRegister < indexes::SuffixTrieTerminatingSymbol > ( ); +auto suffixTreeTerminatingSymbolType = registration::TypeRegister < alib::Object, indexes::SuffixTrieTerminatingSymbol > ( ); } /* namespace alib */ diff --git a/alib2data_experimental/src/label/LR0ItemsLabel.cpp b/alib2data_experimental/src/label/LR0ItemsLabel.cpp index 06fdc47725ae854d08e267a8cf51606ade522bfd..021bec7c8c8ab65717d0323d276fe23881cd9e3e 100644 --- a/alib2data_experimental/src/label/LR0ItemsLabel.cpp +++ b/alib2data_experimental/src/label/LR0ItemsLabel.cpp @@ -9,7 +9,7 @@ #include <sax/FromXMLParserHelper.h> #include <label/Label.h> #include <object/Object.h> -#include <core/xmlApi.hpp> +#include <registration/TypeRegistration.hpp> #include <label/UniqueLabel.h> #include <container/ObjectsMap.h> #include <container/ObjectsSet.h> @@ -77,7 +77,7 @@ LabelBase* LR0ItemsLabel::inc ( ) && { namespace alib { -auto lr0ItemsLabelParserRegister = xmlApi < label::Label > ::ParserRegister < label::LR0ItemsLabel > ( ); -auto lr0ItemsLabelParserRegister2 = xmlApi < alib::Object > ::ParserRegister < label::LR0ItemsLabel > ( ); +auto lr0ItemsLabelType = registration::TypeRegister < label::Label, label::LR0ItemsLabel > ( ); +auto lr0ItemsLabelType2 = registration::TypeRegister < alib::Object, label::LR0ItemsLabel > ( ); } /* namespace alib */ diff --git a/alib2data_experimental/src/string/LinearStringTerminatingSymbol.cpp b/alib2data_experimental/src/string/LinearStringTerminatingSymbol.cpp index 49311ea7d42f3faba8d1014d744cf0e8ce635268..018cc143ee08495266b5e29c7b37442061824769 100644 --- a/alib2data_experimental/src/string/LinearStringTerminatingSymbol.cpp +++ b/alib2data_experimental/src/string/LinearStringTerminatingSymbol.cpp @@ -17,7 +17,7 @@ #include <string/common/StringToXMLComposer.h> #include <string/String.h> #include <object/Object.h> -#include <core/xmlApi.hpp> +#include <registration/TypeRegistration.hpp> #include <core/castApi.hpp> #include <object/UniqueObject.h> @@ -125,7 +125,7 @@ alib::ObjectBase* LinearStringTerminatingSymbol::inc() && { namespace alib { -auto linearStringTerminatingSymbolParserRegister = xmlApi < string::String >::ParserRegister < string::LinearStringTerminatingSymbol > (); -auto linearStringTerminatingSymbolParserRegister2 = xmlApi < alib::Object >::ParserRegister < string::LinearStringTerminatingSymbol > (); +auto linearStringTerminatingSymbolType = registration::TypeRegister < string::String, string::LinearStringTerminatingSymbol > ( ); +auto linearStringTerminatingSymbolType2 = registration::TypeRegister < alib::Object, string::LinearStringTerminatingSymbol > ( ); } /* namespace alib */