cprover
trivial_functions_filtert Class Reference

Filters out trivial functions. More...

#include <cover_filter.h>

Inheritance diagram for trivial_functions_filtert:
[legend]
Collaboration diagram for trivial_functions_filtert:
[legend]

Public Member Functions

 trivial_functions_filtert (message_handlert &message_handler)
 
bool operator() (const irep_idt &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 mstream using output_generator if the configured verbosity is at least as high as that of mstream. 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 mstreamteom (mstreamt &m)
 
static mstreamtendl (mstreamt &m)
 
- Protected Attributes inherited from messaget
message_handlertmessage_handler
 
mstreamt mstream
 

Detailed Description

Filters out trivial functions.

Definition at line 179 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 182 of file cover_filter.h.

Member Function Documentation

◆ operator()()

bool trivial_functions_filtert::operator() ( const irep_idt identifier,
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
    identifiera function name
    goto_functiona goto function
    Returns
    : returns true if non-trivial

Implements function_filter_baset.

Definition at line 66 of file cover_filter.cpp.

References forall_goto_program_instructions.


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