Visitor< Types > Struct Template Reference
|
CPP API
|
mio::Visitor< Types > Struct Template Reference
A generic visitor inspired by Fedor Pikus. More...
Detailed Description
template<typename... Types>
struct mio::Visitor< Types >
A generic visitor inspired by Fedor Pikus.
Fedor Pikus: "C++ Design Patterns: from C++03 to C++17", CppCon 2019
Derived class must implement the visit function for all Types that are connected with the visitor.
Example usage:
using PetVisitor = Visitor<class Dog, class Cat>;
struct PetMakeNoiseVisitor : public PetVisitor { void visit(Cat& c) { std::cout << "Miau" << std::endl; }
void visit(Dog& d) { std::cout << "Wooof" << std::endl; }
};
Generated by