cprover
Toggle main menu visibility
Loading...
Searching...
No Matches
goto_convert_functions.h
Go to the documentation of this file.
1
/*******************************************************************\
2
3
Module: Goto Programs with Functions
4
5
Author: Daniel Kroening
6
7
Date: June 2003
8
9
\*******************************************************************/
10
13
14
#ifndef CPROVER_GOTO_PROGRAMS_GOTO_CONVERT_FUNCTIONS_H
15
#define CPROVER_GOTO_PROGRAMS_GOTO_CONVERT_FUNCTIONS_H
16
17
#include "
goto_convert_class.h
"
18
19
#include <
goto-programs/goto_functions.h
>
20
21
class
goto_modelt
;
22
23
// convert it all!
24
void
goto_convert
(
25
symbol_table_baset
&
symbol_table
,
26
goto_functionst
&functions,
27
message_handlert
&);
28
29
// convert it all!
30
void
goto_convert
(
goto_modelt
&,
message_handlert
&);
31
32
// just convert a specific function
33
void
goto_convert
(
34
const
irep_idt
&identifier,
35
symbol_table_baset
&
symbol_table
,
36
goto_functionst
&functions,
37
message_handlert
&);
38
39
class
goto_convert_functionst
:
public
goto_convertt
40
{
41
public
:
42
void
goto_convert
(
goto_functionst
&functions);
43
void
convert_function
(
44
const
irep_idt
&identifier,
45
goto_functionst::goto_functiont
&
result
);
46
47
goto_convert_functionst
(
48
symbol_table_baset
&_symbol_table,
49
message_handlert
&_message_handler);
50
51
virtual
~goto_convert_functionst
();
52
53
protected
:
54
static
bool
hide
(
const
goto_programt
&);
55
56
//
57
// function calls
58
//
59
void
add_return
(
60
goto_functionst::goto_functiont
&,
61
const
typet
&return_type,
62
const
source_locationt
&);
63
};
64
65
#endif
// CPROVER_GOTO_PROGRAMS_GOTO_CONVERT_FUNCTIONS_H
goto_convert_functionst::goto_convert_functionst
goto_convert_functionst(symbol_table_baset &_symbol_table, message_handlert &_message_handler)
Definition
goto_convert_functions.cpp:20
goto_convert_functionst::add_return
void add_return(goto_functionst::goto_functiont &, const typet &return_type, const source_locationt &)
Definition
goto_convert_functions.cpp:86
goto_convert_functionst::goto_convert
void goto_convert(goto_functionst &functions)
Definition
goto_convert_functions.cpp:31
goto_convert_functionst::convert_function
void convert_function(const irep_idt &identifier, goto_functionst::goto_functiont &result)
Definition
goto_convert_functions.cpp:139
goto_convert_functionst::hide
static bool hide(const goto_programt &)
Definition
goto_convert_functions.cpp:72
goto_convert_functionst::~goto_convert_functionst
virtual ~goto_convert_functionst()
Definition
goto_convert_functions.cpp:27
goto_convertt::goto_convertt
goto_convertt(symbol_table_baset &_symbol_table, message_handlert &_message_handler)
Definition
goto_convert_class.h:39
goto_functionst
A collection of goto functions.
Definition
goto_functions.h:25
goto_functionst::goto_functiont
::goto_functiont goto_functiont
Definition
goto_functions.h:27
goto_modelt
Definition
goto_model.h:27
goto_modelt::symbol_table
symbol_tablet symbol_table
Symbol table.
Definition
goto_model.h:31
goto_programt
A generic container class for the GOTO intermediate representation of one function.
Definition
goto_program.h:72
message_handlert
Definition
message.h:27
messaget::result
mstreamt & result() const
Definition
message.h:401
source_locationt
Definition
source_location.h:20
symbol_table_baset
The symbol table base class interface.
Definition
symbol_table_base.h:23
typet
The type of an expression, extends irept.
Definition
type.h:29
goto_convert_class.h
Program Transformation.
goto_convert
void goto_convert(symbol_table_baset &symbol_table, goto_functionst &functions, message_handlert &)
Definition
goto_convert_functions.cpp:252
goto_functions.h
Goto Programs with Functions.
irep_idt
dstringt irep_idt
Definition
verification_result.h:16
ansi-c
goto-conversion
goto_convert_functions.h
Generated by
1.17.0