From cc74b2a934f9c1ff0b0792230521746abd2260c8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jan=20Tr=C3=A1vn=C3=AD=C4=8Dek?= <jan.travnicek@fit.cvut.cz> Date: Mon, 14 Feb 2022 18:46:28 +0100 Subject: [PATCH] data: extern normalization --- .../registration/NormalizationRegistration.hpp | 17 ++++++++++------- alib2data/src/automaton/FSM/CompactDFA.cpp | 1 + alib2data/src/automaton/FSM/CompactDFA.h | 2 ++ alib2data/src/automaton/FSM/CompactNFA.cpp | 1 + alib2data/src/automaton/FSM/CompactNFA.h | 2 ++ alib2data/src/automaton/FSM/DFA.cpp | 1 + alib2data/src/automaton/FSM/DFA.h | 2 ++ alib2data/src/automaton/FSM/EpsilonNFA.cpp | 1 + alib2data/src/automaton/FSM/EpsilonNFA.h | 2 ++ alib2data/src/automaton/FSM/ExtendedNFA.cpp | 1 + alib2data/src/automaton/FSM/ExtendedNFA.h | 2 ++ .../FSM/MultiInitialStateEpsilonNFA.cpp | 1 + .../automaton/FSM/MultiInitialStateEpsilonNFA.h | 2 ++ .../src/automaton/FSM/MultiInitialStateNFA.cpp | 1 + .../src/automaton/FSM/MultiInitialStateNFA.h | 2 ++ alib2data/src/automaton/FSM/NFA.cpp | 1 + alib2data/src/automaton/FSM/NFA.h | 2 ++ alib2data/src/automaton/PDA/DPDA.cpp | 1 + alib2data/src/automaton/PDA/DPDA.h | 2 ++ alib2data/src/automaton/PDA/InputDrivenDPDA.cpp | 1 + alib2data/src/automaton/PDA/InputDrivenDPDA.h | 2 ++ alib2data/src/automaton/PDA/InputDrivenNPDA.cpp | 1 + alib2data/src/automaton/PDA/InputDrivenNPDA.h | 2 ++ alib2data/src/automaton/PDA/NPDA.cpp | 1 + alib2data/src/automaton/PDA/NPDA.h | 2 ++ alib2data/src/automaton/PDA/NPDTA.cpp | 1 + alib2data/src/automaton/PDA/NPDTA.h | 2 ++ .../PDA/RealTimeHeightDeterministicDPDA.cpp | 1 + .../PDA/RealTimeHeightDeterministicDPDA.h | 2 ++ .../PDA/RealTimeHeightDeterministicNPDA.cpp | 1 + .../PDA/RealTimeHeightDeterministicNPDA.h | 2 ++ alib2data/src/automaton/PDA/SinglePopDPDA.cpp | 1 + alib2data/src/automaton/PDA/SinglePopDPDA.h | 2 ++ alib2data/src/automaton/PDA/SinglePopNPDA.cpp | 1 + alib2data/src/automaton/PDA/SinglePopNPDA.h | 2 ++ .../src/automaton/PDA/VisiblyPushdownDPDA.cpp | 1 + .../src/automaton/PDA/VisiblyPushdownDPDA.h | 2 ++ .../src/automaton/PDA/VisiblyPushdownNPDA.cpp | 1 + .../src/automaton/PDA/VisiblyPushdownNPDA.h | 2 ++ .../TA/ArcFactoredDeterministicZAutomaton.cpp | 1 + .../TA/ArcFactoredDeterministicZAutomaton.h | 2 ++ .../ArcFactoredNondeterministicZAutomaton.cpp | 1 + .../TA/ArcFactoredNondeterministicZAutomaton.h | 2 ++ alib2data/src/automaton/TA/DFTA.cpp | 1 + alib2data/src/automaton/TA/DFTA.h | 2 ++ alib2data/src/automaton/TA/EpsilonNFTA.cpp | 1 + alib2data/src/automaton/TA/EpsilonNFTA.h | 2 ++ alib2data/src/automaton/TA/ExtendedNFTA.cpp | 1 + alib2data/src/automaton/TA/ExtendedNFTA.h | 2 ++ alib2data/src/automaton/TA/NFTA.cpp | 1 + alib2data/src/automaton/TA/NFTA.h | 2 ++ .../automaton/TA/NondeterministicZAutomaton.cpp | 1 + .../automaton/TA/NondeterministicZAutomaton.h | 2 ++ alib2data/src/automaton/TA/UnorderedDFTA.cpp | 1 + alib2data/src/automaton/TA/UnorderedDFTA.h | 2 ++ alib2data/src/automaton/TA/UnorderedNFTA.cpp | 1 + alib2data/src/automaton/TA/UnorderedNFTA.h | 2 ++ alib2data/src/automaton/TM/OneTapeDTM.cpp | 1 + alib2data/src/automaton/TM/OneTapeDTM.h | 2 ++ alib2data/src/grammar/ContextFree/CFG.cpp | 1 + alib2data/src/grammar/ContextFree/CFG.h | 2 ++ alib2data/src/grammar/ContextFree/CNF.cpp | 1 + alib2data/src/grammar/ContextFree/CNF.h | 2 ++ .../src/grammar/ContextFree/EpsilonFreeCFG.cpp | 1 + .../src/grammar/ContextFree/EpsilonFreeCFG.h | 2 ++ alib2data/src/grammar/ContextFree/GNF.cpp | 1 + alib2data/src/grammar/ContextFree/GNF.h | 2 ++ alib2data/src/grammar/ContextFree/LG.cpp | 1 + alib2data/src/grammar/ContextFree/LG.h | 2 ++ alib2data/src/grammar/ContextSensitive/CSG.cpp | 1 + alib2data/src/grammar/ContextSensitive/CSG.h | 2 ++ .../ContextSensitive/NonContractingGrammar.cpp | 1 + .../ContextSensitive/NonContractingGrammar.h | 2 ++ alib2data/src/grammar/Regular/LeftLG.cpp | 1 + alib2data/src/grammar/Regular/LeftLG.h | 2 ++ alib2data/src/grammar/Regular/LeftRG.cpp | 1 + alib2data/src/grammar/Regular/LeftRG.h | 2 ++ alib2data/src/grammar/Regular/RightLG.cpp | 1 + alib2data/src/grammar/Regular/RightLG.h | 2 ++ alib2data/src/grammar/Regular/RightRG.cpp | 1 + alib2data/src/grammar/Regular/RightRG.h | 2 ++ .../ContextPreservingUnrestrictedGrammar.cpp | 1 + .../ContextPreservingUnrestrictedGrammar.h | 2 ++ .../Unrestricted/UnrestrictedGrammar.cpp | 1 + .../grammar/Unrestricted/UnrestrictedGrammar.h | 2 ++ alib2data/src/regexp/formal/FormalRegExp.cpp | 1 + alib2data/src/regexp/formal/FormalRegExp.h | 2 ++ .../src/regexp/unbounded/UnboundedRegExp.cpp | 1 + .../src/regexp/unbounded/UnboundedRegExp.h | 2 ++ alib2data/src/rte/formal/FormalRTE.cpp | 1 + alib2data/src/rte/formal/FormalRTE.h | 2 ++ alib2data/src/string/CyclicString.cpp | 1 + alib2data/src/string/CyclicString.h | 2 ++ alib2data/src/string/LinearString.cpp | 1 + alib2data/src/string/LinearString.h | 2 ++ alib2data/src/string/WildcardLinearString.cpp | 1 + alib2data/src/string/WildcardLinearString.h | 2 ++ alib2data/src/tree/ranked/PostfixRankedTree.cpp | 1 + alib2data/src/tree/ranked/PostfixRankedTree.h | 2 ++ .../ranked/PrefixRankedBarNonlinearPattern.cpp | 1 + .../ranked/PrefixRankedBarNonlinearPattern.h | 2 ++ .../src/tree/ranked/PrefixRankedBarPattern.cpp | 1 + .../src/tree/ranked/PrefixRankedBarPattern.h | 2 ++ .../src/tree/ranked/PrefixRankedBarTree.cpp | 1 + alib2data/src/tree/ranked/PrefixRankedBarTree.h | 2 ++ .../tree/ranked/PrefixRankedExtendedPattern.cpp | 1 + .../tree/ranked/PrefixRankedExtendedPattern.h | 2 ++ .../ranked/PrefixRankedNonlinearPattern.cpp | 1 + .../tree/ranked/PrefixRankedNonlinearPattern.h | 2 ++ .../src/tree/ranked/PrefixRankedPattern.cpp | 1 + alib2data/src/tree/ranked/PrefixRankedPattern.h | 2 ++ alib2data/src/tree/ranked/PrefixRankedTree.cpp | 1 + alib2data/src/tree/ranked/PrefixRankedTree.h | 2 ++ .../src/tree/ranked/RankedExtendedPattern.cpp | 1 + .../src/tree/ranked/RankedExtendedPattern.h | 2 ++ .../src/tree/ranked/RankedNonlinearPattern.cpp | 1 + .../src/tree/ranked/RankedNonlinearPattern.h | 2 ++ alib2data/src/tree/ranked/RankedPattern.cpp | 1 + alib2data/src/tree/ranked/RankedPattern.h | 2 ++ alib2data/src/tree/ranked/RankedTree.cpp | 1 + alib2data/src/tree/ranked/RankedTree.h | 2 ++ .../src/tree/ranked/UnorderedRankedPattern.cpp | 1 + .../src/tree/ranked/UnorderedRankedPattern.h | 2 ++ .../src/tree/ranked/UnorderedRankedTree.cpp | 1 + alib2data/src/tree/ranked/UnorderedRankedTree.h | 2 ++ alib2data/src/tree/unranked/PrefixBarTree.cpp | 1 + alib2data/src/tree/unranked/PrefixBarTree.h | 2 ++ .../tree/unranked/UnorderedUnrankedPattern.cpp | 1 + .../tree/unranked/UnorderedUnrankedPattern.h | 2 ++ .../src/tree/unranked/UnorderedUnrankedTree.cpp | 1 + .../src/tree/unranked/UnorderedUnrankedTree.h | 2 ++ .../tree/unranked/UnrankedExtendedPattern.cpp | 1 + .../src/tree/unranked/UnrankedExtendedPattern.h | 2 ++ .../tree/unranked/UnrankedNonlinearPattern.cpp | 1 + .../tree/unranked/UnrankedNonlinearPattern.h | 2 ++ alib2data/src/tree/unranked/UnrankedPattern.cpp | 1 + alib2data/src/tree/unranked/UnrankedPattern.h | 2 ++ alib2data/src/tree/unranked/UnrankedTree.cpp | 1 + alib2data/src/tree/unranked/UnrankedTree.h | 2 ++ 139 files changed, 217 insertions(+), 7 deletions(-) diff --git a/alib2abstraction/src/registration/NormalizationRegistration.hpp b/alib2abstraction/src/registration/NormalizationRegistration.hpp index ae594f26c2..75fe89d6c4 100644 --- a/alib2abstraction/src/registration/NormalizationRegistration.hpp +++ b/alib2abstraction/src/registration/NormalizationRegistration.hpp @@ -12,15 +12,18 @@ class NormalizationRegisterEmpty { template < class ReturnType > class NormalizationRegisterImpl : public ext::Register < std::list < std::unique_ptr < abstraction::NormalizeRegistry::Entry > >::const_iterator > { public: - explicit NormalizationRegisterImpl ( ) : ext::Register < std::list < std::unique_ptr < abstraction::NormalizeRegistry::Entry > >::const_iterator > ( - [ ] ( ) { - return abstraction::NormalizeRegistry::registerNormalize < ReturnType > ( ); - }, [ ] ( std::list < std::unique_ptr < abstraction::NormalizeRegistry::Entry > >::const_iterator iter ) { - abstraction::NormalizeRegistry::unregisterNormalize < ReturnType > ( iter ); - } ) { - } + explicit NormalizationRegisterImpl ( ); }; +template < class ReturnType > +NormalizationRegisterImpl < ReturnType >::NormalizationRegisterImpl ( ) : ext::Register < std::list < std::unique_ptr < abstraction::NormalizeRegistry::Entry > >::const_iterator > ( + [ ] ( ) { + return abstraction::NormalizeRegistry::registerNormalize < ReturnType > ( ); + }, [ ] ( std::list < std::unique_ptr < abstraction::NormalizeRegistry::Entry > >::const_iterator iter ) { + abstraction::NormalizeRegistry::unregisterNormalize < ReturnType > ( iter ); + } ) { +} + template < class ReturnType > using NormalizationRegister = std::conditional_t < core::is_specialized < core::type_util < ReturnType > >, NormalizationRegisterImpl < ReturnType >, NormalizationRegisterEmpty >; diff --git a/alib2data/src/automaton/FSM/CompactDFA.cpp b/alib2data/src/automaton/FSM/CompactDFA.cpp index 1b39d5e2ed..33feec0cc8 100644 --- a/alib2data/src/automaton/FSM/CompactDFA.cpp +++ b/alib2data/src/automaton/FSM/CompactDFA.cpp @@ -6,6 +6,7 @@ template class automaton::CompactDFA < >; template class registration::DenormalizationRegisterImpl < const automaton::CompactDFA < > & >; +template class registration::NormalizationRegisterImpl < automaton::CompactDFA < > >; namespace { diff --git a/alib2data/src/automaton/FSM/CompactDFA.h b/alib2data/src/automaton/FSM/CompactDFA.h index e2156a3845..fdea97e431 100644 --- a/alib2data/src/automaton/FSM/CompactDFA.h +++ b/alib2data/src/automaton/FSM/CompactDFA.h @@ -47,6 +47,7 @@ #include "DFA.h" #include <registration/DenormalizationRegistration.hpp> +#include <registration/NormalizationRegistration.hpp> namespace automaton { @@ -778,3 +779,4 @@ struct type_details_retriever < automaton::CompactDFA < SymbolType, StateType > extern template class automaton::CompactDFA < >; extern template class registration::DenormalizationRegisterImpl < const automaton::CompactDFA < > & >; +extern template class registration::NormalizationRegisterImpl < automaton::CompactDFA < > >; diff --git a/alib2data/src/automaton/FSM/CompactNFA.cpp b/alib2data/src/automaton/FSM/CompactNFA.cpp index 5c9f1950e6..64cf56f620 100644 --- a/alib2data/src/automaton/FSM/CompactNFA.cpp +++ b/alib2data/src/automaton/FSM/CompactNFA.cpp @@ -6,6 +6,7 @@ template class automaton::CompactNFA < >; template class registration::DenormalizationRegisterImpl < const automaton::CompactNFA < > & >; +template class registration::NormalizationRegisterImpl < automaton::CompactNFA < > >; namespace { diff --git a/alib2data/src/automaton/FSM/CompactNFA.h b/alib2data/src/automaton/FSM/CompactNFA.h index 56d60fbff1..c6844e0887 100644 --- a/alib2data/src/automaton/FSM/CompactNFA.h +++ b/alib2data/src/automaton/FSM/CompactNFA.h @@ -52,6 +52,7 @@ #include "DFA.h" #include <registration/DenormalizationRegistration.hpp> +#include <registration/NormalizationRegistration.hpp> namespace automaton { @@ -849,3 +850,4 @@ struct type_details_retriever < automaton::CompactNFA < SymbolType, StateType > extern template class automaton::CompactNFA < >; extern template class registration::DenormalizationRegisterImpl < const automaton::CompactNFA < > & >; +extern template class registration::NormalizationRegisterImpl < automaton::CompactNFA < > >; diff --git a/alib2data/src/automaton/FSM/DFA.cpp b/alib2data/src/automaton/FSM/DFA.cpp index c6748b8f1b..6c7eb1b078 100644 --- a/alib2data/src/automaton/FSM/DFA.cpp +++ b/alib2data/src/automaton/FSM/DFA.cpp @@ -4,6 +4,7 @@ template class automaton::DFA < >; template class registration::DenormalizationRegisterImpl < const automaton::DFA < > & >; +template class registration::NormalizationRegisterImpl < automaton::DFA < > >; namespace { diff --git a/alib2data/src/automaton/FSM/DFA.h b/alib2data/src/automaton/FSM/DFA.h index 15b6be6bd6..6ca984bf80 100644 --- a/alib2data/src/automaton/FSM/DFA.h +++ b/alib2data/src/automaton/FSM/DFA.h @@ -42,6 +42,7 @@ #include <automaton/common/AutomatonDenormalize.h> #include <registration/DenormalizationRegistration.hpp> +#include <registration/NormalizationRegistration.hpp> namespace automaton { @@ -771,3 +772,4 @@ struct type_details_retriever < automaton::DFA < SymbolType, StateType > > { extern template class automaton::DFA < >; extern template class registration::DenormalizationRegisterImpl < const automaton::DFA < > & >; +extern template class registration::NormalizationRegisterImpl < automaton::DFA < > >; diff --git a/alib2data/src/automaton/FSM/EpsilonNFA.cpp b/alib2data/src/automaton/FSM/EpsilonNFA.cpp index 4e8b0bfd9a..e1ba22bbd8 100644 --- a/alib2data/src/automaton/FSM/EpsilonNFA.cpp +++ b/alib2data/src/automaton/FSM/EpsilonNFA.cpp @@ -5,6 +5,7 @@ template class automaton::EpsilonNFA < >; template class registration::DenormalizationRegisterImpl < const automaton::EpsilonNFA < > & >; +template class registration::NormalizationRegisterImpl < automaton::EpsilonNFA < > >; namespace { diff --git a/alib2data/src/automaton/FSM/EpsilonNFA.h b/alib2data/src/automaton/FSM/EpsilonNFA.h index 9d99f6684a..5838dcdd6e 100644 --- a/alib2data/src/automaton/FSM/EpsilonNFA.h +++ b/alib2data/src/automaton/FSM/EpsilonNFA.h @@ -49,6 +49,7 @@ #include "DFA.h" #include <registration/DenormalizationRegistration.hpp> +#include <registration/NormalizationRegistration.hpp> namespace automaton { @@ -1062,3 +1063,4 @@ struct type_details_retriever < automaton::EpsilonNFA < SymbolType, StateType > extern template class automaton::EpsilonNFA < >; extern template class registration::DenormalizationRegisterImpl < const automaton::EpsilonNFA < > & >; +extern template class registration::NormalizationRegisterImpl < automaton::EpsilonNFA < > >; diff --git a/alib2data/src/automaton/FSM/ExtendedNFA.cpp b/alib2data/src/automaton/FSM/ExtendedNFA.cpp index 154127a8e1..e90cf35848 100644 --- a/alib2data/src/automaton/FSM/ExtendedNFA.cpp +++ b/alib2data/src/automaton/FSM/ExtendedNFA.cpp @@ -5,6 +5,7 @@ template class automaton::ExtendedNFA < >; template class registration::DenormalizationRegisterImpl < const automaton::ExtendedNFA < > & >; +template class registration::NormalizationRegisterImpl < automaton::ExtendedNFA < > >; namespace { diff --git a/alib2data/src/automaton/FSM/ExtendedNFA.h b/alib2data/src/automaton/FSM/ExtendedNFA.h index 27680a6178..397b2e4bc5 100644 --- a/alib2data/src/automaton/FSM/ExtendedNFA.h +++ b/alib2data/src/automaton/FSM/ExtendedNFA.h @@ -54,6 +54,7 @@ #include "MultiInitialStateNFA.h" #include <registration/DenormalizationRegistration.hpp> +#include <registration/NormalizationRegistration.hpp> namespace automaton { @@ -875,3 +876,4 @@ struct type_details_retriever < automaton::ExtendedNFA < SymbolType, StateType > extern template class automaton::ExtendedNFA < >; extern template class registration::DenormalizationRegisterImpl < const automaton::ExtendedNFA < > & >; +extern template class registration::NormalizationRegisterImpl < automaton::ExtendedNFA < > >; diff --git a/alib2data/src/automaton/FSM/MultiInitialStateEpsilonNFA.cpp b/alib2data/src/automaton/FSM/MultiInitialStateEpsilonNFA.cpp index 8e933ad34a..3ba0d668d0 100644 --- a/alib2data/src/automaton/FSM/MultiInitialStateEpsilonNFA.cpp +++ b/alib2data/src/automaton/FSM/MultiInitialStateEpsilonNFA.cpp @@ -5,6 +5,7 @@ template class automaton::MultiInitialStateEpsilonNFA < >; template class registration::DenormalizationRegisterImpl < const automaton::MultiInitialStateEpsilonNFA < > & >; +template class registration::NormalizationRegisterImpl < automaton::MultiInitialStateEpsilonNFA < > >; namespace { diff --git a/alib2data/src/automaton/FSM/MultiInitialStateEpsilonNFA.h b/alib2data/src/automaton/FSM/MultiInitialStateEpsilonNFA.h index 2ec960c6d7..486a00ea24 100644 --- a/alib2data/src/automaton/FSM/MultiInitialStateEpsilonNFA.h +++ b/alib2data/src/automaton/FSM/MultiInitialStateEpsilonNFA.h @@ -50,6 +50,7 @@ #include "DFA.h" #include <registration/DenormalizationRegistration.hpp> +#include <registration/NormalizationRegistration.hpp> namespace automaton { @@ -1107,3 +1108,4 @@ struct type_details_retriever < automaton::MultiInitialStateEpsilonNFA < SymbolT extern template class automaton::MultiInitialStateEpsilonNFA < >; extern template class registration::DenormalizationRegisterImpl < const automaton::MultiInitialStateEpsilonNFA < > & >; +extern template class registration::NormalizationRegisterImpl < automaton::MultiInitialStateEpsilonNFA < > >; diff --git a/alib2data/src/automaton/FSM/MultiInitialStateNFA.cpp b/alib2data/src/automaton/FSM/MultiInitialStateNFA.cpp index 846eb473f4..8071783cd6 100644 --- a/alib2data/src/automaton/FSM/MultiInitialStateNFA.cpp +++ b/alib2data/src/automaton/FSM/MultiInitialStateNFA.cpp @@ -5,6 +5,7 @@ template class automaton::MultiInitialStateNFA < >; template class registration::DenormalizationRegisterImpl < const automaton::MultiInitialStateNFA < > & >; +template class registration::NormalizationRegisterImpl < automaton::MultiInitialStateNFA < > >; namespace { diff --git a/alib2data/src/automaton/FSM/MultiInitialStateNFA.h b/alib2data/src/automaton/FSM/MultiInitialStateNFA.h index 82cfda0926..e51f0103ed 100644 --- a/alib2data/src/automaton/FSM/MultiInitialStateNFA.h +++ b/alib2data/src/automaton/FSM/MultiInitialStateNFA.h @@ -44,6 +44,7 @@ #include "DFA.h" #include <registration/DenormalizationRegistration.hpp> +#include <registration/NormalizationRegistration.hpp> namespace automaton { @@ -836,3 +837,4 @@ struct type_details_retriever < automaton::MultiInitialStateNFA < SymbolType, St extern template class automaton::MultiInitialStateNFA < >; extern template class registration::DenormalizationRegisterImpl < const automaton::MultiInitialStateNFA < > & >; +extern template class registration::NormalizationRegisterImpl < automaton::MultiInitialStateNFA < > >; diff --git a/alib2data/src/automaton/FSM/NFA.cpp b/alib2data/src/automaton/FSM/NFA.cpp index af6cfb84ad..6f3de9b71c 100644 --- a/alib2data/src/automaton/FSM/NFA.cpp +++ b/alib2data/src/automaton/FSM/NFA.cpp @@ -5,6 +5,7 @@ template class automaton::NFA < >; template class registration::DenormalizationRegisterImpl < const automaton::NFA < > & >; +template class registration::NormalizationRegisterImpl < automaton::NFA < > >; namespace { diff --git a/alib2data/src/automaton/FSM/NFA.h b/alib2data/src/automaton/FSM/NFA.h index 0eab5bc30d..7c98b8dce8 100644 --- a/alib2data/src/automaton/FSM/NFA.h +++ b/alib2data/src/automaton/FSM/NFA.h @@ -41,6 +41,7 @@ #include "DFA.h" #include <registration/DenormalizationRegistration.hpp> +#include <registration/NormalizationRegistration.hpp> namespace automaton { @@ -794,3 +795,4 @@ struct type_details_retriever < automaton::NFA < SymbolType, StateType > > { extern template class automaton::NFA < >; extern template class registration::DenormalizationRegisterImpl < const automaton::NFA < > & >; +extern template class registration::NormalizationRegisterImpl < automaton::NFA < > >; diff --git a/alib2data/src/automaton/PDA/DPDA.cpp b/alib2data/src/automaton/PDA/DPDA.cpp index eca2710315..baacf17a4f 100644 --- a/alib2data/src/automaton/PDA/DPDA.cpp +++ b/alib2data/src/automaton/PDA/DPDA.cpp @@ -4,6 +4,7 @@ template class automaton::DPDA < >; template class registration::DenormalizationRegisterImpl < const automaton::DPDA < > & >; +template class registration::NormalizationRegisterImpl < automaton::DPDA < > >; namespace { diff --git a/alib2data/src/automaton/PDA/DPDA.h b/alib2data/src/automaton/PDA/DPDA.h index 4cabcdd73c..07be89d969 100644 --- a/alib2data/src/automaton/PDA/DPDA.h +++ b/alib2data/src/automaton/PDA/DPDA.h @@ -39,6 +39,7 @@ #include <automaton/common/AutomatonDenormalize.h> #include <registration/DenormalizationRegistration.hpp> +#include <registration/NormalizationRegistration.hpp> namespace automaton { @@ -1083,3 +1084,4 @@ struct type_details_retriever < automaton::DPDA < InputSymbolType, PushdownStore extern template class automaton::DPDA < >; extern template class registration::DenormalizationRegisterImpl < const automaton::DPDA < > & >; +extern template class registration::NormalizationRegisterImpl < automaton::DPDA < > >; diff --git a/alib2data/src/automaton/PDA/InputDrivenDPDA.cpp b/alib2data/src/automaton/PDA/InputDrivenDPDA.cpp index a5ec3edbcc..2e2cea8d4e 100644 --- a/alib2data/src/automaton/PDA/InputDrivenDPDA.cpp +++ b/alib2data/src/automaton/PDA/InputDrivenDPDA.cpp @@ -4,6 +4,7 @@ template class automaton::InputDrivenDPDA < >; template class registration::DenormalizationRegisterImpl < const automaton::InputDrivenDPDA < > & >; +template class registration::NormalizationRegisterImpl < automaton::InputDrivenDPDA < > >; namespace { diff --git a/alib2data/src/automaton/PDA/InputDrivenDPDA.h b/alib2data/src/automaton/PDA/InputDrivenDPDA.h index fec0222947..04cf1c2da2 100644 --- a/alib2data/src/automaton/PDA/InputDrivenDPDA.h +++ b/alib2data/src/automaton/PDA/InputDrivenDPDA.h @@ -42,6 +42,7 @@ #include <automaton/common/AutomatonDenormalize.h> #include <registration/DenormalizationRegistration.hpp> +#include <registration/NormalizationRegistration.hpp> namespace automaton { @@ -1068,3 +1069,4 @@ struct type_details_retriever < automaton::InputDrivenDPDA < InputSymbolType, Pu extern template class automaton::InputDrivenDPDA < >; extern template class registration::DenormalizationRegisterImpl < const automaton::InputDrivenDPDA < > & >; +extern template class registration::NormalizationRegisterImpl < automaton::InputDrivenDPDA < > >; diff --git a/alib2data/src/automaton/PDA/InputDrivenNPDA.cpp b/alib2data/src/automaton/PDA/InputDrivenNPDA.cpp index 7ad538dbad..ba36b02a30 100644 --- a/alib2data/src/automaton/PDA/InputDrivenNPDA.cpp +++ b/alib2data/src/automaton/PDA/InputDrivenNPDA.cpp @@ -4,6 +4,7 @@ template class automaton::InputDrivenNPDA < >; template class registration::DenormalizationRegisterImpl < const automaton::InputDrivenNPDA < > & >; +template class registration::NormalizationRegisterImpl < automaton::InputDrivenNPDA < > >; namespace { diff --git a/alib2data/src/automaton/PDA/InputDrivenNPDA.h b/alib2data/src/automaton/PDA/InputDrivenNPDA.h index d75918ae86..e6f56a6a2b 100644 --- a/alib2data/src/automaton/PDA/InputDrivenNPDA.h +++ b/alib2data/src/automaton/PDA/InputDrivenNPDA.h @@ -42,6 +42,7 @@ #include <automaton/common/AutomatonDenormalize.h> #include <registration/DenormalizationRegistration.hpp> +#include <registration/NormalizationRegistration.hpp> namespace automaton { @@ -1086,3 +1087,4 @@ struct type_details_retriever < automaton::InputDrivenNPDA < InputSymbolType, Pu extern template class automaton::InputDrivenNPDA < >; extern template class registration::DenormalizationRegisterImpl < const automaton::InputDrivenNPDA < > & >; +extern template class registration::NormalizationRegisterImpl < automaton::InputDrivenNPDA < > >; diff --git a/alib2data/src/automaton/PDA/NPDA.cpp b/alib2data/src/automaton/PDA/NPDA.cpp index 4de3f18487..6febd54f00 100644 --- a/alib2data/src/automaton/PDA/NPDA.cpp +++ b/alib2data/src/automaton/PDA/NPDA.cpp @@ -4,6 +4,7 @@ template class automaton::NPDA < >; template class registration::DenormalizationRegisterImpl < const automaton::NPDA < > & >; +template class registration::NormalizationRegisterImpl < automaton::NPDA < > >; namespace { diff --git a/alib2data/src/automaton/PDA/NPDA.h b/alib2data/src/automaton/PDA/NPDA.h index 9f16826db2..f68c4b2b62 100644 --- a/alib2data/src/automaton/PDA/NPDA.h +++ b/alib2data/src/automaton/PDA/NPDA.h @@ -41,6 +41,7 @@ #include <automaton/PDA/DPDA.h> #include <registration/DenormalizationRegistration.hpp> +#include <registration/NormalizationRegistration.hpp> namespace automaton { @@ -1049,3 +1050,4 @@ struct type_details_retriever < automaton::NPDA < InputSymbolType, PushdownStore extern template class automaton::NPDA < >; extern template class registration::DenormalizationRegisterImpl < const automaton::NPDA < > & >; +extern template class registration::NormalizationRegisterImpl < automaton::NPDA < > >; diff --git a/alib2data/src/automaton/PDA/NPDTA.cpp b/alib2data/src/automaton/PDA/NPDTA.cpp index 7320033b69..39c9dd8fb8 100644 --- a/alib2data/src/automaton/PDA/NPDTA.cpp +++ b/alib2data/src/automaton/PDA/NPDTA.cpp @@ -4,6 +4,7 @@ template class automaton::NPDTA < >; template class registration::DenormalizationRegisterImpl < const automaton::NPDTA < > & >; +template class registration::NormalizationRegisterImpl < automaton::NPDTA < > >; namespace { diff --git a/alib2data/src/automaton/PDA/NPDTA.h b/alib2data/src/automaton/PDA/NPDTA.h index 3776e5a903..6f1f0df4af 100644 --- a/alib2data/src/automaton/PDA/NPDTA.h +++ b/alib2data/src/automaton/PDA/NPDTA.h @@ -39,6 +39,7 @@ #include <automaton/common/AutomatonDenormalize.h> #include <registration/DenormalizationRegistration.hpp> +#include <registration/NormalizationRegistration.hpp> namespace automaton { @@ -1166,3 +1167,4 @@ struct type_details_retriever < automaton::NPDTA < InputSymbolType, OutputSymbol extern template class automaton::NPDTA < >; extern template class registration::DenormalizationRegisterImpl < const automaton::NPDTA < > & >; +extern template class registration::NormalizationRegisterImpl < automaton::NPDTA < > >; diff --git a/alib2data/src/automaton/PDA/RealTimeHeightDeterministicDPDA.cpp b/alib2data/src/automaton/PDA/RealTimeHeightDeterministicDPDA.cpp index e446093693..6e782423a6 100644 --- a/alib2data/src/automaton/PDA/RealTimeHeightDeterministicDPDA.cpp +++ b/alib2data/src/automaton/PDA/RealTimeHeightDeterministicDPDA.cpp @@ -4,6 +4,7 @@ template class automaton::RealTimeHeightDeterministicDPDA < >; template class registration::DenormalizationRegisterImpl < const automaton::RealTimeHeightDeterministicDPDA < > & >; +template class registration::NormalizationRegisterImpl < automaton::RealTimeHeightDeterministicDPDA < > >; namespace { diff --git a/alib2data/src/automaton/PDA/RealTimeHeightDeterministicDPDA.h b/alib2data/src/automaton/PDA/RealTimeHeightDeterministicDPDA.h index 3c24c14103..fa114507a3 100644 --- a/alib2data/src/automaton/PDA/RealTimeHeightDeterministicDPDA.h +++ b/alib2data/src/automaton/PDA/RealTimeHeightDeterministicDPDA.h @@ -39,6 +39,7 @@ #include <automaton/common/AutomatonDenormalize.h> #include <registration/DenormalizationRegistration.hpp> +#include <registration/NormalizationRegistration.hpp> namespace automaton { @@ -1505,3 +1506,4 @@ struct type_details_retriever < automaton::RealTimeHeightDeterministicDPDA < Inp extern template class automaton::RealTimeHeightDeterministicDPDA < >; extern template class registration::DenormalizationRegisterImpl < const automaton::RealTimeHeightDeterministicDPDA < > & >; +extern template class registration::NormalizationRegisterImpl < automaton::RealTimeHeightDeterministicDPDA < > >; diff --git a/alib2data/src/automaton/PDA/RealTimeHeightDeterministicNPDA.cpp b/alib2data/src/automaton/PDA/RealTimeHeightDeterministicNPDA.cpp index 98fe888fa0..022ad6a025 100644 --- a/alib2data/src/automaton/PDA/RealTimeHeightDeterministicNPDA.cpp +++ b/alib2data/src/automaton/PDA/RealTimeHeightDeterministicNPDA.cpp @@ -4,6 +4,7 @@ template class automaton::RealTimeHeightDeterministicNPDA < >; template class registration::DenormalizationRegisterImpl < const automaton::RealTimeHeightDeterministicNPDA < > & >; +template class registration::NormalizationRegisterImpl < automaton::RealTimeHeightDeterministicNPDA < > >; namespace { diff --git a/alib2data/src/automaton/PDA/RealTimeHeightDeterministicNPDA.h b/alib2data/src/automaton/PDA/RealTimeHeightDeterministicNPDA.h index dd953aac1f..a14bebaa25 100644 --- a/alib2data/src/automaton/PDA/RealTimeHeightDeterministicNPDA.h +++ b/alib2data/src/automaton/PDA/RealTimeHeightDeterministicNPDA.h @@ -39,6 +39,7 @@ #include <automaton/common/AutomatonDenormalize.h> #include <registration/DenormalizationRegistration.hpp> +#include <registration/NormalizationRegistration.hpp> namespace automaton { @@ -1451,3 +1452,4 @@ struct type_details_retriever < automaton::RealTimeHeightDeterministicNPDA < Inp extern template class automaton::RealTimeHeightDeterministicNPDA < >; extern template class registration::DenormalizationRegisterImpl < const automaton::RealTimeHeightDeterministicNPDA < > & >; +extern template class registration::NormalizationRegisterImpl < automaton::RealTimeHeightDeterministicNPDA < > >; diff --git a/alib2data/src/automaton/PDA/SinglePopDPDA.cpp b/alib2data/src/automaton/PDA/SinglePopDPDA.cpp index f08a538b05..9670e614d2 100644 --- a/alib2data/src/automaton/PDA/SinglePopDPDA.cpp +++ b/alib2data/src/automaton/PDA/SinglePopDPDA.cpp @@ -4,6 +4,7 @@ template class automaton::SinglePopDPDA < >; template class registration::DenormalizationRegisterImpl < const automaton::SinglePopDPDA < > & >; +template class registration::NormalizationRegisterImpl < automaton::SinglePopDPDA < > >; namespace { diff --git a/alib2data/src/automaton/PDA/SinglePopDPDA.h b/alib2data/src/automaton/PDA/SinglePopDPDA.h index d45137c23c..23b33b72f4 100644 --- a/alib2data/src/automaton/PDA/SinglePopDPDA.h +++ b/alib2data/src/automaton/PDA/SinglePopDPDA.h @@ -41,6 +41,7 @@ #include <automaton/common/AutomatonDenormalize.h> #include <registration/DenormalizationRegistration.hpp> +#include <registration/NormalizationRegistration.hpp> namespace automaton { @@ -1008,3 +1009,4 @@ struct type_details_retriever < automaton::SinglePopDPDA < InputSymbolType, Push extern template class automaton::SinglePopDPDA < >; extern template class registration::DenormalizationRegisterImpl < const automaton::SinglePopDPDA < > & >; +extern template class registration::NormalizationRegisterImpl < automaton::SinglePopDPDA < > >; diff --git a/alib2data/src/automaton/PDA/SinglePopNPDA.cpp b/alib2data/src/automaton/PDA/SinglePopNPDA.cpp index 60568f6445..9600bce0c9 100644 --- a/alib2data/src/automaton/PDA/SinglePopNPDA.cpp +++ b/alib2data/src/automaton/PDA/SinglePopNPDA.cpp @@ -4,6 +4,7 @@ template class automaton::SinglePopNPDA < >; template class registration::DenormalizationRegisterImpl < const automaton::SinglePopNPDA < > & >; +template class registration::NormalizationRegisterImpl < automaton::SinglePopNPDA < > >; namespace { diff --git a/alib2data/src/automaton/PDA/SinglePopNPDA.h b/alib2data/src/automaton/PDA/SinglePopNPDA.h index 41e086a820..4848095f9b 100644 --- a/alib2data/src/automaton/PDA/SinglePopNPDA.h +++ b/alib2data/src/automaton/PDA/SinglePopNPDA.h @@ -39,6 +39,7 @@ #include <automaton/common/AutomatonDenormalize.h> #include <registration/DenormalizationRegistration.hpp> +#include <registration/NormalizationRegistration.hpp> namespace automaton { @@ -993,3 +994,4 @@ struct type_details_retriever < automaton::SinglePopNPDA < InputSymbolType, Push extern template class automaton::SinglePopNPDA < >; extern template class registration::DenormalizationRegisterImpl < const automaton::SinglePopNPDA < > & >; +extern template class registration::NormalizationRegisterImpl < automaton::SinglePopNPDA < > >; diff --git a/alib2data/src/automaton/PDA/VisiblyPushdownDPDA.cpp b/alib2data/src/automaton/PDA/VisiblyPushdownDPDA.cpp index 3729afbc6e..0fbd2896d6 100644 --- a/alib2data/src/automaton/PDA/VisiblyPushdownDPDA.cpp +++ b/alib2data/src/automaton/PDA/VisiblyPushdownDPDA.cpp @@ -4,6 +4,7 @@ template class automaton::VisiblyPushdownDPDA < >; template class registration::DenormalizationRegisterImpl < const automaton::VisiblyPushdownDPDA < > & >; +template class registration::NormalizationRegisterImpl < automaton::VisiblyPushdownDPDA < > >; namespace { diff --git a/alib2data/src/automaton/PDA/VisiblyPushdownDPDA.h b/alib2data/src/automaton/PDA/VisiblyPushdownDPDA.h index 65697aedc1..14b6712d00 100644 --- a/alib2data/src/automaton/PDA/VisiblyPushdownDPDA.h +++ b/alib2data/src/automaton/PDA/VisiblyPushdownDPDA.h @@ -39,6 +39,7 @@ #include <automaton/common/AutomatonDenormalize.h> #include <registration/DenormalizationRegistration.hpp> +#include <registration/NormalizationRegistration.hpp> namespace automaton { @@ -1438,3 +1439,4 @@ struct type_details_retriever < automaton::VisiblyPushdownDPDA < InputSymbolType extern template class automaton::VisiblyPushdownDPDA < >; extern template class registration::DenormalizationRegisterImpl < const automaton::VisiblyPushdownDPDA < > & >; +extern template class registration::NormalizationRegisterImpl < automaton::VisiblyPushdownDPDA < > >; diff --git a/alib2data/src/automaton/PDA/VisiblyPushdownNPDA.cpp b/alib2data/src/automaton/PDA/VisiblyPushdownNPDA.cpp index 11cb0df5eb..bd1604c2ff 100644 --- a/alib2data/src/automaton/PDA/VisiblyPushdownNPDA.cpp +++ b/alib2data/src/automaton/PDA/VisiblyPushdownNPDA.cpp @@ -4,6 +4,7 @@ template class automaton::VisiblyPushdownNPDA < >; template class registration::DenormalizationRegisterImpl < const automaton::VisiblyPushdownNPDA < > & >; +template class registration::NormalizationRegisterImpl < automaton::VisiblyPushdownNPDA < > >; namespace { diff --git a/alib2data/src/automaton/PDA/VisiblyPushdownNPDA.h b/alib2data/src/automaton/PDA/VisiblyPushdownNPDA.h index ecbacb6dc7..e296f81595 100644 --- a/alib2data/src/automaton/PDA/VisiblyPushdownNPDA.h +++ b/alib2data/src/automaton/PDA/VisiblyPushdownNPDA.h @@ -39,6 +39,7 @@ #include <automaton/common/AutomatonDenormalize.h> #include <registration/DenormalizationRegistration.hpp> +#include <registration/NormalizationRegistration.hpp> namespace automaton { @@ -1434,3 +1435,4 @@ struct type_details_retriever < automaton::VisiblyPushdownNPDA < InputSymbolType extern template class automaton::VisiblyPushdownNPDA < >; extern template class registration::DenormalizationRegisterImpl < const automaton::VisiblyPushdownNPDA < > & >; +extern template class registration::NormalizationRegisterImpl < automaton::VisiblyPushdownNPDA < > >; diff --git a/alib2data/src/automaton/TA/ArcFactoredDeterministicZAutomaton.cpp b/alib2data/src/automaton/TA/ArcFactoredDeterministicZAutomaton.cpp index 71d5cc4e2d..882b9c5d18 100644 --- a/alib2data/src/automaton/TA/ArcFactoredDeterministicZAutomaton.cpp +++ b/alib2data/src/automaton/TA/ArcFactoredDeterministicZAutomaton.cpp @@ -4,6 +4,7 @@ template class automaton::ArcFactoredDeterministicZAutomaton < >; template class registration::DenormalizationRegisterImpl < const automaton::ArcFactoredDeterministicZAutomaton < > & >; +template class registration::NormalizationRegisterImpl < automaton::ArcFactoredDeterministicZAutomaton < > >; namespace { diff --git a/alib2data/src/automaton/TA/ArcFactoredDeterministicZAutomaton.h b/alib2data/src/automaton/TA/ArcFactoredDeterministicZAutomaton.h index 030cf0dff1..84ce38ae90 100644 --- a/alib2data/src/automaton/TA/ArcFactoredDeterministicZAutomaton.h +++ b/alib2data/src/automaton/TA/ArcFactoredDeterministicZAutomaton.h @@ -39,6 +39,7 @@ #include <automaton/common/AutomatonDenormalize.h> #include <registration/DenormalizationRegistration.hpp> +#include <registration/NormalizationRegistration.hpp> namespace automaton { @@ -694,3 +695,4 @@ struct type_details_retriever < automaton::ArcFactoredDeterministicZAutomaton < extern template class automaton::ArcFactoredDeterministicZAutomaton < >; extern template class registration::DenormalizationRegisterImpl < const automaton::ArcFactoredDeterministicZAutomaton < > & >; +extern template class registration::NormalizationRegisterImpl < automaton::ArcFactoredDeterministicZAutomaton < > >; diff --git a/alib2data/src/automaton/TA/ArcFactoredNondeterministicZAutomaton.cpp b/alib2data/src/automaton/TA/ArcFactoredNondeterministicZAutomaton.cpp index 8a473f93f8..f471ab769f 100644 --- a/alib2data/src/automaton/TA/ArcFactoredNondeterministicZAutomaton.cpp +++ b/alib2data/src/automaton/TA/ArcFactoredNondeterministicZAutomaton.cpp @@ -5,6 +5,7 @@ template class automaton::ArcFactoredNondeterministicZAutomaton < >; template class registration::DenormalizationRegisterImpl < const automaton::ArcFactoredNondeterministicZAutomaton < > & >; +template class registration::NormalizationRegisterImpl < automaton::ArcFactoredNondeterministicZAutomaton < > >; namespace { diff --git a/alib2data/src/automaton/TA/ArcFactoredNondeterministicZAutomaton.h b/alib2data/src/automaton/TA/ArcFactoredNondeterministicZAutomaton.h index 184e6e2e69..d12c1d15c8 100644 --- a/alib2data/src/automaton/TA/ArcFactoredNondeterministicZAutomaton.h +++ b/alib2data/src/automaton/TA/ArcFactoredNondeterministicZAutomaton.h @@ -41,6 +41,7 @@ #include "ArcFactoredDeterministicZAutomaton.h" #include <registration/DenormalizationRegistration.hpp> +#include <registration/NormalizationRegistration.hpp> namespace automaton { @@ -707,3 +708,4 @@ struct type_details_retriever < automaton::ArcFactoredNondeterministicZAutomaton extern template class automaton::ArcFactoredNondeterministicZAutomaton < >; extern template class registration::DenormalizationRegisterImpl < const automaton::ArcFactoredNondeterministicZAutomaton < > & >; +extern template class registration::NormalizationRegisterImpl < automaton::ArcFactoredNondeterministicZAutomaton < > >; diff --git a/alib2data/src/automaton/TA/DFTA.cpp b/alib2data/src/automaton/TA/DFTA.cpp index 303652cde9..b18f7950cd 100644 --- a/alib2data/src/automaton/TA/DFTA.cpp +++ b/alib2data/src/automaton/TA/DFTA.cpp @@ -4,6 +4,7 @@ template class automaton::DFTA < >; template class registration::DenormalizationRegisterImpl < const automaton::DFTA < > & >; +template class registration::NormalizationRegisterImpl < automaton::DFTA < > >; namespace { diff --git a/alib2data/src/automaton/TA/DFTA.h b/alib2data/src/automaton/TA/DFTA.h index 1665b78fd0..cec463b4b8 100644 --- a/alib2data/src/automaton/TA/DFTA.h +++ b/alib2data/src/automaton/TA/DFTA.h @@ -40,6 +40,7 @@ #include <automaton/common/AutomatonDenormalize.h> #include <registration/DenormalizationRegistration.hpp> +#include <registration/NormalizationRegistration.hpp> namespace automaton { @@ -671,3 +672,4 @@ struct type_details_retriever < automaton::DFTA < SymbolType, StateType > > { extern template class automaton::DFTA < >; extern template class registration::DenormalizationRegisterImpl < const automaton::DFTA < > & >; +extern template class registration::NormalizationRegisterImpl < automaton::DFTA < > >; diff --git a/alib2data/src/automaton/TA/EpsilonNFTA.cpp b/alib2data/src/automaton/TA/EpsilonNFTA.cpp index 5bac632991..de0968341d 100644 --- a/alib2data/src/automaton/TA/EpsilonNFTA.cpp +++ b/alib2data/src/automaton/TA/EpsilonNFTA.cpp @@ -5,6 +5,7 @@ template class automaton::EpsilonNFTA < >; template class registration::DenormalizationRegisterImpl < const automaton::EpsilonNFTA < > & >; +template class registration::NormalizationRegisterImpl < automaton::EpsilonNFTA < > >; namespace { diff --git a/alib2data/src/automaton/TA/EpsilonNFTA.h b/alib2data/src/automaton/TA/EpsilonNFTA.h index ce769375e7..9cc8056971 100644 --- a/alib2data/src/automaton/TA/EpsilonNFTA.h +++ b/alib2data/src/automaton/TA/EpsilonNFTA.h @@ -42,6 +42,7 @@ #include "NFTA.h" #include <registration/DenormalizationRegistration.hpp> +#include <registration/NormalizationRegistration.hpp> namespace automaton { @@ -926,3 +927,4 @@ struct type_details_retriever < automaton::EpsilonNFTA < SymbolType, StateType > extern template class automaton::EpsilonNFTA < >; extern template class registration::DenormalizationRegisterImpl < const automaton::EpsilonNFTA < > & >; +extern template class registration::NormalizationRegisterImpl < automaton::EpsilonNFTA < > >; diff --git a/alib2data/src/automaton/TA/ExtendedNFTA.cpp b/alib2data/src/automaton/TA/ExtendedNFTA.cpp index c5f8946a25..7e6a9931aa 100644 --- a/alib2data/src/automaton/TA/ExtendedNFTA.cpp +++ b/alib2data/src/automaton/TA/ExtendedNFTA.cpp @@ -4,6 +4,7 @@ template class automaton::ExtendedNFTA < >; template class registration::DenormalizationRegisterImpl < const automaton::ExtendedNFTA < > & >; +template class registration::NormalizationRegisterImpl < automaton::ExtendedNFTA < > >; namespace { diff --git a/alib2data/src/automaton/TA/ExtendedNFTA.h b/alib2data/src/automaton/TA/ExtendedNFTA.h index 077c9036fd..58282c4fa1 100644 --- a/alib2data/src/automaton/TA/ExtendedNFTA.h +++ b/alib2data/src/automaton/TA/ExtendedNFTA.h @@ -45,6 +45,7 @@ #include "NFTA.h" #include <registration/DenormalizationRegistration.hpp> +#include <registration/NormalizationRegistration.hpp> namespace automaton { @@ -744,3 +745,4 @@ struct type_details_retriever < automaton::ExtendedNFTA < SymbolType, StateType extern template class automaton::ExtendedNFTA < >; extern template class registration::DenormalizationRegisterImpl < const automaton::ExtendedNFTA < > & >; +extern template class registration::NormalizationRegisterImpl < automaton::ExtendedNFTA < > >; diff --git a/alib2data/src/automaton/TA/NFTA.cpp b/alib2data/src/automaton/TA/NFTA.cpp index 69ac5da3d4..9089760a30 100644 --- a/alib2data/src/automaton/TA/NFTA.cpp +++ b/alib2data/src/automaton/TA/NFTA.cpp @@ -5,6 +5,7 @@ template class automaton::NFTA < >; template class registration::DenormalizationRegisterImpl < const automaton::NFTA < > & >; +template class registration::NormalizationRegisterImpl < automaton::NFTA < > >; namespace { diff --git a/alib2data/src/automaton/TA/NFTA.h b/alib2data/src/automaton/TA/NFTA.h index 5bcf48e1d6..610042754d 100644 --- a/alib2data/src/automaton/TA/NFTA.h +++ b/alib2data/src/automaton/TA/NFTA.h @@ -41,6 +41,7 @@ #include "DFTA.h" #include <registration/DenormalizationRegistration.hpp> +#include <registration/NormalizationRegistration.hpp> namespace automaton { @@ -697,3 +698,4 @@ struct type_details_retriever < automaton::NFTA < SymbolType, StateType > > { extern template class automaton::NFTA < >; extern template class registration::DenormalizationRegisterImpl < const automaton::NFTA < > & >; +extern template class registration::NormalizationRegisterImpl < automaton::NFTA < > >; diff --git a/alib2data/src/automaton/TA/NondeterministicZAutomaton.cpp b/alib2data/src/automaton/TA/NondeterministicZAutomaton.cpp index 34f0dd97b4..ed11fff975 100644 --- a/alib2data/src/automaton/TA/NondeterministicZAutomaton.cpp +++ b/alib2data/src/automaton/TA/NondeterministicZAutomaton.cpp @@ -4,6 +4,7 @@ template class automaton::NondeterministicZAutomaton < >; template class registration::DenormalizationRegisterImpl < const automaton::NondeterministicZAutomaton < > & >; +template class registration::NormalizationRegisterImpl < automaton::NondeterministicZAutomaton < > >; namespace { diff --git a/alib2data/src/automaton/TA/NondeterministicZAutomaton.h b/alib2data/src/automaton/TA/NondeterministicZAutomaton.h index f2bbfda057..6ae5ed04d0 100644 --- a/alib2data/src/automaton/TA/NondeterministicZAutomaton.h +++ b/alib2data/src/automaton/TA/NondeterministicZAutomaton.h @@ -39,6 +39,7 @@ #include <automaton/common/AutomatonDenormalize.h> #include <registration/DenormalizationRegistration.hpp> +#include <registration/NormalizationRegistration.hpp> namespace automaton { @@ -636,3 +637,4 @@ struct type_details_retriever < automaton::NondeterministicZAutomaton < SymbolTy extern template class automaton::NondeterministicZAutomaton < >; extern template class registration::DenormalizationRegisterImpl < const automaton::NondeterministicZAutomaton < > & >; +extern template class registration::NormalizationRegisterImpl < automaton::NondeterministicZAutomaton < > >; diff --git a/alib2data/src/automaton/TA/UnorderedDFTA.cpp b/alib2data/src/automaton/TA/UnorderedDFTA.cpp index 53dffaffe9..1e0ecfea12 100644 --- a/alib2data/src/automaton/TA/UnorderedDFTA.cpp +++ b/alib2data/src/automaton/TA/UnorderedDFTA.cpp @@ -4,6 +4,7 @@ template class automaton::UnorderedDFTA < >; template class registration::DenormalizationRegisterImpl < const automaton::UnorderedDFTA < > & >; +template class registration::NormalizationRegisterImpl < automaton::UnorderedDFTA < > >; namespace { diff --git a/alib2data/src/automaton/TA/UnorderedDFTA.h b/alib2data/src/automaton/TA/UnorderedDFTA.h index dbeb1f455e..d22e172f36 100644 --- a/alib2data/src/automaton/TA/UnorderedDFTA.h +++ b/alib2data/src/automaton/TA/UnorderedDFTA.h @@ -40,6 +40,7 @@ #include <automaton/common/AutomatonDenormalize.h> #include <registration/DenormalizationRegistration.hpp> +#include <registration/NormalizationRegistration.hpp> namespace automaton { @@ -669,3 +670,4 @@ struct type_details_retriever < automaton::UnorderedDFTA < SymbolType, StateType extern template class automaton::UnorderedDFTA < >; extern template class registration::DenormalizationRegisterImpl < const automaton::UnorderedDFTA < > & >; +extern template class registration::NormalizationRegisterImpl < automaton::UnorderedDFTA < > >; diff --git a/alib2data/src/automaton/TA/UnorderedNFTA.cpp b/alib2data/src/automaton/TA/UnorderedNFTA.cpp index 3b43fd911e..b3418d0056 100644 --- a/alib2data/src/automaton/TA/UnorderedNFTA.cpp +++ b/alib2data/src/automaton/TA/UnorderedNFTA.cpp @@ -5,6 +5,7 @@ template class automaton::UnorderedNFTA < >; template class registration::DenormalizationRegisterImpl < const automaton::UnorderedNFTA < > & >; +template class registration::NormalizationRegisterImpl < automaton::UnorderedNFTA < > >; namespace { diff --git a/alib2data/src/automaton/TA/UnorderedNFTA.h b/alib2data/src/automaton/TA/UnorderedNFTA.h index a84950e959..5f41f58f55 100644 --- a/alib2data/src/automaton/TA/UnorderedNFTA.h +++ b/alib2data/src/automaton/TA/UnorderedNFTA.h @@ -41,6 +41,7 @@ #include "UnorderedDFTA.h" #include <registration/DenormalizationRegistration.hpp> +#include <registration/NormalizationRegistration.hpp> namespace automaton { @@ -697,3 +698,4 @@ struct type_details_retriever < automaton::UnorderedNFTA < SymbolType, StateType extern template class automaton::UnorderedNFTA < >; extern template class registration::DenormalizationRegisterImpl < const automaton::UnorderedNFTA < > & >; +extern template class registration::NormalizationRegisterImpl < automaton::UnorderedNFTA < > >; diff --git a/alib2data/src/automaton/TM/OneTapeDTM.cpp b/alib2data/src/automaton/TM/OneTapeDTM.cpp index 30edc33755..aa92b4f362 100644 --- a/alib2data/src/automaton/TM/OneTapeDTM.cpp +++ b/alib2data/src/automaton/TM/OneTapeDTM.cpp @@ -4,6 +4,7 @@ template class automaton::OneTapeDTM < >; template class registration::DenormalizationRegisterImpl < const automaton::OneTapeDTM < > & >; +template class registration::NormalizationRegisterImpl < automaton::OneTapeDTM < > >; namespace { diff --git a/alib2data/src/automaton/TM/OneTapeDTM.h b/alib2data/src/automaton/TM/OneTapeDTM.h index 7dc5e84720..678b0901b7 100644 --- a/alib2data/src/automaton/TM/OneTapeDTM.h +++ b/alib2data/src/automaton/TM/OneTapeDTM.h @@ -39,6 +39,7 @@ #include <automaton/common/AutomatonDenormalize.h> #include <registration/DenormalizationRegistration.hpp> +#include <registration/NormalizationRegistration.hpp> namespace automaton { @@ -880,3 +881,4 @@ struct type_details_retriever < automaton::OneTapeDTM < SymbolType, StateType > extern template class automaton::OneTapeDTM < >; extern template class registration::DenormalizationRegisterImpl < const automaton::OneTapeDTM < > & >; +extern template class registration::NormalizationRegisterImpl < automaton::OneTapeDTM < > >; diff --git a/alib2data/src/grammar/ContextFree/CFG.cpp b/alib2data/src/grammar/ContextFree/CFG.cpp index 64cd8b7490..bcbc6dd43f 100644 --- a/alib2data/src/grammar/ContextFree/CFG.cpp +++ b/alib2data/src/grammar/ContextFree/CFG.cpp @@ -5,6 +5,7 @@ template class grammar::CFG < >; template class registration::DenormalizationRegisterImpl < const grammar::CFG < > & >; +template class registration::NormalizationRegisterImpl < grammar::CFG < > >; namespace { diff --git a/alib2data/src/grammar/ContextFree/CFG.h b/alib2data/src/grammar/ContextFree/CFG.h index 40ac402ea7..bbb26feb81 100644 --- a/alib2data/src/grammar/ContextFree/CFG.h +++ b/alib2data/src/grammar/ContextFree/CFG.h @@ -38,6 +38,7 @@ #include "EpsilonFreeCFG.h" #include <registration/DenormalizationRegistration.hpp> +#include <registration/NormalizationRegistration.hpp> namespace grammar { @@ -567,3 +568,4 @@ struct type_details_retriever < grammar::CFG < TerminalSymbolType, NonterminalSy extern template class grammar::CFG < >; extern template class registration::DenormalizationRegisterImpl < const grammar::CFG < > & >; +extern template class registration::NormalizationRegisterImpl < grammar::CFG < > >; diff --git a/alib2data/src/grammar/ContextFree/CNF.cpp b/alib2data/src/grammar/ContextFree/CNF.cpp index 2ef3b9bdb5..f5383a4388 100644 --- a/alib2data/src/grammar/ContextFree/CNF.cpp +++ b/alib2data/src/grammar/ContextFree/CNF.cpp @@ -5,6 +5,7 @@ template class grammar::CNF < >; template class registration::DenormalizationRegisterImpl < const grammar::CNF < > & >; +template class registration::NormalizationRegisterImpl < grammar::CNF < > >; namespace { diff --git a/alib2data/src/grammar/ContextFree/CNF.h b/alib2data/src/grammar/ContextFree/CNF.h index 73f874d357..b8929b598a 100644 --- a/alib2data/src/grammar/ContextFree/CNF.h +++ b/alib2data/src/grammar/ContextFree/CNF.h @@ -39,6 +39,7 @@ #include <grammar/common/GrammarDenormalize.h> #include <registration/DenormalizationRegistration.hpp> +#include <registration/NormalizationRegistration.hpp> namespace grammar { @@ -642,3 +643,4 @@ struct type_details_retriever < grammar::CNF < TerminalSymbolType, NonterminalSy extern template class grammar::CNF < >; extern template class registration::DenormalizationRegisterImpl < const grammar::CNF < > & >; +extern template class registration::NormalizationRegisterImpl < grammar::CNF < > >; diff --git a/alib2data/src/grammar/ContextFree/EpsilonFreeCFG.cpp b/alib2data/src/grammar/ContextFree/EpsilonFreeCFG.cpp index dbe64e7f78..9e312ce396 100644 --- a/alib2data/src/grammar/ContextFree/EpsilonFreeCFG.cpp +++ b/alib2data/src/grammar/ContextFree/EpsilonFreeCFG.cpp @@ -5,6 +5,7 @@ template class grammar::EpsilonFreeCFG < >; template class registration::DenormalizationRegisterImpl < const grammar::EpsilonFreeCFG < > & >; +template class registration::NormalizationRegisterImpl < grammar::EpsilonFreeCFG < > >; namespace { diff --git a/alib2data/src/grammar/ContextFree/EpsilonFreeCFG.h b/alib2data/src/grammar/ContextFree/EpsilonFreeCFG.h index 16553b86a6..76e40b3bfc 100644 --- a/alib2data/src/grammar/ContextFree/EpsilonFreeCFG.h +++ b/alib2data/src/grammar/ContextFree/EpsilonFreeCFG.h @@ -36,6 +36,7 @@ #include <alphabet/common/SymbolDenormalize.h> #include <registration/DenormalizationRegistration.hpp> +#include <registration/NormalizationRegistration.hpp> namespace grammar { @@ -594,3 +595,4 @@ struct type_details_retriever < grammar::EpsilonFreeCFG < TerminalSymbolType, No extern template class grammar::EpsilonFreeCFG < >; extern template class registration::DenormalizationRegisterImpl < const grammar::EpsilonFreeCFG < > & >; +extern template class registration::NormalizationRegisterImpl < grammar::EpsilonFreeCFG < > >; diff --git a/alib2data/src/grammar/ContextFree/GNF.cpp b/alib2data/src/grammar/ContextFree/GNF.cpp index 96802c4a29..d4665f3cf5 100644 --- a/alib2data/src/grammar/ContextFree/GNF.cpp +++ b/alib2data/src/grammar/ContextFree/GNF.cpp @@ -5,6 +5,7 @@ template class grammar::GNF < >; template class registration::DenormalizationRegisterImpl < const grammar::GNF < > & >; +template class registration::NormalizationRegisterImpl < grammar::GNF < > >; namespace { diff --git a/alib2data/src/grammar/ContextFree/GNF.h b/alib2data/src/grammar/ContextFree/GNF.h index 9b9799d1ae..658061d788 100644 --- a/alib2data/src/grammar/ContextFree/GNF.h +++ b/alib2data/src/grammar/ContextFree/GNF.h @@ -38,6 +38,7 @@ #include <grammar/common/GrammarDenormalize.h> #include <registration/DenormalizationRegistration.hpp> +#include <registration/NormalizationRegistration.hpp> namespace grammar { @@ -594,3 +595,4 @@ struct type_details_retriever < grammar::GNF < TerminalSymbolType, NonterminalSy extern template class grammar::GNF < >; extern template class registration::DenormalizationRegisterImpl < const grammar::GNF < > & >; +extern template class registration::NormalizationRegisterImpl < grammar::GNF < > >; diff --git a/alib2data/src/grammar/ContextFree/LG.cpp b/alib2data/src/grammar/ContextFree/LG.cpp index 3c43064521..0f9d52abad 100644 --- a/alib2data/src/grammar/ContextFree/LG.cpp +++ b/alib2data/src/grammar/ContextFree/LG.cpp @@ -5,6 +5,7 @@ template class grammar::LG < >; template class registration::DenormalizationRegisterImpl < const grammar::LG < > & >; +template class registration::NormalizationRegisterImpl < grammar::LG < > >; namespace { diff --git a/alib2data/src/grammar/ContextFree/LG.h b/alib2data/src/grammar/ContextFree/LG.h index 1ef74fd063..9a7cf9e1c5 100644 --- a/alib2data/src/grammar/ContextFree/LG.h +++ b/alib2data/src/grammar/ContextFree/LG.h @@ -40,6 +40,7 @@ #include <grammar/common/GrammarDenormalize.h> #include <registration/DenormalizationRegistration.hpp> +#include <registration/NormalizationRegistration.hpp> namespace grammar { @@ -643,3 +644,4 @@ struct type_details_retriever < grammar::LG < TerminalSymbolType, NonterminalSym extern template class grammar::LG < >; extern template class registration::DenormalizationRegisterImpl < const grammar::LG < > & >; +extern template class registration::NormalizationRegisterImpl < grammar::LG < > >; diff --git a/alib2data/src/grammar/ContextSensitive/CSG.cpp b/alib2data/src/grammar/ContextSensitive/CSG.cpp index 5fb770335f..1259584d2d 100644 --- a/alib2data/src/grammar/ContextSensitive/CSG.cpp +++ b/alib2data/src/grammar/ContextSensitive/CSG.cpp @@ -5,6 +5,7 @@ template class grammar::CSG < >; template class registration::DenormalizationRegisterImpl < const grammar::CSG < > & >; +template class registration::NormalizationRegisterImpl < grammar::CSG < > >; namespace { diff --git a/alib2data/src/grammar/ContextSensitive/CSG.h b/alib2data/src/grammar/ContextSensitive/CSG.h index 0d04c82187..cede910a89 100644 --- a/alib2data/src/grammar/ContextSensitive/CSG.h +++ b/alib2data/src/grammar/ContextSensitive/CSG.h @@ -39,6 +39,7 @@ #include <grammar/common/GrammarDenormalize.h> #include <registration/DenormalizationRegistration.hpp> +#include <registration/NormalizationRegistration.hpp> namespace grammar { @@ -623,3 +624,4 @@ struct type_details_retriever < grammar::CSG < SymbolType > > { extern template class grammar::CSG < >; extern template class registration::DenormalizationRegisterImpl < const grammar::CSG < > & >; +extern template class registration::NormalizationRegisterImpl < grammar::CSG < > >; diff --git a/alib2data/src/grammar/ContextSensitive/NonContractingGrammar.cpp b/alib2data/src/grammar/ContextSensitive/NonContractingGrammar.cpp index e9bdf0974a..ad1aeb1fd3 100644 --- a/alib2data/src/grammar/ContextSensitive/NonContractingGrammar.cpp +++ b/alib2data/src/grammar/ContextSensitive/NonContractingGrammar.cpp @@ -5,6 +5,7 @@ template class grammar::NonContractingGrammar < >; template class registration::DenormalizationRegisterImpl < const grammar::NonContractingGrammar < > & >; +template class registration::NormalizationRegisterImpl < grammar::NonContractingGrammar < > >; namespace { diff --git a/alib2data/src/grammar/ContextSensitive/NonContractingGrammar.h b/alib2data/src/grammar/ContextSensitive/NonContractingGrammar.h index 5389e4d177..59bb89601a 100644 --- a/alib2data/src/grammar/ContextSensitive/NonContractingGrammar.h +++ b/alib2data/src/grammar/ContextSensitive/NonContractingGrammar.h @@ -39,6 +39,7 @@ #include <grammar/common/GrammarDenormalize.h> #include <registration/DenormalizationRegistration.hpp> +#include <registration/NormalizationRegistration.hpp> namespace grammar { @@ -616,3 +617,4 @@ struct type_details_retriever < grammar::NonContractingGrammar < SymbolType > > extern template class grammar::NonContractingGrammar < >; extern template class registration::DenormalizationRegisterImpl < const grammar::NonContractingGrammar < > & >; +extern template class registration::NormalizationRegisterImpl < grammar::NonContractingGrammar < > >; diff --git a/alib2data/src/grammar/Regular/LeftLG.cpp b/alib2data/src/grammar/Regular/LeftLG.cpp index d92c65b5d1..982af50878 100644 --- a/alib2data/src/grammar/Regular/LeftLG.cpp +++ b/alib2data/src/grammar/Regular/LeftLG.cpp @@ -5,6 +5,7 @@ template class grammar::LeftLG < >; template class registration::DenormalizationRegisterImpl < const grammar::LeftLG < > & >; +template class registration::NormalizationRegisterImpl < grammar::LeftLG < > >; namespace { diff --git a/alib2data/src/grammar/Regular/LeftLG.h b/alib2data/src/grammar/Regular/LeftLG.h index bad69c73f7..87431f9542 100644 --- a/alib2data/src/grammar/Regular/LeftLG.h +++ b/alib2data/src/grammar/Regular/LeftLG.h @@ -39,6 +39,7 @@ #include <grammar/common/GrammarDenormalize.h> #include <registration/DenormalizationRegistration.hpp> +#include <registration/NormalizationRegistration.hpp> namespace grammar { @@ -625,3 +626,4 @@ struct type_details_retriever < grammar::LeftLG < TerminalSymbolType, Nontermina extern template class grammar::LeftLG < >; extern template class registration::DenormalizationRegisterImpl < const grammar::LeftLG < > & >; +extern template class registration::NormalizationRegisterImpl < grammar::LeftLG < > >; diff --git a/alib2data/src/grammar/Regular/LeftRG.cpp b/alib2data/src/grammar/Regular/LeftRG.cpp index ad374e06c8..dda36f7890 100644 --- a/alib2data/src/grammar/Regular/LeftRG.cpp +++ b/alib2data/src/grammar/Regular/LeftRG.cpp @@ -5,6 +5,7 @@ template class grammar::LeftRG < >; template class registration::DenormalizationRegisterImpl < const grammar::LeftRG < > & >; +template class registration::NormalizationRegisterImpl < grammar::LeftRG < > >; namespace { diff --git a/alib2data/src/grammar/Regular/LeftRG.h b/alib2data/src/grammar/Regular/LeftRG.h index 2acbbf8ca7..57e1c8f45b 100644 --- a/alib2data/src/grammar/Regular/LeftRG.h +++ b/alib2data/src/grammar/Regular/LeftRG.h @@ -39,6 +39,7 @@ #include <grammar/common/GrammarDenormalize.h> #include <registration/DenormalizationRegistration.hpp> +#include <registration/NormalizationRegistration.hpp> namespace grammar { @@ -641,3 +642,4 @@ struct type_details_retriever < grammar::LeftRG < TerminalSymbolType, Nontermina extern template class grammar::LeftRG < >; extern template class registration::DenormalizationRegisterImpl < const grammar::LeftRG < > & >; +extern template class registration::NormalizationRegisterImpl < grammar::LeftRG < > >; diff --git a/alib2data/src/grammar/Regular/RightLG.cpp b/alib2data/src/grammar/Regular/RightLG.cpp index 58af15c48b..a33a23d376 100644 --- a/alib2data/src/grammar/Regular/RightLG.cpp +++ b/alib2data/src/grammar/Regular/RightLG.cpp @@ -5,6 +5,7 @@ template class grammar::RightLG < >; template class registration::DenormalizationRegisterImpl < const grammar::RightLG < > & >; +template class registration::NormalizationRegisterImpl < grammar::RightLG < > >; namespace { diff --git a/alib2data/src/grammar/Regular/RightLG.h b/alib2data/src/grammar/Regular/RightLG.h index ff78850b83..0092f2140d 100644 --- a/alib2data/src/grammar/Regular/RightLG.h +++ b/alib2data/src/grammar/Regular/RightLG.h @@ -39,6 +39,7 @@ #include <grammar/common/GrammarDenormalize.h> #include <registration/DenormalizationRegistration.hpp> +#include <registration/NormalizationRegistration.hpp> namespace grammar { @@ -622,3 +623,4 @@ struct type_details_retriever < grammar::RightLG < TerminalSymbolType, Nontermin extern template class grammar::RightLG < >; extern template class registration::DenormalizationRegisterImpl < const grammar::RightLG < > & >; +extern template class registration::NormalizationRegisterImpl < grammar::RightLG < > >; diff --git a/alib2data/src/grammar/Regular/RightRG.cpp b/alib2data/src/grammar/Regular/RightRG.cpp index 0dc60ecccf..da1676c4a7 100644 --- a/alib2data/src/grammar/Regular/RightRG.cpp +++ b/alib2data/src/grammar/Regular/RightRG.cpp @@ -5,6 +5,7 @@ template class grammar::RightRG < >; template class registration::DenormalizationRegisterImpl < const grammar::RightRG < > & >; +template class registration::NormalizationRegisterImpl < grammar::RightRG < > >; namespace { diff --git a/alib2data/src/grammar/Regular/RightRG.h b/alib2data/src/grammar/Regular/RightRG.h index 9d648f1b16..2d1a82b6af 100644 --- a/alib2data/src/grammar/Regular/RightRG.h +++ b/alib2data/src/grammar/Regular/RightRG.h @@ -39,6 +39,7 @@ #include <grammar/common/GrammarDenormalize.h> #include <registration/DenormalizationRegistration.hpp> +#include <registration/NormalizationRegistration.hpp> namespace grammar { @@ -640,3 +641,4 @@ struct type_details_retriever < grammar::RightRG < TerminalSymbolType, Nontermin extern template class grammar::RightRG < >; extern template class registration::DenormalizationRegisterImpl < const grammar::RightRG < > & >; +extern template class registration::NormalizationRegisterImpl < grammar::RightRG < > >; diff --git a/alib2data/src/grammar/Unrestricted/ContextPreservingUnrestrictedGrammar.cpp b/alib2data/src/grammar/Unrestricted/ContextPreservingUnrestrictedGrammar.cpp index b1771d4b0e..bab470a32d 100644 --- a/alib2data/src/grammar/Unrestricted/ContextPreservingUnrestrictedGrammar.cpp +++ b/alib2data/src/grammar/Unrestricted/ContextPreservingUnrestrictedGrammar.cpp @@ -5,6 +5,7 @@ template class grammar::ContextPreservingUnrestrictedGrammar < >; template class registration::DenormalizationRegisterImpl < const grammar::ContextPreservingUnrestrictedGrammar < > & >; +template class registration::NormalizationRegisterImpl < grammar::ContextPreservingUnrestrictedGrammar < > >; namespace { diff --git a/alib2data/src/grammar/Unrestricted/ContextPreservingUnrestrictedGrammar.h b/alib2data/src/grammar/Unrestricted/ContextPreservingUnrestrictedGrammar.h index 18ffebdd82..b83a646a85 100644 --- a/alib2data/src/grammar/Unrestricted/ContextPreservingUnrestrictedGrammar.h +++ b/alib2data/src/grammar/Unrestricted/ContextPreservingUnrestrictedGrammar.h @@ -38,6 +38,7 @@ #include <grammar/common/GrammarDenormalize.h> #include <registration/DenormalizationRegistration.hpp> +#include <registration/NormalizationRegistration.hpp> namespace grammar { @@ -592,3 +593,4 @@ struct type_details_retriever < grammar::ContextPreservingUnrestrictedGrammar < extern template class grammar::ContextPreservingUnrestrictedGrammar < >; extern template class registration::DenormalizationRegisterImpl < const grammar::ContextPreservingUnrestrictedGrammar < > & >; +extern template class registration::NormalizationRegisterImpl < grammar::ContextPreservingUnrestrictedGrammar < > >; diff --git a/alib2data/src/grammar/Unrestricted/UnrestrictedGrammar.cpp b/alib2data/src/grammar/Unrestricted/UnrestrictedGrammar.cpp index 8da2ae7e95..5fc178f0cd 100644 --- a/alib2data/src/grammar/Unrestricted/UnrestrictedGrammar.cpp +++ b/alib2data/src/grammar/Unrestricted/UnrestrictedGrammar.cpp @@ -5,6 +5,7 @@ template class grammar::UnrestrictedGrammar < >; template class registration::DenormalizationRegisterImpl < const grammar::UnrestrictedGrammar < > & >; +template class registration::NormalizationRegisterImpl < grammar::UnrestrictedGrammar < > >; namespace { diff --git a/alib2data/src/grammar/Unrestricted/UnrestrictedGrammar.h b/alib2data/src/grammar/Unrestricted/UnrestrictedGrammar.h index 2384469aa4..56e116dbbd 100644 --- a/alib2data/src/grammar/Unrestricted/UnrestrictedGrammar.h +++ b/alib2data/src/grammar/Unrestricted/UnrestrictedGrammar.h @@ -38,6 +38,7 @@ #include <grammar/common/GrammarDenormalize.h> #include <registration/DenormalizationRegistration.hpp> +#include <registration/NormalizationRegistration.hpp> namespace grammar { @@ -589,3 +590,4 @@ struct type_details_retriever < grammar::UnrestrictedGrammar < SymbolType > > { extern template class grammar::UnrestrictedGrammar < >; extern template class registration::DenormalizationRegisterImpl < const grammar::UnrestrictedGrammar < > & >; +extern template class registration::NormalizationRegisterImpl < grammar::UnrestrictedGrammar < > >; diff --git a/alib2data/src/regexp/formal/FormalRegExp.cpp b/alib2data/src/regexp/formal/FormalRegExp.cpp index 7e46b69230..553aba7066 100644 --- a/alib2data/src/regexp/formal/FormalRegExp.cpp +++ b/alib2data/src/regexp/formal/FormalRegExp.cpp @@ -6,6 +6,7 @@ template class regexp::FormalRegExp < >; template class registration::DenormalizationRegisterImpl < const regexp::FormalRegExp < > & >; +template class registration::NormalizationRegisterImpl < regexp::FormalRegExp < > >; template class regexp::FormalRegExpStructure < DefaultSymbolType >; template class regexp::FormalRegExpElement < DefaultSymbolType >; template class regexp::FormalRegExpAlternation < DefaultSymbolType >; diff --git a/alib2data/src/regexp/formal/FormalRegExp.h b/alib2data/src/regexp/formal/FormalRegExp.h index 0f07e04cbd..67f6586196 100644 --- a/alib2data/src/regexp/formal/FormalRegExp.h +++ b/alib2data/src/regexp/formal/FormalRegExp.h @@ -45,6 +45,7 @@ class FormalRegExp; #include <regexp/common/RegExpNormalize.h> #include <registration/DenormalizationRegistration.hpp> +#include <registration/NormalizationRegistration.hpp> namespace regexp { @@ -309,3 +310,4 @@ struct type_details_retriever < regexp::FormalRegExp < SymbolType > > { extern template class regexp::FormalRegExp < >; extern template class registration::DenormalizationRegisterImpl < const regexp::FormalRegExp < > & >; +extern template class registration::NormalizationRegisterImpl < regexp::FormalRegExp < > >; diff --git a/alib2data/src/regexp/unbounded/UnboundedRegExp.cpp b/alib2data/src/regexp/unbounded/UnboundedRegExp.cpp index f2d800b595..08a00458b5 100644 --- a/alib2data/src/regexp/unbounded/UnboundedRegExp.cpp +++ b/alib2data/src/regexp/unbounded/UnboundedRegExp.cpp @@ -6,6 +6,7 @@ template class regexp::UnboundedRegExp < >; template class registration::DenormalizationRegisterImpl < const regexp::UnboundedRegExp < > & >; +template class registration::NormalizationRegisterImpl < regexp::UnboundedRegExp < > >; template class regexp::UnboundedRegExpStructure < DefaultSymbolType >; template class regexp::UnboundedRegExpElement < DefaultSymbolType >; diff --git a/alib2data/src/regexp/unbounded/UnboundedRegExp.h b/alib2data/src/regexp/unbounded/UnboundedRegExp.h index 4dea3cbc6f..52015009a9 100644 --- a/alib2data/src/regexp/unbounded/UnboundedRegExp.h +++ b/alib2data/src/regexp/unbounded/UnboundedRegExp.h @@ -45,6 +45,7 @@ class UnboundedRegExp; #include <regexp/common/RegExpNormalize.h> #include <registration/DenormalizationRegistration.hpp> +#include <registration/NormalizationRegistration.hpp> namespace regexp { @@ -311,3 +312,4 @@ struct type_details_retriever < regexp::UnboundedRegExp < SymbolType > > { extern template class regexp::UnboundedRegExp < >; extern template class registration::DenormalizationRegisterImpl < const regexp::UnboundedRegExp < > & >; +extern template class registration::NormalizationRegisterImpl < regexp::UnboundedRegExp < > >; diff --git a/alib2data/src/rte/formal/FormalRTE.cpp b/alib2data/src/rte/formal/FormalRTE.cpp index bed3085958..909a5ee236 100644 --- a/alib2data/src/rte/formal/FormalRTE.cpp +++ b/alib2data/src/rte/formal/FormalRTE.cpp @@ -5,6 +5,7 @@ template class rte::FormalRTE < >; template class registration::DenormalizationRegisterImpl < const rte::FormalRTE < > & >; +template class registration::NormalizationRegisterImpl < rte::FormalRTE < > >; template class rte::FormalRTEStructure < DefaultSymbolType >; template class rte::FormalRTEElement < DefaultSymbolType >; template class rte::FormalRTEAlternation < DefaultSymbolType >; diff --git a/alib2data/src/rte/formal/FormalRTE.h b/alib2data/src/rte/formal/FormalRTE.h index 40db4ef5ec..394aa1e37d 100644 --- a/alib2data/src/rte/formal/FormalRTE.h +++ b/alib2data/src/rte/formal/FormalRTE.h @@ -39,6 +39,7 @@ #include <rte/common/RTEDenormalize.h> #include <registration/DenormalizationRegistration.hpp> +#include <registration/NormalizationRegistration.hpp> namespace rte { @@ -449,3 +450,4 @@ struct type_details_retriever < rte::FormalRTE < SymbolType > > { extern template class rte::FormalRTE < >; extern template class registration::DenormalizationRegisterImpl < const rte::FormalRTE < > & >; +extern template class registration::NormalizationRegisterImpl < rte::FormalRTE < > >; diff --git a/alib2data/src/string/CyclicString.cpp b/alib2data/src/string/CyclicString.cpp index ae022a8633..90a87ac5ed 100644 --- a/alib2data/src/string/CyclicString.cpp +++ b/alib2data/src/string/CyclicString.cpp @@ -5,6 +5,7 @@ template class string::CyclicString < >; template class registration::DenormalizationRegisterImpl < const string::CyclicString < > & >; +template class registration::NormalizationRegisterImpl < string::CyclicString < > >; namespace { diff --git a/alib2data/src/string/CyclicString.h b/alib2data/src/string/CyclicString.h index c7c7117492..a173682037 100644 --- a/alib2data/src/string/CyclicString.h +++ b/alib2data/src/string/CyclicString.h @@ -38,6 +38,7 @@ #include <alphabet/common/SymbolDenormalize.h> #include <registration/DenormalizationRegistration.hpp> +#include <registration/NormalizationRegistration.hpp> namespace string { @@ -341,3 +342,4 @@ struct type_details_retriever < string::CyclicString < SymbolType > > { extern template class string::CyclicString < >; extern template class registration::DenormalizationRegisterImpl < const string::CyclicString < > & >; +extern template class registration::NormalizationRegisterImpl < string::CyclicString < > >; diff --git a/alib2data/src/string/LinearString.cpp b/alib2data/src/string/LinearString.cpp index 781bd68099..9b8762556e 100644 --- a/alib2data/src/string/LinearString.cpp +++ b/alib2data/src/string/LinearString.cpp @@ -6,6 +6,7 @@ template class string::LinearString < >; template class registration::DenormalizationRegisterImpl < const string::LinearString < > & >; +template class registration::NormalizationRegisterImpl < string::LinearString < > >; namespace { diff --git a/alib2data/src/string/LinearString.h b/alib2data/src/string/LinearString.h index b2bd511bbd..5f91a65d4e 100644 --- a/alib2data/src/string/LinearString.h +++ b/alib2data/src/string/LinearString.h @@ -38,6 +38,7 @@ #include <alphabet/common/SymbolDenormalize.h> #include <registration/DenormalizationRegistration.hpp> +#include <registration/NormalizationRegistration.hpp> namespace string { @@ -363,3 +364,4 @@ struct type_details_retriever < string::LinearString < SymbolType > > { extern template class string::LinearString < >; extern template class registration::DenormalizationRegisterImpl < const string::LinearString < > & >; +extern template class registration::NormalizationRegisterImpl < string::LinearString < > >; diff --git a/alib2data/src/string/WildcardLinearString.cpp b/alib2data/src/string/WildcardLinearString.cpp index 5cd4873c60..40f9d91ccc 100644 --- a/alib2data/src/string/WildcardLinearString.cpp +++ b/alib2data/src/string/WildcardLinearString.cpp @@ -6,6 +6,7 @@ template class string::WildcardLinearString < >; template class registration::DenormalizationRegisterImpl < const string::WildcardLinearString < > & >; +template class registration::NormalizationRegisterImpl < string::WildcardLinearString < > >; namespace { diff --git a/alib2data/src/string/WildcardLinearString.h b/alib2data/src/string/WildcardLinearString.h index 2af0296a76..c13b775cd9 100644 --- a/alib2data/src/string/WildcardLinearString.h +++ b/alib2data/src/string/WildcardLinearString.h @@ -22,6 +22,7 @@ #include "LinearString.h" #include <registration/DenormalizationRegistration.hpp> +#include <registration/NormalizationRegistration.hpp> namespace string { @@ -430,3 +431,4 @@ struct type_details_retriever < string::WildcardLinearString < SymbolType > > { extern template class string::WildcardLinearString < >; extern template class registration::DenormalizationRegisterImpl < const string::WildcardLinearString < > & >; +extern template class registration::NormalizationRegisterImpl < string::WildcardLinearString < > >; diff --git a/alib2data/src/tree/ranked/PostfixRankedTree.cpp b/alib2data/src/tree/ranked/PostfixRankedTree.cpp index 038bd72658..c667a374f0 100644 --- a/alib2data/src/tree/ranked/PostfixRankedTree.cpp +++ b/alib2data/src/tree/ranked/PostfixRankedTree.cpp @@ -6,6 +6,7 @@ template class tree::PostfixRankedTree < >; template class registration::DenormalizationRegisterImpl < const tree::PostfixRankedTree < > & >; +template class registration::NormalizationRegisterImpl < tree::PostfixRankedTree < > >; namespace { diff --git a/alib2data/src/tree/ranked/PostfixRankedTree.h b/alib2data/src/tree/ranked/PostfixRankedTree.h index f62c67423b..53af8abe32 100644 --- a/alib2data/src/tree/ranked/PostfixRankedTree.h +++ b/alib2data/src/tree/ranked/PostfixRankedTree.h @@ -54,6 +54,7 @@ class PostfixRankedTree; #include "RankedTree.h" #include <registration/DenormalizationRegistration.hpp> +#include <registration/NormalizationRegistration.hpp> namespace tree { @@ -350,3 +351,4 @@ struct type_details_retriever < tree::PostfixRankedTree < SymbolType > > { extern template class tree::PostfixRankedTree < >; extern template class registration::DenormalizationRegisterImpl < const tree::PostfixRankedTree < > & >; +extern template class registration::NormalizationRegisterImpl < tree::PostfixRankedTree < > >; diff --git a/alib2data/src/tree/ranked/PrefixRankedBarNonlinearPattern.cpp b/alib2data/src/tree/ranked/PrefixRankedBarNonlinearPattern.cpp index a5c37ac884..667bc8cc92 100644 --- a/alib2data/src/tree/ranked/PrefixRankedBarNonlinearPattern.cpp +++ b/alib2data/src/tree/ranked/PrefixRankedBarNonlinearPattern.cpp @@ -6,6 +6,7 @@ template class tree::PrefixRankedBarNonlinearPattern < >; template class registration::DenormalizationRegisterImpl < const tree::PrefixRankedBarNonlinearPattern < > & >; +template class registration::NormalizationRegisterImpl < tree::PrefixRankedBarNonlinearPattern < > >; namespace { diff --git a/alib2data/src/tree/ranked/PrefixRankedBarNonlinearPattern.h b/alib2data/src/tree/ranked/PrefixRankedBarNonlinearPattern.h index bed8e88867..eaf15ed5e6 100644 --- a/alib2data/src/tree/ranked/PrefixRankedBarNonlinearPattern.h +++ b/alib2data/src/tree/ranked/PrefixRankedBarNonlinearPattern.h @@ -62,6 +62,7 @@ class PrefixRankedBarNonlinearPattern; #include "RankedNonlinearPattern.h" #include <registration/DenormalizationRegistration.hpp> +#include <registration/NormalizationRegistration.hpp> namespace tree { @@ -744,3 +745,4 @@ struct type_details_retriever < tree::PrefixRankedBarNonlinearPattern < SymbolTy extern template class tree::PrefixRankedBarNonlinearPattern < >; extern template class registration::DenormalizationRegisterImpl < const tree::PrefixRankedBarNonlinearPattern < > & >; +extern template class registration::NormalizationRegisterImpl < tree::PrefixRankedBarNonlinearPattern < > >; diff --git a/alib2data/src/tree/ranked/PrefixRankedBarPattern.cpp b/alib2data/src/tree/ranked/PrefixRankedBarPattern.cpp index 892147b2a0..999b90ba89 100644 --- a/alib2data/src/tree/ranked/PrefixRankedBarPattern.cpp +++ b/alib2data/src/tree/ranked/PrefixRankedBarPattern.cpp @@ -6,6 +6,7 @@ template class tree::PrefixRankedBarPattern < >; template class registration::DenormalizationRegisterImpl < const tree::PrefixRankedBarPattern < > & >; +template class registration::NormalizationRegisterImpl < tree::PrefixRankedBarPattern < > >; namespace { diff --git a/alib2data/src/tree/ranked/PrefixRankedBarPattern.h b/alib2data/src/tree/ranked/PrefixRankedBarPattern.h index ce78dc759a..31b74e2f5d 100644 --- a/alib2data/src/tree/ranked/PrefixRankedBarPattern.h +++ b/alib2data/src/tree/ranked/PrefixRankedBarPattern.h @@ -57,6 +57,7 @@ class PrefixRankedBarPattern; #include "PrefixRankedBarTree.h" #include <registration/DenormalizationRegistration.hpp> +#include <registration/NormalizationRegistration.hpp> namespace tree { @@ -586,3 +587,4 @@ struct type_details_retriever < tree::PrefixRankedBarPattern < SymbolType > > { extern template class tree::PrefixRankedBarPattern < >; extern template class registration::DenormalizationRegisterImpl < const tree::PrefixRankedBarPattern < > & >; +extern template class registration::NormalizationRegisterImpl < const tree::PrefixRankedBarPattern < > & >; diff --git a/alib2data/src/tree/ranked/PrefixRankedBarTree.cpp b/alib2data/src/tree/ranked/PrefixRankedBarTree.cpp index 77f932bae5..6c34da2135 100644 --- a/alib2data/src/tree/ranked/PrefixRankedBarTree.cpp +++ b/alib2data/src/tree/ranked/PrefixRankedBarTree.cpp @@ -6,6 +6,7 @@ template class tree::PrefixRankedBarTree < >; template class registration::DenormalizationRegisterImpl < const tree::PrefixRankedBarTree < > & >; +template class registration::NormalizationRegisterImpl < tree::PrefixRankedBarTree < > >; namespace { diff --git a/alib2data/src/tree/ranked/PrefixRankedBarTree.h b/alib2data/src/tree/ranked/PrefixRankedBarTree.h index 6fcf409927..16192dd441 100644 --- a/alib2data/src/tree/ranked/PrefixRankedBarTree.h +++ b/alib2data/src/tree/ranked/PrefixRankedBarTree.h @@ -54,6 +54,7 @@ class PrefixRankedBarTree; #include "RankedTree.h" #include <registration/DenormalizationRegistration.hpp> +#include <registration/NormalizationRegistration.hpp> namespace tree { @@ -451,3 +452,4 @@ struct type_details_retriever < tree::PrefixRankedBarTree < SymbolType > > { extern template class tree::PrefixRankedBarTree < >; extern template class registration::DenormalizationRegisterImpl < const tree::PrefixRankedBarTree < > & >; +extern template class registration::NormalizationRegisterImpl < tree::PrefixRankedBarTree < > >; diff --git a/alib2data/src/tree/ranked/PrefixRankedExtendedPattern.cpp b/alib2data/src/tree/ranked/PrefixRankedExtendedPattern.cpp index b2f3827408..158fd0ce1a 100644 --- a/alib2data/src/tree/ranked/PrefixRankedExtendedPattern.cpp +++ b/alib2data/src/tree/ranked/PrefixRankedExtendedPattern.cpp @@ -6,6 +6,7 @@ template class tree::PrefixRankedExtendedPattern < >; template class registration::DenormalizationRegisterImpl < const tree::PrefixRankedExtendedPattern < > & >; +template class registration::NormalizationRegisterImpl < tree::PrefixRankedExtendedPattern < > >; namespace { diff --git a/alib2data/src/tree/ranked/PrefixRankedExtendedPattern.h b/alib2data/src/tree/ranked/PrefixRankedExtendedPattern.h index 701fdaa10b..b6c874d12c 100644 --- a/alib2data/src/tree/ranked/PrefixRankedExtendedPattern.h +++ b/alib2data/src/tree/ranked/PrefixRankedExtendedPattern.h @@ -53,6 +53,7 @@ class PrefixRankedExtendedPattern; #include "PrefixRankedPattern.h" #include <registration/DenormalizationRegistration.hpp> +#include <registration/NormalizationRegistration.hpp> namespace tree { @@ -496,3 +497,4 @@ struct type_details_retriever < tree::PrefixRankedExtendedPattern < SymbolType > extern template class tree::PrefixRankedExtendedPattern < >; extern template class registration::DenormalizationRegisterImpl < const tree::PrefixRankedExtendedPattern < > & >; +extern template class registration::NormalizationRegisterImpl < tree::PrefixRankedExtendedPattern < > >; diff --git a/alib2data/src/tree/ranked/PrefixRankedNonlinearPattern.cpp b/alib2data/src/tree/ranked/PrefixRankedNonlinearPattern.cpp index 45e4d2f16b..6a84f61717 100644 --- a/alib2data/src/tree/ranked/PrefixRankedNonlinearPattern.cpp +++ b/alib2data/src/tree/ranked/PrefixRankedNonlinearPattern.cpp @@ -6,6 +6,7 @@ template class tree::PrefixRankedNonlinearPattern < >; template class registration::DenormalizationRegisterImpl < const tree::PrefixRankedNonlinearPattern < > & >; +template class registration::NormalizationRegisterImpl < tree::PrefixRankedNonlinearPattern < > >; namespace { diff --git a/alib2data/src/tree/ranked/PrefixRankedNonlinearPattern.h b/alib2data/src/tree/ranked/PrefixRankedNonlinearPattern.h index 1d86404ca1..0e94954899 100644 --- a/alib2data/src/tree/ranked/PrefixRankedNonlinearPattern.h +++ b/alib2data/src/tree/ranked/PrefixRankedNonlinearPattern.h @@ -58,6 +58,7 @@ class PrefixRankedNonlinearPattern; #include "RankedNonlinearPattern.h" #include <registration/DenormalizationRegistration.hpp> +#include <registration/NormalizationRegistration.hpp> namespace tree { @@ -543,3 +544,4 @@ struct type_details_retriever < tree::PrefixRankedNonlinearPattern < SymbolType extern template class tree::PrefixRankedNonlinearPattern < >; extern template class registration::DenormalizationRegisterImpl < const tree::PrefixRankedNonlinearPattern < > & >; +extern template class registration::NormalizationRegisterImpl < tree::PrefixRankedNonlinearPattern < > >; diff --git a/alib2data/src/tree/ranked/PrefixRankedPattern.cpp b/alib2data/src/tree/ranked/PrefixRankedPattern.cpp index c2ca0d6cd4..b0ab4fea25 100644 --- a/alib2data/src/tree/ranked/PrefixRankedPattern.cpp +++ b/alib2data/src/tree/ranked/PrefixRankedPattern.cpp @@ -6,6 +6,7 @@ template class tree::PrefixRankedPattern < >; template class registration::DenormalizationRegisterImpl < const tree::PrefixRankedPattern < > & >; +template class registration::NormalizationRegisterImpl < tree::PrefixRankedPattern < > >; namespace { diff --git a/alib2data/src/tree/ranked/PrefixRankedPattern.h b/alib2data/src/tree/ranked/PrefixRankedPattern.h index c625e774e8..3cd038d470 100644 --- a/alib2data/src/tree/ranked/PrefixRankedPattern.h +++ b/alib2data/src/tree/ranked/PrefixRankedPattern.h @@ -55,6 +55,7 @@ class PrefixRankedPattern; #include "PrefixRankedTree.h" #include <registration/DenormalizationRegistration.hpp> +#include <registration/NormalizationRegistration.hpp> namespace tree { @@ -419,3 +420,4 @@ struct type_details_retriever < tree::PrefixRankedPattern < SymbolType > > { extern template class tree::PrefixRankedPattern < >; extern template class registration::DenormalizationRegisterImpl < const tree::PrefixRankedPattern < > & >; +extern template class registration::NormalizationRegisterImpl < tree::PrefixRankedPattern < > >; diff --git a/alib2data/src/tree/ranked/PrefixRankedTree.cpp b/alib2data/src/tree/ranked/PrefixRankedTree.cpp index 35ef53a95a..972275888c 100644 --- a/alib2data/src/tree/ranked/PrefixRankedTree.cpp +++ b/alib2data/src/tree/ranked/PrefixRankedTree.cpp @@ -6,6 +6,7 @@ template class tree::PrefixRankedTree < >; template class registration::DenormalizationRegisterImpl < const tree::PrefixRankedTree < > & >; +template class registration::NormalizationRegisterImpl < tree::PrefixRankedTree < > >; namespace { diff --git a/alib2data/src/tree/ranked/PrefixRankedTree.h b/alib2data/src/tree/ranked/PrefixRankedTree.h index 534a308a8e..8b808e891e 100644 --- a/alib2data/src/tree/ranked/PrefixRankedTree.h +++ b/alib2data/src/tree/ranked/PrefixRankedTree.h @@ -51,6 +51,7 @@ class PrefixRankedTree; #include "RankedTree.h" #include <registration/DenormalizationRegistration.hpp> +#include <registration/NormalizationRegistration.hpp> namespace tree { @@ -357,3 +358,4 @@ struct type_details_retriever < tree::PrefixRankedTree < SymbolType > > { extern template class tree::PrefixRankedTree < >; extern template class registration::DenormalizationRegisterImpl < const tree::PrefixRankedTree < > & >; +extern template class registration::NormalizationRegisterImpl < tree::PrefixRankedTree < > >; diff --git a/alib2data/src/tree/ranked/RankedExtendedPattern.cpp b/alib2data/src/tree/ranked/RankedExtendedPattern.cpp index 855cd34dd8..88e4cd3311 100644 --- a/alib2data/src/tree/ranked/RankedExtendedPattern.cpp +++ b/alib2data/src/tree/ranked/RankedExtendedPattern.cpp @@ -6,6 +6,7 @@ template class tree::RankedExtendedPattern < >; template class registration::DenormalizationRegisterImpl < const tree::RankedExtendedPattern < > & >; +template class registration::NormalizationRegisterImpl < tree::RankedExtendedPattern < > >; namespace { diff --git a/alib2data/src/tree/ranked/RankedExtendedPattern.h b/alib2data/src/tree/ranked/RankedExtendedPattern.h index a12926f6ab..b3dc94cf9e 100644 --- a/alib2data/src/tree/ranked/RankedExtendedPattern.h +++ b/alib2data/src/tree/ranked/RankedExtendedPattern.h @@ -51,6 +51,7 @@ class RankedExtendedPattern; #include "RankedPattern.h" #include <registration/DenormalizationRegistration.hpp> +#include <registration/NormalizationRegistration.hpp> namespace tree { @@ -492,3 +493,4 @@ struct type_details_retriever < tree::RankedExtendedPattern < SymbolType > > { extern template class tree::RankedExtendedPattern < >; extern template class registration::DenormalizationRegisterImpl < const tree::RankedExtendedPattern < > & >; +extern template class registration::NormalizationRegisterImpl < tree::RankedExtendedPattern < > >; diff --git a/alib2data/src/tree/ranked/RankedNonlinearPattern.cpp b/alib2data/src/tree/ranked/RankedNonlinearPattern.cpp index bc9c496693..7705bc4219 100644 --- a/alib2data/src/tree/ranked/RankedNonlinearPattern.cpp +++ b/alib2data/src/tree/ranked/RankedNonlinearPattern.cpp @@ -6,6 +6,7 @@ template class tree::RankedNonlinearPattern < >; template class registration::DenormalizationRegisterImpl < const tree::RankedNonlinearPattern < > & >; +template class registration::NormalizationRegisterImpl < tree::RankedNonlinearPattern < > >; namespace { diff --git a/alib2data/src/tree/ranked/RankedNonlinearPattern.h b/alib2data/src/tree/ranked/RankedNonlinearPattern.h index 75a9e302ef..d9585e38d9 100644 --- a/alib2data/src/tree/ranked/RankedNonlinearPattern.h +++ b/alib2data/src/tree/ranked/RankedNonlinearPattern.h @@ -51,6 +51,7 @@ class RankedNonlinearPattern; #include "../unranked/UnrankedNonlinearPattern.h" #include <registration/DenormalizationRegistration.hpp> +#include <registration/NormalizationRegistration.hpp> namespace tree { @@ -501,3 +502,4 @@ struct type_details_retriever < tree::RankedNonlinearPattern < SymbolType > > { extern template class tree::RankedNonlinearPattern < >; extern template class registration::DenormalizationRegisterImpl < const tree::RankedNonlinearPattern < > & >; +extern template class registration::NormalizationRegisterImpl < tree::RankedNonlinearPattern < > >; diff --git a/alib2data/src/tree/ranked/RankedPattern.cpp b/alib2data/src/tree/ranked/RankedPattern.cpp index c5466776b1..30b1eac420 100644 --- a/alib2data/src/tree/ranked/RankedPattern.cpp +++ b/alib2data/src/tree/ranked/RankedPattern.cpp @@ -6,6 +6,7 @@ template class tree::RankedPattern < >; template class registration::DenormalizationRegisterImpl < const tree::RankedPattern < > & >; +template class registration::NormalizationRegisterImpl < tree::RankedPattern < > >; namespace { diff --git a/alib2data/src/tree/ranked/RankedPattern.h b/alib2data/src/tree/ranked/RankedPattern.h index 5dec0dc4cd..8c73a689f8 100644 --- a/alib2data/src/tree/ranked/RankedPattern.h +++ b/alib2data/src/tree/ranked/RankedPattern.h @@ -51,6 +51,7 @@ class RankedPattern; #include "../unranked/UnrankedPattern.h" #include <registration/DenormalizationRegistration.hpp> +#include <registration/NormalizationRegistration.hpp> namespace tree { @@ -413,3 +414,4 @@ struct type_details_retriever < tree::RankedPattern < SymbolType > > { extern template class tree::RankedPattern < >; extern template class registration::DenormalizationRegisterImpl < const tree::RankedPattern < > & >; +extern template class registration::NormalizationRegisterImpl < tree::RankedPattern < > >; diff --git a/alib2data/src/tree/ranked/RankedTree.cpp b/alib2data/src/tree/ranked/RankedTree.cpp index eb33245b07..9bc4c9c036 100644 --- a/alib2data/src/tree/ranked/RankedTree.cpp +++ b/alib2data/src/tree/ranked/RankedTree.cpp @@ -6,6 +6,7 @@ template class tree::RankedTree < >; template class registration::DenormalizationRegisterImpl < const tree::RankedTree < > & >; +template class registration::NormalizationRegisterImpl < tree::RankedTree < > >; namespace { diff --git a/alib2data/src/tree/ranked/RankedTree.h b/alib2data/src/tree/ranked/RankedTree.h index 9931ce51a6..17a490326c 100644 --- a/alib2data/src/tree/ranked/RankedTree.h +++ b/alib2data/src/tree/ranked/RankedTree.h @@ -53,6 +53,7 @@ class RankedTree; #include "PrefixRankedTree.h" #include <registration/DenormalizationRegistration.hpp> +#include <registration/NormalizationRegistration.hpp> namespace tree { @@ -379,3 +380,4 @@ struct type_details_retriever < tree::RankedTree < SymbolType > > { extern template class tree::RankedTree < >; extern template class registration::DenormalizationRegisterImpl < const tree::RankedTree < > & >; +extern template class registration::NormalizationRegisterImpl < tree::RankedTree < > >; diff --git a/alib2data/src/tree/ranked/UnorderedRankedPattern.cpp b/alib2data/src/tree/ranked/UnorderedRankedPattern.cpp index 36e9b78023..c346d716be 100644 --- a/alib2data/src/tree/ranked/UnorderedRankedPattern.cpp +++ b/alib2data/src/tree/ranked/UnorderedRankedPattern.cpp @@ -6,6 +6,7 @@ template class tree::UnorderedRankedPattern < >; template class registration::DenormalizationRegisterImpl < const tree::UnorderedRankedPattern < > & >; +template class registration::NormalizationRegisterImpl < tree::UnorderedRankedPattern < > >; namespace { diff --git a/alib2data/src/tree/ranked/UnorderedRankedPattern.h b/alib2data/src/tree/ranked/UnorderedRankedPattern.h index 7c2d496220..43f7af707b 100644 --- a/alib2data/src/tree/ranked/UnorderedRankedPattern.h +++ b/alib2data/src/tree/ranked/UnorderedRankedPattern.h @@ -51,6 +51,7 @@ class UnorderedRankedPattern; #include <tree/ranked/RankedPattern.h> #include <registration/DenormalizationRegistration.hpp> +#include <registration/NormalizationRegistration.hpp> namespace tree { @@ -413,3 +414,4 @@ struct type_details_retriever < tree::UnorderedRankedPattern < SymbolType > > { extern template class tree::UnorderedRankedPattern < >; extern template class registration::DenormalizationRegisterImpl < const tree::UnorderedRankedPattern < > & >; +extern template class registration::NormalizationRegisterImpl < tree::UnorderedRankedPattern < > >; diff --git a/alib2data/src/tree/ranked/UnorderedRankedTree.cpp b/alib2data/src/tree/ranked/UnorderedRankedTree.cpp index 2b933c70b5..7e7e99dc4d 100644 --- a/alib2data/src/tree/ranked/UnorderedRankedTree.cpp +++ b/alib2data/src/tree/ranked/UnorderedRankedTree.cpp @@ -6,6 +6,7 @@ template class tree::UnorderedRankedTree < >; template class registration::DenormalizationRegisterImpl < const tree::UnorderedRankedTree < > & >; +template class registration::NormalizationRegisterImpl < tree::UnorderedRankedTree < > >; namespace { diff --git a/alib2data/src/tree/ranked/UnorderedRankedTree.h b/alib2data/src/tree/ranked/UnorderedRankedTree.h index 0d528cef80..3ad7f1b7d5 100644 --- a/alib2data/src/tree/ranked/UnorderedRankedTree.h +++ b/alib2data/src/tree/ranked/UnorderedRankedTree.h @@ -51,6 +51,7 @@ class UnorderedRankedTree; #include <tree/ranked/RankedTree.h> #include <registration/DenormalizationRegistration.hpp> +#include <registration/NormalizationRegistration.hpp> namespace tree { @@ -355,3 +356,4 @@ struct type_details_retriever < tree::UnorderedRankedTree < SymbolType > > { extern template class tree::UnorderedRankedTree < >; extern template class registration::DenormalizationRegisterImpl < const tree::UnorderedRankedTree < > & >; +extern template class registration::NormalizationRegisterImpl < tree::UnorderedRankedTree < > >; diff --git a/alib2data/src/tree/unranked/PrefixBarTree.cpp b/alib2data/src/tree/unranked/PrefixBarTree.cpp index 006011dca4..33441d39f4 100644 --- a/alib2data/src/tree/unranked/PrefixBarTree.cpp +++ b/alib2data/src/tree/unranked/PrefixBarTree.cpp @@ -6,6 +6,7 @@ template class tree::PrefixBarTree < >; template class registration::DenormalizationRegisterImpl < const tree::PrefixBarTree < > & >; +template class registration::NormalizationRegisterImpl < tree::PrefixBarTree < > >; namespace { diff --git a/alib2data/src/tree/unranked/PrefixBarTree.h b/alib2data/src/tree/unranked/PrefixBarTree.h index 1b23b1bd51..ad336ca3be 100644 --- a/alib2data/src/tree/unranked/PrefixBarTree.h +++ b/alib2data/src/tree/unranked/PrefixBarTree.h @@ -54,6 +54,7 @@ class PrefixBarTree; #include <string/LinearString.h> #include <registration/DenormalizationRegistration.hpp> +#include <registration/NormalizationRegistration.hpp> namespace tree { @@ -422,3 +423,4 @@ struct type_details_retriever < tree::PrefixBarTree < SymbolType > > { extern template class tree::PrefixBarTree < >; extern template class registration::DenormalizationRegisterImpl < const tree::PrefixBarTree < > & >; +extern template class registration::NormalizationRegisterImpl < tree::PrefixBarTree < > >; diff --git a/alib2data/src/tree/unranked/UnorderedUnrankedPattern.cpp b/alib2data/src/tree/unranked/UnorderedUnrankedPattern.cpp index 70e153f5b1..517329a4a2 100644 --- a/alib2data/src/tree/unranked/UnorderedUnrankedPattern.cpp +++ b/alib2data/src/tree/unranked/UnorderedUnrankedPattern.cpp @@ -6,6 +6,7 @@ template class tree::UnorderedUnrankedPattern < >; template class registration::DenormalizationRegisterImpl < const tree::UnorderedUnrankedPattern < > & >; +template class registration::NormalizationRegisterImpl < tree::UnorderedUnrankedPattern < > >; namespace { diff --git a/alib2data/src/tree/unranked/UnorderedUnrankedPattern.h b/alib2data/src/tree/unranked/UnorderedUnrankedPattern.h index c45d162057..7e0fc4c14a 100644 --- a/alib2data/src/tree/unranked/UnorderedUnrankedPattern.h +++ b/alib2data/src/tree/unranked/UnorderedUnrankedPattern.h @@ -50,6 +50,7 @@ class UnorderedUnrankedPattern; #include "UnrankedPattern.h" #include <registration/DenormalizationRegistration.hpp> +#include <registration/NormalizationRegistration.hpp> namespace tree { @@ -443,3 +444,4 @@ struct type_details_retriever < tree::UnorderedUnrankedPattern < SymbolType > > extern template class tree::UnorderedUnrankedPattern < >; extern template class registration::DenormalizationRegisterImpl < const tree::UnorderedUnrankedPattern < > & >; +extern template class registration::NormalizationRegisterImpl < tree::UnorderedUnrankedPattern < > >; diff --git a/alib2data/src/tree/unranked/UnorderedUnrankedTree.cpp b/alib2data/src/tree/unranked/UnorderedUnrankedTree.cpp index 8bc384ed4e..d02c031e8e 100644 --- a/alib2data/src/tree/unranked/UnorderedUnrankedTree.cpp +++ b/alib2data/src/tree/unranked/UnorderedUnrankedTree.cpp @@ -6,6 +6,7 @@ template class tree::UnorderedUnrankedTree < >; template class registration::DenormalizationRegisterImpl < const tree::UnorderedUnrankedTree < > & >; +template class registration::NormalizationRegisterImpl < tree::UnorderedUnrankedTree < > >; namespace { diff --git a/alib2data/src/tree/unranked/UnorderedUnrankedTree.h b/alib2data/src/tree/unranked/UnorderedUnrankedTree.h index d838cd104a..216359a43a 100644 --- a/alib2data/src/tree/unranked/UnorderedUnrankedTree.h +++ b/alib2data/src/tree/unranked/UnorderedUnrankedTree.h @@ -50,6 +50,7 @@ class UnorderedUnrankedTree; #include "UnrankedTree.h" #include <registration/DenormalizationRegistration.hpp> +#include <registration/NormalizationRegistration.hpp> namespace tree { @@ -334,3 +335,4 @@ struct type_details_retriever < tree::UnorderedUnrankedTree < SymbolType > > { extern template class tree::UnorderedUnrankedTree < >; extern template class registration::DenormalizationRegisterImpl < const tree::UnorderedUnrankedTree < > & >; +extern template class registration::NormalizationRegisterImpl < tree::UnorderedUnrankedTree < > >; diff --git a/alib2data/src/tree/unranked/UnrankedExtendedPattern.cpp b/alib2data/src/tree/unranked/UnrankedExtendedPattern.cpp index 1ffe74d6f4..e4220e36eb 100644 --- a/alib2data/src/tree/unranked/UnrankedExtendedPattern.cpp +++ b/alib2data/src/tree/unranked/UnrankedExtendedPattern.cpp @@ -6,6 +6,7 @@ template class tree::UnrankedExtendedPattern < >; template class registration::DenormalizationRegisterImpl < const tree::UnrankedExtendedPattern < > & >; +template class registration::NormalizationRegisterImpl < tree::UnrankedExtendedPattern < > >; namespace { diff --git a/alib2data/src/tree/unranked/UnrankedExtendedPattern.h b/alib2data/src/tree/unranked/UnrankedExtendedPattern.h index b320cfd10a..42877dbf18 100644 --- a/alib2data/src/tree/unranked/UnrankedExtendedPattern.h +++ b/alib2data/src/tree/unranked/UnrankedExtendedPattern.h @@ -52,6 +52,7 @@ class UnrankedExtendedPattern; #include <alphabet/NodeWildcard.h> #include <registration/DenormalizationRegistration.hpp> +#include <registration/NormalizationRegistration.hpp> namespace tree { @@ -505,3 +506,4 @@ struct type_details_retriever < tree::UnrankedExtendedPattern < SymbolType > > { extern template class tree::UnrankedExtendedPattern < >; extern template class registration::DenormalizationRegisterImpl < const tree::UnrankedExtendedPattern < > & >; +extern template class registration::NormalizationRegisterImpl < tree::UnrankedExtendedPattern < > >; diff --git a/alib2data/src/tree/unranked/UnrankedNonlinearPattern.cpp b/alib2data/src/tree/unranked/UnrankedNonlinearPattern.cpp index 357cf6e32c..a25c2dc701 100644 --- a/alib2data/src/tree/unranked/UnrankedNonlinearPattern.cpp +++ b/alib2data/src/tree/unranked/UnrankedNonlinearPattern.cpp @@ -6,6 +6,7 @@ template class tree::UnrankedNonlinearPattern < >; template class registration::DenormalizationRegisterImpl < const tree::UnrankedNonlinearPattern < > & >; +template class registration::NormalizationRegisterImpl < tree::UnrankedNonlinearPattern < > >; namespace { diff --git a/alib2data/src/tree/unranked/UnrankedNonlinearPattern.h b/alib2data/src/tree/unranked/UnrankedNonlinearPattern.h index 13565c7c41..6270b45d2d 100644 --- a/alib2data/src/tree/unranked/UnrankedNonlinearPattern.h +++ b/alib2data/src/tree/unranked/UnrankedNonlinearPattern.h @@ -51,6 +51,7 @@ class UnrankedNonlinearPattern; #include <alphabet/Gap.h> #include <registration/DenormalizationRegistration.hpp> +#include <registration/NormalizationRegistration.hpp> namespace tree { @@ -533,3 +534,4 @@ struct type_details_retriever < tree::UnrankedNonlinearPattern < SymbolType > > extern template class tree::UnrankedNonlinearPattern < >; extern template class registration::DenormalizationRegisterImpl < const tree::UnrankedNonlinearPattern < > & >; +extern template class registration::NormalizationRegisterImpl < tree::UnrankedNonlinearPattern < > >; diff --git a/alib2data/src/tree/unranked/UnrankedPattern.cpp b/alib2data/src/tree/unranked/UnrankedPattern.cpp index d071f2b374..f6307138f6 100644 --- a/alib2data/src/tree/unranked/UnrankedPattern.cpp +++ b/alib2data/src/tree/unranked/UnrankedPattern.cpp @@ -6,6 +6,7 @@ template class tree::UnrankedPattern < >; template class registration::DenormalizationRegisterImpl < const tree::UnrankedPattern < > & >; +template class registration::NormalizationRegisterImpl < tree::UnrankedPattern < > >; namespace { diff --git a/alib2data/src/tree/unranked/UnrankedPattern.h b/alib2data/src/tree/unranked/UnrankedPattern.h index 491d30d384..412587936a 100644 --- a/alib2data/src/tree/unranked/UnrankedPattern.h +++ b/alib2data/src/tree/unranked/UnrankedPattern.h @@ -51,6 +51,7 @@ class UnrankedPattern; #include <alphabet/Gap.h> #include <registration/DenormalizationRegistration.hpp> +#include <registration/NormalizationRegistration.hpp> namespace tree { @@ -446,3 +447,4 @@ struct type_details_retriever < tree::UnrankedPattern < SymbolType > > { extern template class tree::UnrankedPattern < >; extern template class registration::DenormalizationRegisterImpl < const tree::UnrankedPattern < > & >; +extern template class registration::NormalizationRegisterImpl < tree::UnrankedPattern < > >; diff --git a/alib2data/src/tree/unranked/UnrankedTree.cpp b/alib2data/src/tree/unranked/UnrankedTree.cpp index c3cd676f8b..f3026c41fd 100644 --- a/alib2data/src/tree/unranked/UnrankedTree.cpp +++ b/alib2data/src/tree/unranked/UnrankedTree.cpp @@ -6,6 +6,7 @@ template class tree::UnrankedTree < >; template class registration::DenormalizationRegisterImpl < const tree::UnrankedTree < > & >; +template class registration::NormalizationRegisterImpl < tree::UnrankedTree < > >; namespace { diff --git a/alib2data/src/tree/unranked/UnrankedTree.h b/alib2data/src/tree/unranked/UnrankedTree.h index ef5d01aa80..d2618dff99 100644 --- a/alib2data/src/tree/unranked/UnrankedTree.h +++ b/alib2data/src/tree/unranked/UnrankedTree.h @@ -50,6 +50,7 @@ class UnrankedTree; #include "../ranked/RankedTree.h" #include <registration/DenormalizationRegistration.hpp> +#include <registration/NormalizationRegistration.hpp> namespace tree { @@ -334,3 +335,4 @@ struct type_details_retriever < tree::UnrankedTree < SymbolType > > { extern template class tree::UnrankedTree < >; extern template class registration::DenormalizationRegisterImpl < const tree::UnrankedTree < > & >; +extern template class registration::NormalizationRegisterImpl < tree::UnrankedTree < > >; -- GitLab