|
Code Listener
[unstable] git snapshot
|
C++ interface for listener objects. More...
#include <cl.hh>

C++ interface for listener objects.
It can be wrapped to struct cl_code_listener object when exposing to pure C world.
listener object - the core part of this interface
* It accepts a context-free language defined by substitution to regex:
*
* (file_open FILE_CONTENT file_close)* acknowledge destroy
*
*
* FILE_CONTENT is defined by substitution to regex:
*
* fnc_open (fnc_arg_decl)* FNC_BODY fnc_close
*
*
* FNC_BODY is defined by substitution to regex:
*
* FNC_ENTRY (bb_open (NONTERM_INSN)* TERM_INSN)*
*
*
* FNC_ENTRY is defined as:
*
* insn{CL_INSN_JMP}
*
*
* NON_TERM_INSN is defined as:
*
* INSN_CALL | insn{CL_INSN_UNOP, CL_INSN_BINOP}
*
*
* TERM_INSN is defined as:
*
* insn{CL_INSN_JMP, CL_INSN_COND, CL_INSN_RET, CL_INSN_ABORT} | INSN_SWITCH
*
*
* INSN_CALL is defined by regex:
*
* insn_call_open (insn_call_arg)* insn_call_close
*
*
* INSN_SWITCH is defined by regex:
*
* insn_switch_open (insn_switch_case)* insn_switch_close
*
*
|
inlinevirtual |
|
pure virtual |
See cl_code_listener::acknowledge.
Implemented in ClFilterBase, and ClStorageBuilder.
Referenced by ClFilterBase::acknowledge().
|
pure virtual |
See cl_code_listener::bb_open.
Implemented in ClFilterBase, and ClStorageBuilder.
Referenced by ClFilterBase::bb_open().
|
pure virtual |
See cl_code_listener::file_close.
Implemented in ClStorageBuilder, and ClFilterBase.
Referenced by ClFilterBase::file_close().
|
pure virtual |
See cl_code_listener::file_open.
Implemented in ClStorageBuilder, ClFilterBase, and ClfOpCheckerBase.
Referenced by ClFilterBase::file_open().
|
pure virtual |
See cl_code_listener::fnc_arg_decl.
Implemented in ClFilterBase, ClStorageBuilder, and ClfOpCheckerBase.
Referenced by ClFilterBase::fnc_arg_decl().
|
pure virtual |
See cl_code_listener::fnc_close.
Implemented in ClFilterBase, and ClStorageBuilder.
Referenced by ClFilterBase::fnc_close().
|
pure virtual |
See cl_code_listener::fnc_open.
Implemented in ClFilterBase, ClStorageBuilder, and ClfOpCheckerBase.
Referenced by ClFilterBase::fnc_open().
|
pure virtual |
Implemented in ClFilterBase, ClStorageBuilder, and ClfOpCheckerBase.
Referenced by ClFilterBase::insn().
|
pure virtual |
See cl_code_listener::insn_call_arg.
Implemented in ClfOpCheckerBase, ClFilterBase, and ClStorageBuilder.
Referenced by ClFilterBase::insn_call_arg().
|
pure virtual |
See cl_code_listener::insn_call_close.
Implemented in ClFilterBase, and ClStorageBuilder.
Referenced by ClFilterBase::insn_call_close().
|
pure virtual |
See cl_code_listener::insn_call_open.
Implemented in ClfOpCheckerBase, ClFilterBase, and ClStorageBuilder.
Referenced by ClFilterBase::insn_call_open().
|
pure virtual |
See cl_code_listener::insn_switch_case.
Implemented in ClFilterBase, and ClStorageBuilder.
Referenced by ClFilterBase::insn_switch_case().
|
pure virtual |
See cl_code_listener::insn_switch_close.
Implemented in ClFilterBase, and ClStorageBuilder.
Referenced by ClFilterBase::insn_switch_close().
|
pure virtual |
See cl_code_listener::insn_switch_open.
Implemented in ClfOpCheckerBase, ClFilterBase, and ClStorageBuilder.
Referenced by ClFilterBase::insn_switch_open().
1.8.4