cprover
goto_harness_parse_options.h
Go to the documentation of this file.
1
/******************************************************************\
2
3
Module: goto_harness_parse_options
4
5
Author: Diffblue Ltd.
6
7
\******************************************************************/
8
9
#ifndef CPROVER_GOTO_HARNESS_GOTO_HARNESS_PARSE_OPTIONS_H
10
#define CPROVER_GOTO_HARNESS_GOTO_HARNESS_PARSE_OPTIONS_H
11
12
#include <string>
13
14
#include <
goto-programs/goto_model.h
>
15
#include <
util/parse_options.h
>
16
#include <
util/ui_message.h
>
17
18
#include "
function_harness_generator_options.h
"
19
#include "
goto_harness_generator_factory.h
"
20
#include "
memory_snapshot_harness_generator_options.h
"
21
22
// clang-format off
23
#define GOTO_HARNESS_OPTIONS \
24
"(version)" \
25
GOTO_HARNESS_FACTORY_OPTIONS \
26
COMMON_HARNESS_GENERATOR_OPTIONS \
27
FUNCTION_HARNESS_GENERATOR_OPTIONS \
28
MEMORY_SNAPSHOT_HARNESS_GENERATOR_OPTIONS \
29
// end GOTO_HARNESS_OPTIONS
30
31
// clang-format on
32
33
class
goto_harness_parse_optionst
:
public
parse_options_baset
34
{
35
public
:
36
int
doit
()
override
;
37
void
help
()
override
;
38
39
goto_harness_parse_optionst
(
int
argc,
const
char
*argv[]);
40
41
private
:
42
struct
goto_harness_configt
43
{
44
std::string
in_file
;
45
std::string
out_file
;
46
std::string
harness_type
;
47
irep_idt
harness_function_name
;
48
};
49
52
goto_harness_configt
handle_common_options
();
53
56
goto_harness_generator_factoryt::generator_optionst
57
collect_generate_factory_options
();
58
61
goto_harness_generator_factoryt
make_factory
();
62
};
63
64
#endif // CPROVER_GOTO_HARNESS_GOTO_HARNESS_PARSE_OPTIONS_H
dstringt
dstringt has one field, an unsigned integer no which is an index into a static table of strings.
Definition:
dstring.h:37
goto_harness_parse_optionst::goto_harness_configt::in_file
std::string in_file
Definition:
goto_harness_parse_options.h:44
parse_options_baset
Definition:
parse_options.h:20
goto_harness_parse_optionst::goto_harness_parse_optionst
goto_harness_parse_optionst(int argc, const char *argv[])
Definition:
goto_harness_parse_options.cpp:187
goto_harness_generator_factory.h
goto_model.h
Symbol Table + CFG.
memory_snapshot_harness_generator_options.h
function_harness_generator_options.h
goto_harness_parse_optionst::collect_generate_factory_options
goto_harness_generator_factoryt::generator_optionst collect_generate_factory_options()
Gather all the options that are not handled by handle_common_options().
Definition:
goto_harness_parse_options.cpp:254
goto_harness_generator_factoryt::generator_optionst
std::map< std::string, std::list< std::string > > generator_optionst
Definition:
goto_harness_generator_factory.h:38
goto_harness_parse_optionst
Definition:
goto_harness_parse_options.h:34
goto_harness_generator_factoryt
helper to select harness type by name.
Definition:
goto_harness_generator_factory.h:32
goto_harness_parse_optionst::goto_harness_configt
Definition:
goto_harness_parse_options.h:43
parse_options.h
goto_harness_parse_optionst::help
void help() override
Definition:
goto_harness_parse_options.cpp:161
goto_harness_parse_optionst::make_factory
goto_harness_generator_factoryt make_factory()
Setup the generator factory.
Definition:
goto_harness_parse_options.cpp:237
goto_harness_parse_optionst::handle_common_options
goto_harness_configt handle_common_options()
Handle command line arguments that are common to all harness generators.
Definition:
goto_harness_parse_options.cpp:198
goto_harness_parse_optionst::doit
int doit() override
Definition:
goto_harness_parse_options.cpp:96
goto_harness_parse_optionst::goto_harness_configt::out_file
std::string out_file
Definition:
goto_harness_parse_options.h:45
goto_harness_parse_optionst::goto_harness_configt::harness_function_name
irep_idt harness_function_name
Definition:
goto_harness_parse_options.h:47
ui_message.h
goto_harness_parse_optionst::goto_harness_configt::harness_type
std::string harness_type
Definition:
goto_harness_parse_options.h:46
goto-harness
goto_harness_parse_options.h
Generated by
1.8.20