#include <visitordispatcher.hpp>
Public Member Functions | |
| template<class TOOLImpl> | |
| void | enroll (TOOLImpl *typeref) |
| ReturnType | forwardCall (TAR &target, TOOL &tool) |
Static Public Attributes | |
|
static Singleton< Dispatcher < TAR, TOOL > > | instance |
| storage for the dispatcher table(s) | |
Private Types | |
| typedef TOOL::ReturnType | ReturnType |
| typedef ReturnType(* | Trampoline )(TAR &, TOOL &) |
Private Member Functions | |
| void | accomodate (size_t index) |
| bool | is_known (size_t id) |
| Trampoline | storedTrampoline (size_t id) |
| void | storePtr (size_t id, Trampoline func) |
Static Private Member Functions | |
| template<class TOOLImpl> | |
| static ReturnType | callTrampoline (TAR &obj, TOOL &tool) |
| generator for Trampoline functions, used to dispatch calls down to the right "treat"-Function on the correct concrete tool implementation class | |
| static ReturnType | errorHandler (TAR &target, TOOL &tool) |
Private Attributes | |
| std::vector< Trampoline > | table_ |
| VTable for storing the Trampoline pointers. | |
Definition at line 108 of file visitordispatcher.hpp.
1.5.5