CBMC
function_assigns.h
Go to the documentation of this file.
1 /*******************************************************************\
2 
3 Module: Compute objects assigned to in a function
4 
5 Author: Daniel Kroening, kroening@kroening.com
6 
7 \*******************************************************************/
8 
11 
12 #ifndef CPROVER_GOTO_INSTRUMENT_FUNCTION_ASSIGNS_H
13 #define CPROVER_GOTO_INSTRUMENT_FUNCTION_ASSIGNS_H
14 
16 
17 #include <map>
18 
19 class goto_functionst;
20 class local_may_aliast;
21 
23 {
24 public:
25  explicit function_assignst(const goto_functionst &_goto_functions)
26  : goto_functions(_goto_functions)
27  {
28  }
29 
30  typedef std::set<exprt> assignst;
31 
32  void get_assigns(
33  const local_may_aliast &local_may_alias,
35  assignst &);
36 
37  void get_assigns_function(const exprt &, assignst &);
38 
39  void operator()(const exprt &function, assignst &assigns)
40  {
41  get_assigns_function(function, assigns);
42  }
43 
44 protected:
46 
47  typedef std::map<irep_idt, assignst> function_mapt;
49 };
50 
51 #endif // CPROVER_GOTO_INSTRUMENT_FUNCTION_ASSIGNS_H
Base class for all expressions.
Definition: expr.h:56
void operator()(const exprt &function, assignst &assigns)
void get_assigns(const local_may_aliast &local_may_alias, const goto_programt::const_targett, assignst &)
function_assignst(const goto_functionst &_goto_functions)
function_mapt function_map
const goto_functionst & goto_functions
std::set< exprt > assignst
std::map< irep_idt, assignst > function_mapt
void get_assigns_function(const exprt &, assignst &)
A collection of goto functions.
instructionst::const_iterator const_targett
Definition: goto_program.h:615
Concrete Goto Program.