Canola
0.8.D001
|
#include <stateful.h>
Public Member Functions | |
virtual | ~interpose_stateful () |
Static Public Member Functions | |
static pointer | create (const interpose::pointer &deeper, bool jumper=false) |
Protected Member Functions | |
void | on_opcode (opcode_t op, const location::pointer &where) |
void | on_error_v (const char *fmt, va_list ap) |
bool | strict_memory_number_checking_required (void) const |
Private Member Functions | |
interpose_stateful (const interpose::pointer &deeper, bool jumper) | |
interpose_stateful () | |
interpose_stateful (const interpose_stateful &) | |
interpose_stateful & | operator= (const interpose_stateful &) |
Private Attributes | |
pointer | deeper |
bool | jumper |
pointer | diversion |
The interpose_stateful class is used to represent the processing to translate a stateful key stream into a stateless key stream.
Definition at line 27 of file stateful.h.
interpose_stateful::~interpose_stateful | ( | ) | [virtual] |
The destructor.
Definition at line 26 of file stateful.cc.
interpose_stateful::interpose_stateful | ( | const interpose::pointer & | deeper, |
bool | jumper | ||
) | [private] |
The constructor.
deeper | Where to send the stateless key stream. |
jumper | whether or not to treat "UJ" statefully to become opcode_extended_goto. |
Definition at line 31 of file stateful.cc.
interpose_stateful::interpose_stateful | ( | ) | [private] |
The default constructor. Do not use.
interpose_stateful::interpose_stateful | ( | const interpose_stateful & | ) | [private] |
The copy constructor. Do not use.
interpose::pointer interpose_stateful::create | ( | const interpose::pointer & | deeper, |
bool | jumper = false |
||
) | [static] |
The create class method is used to create new dynamically allocated instances of this class.
deeper | Where to send the stateless key stream. |
jumper | whether or not to treat "UJ" statefully to become opcode_extended_goto. |
Definition at line 40 of file stateful.cc.
void interpose_stateful::on_error_v | ( | const char * | fmt, |
va_list | ap | ||
) | [protected, virtual] |
The on_error_v method is used to report errors processing the key stream.
fmt | The format of the error. This controls the numer and types of the following arguments. |
ap | The following arguments. |
Implements interpose.
Definition at line 341 of file stateful.cc.
void interpose_stateful::on_opcode | ( | opcode_t | op, |
const location::pointer & | where | ||
) | [protected, virtual] |
The on_opcode method is used to process keys that have a corresponding opcode.
op | The opcode (usually a key stroke) of interest |
where | The source file location, or NULL if not available. |
Implements interpose.
Definition at line 47 of file stateful.cc.
interpose_stateful& interpose_stateful::operator= | ( | const interpose_stateful & | ) | [private] |
The assignment operator. Do not use.
bool interpose_stateful::strict_memory_number_checking_required | ( | void | ) | const [protected, virtual] |
The strict_memory_number_checking_required method is used to determine whether or not the number keys following M3~ keys (et al) must be followed by a digit key (true) or any key (false). The actual 1614P silently permits any key, and uses only the lower 4 bits.
Implements interpose.
Definition at line 348 of file stateful.cc.
pointer interpose_stateful::deeper [private] |
The deeper instance variable is used to remember where to send the stateless key stream.
Definition at line 75 of file stateful.h.
pointer interpose_stateful::diversion [private] |
The diversion instance variable is used to remember where to send the stateless key stream, when multiple keys need to be folded into one virtual key.
Definition at line 88 of file stateful.h.
bool interpose_stateful::jumper [private] |
The jumper instance variuable is used to remember whether or not to treat "UJ" statefully to become opcode_extended_goto.
Definition at line 81 of file stateful.h.