CBMC
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 <util/parse_options.h>
15 
19 
20 // clang-format off
21 #define GOTO_HARNESS_OPTIONS \
22  "(version)" \
23  GOTO_HARNESS_FACTORY_OPTIONS \
24  COMMON_HARNESS_GENERATOR_OPTIONS \
25  FUNCTION_HARNESS_GENERATOR_OPTIONS \
26  MEMORY_SNAPSHOT_HARNESS_GENERATOR_OPTIONS \
27 // end GOTO_HARNESS_OPTIONS
28 
29 // clang-format on
30 
32 {
33 public:
34  int doit() override;
35  void help() override;
36 
37  goto_harness_parse_optionst(int argc, const char *argv[]);
38 
39 private:
41  {
42  std::string in_file;
43  std::string out_file;
44  std::string harness_type;
46  };
47 
51 
56 
60 };
61 
62 #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:38
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().