cprover
trivial_functions_filtert Class Reference

Filters out trivial functions. More...

#include <cover_filter.h>

+ Inheritance diagram for trivial_functions_filtert:
+ Collaboration diagram for trivial_functions_filtert:

Public Member Functions

 trivial_functions_filtert (message_handlert &message_handler)
 
bool operator() (const symbolt &identifier, const goto_functionst::goto_functiont &goto_function) const override
 Call a goto_program non-trivial if it has: More...
 
- Public Member Functions inherited from function_filter_baset
 function_filter_baset (message_handlert &message_handler)
 
virtual ~function_filter_baset ()
 
virtual void report_anomalies () const
 Can be called after final filter application to report on unexpected situations encountered. More...
 
- Public Member Functions inherited from messaget
virtual void set_message_handler (message_handlert &_message_handler)
 
message_handlertget_message_handler ()
 
 messaget ()
 
 messaget (const messaget &other)
 
messagetoperator= (const messaget &other)
 
 messaget (message_handlert &_message_handler)
 
virtual ~messaget ()
 
mstreamtget_mstream (unsigned message_level) const
 
mstreamterror () const
 
mstreamtwarning () const
 
mstreamtresult () const
 
mstreamtstatus () const
 
mstreamtstatistics () const
 
mstreamtprogress () const
 
mstreamtdebug () const
 
void conditional_output (mstreamt &mstream, const std::function< void(mstreamt &)> &output_generator) const
 Generate output to message_stream using output_generator if the configured verbosity is at least as high as that of message_stream. More...
 

Additional Inherited Members

- Public Types inherited from messaget
enum  message_levelt {
  M_ERROR =1, M_WARNING =2, M_RESULT =4, M_STATUS =6,
  M_STATISTICS =8, M_PROGRESS =9, M_DEBUG =10
}
 
- Static Public Member Functions inherited from messaget
static unsigned eval_verbosity (const std::string &user_input, const message_levelt default_verbosity, message_handlert &dest)
 Parse a (user-)provided string as a verbosity level and set it as the verbosity of dest. More...
 
static commandt command (unsigned c)
 Create an ECMA-48 SGR (Select Graphic Rendition) command. More...
 
- Static Public Attributes inherited from messaget
static eomt eom
 
static const commandt reset
 return to default formatting, as defined by the terminal More...
 
static const commandt red
 render text with red foreground color More...
 
static const commandt green
 render text with green foreground color More...
 
static const commandt yellow
 render text with yellow foreground color More...
 
static const commandt blue
 render text with blue foreground color More...
 
static const commandt magenta
 render text with magenta foreground color More...
 
static const commandt cyan
 render text with cyan foreground color More...
 
static const commandt bright_red
 render text with bright red foreground color More...
 
static const commandt bright_green
 render text with bright green foreground color More...
 
static const commandt bright_yellow
 render text with bright yellow foreground color More...
 
static const commandt bright_blue
 render text with bright blue foreground color More...
 
static const commandt bright_magenta
 render text with bright magenta foreground color More...
 
static const commandt bright_cyan
 render text with bright cyan foreground color More...
 
static const commandt bold
 render text with bold font More...
 
static const commandt faint
 render text with faint font More...
 
static const commandt italic
 render italic text More...
 
static const commandt underline
 render underlined text More...
 
- Protected Attributes inherited from messaget
message_handlertmessage_handler
 
mstreamt mstream
 

Detailed Description

Filters out trivial functions.

Definition at line 216 of file cover_filter.h.

Constructor & Destructor Documentation

◆ trivial_functions_filtert()

trivial_functions_filtert::trivial_functions_filtert ( message_handlert message_handler)
inlineexplicit

Definition at line 219 of file cover_filter.h.

Member Function Documentation

◆ operator()()

bool trivial_functions_filtert::operator() ( const symbolt function,
const goto_functionst::goto_functiont goto_function 
) const
overridevirtual

Call a goto_program non-trivial if it has:

  • Any declarations
  • At least 2 branches
  • At least 5 assignments These criteria are arbitrarily chosen.
    Parameters
    functionfunction symbol for function corresponding to goto_function
    goto_functiona goto function
    Returns
    returns true if non-trivial

Implements function_filter_baset.

Definition at line 99 of file cover_filter.cpp.


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