Defines interface for classes that may need to get cloned. More...
#include <cassert>#include <iostream>#include <memory>#include <typeinfo>#include <type_traits>#include "error.hpp"#include "global.hpp"Go to the source code of this file.
Classes | |
| class | FST::Clonable |
| Abstract class, defines interface for classes that may need to get cloned. More... | |
| class | FST::Clonable_Impl< Derived, Base, DEEP_KIND, SHARING_KIND, STATELESS_KIND > |
| CRTP mixin implementing the Clonable protocol for a concrete class. More... | |
Namespaces | |
| namespace | FST |
| The Feature Selection Toolbox 4 library: every library component – data access, criteria and classifiers, search algorithms, result trackers and the global infrastructure – lives in this namespace. | |
Enumerations | |
| enum | FST::CloneKind { FST::CLONE_INHERIT , FST::CLONE_THROW , FST::CLONE_DEEP , FST::CLONE_WEAK , FST::CLONE_WEAK_SHARING , FST::CLONE_TO_STATELESS } |
| How a Clonable_Impl slot (clone/sharing_clone/stateless_clone) is implemented. More... | |
Functions | |
| std::ostream & | FST::operator<< (std::ostream &os, const Clonable &cl) |
Streams a clonable object's print() to os. | |
| template<class T> | |
| std::unique_ptr< T > | FST::clone_unique (const T &src) |
| template<class T> | |
| std::unique_ptr< T > | FST::sharing_clone_unique (const T &src) |
| sharing_clone() counterpart of clone_unique() – see its comment above. | |
| template<class T> | |
| std::unique_ptr< T > | FST::stateless_clone_unique (const T &src) |
| stateless_clone() counterpart of clone_unique() – see its comment above. | |
Defines interface for classes that may need to get cloned.
======================================================================