CBMC
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
goto_synthesizer_parse_options.h
Go to the documentation of this file.
1/*******************************************************************\
2Module: Command Line Parsing
3Author: Qinheping Hu
4\*******************************************************************/
5
8
9#ifndef CPROVER_GOTO_SYNTHESIZER_GOTO_SYNTHESIZER_PARSE_OPTIONS_H
10#define CPROVER_GOTO_SYNTHESIZER_GOTO_SYNTHESIZER_PARSE_OPTIONS_H
11
12#include <util/config.h>
13#include <util/options.h>
14#include <util/parse_options.h>
15
17
20
21#include "dump_loop_contracts.h"
22
23// clang-format off
24#define GOTO_SYNTHESIZER_OPTIONS \
25 OPT_DUMP_LOOP_CONTRACTS \
26 "(" FLAG_LOOP_CONTRACTS_NO_UNWIND ")" \
27 OPT_CONFIG_BACKEND \
28 OPT_SOLVER \
29 "(arrays-uf-always)(arrays-uf-never)" \
30 "(verbosity):(version)(xml-ui)(json-ui)" \
31 // empty last line
32
33// clang-format on
34
36{
37public:
38 int doit() override;
39 void help() override;
40
41 goto_synthesizer_parse_optionst(int argc, const char **argv);
42
43protected:
44 void register_languages() override;
45
46 int get_goto_program();
47
48 // Get the options same as using CBMC api without any flags and set any
49 // options specified in the command line.
51
53};
54
55#endif // CPROVER_GOTO_SYNTHESIZER_GOTO_SYNTHESIZER_PARSE_OPTIONS_H
void help() override
display command line help
Verify and use annotated invariants and pre/post-conditions.
Dump Loop Contracts as JSON.
Symbol Table + CFG.
Options.
Solver Factory.