CBMC
validate_goto_model.h
Go to the documentation of this file.
1
/*******************************************************************\
2
Module: Validate Goto Programs
3
4
Author: Diffblue
5
6
Date: Oct 2018
7
8
\*******************************************************************/
9
10
#ifndef CPROVER_GOTO_PROGRAMS_VALIDATE_GOTO_MODEL_H
11
#define CPROVER_GOTO_PROGRAMS_VALIDATE_GOTO_MODEL_H
12
13
#include <
util/validation_mode.h
>
14
15
class
goto_model_validation_optionst
final
16
{
17
public
:
18
// this check is disabled by default (not all goto programs
19
// have an entry point)
20
bool
entry_point_exists
=
false
;
21
bool
check_returns_removed
=
true
;
22
23
private
:
24
void
set_all_flags
(
bool
options_value)
25
{
26
entry_point_exists
= options_value;
27
check_returns_removed
= options_value;
28
}
29
30
public
:
31
goto_model_validation_optionst
() =
default
;
32
33
enum class
set_optionst
34
{
35
all_true
,
36
all_false
37
};
38
39
explicit
goto_model_validation_optionst
(
set_optionst
flag_option)
40
{
41
switch
(flag_option)
42
{
43
case
set_optionst::all_true
:
44
set_all_flags
(
true
);
45
break
;
46
case
set_optionst::all_false
:
47
set_all_flags
(
false
);
48
break
;
49
}
50
}
51
};
52
53
class
goto_functionst
;
54
55
void
validate_goto_model
(
56
const
goto_functionst
&goto_functions,
57
const
validation_modet
vm,
58
const
goto_model_validation_optionst
validation_options);
59
60
#endif
// CPROVER_GOTO_PROGRAMS_VALIDATE_GOTO_MODEL_H
goto_functionst
A collection of goto functions.
Definition:
goto_functions.h:25
goto_model_validation_optionst
Definition:
validate_goto_model.h:16
goto_model_validation_optionst::set_optionst
set_optionst
Definition:
validate_goto_model.h:34
goto_model_validation_optionst::set_optionst::all_false
@ all_false
goto_model_validation_optionst::set_optionst::all_true
@ all_true
goto_model_validation_optionst::goto_model_validation_optionst
goto_model_validation_optionst(set_optionst flag_option)
Definition:
validate_goto_model.h:39
goto_model_validation_optionst::goto_model_validation_optionst
goto_model_validation_optionst()=default
goto_model_validation_optionst::check_returns_removed
bool check_returns_removed
Definition:
validate_goto_model.h:21
goto_model_validation_optionst::set_all_flags
void set_all_flags(bool options_value)
Definition:
validate_goto_model.h:24
goto_model_validation_optionst::entry_point_exists
bool entry_point_exists
Definition:
validate_goto_model.h:20
validate_goto_model
void validate_goto_model(const goto_functionst &goto_functions, const validation_modet vm, const goto_model_validation_optionst validation_options)
Definition:
validate_goto_model.cpp:128
validation_mode.h
validation_modet
validation_modet
Definition:
validation_mode.h:13
src
goto-programs
validate_goto_model.h
Generated by
1.9.1