cprover
java_object_factory_parameters.cpp
Go to the documentation of this file.
1 /*******************************************************************\
2 
3 Module:
4 
5 Author: Daniel Poetzl
6 
7 \*******************************************************************/
8 
10 
11 #include <regex>
12 
13 #include <util/cmdline.h>
14 #include <util/options.h>
15 #include <util/validate.h>
16 
18 {
20 
21  if(options.is_set("java-assume-inputs-interval"))
22  {
23  const auto &interval_string =
24  options.get_option("java-assume-inputs-interval");
25  auto interval = interval_uniont::of_string(interval_string);
26  if(!interval.has_value())
27  {
29  "argument must be a comma-seperated sequence of intervals of the form"
30  " [int:int], [int:] or [:int]",
31  "--java-assume-inputs-interval");
32  }
33  if(interval->is_empty())
34  {
36  "interval is empty, lower limit cannot be bigger than upper limit",
37  "--java-assume-inputs-interval");
38  }
39  assume_inputs_interval = *interval;
40  }
41  assume_inputs_integral = options.is_set("java-assume-inputs-integral");
42 }
43 
45  const cmdlinet &cmdline,
46  optionst &options)
47 {
48  parse_object_factory_options(cmdline, options);
49 
50  if(cmdline.isset("java-assume-inputs-interval"))
51  {
52  options.set_option(
53  "java-assume-inputs-interval",
54  cmdline.get_value("java-assume-inputs-interval"));
55  }
56  if(cmdline.isset("java-assume-inputs-integral"))
57  {
58  options.set_option("java-assume-inputs-integral", true);
59  }
60 }
parse_object_factory_options
void parse_object_factory_options(const cmdlinet &cmdline, optionst &options)
Parse the object factory parameters from a given command line.
Definition: object_factory_parameters.cpp:55
interval_uniont::of_string
static optionalt< interval_uniont > of_string(const std::string &to_parse)
Parse a string which is a comma , separated list of intervals of the form "[lower1:upper1]",...
Definition: interval_union.cpp:217
cmdlinet::isset
virtual bool isset(char option) const
Definition: cmdline.cpp:29
optionst
Definition: options.h:23
optionst::get_option
const std::string get_option(const std::string &option) const
Definition: options.cpp:67
java_object_factory_parameters.h
options.h
Options.
optionst::set_option
void set_option(const std::string &option, const bool value)
Definition: options.cpp:28
java_object_factory_parameterst::set
void set(const optionst &)
Assigns the parameters from given options.
Definition: java_object_factory_parameters.cpp:17
java_object_factory_parameterst::assume_inputs_interval
interval_uniont assume_inputs_interval
Force numerical primitive inputs to fall within the interval.
Definition: java_object_factory_parameters.h:27
cmdlinet
Definition: cmdline.h:21
parse_java_object_factory_options
void parse_java_object_factory_options(const cmdlinet &cmdline, optionst &options)
Parse the java object factory parameters from a given command line.
Definition: java_object_factory_parameters.cpp:44
optionst::is_set
bool is_set(const std::string &option) const
N.B. opts.is_set("foo") does not imply opts.get_bool_option("foo")
Definition: options.cpp:62
cmdlinet::get_value
std::string get_value(char option) const
Definition: cmdline.cpp:47
java_object_factory_parameterst::assume_inputs_integral
bool assume_inputs_integral
Force double and float inputs to be integral.
Definition: java_object_factory_parameters.h:30
object_factory_parameterst::set
void set(const optionst &)
Assigns the parameters from given options.
Definition: object_factory_parameters.cpp:15
cmdline.h
validate.h
invalid_command_line_argument_exceptiont
Thrown when users pass incorrect command line arguments, for example passing no files to analysis or ...
Definition: exception_utils.h:38