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 
15 #include <util/parse_options.h>
16 #include <util/ui_message.h>
17 
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 
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:
43  {
44  std::string in_file;
45  std::string out_file;
46  std::string harness_type;
48  };
49 
53 
58 
62 };
63 
64 #endif // CPROVER_GOTO_HARNESS_GOTO_HARNESS_PARSE_OPTIONS_H
dstringt has one field, an unsigned integer no which is an index into a static table of strings.
Definition: dstring.h:37
helper to select harness type by name.
std::map< std::string, std::list< std::string > > generator_optionst
goto_harness_configt handle_common_options()
Handle command line arguments that are common to all harness generators.
goto_harness_parse_optionst(int argc, const char *argv[])
goto_harness_generator_factoryt make_factory()
Setup the generator factory.
goto_harness_generator_factoryt::generator_optionst collect_generate_factory_options()
Gather all the options that are not handled by handle_common_options().
Symbol Table + CFG.