Canola
0.8.D001
|
#include <method.h>
Public Types | |
typedef boost::shared_ptr < lexer_functor_method > | pointer |
typedef void(calculator::* | method_ptr_t )(void) |
Public Member Functions | |
virtual | ~lexer_functor_method () |
void | do_it (const location::pointer &where) |
Static Public Member Functions | |
static pointer | create (calculator &subject, method_ptr_t method) |
Private Member Functions | |
lexer_functor_method (calculator &subject, method_ptr_t method) | |
lexer_functor_method () | |
lexer_functor_method (const lexer_functor_method &rhs) | |
lexer_functor_method & | operator= (const lexer_functor_method &rhs) |
Private Attributes | |
calculator & | subject |
method_ptr_t | method |
The lexer_functor_method class is used to represent the processing necessary to call an arbitrarty method of the calculator in response to a keyword being observed in the lexer.
typedef void(calculator::* lexer_functor_method::method_ptr_t)(void) |
typedef boost::shared_ptr<lexer_functor_method> lexer_functor_method::pointer |
Reimplemented from lexer_functor.
lexer_functor_method::~lexer_functor_method | ( | ) | [virtual] |
lexer_functor_method::lexer_functor_method | ( | calculator & | subject, |
method_ptr_t | method | ||
) | [private] |
lexer_functor_method::lexer_functor_method | ( | ) | [private] |
The default constructor. Do not use.
lexer_functor_method::lexer_functor_method | ( | const lexer_functor_method & | rhs | ) | [private] |
The copy constructor. Do not use.
rhs | The right hand side of the initialization. |
lexer_functor_method::pointer lexer_functor_method::create | ( | calculator & | subject, |
method_ptr_t | method | ||
) | [static] |
void lexer_functor_method::do_it | ( | const location::pointer & | where | ) | [virtual] |
The do_it method is provided by each derived class, to actually perform the actions of the functor.
Implements lexer_functor.
lexer_functor_method& lexer_functor_method::operator= | ( | const lexer_functor_method & | rhs | ) | [private] |
The assignment operator. Do not use.
rhs | The right hand side of the assignment. |
method_ptr_t lexer_functor_method::method [private] |
calculator& lexer_functor_method::subject [private] |