Code Listener  [unstable] git snapshot
Public Member Functions | Protected Member Functions | Private Attributes
ClFilterBase Class Reference

base class for all ICodeListener filters More...

#include <cl_filter.hh>

Inheritance diagram for ClFilterBase:
Inheritance graph
[legend]
Collaboration diagram for ClFilterBase:
Collaboration graph
[legend]

Public Member Functions

virtual ~ClFilterBase ()
 
virtual void file_open (const char *file_name)
 See cl_code_listener::file_open. More...
 
virtual void file_close ()
 See cl_code_listener::file_close. More...
 
virtual void fnc_open (const struct cl_operand *fnc)
 See cl_code_listener::fnc_open. More...
 
virtual void fnc_arg_decl (int arg_id, const struct cl_operand *arg_src)
 See cl_code_listener::fnc_arg_decl. More...
 
virtual void fnc_close ()
 See cl_code_listener::fnc_close. More...
 
virtual void bb_open (const char *bb_name)
 See cl_code_listener::bb_open. More...
 
virtual void insn (const struct cl_insn *cli)
 See cl_code_listener::insn. More...
 
virtual void insn_call_open (const struct cl_loc *loc, const struct cl_operand *dst, const struct cl_operand *fnc)
 See cl_code_listener::insn_call_open. More...
 
virtual void insn_call_arg (int arg_id, const struct cl_operand *arg_src)
 See cl_code_listener::insn_call_arg. More...
 
virtual void insn_call_close ()
 See cl_code_listener::insn_call_close. More...
 
virtual void insn_switch_open (const struct cl_loc *loc, const struct cl_operand *src)
 See cl_code_listener::insn_switch_open. More...
 
virtual void insn_switch_case (const struct cl_loc *loc, const struct cl_operand *val_lo, const struct cl_operand *val_hi, const char *label)
 See cl_code_listener::insn_switch_case. More...
 
virtual void insn_switch_close ()
 See cl_code_listener::insn_switch_close. More...
 
virtual void acknowledge ()
 See cl_code_listener::acknowledge. More...
 

Protected Member Functions

 ClFilterBase (ICodeListener *slave)
 

Private Attributes

ICodeListenerslave_
 

Detailed Description

base class for all ICodeListener filters

The class itself can't be instantiated. You always need to inherit the class. The only thing which has to be implemented in the derived class is a constructor, which calls the parent constructor with an instance of ICodeListener as the argument. All other methods which are not overridden will be forwarded to that instance of ICodeListener.

Note
design pattern filter

Definition at line 40 of file cl_filter.hh.

Constructor & Destructor Documentation

virtual ~ClFilterBase ( )
inlinevirtual
Attention
the slave ICodeListener will be deleted automatically on the object's destruction

Definition at line 46 of file cl_filter.hh.

References slave_.

ClFilterBase ( ICodeListener slave)
inlineprotected

Parameters
slaveAn instance of ICodeListener. All methods which are not overridden in the derived class will be forwarded to this instance.
Attention
the slave ICodeListener will be deleted automatically on the object's destruction

Definition at line 138 of file cl_filter.hh.

Member Function Documentation

virtual void acknowledge ( )
inlinevirtual

See cl_code_listener::acknowledge.

Implements ICodeListener.

Definition at line 128 of file cl_filter.hh.

References ICodeListener::acknowledge(), and slave_.

virtual void bb_open ( const char *  bb_name)
inlinevirtual

See cl_code_listener::bb_open.

Implements ICodeListener.

Definition at line 77 of file cl_filter.hh.

References ICodeListener::bb_open(), and slave_.

virtual void file_close ( )
inlinevirtual

See cl_code_listener::file_close.

Implements ICodeListener.

Definition at line 56 of file cl_filter.hh.

References ICodeListener::file_close(), and slave_.

virtual void file_open ( const char *  file_name)
inlinevirtual

See cl_code_listener::file_open.

Implements ICodeListener.

Reimplemented in ClfOpCheckerBase.

Definition at line 50 of file cl_filter.hh.

References ICodeListener::file_open(), and slave_.

Referenced by ClfOpCheckerBase::file_open().

virtual void fnc_arg_decl ( int  arg_id,
const struct cl_operand arg_src 
)
inlinevirtual

See cl_code_listener::fnc_arg_decl.

Implements ICodeListener.

Reimplemented in ClfOpCheckerBase.

Definition at line 66 of file cl_filter.hh.

References ICodeListener::fnc_arg_decl(), and slave_.

Referenced by ClfOpCheckerBase::fnc_arg_decl().

virtual void fnc_close ( )
inlinevirtual

See cl_code_listener::fnc_close.

Implements ICodeListener.

Definition at line 73 of file cl_filter.hh.

References ICodeListener::fnc_close(), and slave_.

virtual void fnc_open ( const struct cl_operand fnc)
inlinevirtual

See cl_code_listener::fnc_open.

Implements ICodeListener.

Reimplemented in ClfOpCheckerBase.

Definition at line 60 of file cl_filter.hh.

References ICodeListener::fnc_open(), and slave_.

Referenced by ClfOpCheckerBase::fnc_open().

virtual void insn ( const struct cl_insn cli)
inlinevirtual

See cl_code_listener::insn.

Implements ICodeListener.

Reimplemented in ClfOpCheckerBase.

Definition at line 83 of file cl_filter.hh.

References ICodeListener::insn(), and slave_.

Referenced by ClfOpCheckerBase::insn().

virtual void insn_call_arg ( int  arg_id,
const struct cl_operand arg_src 
)
inlinevirtual

See cl_code_listener::insn_call_arg.

Implements ICodeListener.

Reimplemented in ClfOpCheckerBase.

Definition at line 97 of file cl_filter.hh.

References ICodeListener::insn_call_arg(), and slave_.

Referenced by ClfOpCheckerBase::insn_call_arg().

virtual void insn_call_close ( )
inlinevirtual

See cl_code_listener::insn_call_close.

Implements ICodeListener.

Definition at line 104 of file cl_filter.hh.

References ICodeListener::insn_call_close(), and slave_.

virtual void insn_call_open ( const struct cl_loc loc,
const struct cl_operand dst,
const struct cl_operand fnc 
)
inlinevirtual

See cl_code_listener::insn_call_open.

Implements ICodeListener.

Reimplemented in ClfOpCheckerBase.

Definition at line 89 of file cl_filter.hh.

References ICodeListener::insn_call_open(), and slave_.

Referenced by ClfOpCheckerBase::insn_call_open().

virtual void insn_switch_case ( const struct cl_loc loc,
const struct cl_operand val_lo,
const struct cl_operand val_hi,
const char *  label 
)
inlinevirtual

See cl_code_listener::insn_switch_case.

Implements ICodeListener.

Definition at line 115 of file cl_filter.hh.

References ICodeListener::insn_switch_case(), and slave_.

virtual void insn_switch_close ( )
inlinevirtual

See cl_code_listener::insn_switch_close.

Implements ICodeListener.

Definition at line 124 of file cl_filter.hh.

References ICodeListener::insn_switch_close(), and slave_.

virtual void insn_switch_open ( const struct cl_loc loc,
const struct cl_operand src 
)
inlinevirtual

See cl_code_listener::insn_switch_open.

Implements ICodeListener.

Reimplemented in ClfOpCheckerBase.

Definition at line 108 of file cl_filter.hh.

References ICodeListener::insn_switch_open(), and slave_.

Referenced by ClfOpCheckerBase::insn_switch_open().

Field Documentation

ICodeListener* slave_
private

The documentation for this class was generated from the following file: