]> matita.cs.unibo.it Git - pkg-cerco/frama-c-cost-plugin.git/blob - wrapper/options.ml
Imported Upstream version 0.1
[pkg-cerco/frama-c-cost-plugin.git] / wrapper / options.ml
1 open Misc.ArgExt
2
3 let timeout                     = ref 0
4 let set_timeout i               = timeout := i
5 let get_timeout ()              = !timeout
6
7 let prover                      = ref "simplify"
8 let set_prover s                = prover := s
9 let get_prover ()               = !prover
10
11 let gui_flag                    = ref false
12 let request_gui                 = (:=) gui_flag
13 let gui_requested ()            = !gui_flag
14
15 let verbose_level               = ref 0
16 let set_verbose_level i         = verbose_level := i
17 let get_verbose_level ()        = !verbose_level
18
19 let verify_flag                 = ref false
20 let request_verify              = (:=) verify_flag
21 let verify_requested ()         = !verify_flag
22
23 let test_flag                   = ref false
24 let request_test                = (:=) test_flag
25 let test_requested ()           = !test_flag
26
27 let test_cases                  = ref 10
28 let set_test_cases i            = test_cases := i
29 let get_test_cases ()           = !test_cases
30
31 let test_cycles                 = ref 10
32 let set_test_cycles i           = test_cycles := i
33 let get_test_cycles ()          = !test_cycles
34
35 let test_min_int                = ref (-1000)
36 let set_test_min_int i          = test_min_int := i
37 let get_test_min_int ()         = !test_min_int
38
39 let test_max_int                = ref 1000
40 let set_test_max_int i          = test_max_int := i
41 let get_test_max_int ()         = !test_max_int
42
43 let options = OptionsParsing.register [
44
45   "-v", Arg.Int set_verbose_level,
46   " Verbosity, from 0 (lowest) to 2 (highest).";
47   extra_doc " [default is 0]";
48
49   "-verify", Arg.Set verify_flag,
50   " Verify the results with Frama-C/Jessie.";
51
52   "-timeout", Arg.Int set_timeout,
53   " Timeout in seconds for verification. 0 means no timeout.";
54   extra_doc " [default is 0]";
55
56   "-prover", Arg.String set_prover,
57   " Select a prover for verification through why.";
58   extra_doc " Needs the -verify option.";
59   extra_doc " [default is simplify]";
60
61   "-gui", Arg.Set gui_flag,
62   " Do not select a prover: run a graphical user interface instead.";
63   extra_doc " Needs the -verify option.";
64
65   "-test", Arg.Set test_flag,
66   " Test the results.";
67
68   "-test-cases", Arg.Int set_test_cases,
69   " Number of test cases.";
70   extra_doc " Needs the -test option.";
71   extra_doc " [default is 10]";
72
73   "-test-cycles", Arg.Int set_test_cycles,
74   " Number of cycles for each test case.";
75   extra_doc " Needs the -test option.";
76   extra_doc " [default is 10]";
77
78   "-test-min-int", Arg.Int set_test_min_int,
79   " Random int minimum value.";
80   extra_doc " Needs the -test option.";
81   extra_doc " [default is -1000]";
82
83   "-test-max-int", Arg.Int set_test_max_int,
84   " Random int maximum value.";
85   extra_doc " Needs the -test option.";
86   extra_doc " [default is 1000]";
87 ]