CBMC
cover_instrumenterst Class Reference

A collection of instrumenters to be run. More...

#include <cover_instrument.h>

+ Collaboration diagram for cover_instrumenterst:

Public Member Functions

void add_from_criterion (coverage_criteriont, const symbol_table_baset &, const goal_filterst &)
 Create and add an instrumenter based on the given criterion. More...
 
void operator() (const irep_idt &function_id, goto_programt &goto_program, const cover_blocks_baset &basic_blocks, const cover_instrumenter_baset::assertion_factoryt &make_assertion) const
 Applies all instrumenters to the given goto program. More...
 

Private Attributes

std::vector< std::unique_ptr< cover_instrumenter_baset > > instrumenters
 

Detailed Description

A collection of instrumenters to be run.

Definition at line 102 of file cover_instrument.h.

Member Function Documentation

◆ add_from_criterion()

void cover_instrumenterst::add_from_criterion ( coverage_criteriont  criterion,
const symbol_table_baset symbol_table,
const goal_filterst goal_filters 
)

Create and add an instrumenter based on the given criterion.

Parameters
criterionthe coverage criterion
symbol_tablethe symbol table
goal_filtersgoal filters to discard certain goals

Definition at line 59 of file cover.cpp.

◆ operator()()

void cover_instrumenterst::operator() ( const irep_idt function_id,
goto_programt goto_program,
const cover_blocks_baset basic_blocks,
const cover_instrumenter_baset::assertion_factoryt make_assertion 
) const
inline

Applies all instrumenters to the given goto program.

Parameters
function_idname of goto_program
goto_programa goto program
basic_blocksdetected basic blocks of the goto program
make_assertionA function which makes goto program assertions. This parameter may be used to customise the expressions asserted.

Definition at line 116 of file cover_instrument.h.

Member Data Documentation

◆ instrumenters

std::vector<std::unique_ptr<cover_instrumenter_baset> > cover_instrumenterst::instrumenters
private

Definition at line 127 of file cover_instrument.h.


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