From f0d157cf1b88a7020213333230d9678c19a79e81 Mon Sep 17 00:00:00 2001 From: Jan Travnicek <Jan.Travnicek@fit.cvut.cz> Date: Wed, 30 Jan 2019 08:39:20 +0100 Subject: [PATCH] make base Entry classes public --- alib2abstraction/src/registry/AlgorithmRegistry.hpp | 2 ++ alib2abstraction/src/registry/CastRegistry.hpp | 2 ++ alib2abstraction/src/registry/ContainerRegistry.hpp | 2 ++ alib2abstraction/src/registry/ImmediateRegistry.hpp | 2 ++ alib2abstraction/src/registry/NormalizeRegistry.hpp | 2 ++ alib2abstraction/src/registry/ValuePrinterRegistry.hpp | 2 ++ alib2raw/src/registry/RawReaderRegistry.hpp | 2 ++ alib2raw/src/registry/RawWriterRegistry.hpp | 2 ++ alib2str/src/registry/StringWriterRegistry.hpp | 2 ++ alib2xml/src/core/xmlApi.hpp | 5 ++++- alib2xml/src/registry/XmlComposerRegistry.hpp | 2 ++ alib2xml/src/registry/XmlContainerParserRegistry.hpp | 2 ++ alib2xml/src/registry/XmlParserRegistry.hpp | 2 ++ 13 files changed, 28 insertions(+), 1 deletion(-) diff --git a/alib2abstraction/src/registry/AlgorithmRegistry.hpp b/alib2abstraction/src/registry/AlgorithmRegistry.hpp index 2d696ecd14..f7983e2b85 100644 --- a/alib2abstraction/src/registry/AlgorithmRegistry.hpp +++ b/alib2abstraction/src/registry/AlgorithmRegistry.hpp @@ -28,6 +28,7 @@ namespace abstraction { class AlgorithmRegistry { +public: class Entry { public: virtual std::shared_ptr < abstraction::OperationAbstraction > getAbstraction ( ) const = 0; @@ -36,6 +37,7 @@ class AlgorithmRegistry { } }; +private: template < class ObjectType, class Return, class ... Params > class MemberImpl : public Entry { std::function < Return ( typename std::remove_reference < ObjectType >::type *, Params ... ) > m_callback; diff --git a/alib2abstraction/src/registry/CastRegistry.hpp b/alib2abstraction/src/registry/CastRegistry.hpp index 40bc9ccd60..0e2df9e9cf 100644 --- a/alib2abstraction/src/registry/CastRegistry.hpp +++ b/alib2abstraction/src/registry/CastRegistry.hpp @@ -21,6 +21,7 @@ namespace abstraction { class CastRegistry { +public: class Entry { public: virtual std::shared_ptr < abstraction::OperationAbstraction > getAbstraction ( ) const = 0; @@ -29,6 +30,7 @@ class CastRegistry { }; +private: template < class Return, class Param > class DefaultEntryImpl : public Entry { public: diff --git a/alib2abstraction/src/registry/ContainerRegistry.hpp b/alib2abstraction/src/registry/ContainerRegistry.hpp index b49fc5510d..d88509082a 100644 --- a/alib2abstraction/src/registry/ContainerRegistry.hpp +++ b/alib2abstraction/src/registry/ContainerRegistry.hpp @@ -22,6 +22,7 @@ namespace abstraction { class ContainerRegistry { +public: class Entry { public: virtual std::shared_ptr < abstraction::OperationAbstraction > getAbstraction ( ) const = 0; @@ -30,6 +31,7 @@ class ContainerRegistry { } }; +private: template < class Params > class SetEntryImpl : public Entry { public: diff --git a/alib2abstraction/src/registry/ImmediateRegistry.hpp b/alib2abstraction/src/registry/ImmediateRegistry.hpp index 63b0ab4f4e..49a2c54c22 100644 --- a/alib2abstraction/src/registry/ImmediateRegistry.hpp +++ b/alib2abstraction/src/registry/ImmediateRegistry.hpp @@ -19,6 +19,7 @@ namespace abstraction { class ImmediateRegistry { +public: class Entry { public: virtual std::shared_ptr < abstraction::OperationAbstraction > getAbstraction ( std::string value ) const = 0; @@ -27,6 +28,7 @@ class ImmediateRegistry { } }; +private: template < class Result > class EntryImpl : public Entry { public: diff --git a/alib2abstraction/src/registry/NormalizeRegistry.hpp b/alib2abstraction/src/registry/NormalizeRegistry.hpp index 782d357ed3..e4a6580caf 100644 --- a/alib2abstraction/src/registry/NormalizeRegistry.hpp +++ b/alib2abstraction/src/registry/NormalizeRegistry.hpp @@ -21,6 +21,7 @@ namespace abstraction { class NormalizeRegistry { +public: class Entry { public: virtual std::shared_ptr < abstraction::OperationAbstraction > getAbstraction ( ) const = 0; @@ -30,6 +31,7 @@ class NormalizeRegistry { }; +private: template < class Param > class EntryImpl : public Entry { public: diff --git a/alib2abstraction/src/registry/ValuePrinterRegistry.hpp b/alib2abstraction/src/registry/ValuePrinterRegistry.hpp index 56bce0bbcb..722c21ac43 100644 --- a/alib2abstraction/src/registry/ValuePrinterRegistry.hpp +++ b/alib2abstraction/src/registry/ValuePrinterRegistry.hpp @@ -18,6 +18,7 @@ namespace abstraction { class ValuePrinterRegistry { +public: class Entry { public: virtual std::shared_ptr < abstraction::OperationAbstraction > getAbstraction ( std::ostream & os ) const = 0; @@ -27,6 +28,7 @@ class ValuePrinterRegistry { }; +private: template < class Param > class EntryImpl : public Entry { public: diff --git a/alib2raw/src/registry/RawReaderRegistry.hpp b/alib2raw/src/registry/RawReaderRegistry.hpp index a02b9e5bb7..2b1f141c52 100644 --- a/alib2raw/src/registry/RawReaderRegistry.hpp +++ b/alib2raw/src/registry/RawReaderRegistry.hpp @@ -19,6 +19,7 @@ namespace abstraction { class RawReaderRegistry { +public: class Entry { public: virtual std::shared_ptr < abstraction::OperationAbstraction > getAbstraction ( ) const = 0; @@ -27,6 +28,7 @@ class RawReaderRegistry { } }; +private: template < class Return > class EntryImpl : public Entry { public: diff --git a/alib2raw/src/registry/RawWriterRegistry.hpp b/alib2raw/src/registry/RawWriterRegistry.hpp index 180a216ba9..5c5eae33cc 100644 --- a/alib2raw/src/registry/RawWriterRegistry.hpp +++ b/alib2raw/src/registry/RawWriterRegistry.hpp @@ -19,6 +19,7 @@ namespace abstraction { class RawWriterRegistry { +public: class Entry { public: virtual std::shared_ptr < abstraction::OperationAbstraction > getAbstraction ( ) const = 0; @@ -27,6 +28,7 @@ class RawWriterRegistry { } }; +private: template < class Param > class EntryImpl : public Entry { public: diff --git a/alib2str/src/registry/StringWriterRegistry.hpp b/alib2str/src/registry/StringWriterRegistry.hpp index 26e97e4e87..85b0757d7e 100644 --- a/alib2str/src/registry/StringWriterRegistry.hpp +++ b/alib2str/src/registry/StringWriterRegistry.hpp @@ -19,6 +19,7 @@ namespace abstraction { class StringWriterRegistry { +public: class Entry { public: virtual std::shared_ptr < abstraction::OperationAbstraction > getAbstraction ( ) const = 0; @@ -28,6 +29,7 @@ class StringWriterRegistry { }; +private: template < class Param > class EntryImpl : public Entry { public: diff --git a/alib2xml/src/core/xmlApi.hpp b/alib2xml/src/core/xmlApi.hpp index 637dd14c9a..08ee579c07 100644 --- a/alib2xml/src/core/xmlApi.hpp +++ b/alib2xml/src/core/xmlApi.hpp @@ -62,7 +62,7 @@ public: template < > struct xmlApi < object::Object > { -private: +public: class GroupParser { public: virtual object::Object parse ( ext::deque < sax::Token >::iterator & input ) = 0; @@ -70,6 +70,7 @@ private: virtual ~GroupParser ( ) noexcept = default; }; +private: static ext::map < std::string, std::unique_ptr < GroupParser > > & parseFunctions ( ); template < class Type > @@ -81,6 +82,7 @@ private: }; +public: class GroupComposer { public: virtual void compose ( ext::deque < sax::Token > & input, const object::Object & group ) = 0; @@ -88,6 +90,7 @@ private: virtual ~GroupComposer( ) noexcept = default; }; +private: static ext::map < std::string, std::unique_ptr < GroupComposer > > & composeFunctions ( ); template < class Type > diff --git a/alib2xml/src/registry/XmlComposerRegistry.hpp b/alib2xml/src/registry/XmlComposerRegistry.hpp index 6ca9c69777..562b7b3e8f 100644 --- a/alib2xml/src/registry/XmlComposerRegistry.hpp +++ b/alib2xml/src/registry/XmlComposerRegistry.hpp @@ -20,6 +20,7 @@ namespace abstraction { class XmlComposerRegistry { +public: class Entry { public: virtual std::shared_ptr < abstraction::OperationAbstraction > getAbstraction ( ) const = 0; @@ -28,6 +29,7 @@ class XmlComposerRegistry { } }; +private: template < class Param > class EntryImpl : public Entry { public: diff --git a/alib2xml/src/registry/XmlContainerParserRegistry.hpp b/alib2xml/src/registry/XmlContainerParserRegistry.hpp index 4bc2e54bf1..a97d897bed 100644 --- a/alib2xml/src/registry/XmlContainerParserRegistry.hpp +++ b/alib2xml/src/registry/XmlContainerParserRegistry.hpp @@ -22,6 +22,7 @@ namespace abstraction { class XmlContainerParserRegistry { +public: class Entry { public: virtual std::shared_ptr < abstraction::OperationAbstraction > getAbstraction ( ) const = 0; @@ -30,6 +31,7 @@ class XmlContainerParserRegistry { } }; +private: template < class Params > class SetEntryImpl : public Entry { public: diff --git a/alib2xml/src/registry/XmlParserRegistry.hpp b/alib2xml/src/registry/XmlParserRegistry.hpp index 22c470628a..3a8cb7b52b 100644 --- a/alib2xml/src/registry/XmlParserRegistry.hpp +++ b/alib2xml/src/registry/XmlParserRegistry.hpp @@ -19,6 +19,7 @@ namespace abstraction { class XmlParserRegistry { +public: class Entry { public: virtual std::shared_ptr < abstraction::OperationAbstraction > getAbstraction ( ) const = 0; @@ -27,6 +28,7 @@ class XmlParserRegistry { } }; +private: template < class Return > class EntryImpl : public Entry { public: -- GitLab