Logo  0.95.0-final
Finite Element Embedded Library and Language in C++
Feel++ Feel++ on Github Feel++ community
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
visitor.hpp File Reference
#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.

Classes

class  Feel::Visitor< T, R >
 
class  Feel::VisitorBase
 The base class of any Acyclic Visitor. More...
 
class  Feel::VisitorBaseImpl< TList, R >
 Implements non-strict visitation (you can implement only part of the Visit functions) More...
 
class  Feel::VisitorCyclic< R, TList >
 

Namespaces

 Feel
 [marker1]
 

Macros

#define FEELPP__DEFINE_CYCLIC_VISITABLE(SomeVisitor)
 
#define FEELPP_DEFINE_VISITABLE()
 

Detailed Description

Macro Definition Documentation

#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>


Generated on Sun Dec 22 2013 13:11:16 for Feel++ by doxygen 1.8.5