#include <boost/mpl/assert.hpp>
#include <boost/mpl/list.hpp>
#include <boost/mpl/front.hpp>
#include <boost/mpl/pop_front.hpp>
#include <feel/feelcore/feel.hpp>
Go to the source code of this file.
#define FEELPP__DEFINE_CYCLIC_VISITABLE |
( |
|
SomeVisitor | ) |
|
Value:virtual SomeVisitor::return_type Accept(SomeVisitor& guest) \
{ \
return guest.genericVisit(*this); \
} \
virtual SomeVisitor::return_type Accept(SomeVisitor* guest) \
{ \
return guest->genericVisit(*this); \
}
#define FEELPP_DEFINE_VISITABLE |
( |
| ) |
|
Value:virtual return_type accept( VisitorBase& guest ) \
{ \
return this->acceptImpl( this, &guest ); \
} \
virtual return_type accept( VisitorBase* guest ) \
{ \
return this->acceptImpl( this, guest ); \
}
Put it in every class that you want to make visitable (in addition to deriving it from VisitableBase<R>