Leosac
0.8.0
Open Source Access Control
|
Go to the source code of this file.
Classes | |
class | Leosac::Tools::IVisitable |
Base class to make an object visitable. More... | |
Namespaces | |
Leosac | |
This is the header file for a generated source file, GitSHA1.cpp. | |
Leosac::Tools | |
Macros | |
#define | MAKE_VISITABLE() |
Provide the object calling this macro in its definition with an accept() method that will accept BaseVisitor client. More... | |
#define | MAKE_VISITABLE_FALLBACK(PARENT_CLASS) |
Similar to the MAKE_VISITABLE() macro, with 1 major difference. More... | |
#define MAKE_VISITABLE | ( | ) |
Provide the object calling this macro in its definition with an accept()
method that will accept BaseVisitor
client.
Those visitors will be dispatched accordingly by the visitor_dispatch()
static method.
Definition at line 85 of file IVisitable.hpp.
#define MAKE_VISITABLE_FALLBACK | ( | PARENT_CLASS | ) |
Similar to the MAKE_VISITABLE() macro, with 1 major difference.
If the visitor object is not able to visit an object of type (*this), then this->accept() will call PARENT_CLASS->accept() to try again.
This allows to us to visit an object mid hierarchy instead of having to handle each concrete implementation.
Definition at line 104 of file IVisitable.hpp.