cprover
Toggle main menu visibility
Loading...
Searching...
No Matches
goto_diff.h
Go to the documentation of this file.
1
/*******************************************************************\
2
3
Module: GOTO-DIFF Base Class
4
5
Author: Peter Schrammel
6
7
\*******************************************************************/
8
11
12
#ifndef CPROVER_GOTO_DIFF_GOTO_DIFF_H
13
#define CPROVER_GOTO_DIFF_GOTO_DIFF_H
14
15
#include <
util/ui_message.h
>
16
17
#include <iosfwd>
18
#include <set>
19
20
class
goto_modelt
;
21
class
json_arrayt
;
22
class
json_objectt
;
23
class
optionst
;
24
25
class
goto_difft
26
{
27
public
:
28
goto_difft
(
29
const
goto_modelt
&_goto_model1,
30
const
goto_modelt
&_goto_model2,
31
const
optionst
&_options,
32
ui_message_handlert
&_message_handler)
33
:
message_handler
(_message_handler),
34
goto_model1
(_goto_model1),
35
goto_model2
(_goto_model2),
36
options
(_options),
37
total_functions_count
(0)
38
{
39
}
40
41
virtual
~goto_difft
() =
default
;
42
43
virtual
bool
operator()
()=0;
44
45
virtual
void
output_functions
()
const
;
46
47
protected
:
48
ui_message_handlert
&
message_handler
;
49
const
goto_modelt
&
goto_model1
;
50
const
goto_modelt
&
goto_model2
;
51
const
optionst
&
options
;
52
53
unsigned
total_functions_count
;
54
std::set<irep_idt>
new_functions
,
modified_functions
,
deleted_functions
;
55
56
void
output_function_group
(
57
const
std::string &group_name,
58
const
std::set<irep_idt> &function_group,
59
const
goto_modelt
&goto_model)
const
;
60
void
output_function
(
61
const
irep_idt
&function_name,
62
const
goto_modelt
&goto_model)
const
;
63
64
void
convert_function_group_json
(
65
json_arrayt
&result,
66
const
std::set<irep_idt> &function_group,
67
const
goto_modelt
&goto_model)
const
;
68
void
convert_function_json
(
69
json_objectt
&result,
70
const
irep_idt
&function_name,
71
const
goto_modelt
&goto_model)
const
;
72
};
73
74
#endif
// CPROVER_GOTO_DIFF_GOTO_DIFF_H
goto_difft::options
const optionst & options
Definition
goto_diff.h:51
goto_difft::~goto_difft
virtual ~goto_difft()=default
goto_difft::output_function
void output_function(const irep_idt &function_name, const goto_modelt &goto_model) const
Output function information in plain text format.
Definition
goto_diff_base.cpp:83
goto_difft::modified_functions
std::set< irep_idt > modified_functions
Definition
goto_diff.h:54
goto_difft::convert_function_group_json
void convert_function_group_json(json_arrayt &result, const std::set< irep_idt > &function_group, const goto_modelt &goto_model) const
Convert a function group to JSON.
Definition
goto_diff_base.cpp:120
goto_difft::goto_model1
const goto_modelt & goto_model1
Definition
goto_diff.h:49
goto_difft::output_functions
virtual void output_functions() const
Output diff result.
Definition
goto_diff_base.cpp:21
goto_difft::convert_function_json
void convert_function_json(json_objectt &result, const irep_idt &function_name, const goto_modelt &goto_model) const
Convert function information to JSON.
Definition
goto_diff_base.cpp:136
goto_difft::new_functions
std::set< irep_idt > new_functions
Definition
goto_diff.h:54
goto_difft::output_function_group
void output_function_group(const std::string &group_name, const std::set< irep_idt > &function_group, const goto_modelt &goto_model) const
Output group of functions in plain text format.
Definition
goto_diff_base.cpp:68
goto_difft::goto_difft
goto_difft(const goto_modelt &_goto_model1, const goto_modelt &_goto_model2, const optionst &_options, ui_message_handlert &_message_handler)
Definition
goto_diff.h:28
goto_difft::total_functions_count
unsigned total_functions_count
Definition
goto_diff.h:53
goto_difft::operator()
virtual bool operator()()=0
goto_difft::deleted_functions
std::set< irep_idt > deleted_functions
Definition
goto_diff.h:54
goto_difft::goto_model2
const goto_modelt & goto_model2
Definition
goto_diff.h:50
goto_difft::message_handler
ui_message_handlert & message_handler
Definition
goto_diff.h:48
goto_modelt
Definition
goto_model.h:27
json_arrayt
Definition
json.h:165
json_objectt
Definition
json.h:298
optionst
Definition
options.h:23
ui_message_handlert
Definition
ui_message.h:22
ui_message.h
irep_idt
dstringt irep_idt
Definition
verification_result.h:16
goto-diff
goto_diff.h
Generated by
1.17.0