mutable
A Database System for Research and Fast Prototyping
Loading...
Searching...
No Matches
Public Types | Public Member Functions
m::detail::visitor_method_helper< ConcreteVisitor, Base, Class, Classes > Struct Template Reference

This helper class creates a single definition of virtual void operator()(...) for one subtype in a class hierarchy, and then recursively inherits from an instantiation of that same helper class for the next subtype in the hierarchy. More...

#include <Visitor.hpp>

Public Types

using super = visitor_method_helper< ConcreteVisitor, Base, Classes... >
 
template<typename T >
using Const = typename super::template Const< T >
 

Public Member Functions

virtual void operator() (Const< Class > &)
 

Detailed Description

template<typename ConcreteVisitor, typename Base, typename Class, typename... Classes>
struct m::detail::visitor_method_helper< ConcreteVisitor, Base, Class, Classes >

This helper class creates a single definition of virtual void operator()(...) for one subtype in a class hierarchy, and then recursively inherits from an instantiation of that same helper class for the next subtype in the hierarchy.

Eventually, this class transitively inherits from

Template Parameters
ConcreteVisitor.

Definition at line 59 of file Visitor.hpp.

Member Typedef Documentation

◆ Const

template<typename ConcreteVisitor , typename Base , typename Class , typename... Classes>
template<typename T >
using m::detail::visitor_method_helper< ConcreteVisitor, Base, Class, Classes >::Const = typename super::template Const<T>

Definition at line 62 of file Visitor.hpp.

◆ super

template<typename ConcreteVisitor , typename Base , typename Class , typename... Classes>
using m::detail::visitor_method_helper< ConcreteVisitor, Base, Class, Classes >::super = visitor_method_helper<ConcreteVisitor, Base, Classes...>

Definition at line 61 of file Visitor.hpp.

Member Function Documentation

◆ operator()()

template<typename ConcreteVisitor , typename Base , typename Class , typename... Classes>
virtual void m::detail::visitor_method_helper< ConcreteVisitor, Base, Class, Classes >::operator() ( Const< Class > &  )
inlinevirtual

Definition at line 64 of file Visitor.hpp.


The documentation for this struct was generated from the following file: