GCC Code Coverage Report
Directory: . Exec Total Coverage
File: build-coverage/src/options/sep_options.h Lines: 11 11 100.0 %
Date: 2021-05-22 Branches: 0 0 0.0 %

Line Exec Source
1
/******************************************************************************
2
 * Top contributors (to current version):
3
 *   Mathias Preiner, Aina Niemetz
4
 *
5
 * This file is part of the cvc5 project.
6
 *
7
 * Copyright (c) 2009-2021 by the authors listed in the file AUTHORS
8
 * in the top-level source directory and their institutional affiliations.
9
 * All rights reserved.  See the file COPYING in the top-level source
10
 * directory for licensing information.
11
 * ****************************************************************************
12
 *
13
 * Contains code for handling command-line options.
14
 *
15
 * For each <module>_options.toml configuration file, mkoptions.py
16
 * expands this template and generates a <module>_options.h file.
17
 */
18
19
#include "cvc5_private.h"
20
21
#ifndef CVC5__OPTIONS__SEP_H
22
#define CVC5__OPTIONS__SEP_H
23
24
#include "options/options.h"
25
26
// clang-format off
27
28
// clang-format on
29
30
namespace cvc5 {
31
namespace options {
32
33
// clang-format off
34
35
// clang-format on
36
37
#if defined(CVC5_MUZZLED) || defined(CVC5_COMPETITION_MODE)
38
#  define DO_SEMANTIC_CHECKS_BY_DEFAULT false
39
#else /* CVC5_MUZZLED || CVC5_COMPETITION_MODE */
40
#  define DO_SEMANTIC_CHECKS_BY_DEFAULT true
41
#endif /* CVC5_MUZZLED || CVC5_COMPETITION_MODE */
42
43
25268
struct HolderSEP
44
{
45
// clang-format off
46
  bool sepCheckNeg = true;\
47
  bool sepCheckNeg__setByUser__ = false;
48
  bool sepChildRefine = false;\
49
  bool sepChildRefine__setByUser__ = false;
50
  bool sepDisequalC = true;\
51
  bool sepDisequalC__setByUser__ = false;
52
  bool sepExp = false;\
53
  bool sepExp__setByUser__ = false;
54
  bool sepMinimalRefine = false;\
55
  bool sepMinimalRefine__setByUser__ = false;
56
  bool sepPreSkolemEmp = false;\
57
  bool sepPreSkolemEmp__setByUser__ = false;
58
// clang-format on
59
};
60
61
#undef DO_SEMANTIC_CHECKS_BY_DEFAULT
62
63
// clang-format off
64
extern struct sepCheckNeg__option_t
65
{
66
  typedef bool type;
67
  type operator()() const;
68
} thread_local sepCheckNeg;
69
extern struct sepChildRefine__option_t
70
{
71
  typedef bool type;
72
  type operator()() const;
73
} thread_local sepChildRefine;
74
extern struct sepDisequalC__option_t
75
{
76
  typedef bool type;
77
  type operator()() const;
78
} thread_local sepDisequalC;
79
extern struct sepExp__option_t
80
{
81
  typedef bool type;
82
  type operator()() const;
83
} thread_local sepExp;
84
extern struct sepMinimalRefine__option_t
85
{
86
  typedef bool type;
87
  type operator()() const;
88
} thread_local sepMinimalRefine;
89
extern struct sepPreSkolemEmp__option_t
90
{
91
  typedef bool type;
92
  type operator()() const;
93
} thread_local sepPreSkolemEmp;
94
// clang-format on
95
96
namespace sep
97
{
98
// clang-format off
99
static constexpr const char* sepCheckNeg__name = "sep-check-neg";
100
static constexpr const char* sepChildRefine__name = "sep-child-refine";
101
static constexpr const char* sepDisequalC__name = "sep-deq-c";
102
static constexpr const char* sepExp__name = "sep-exp";
103
static constexpr const char* sepMinimalRefine__name = "sep-min-refine";
104
static constexpr const char* sepPreSkolemEmp__name = "sep-pre-skolem-emp";
105
// clang-format on
106
}
107
108
}  // namespace options
109
110
// clang-format off
111
template <> options::sepCheckNeg__option_t::type& Options::ref(
112
    options::sepCheckNeg__option_t);
113
template <> const options::sepCheckNeg__option_t::type& Options::operator[](
114
    options::sepCheckNeg__option_t) const;
115
template <> bool Options::wasSetByUser(options::sepCheckNeg__option_t) const;
116
template <> options::sepChildRefine__option_t::type& Options::ref(
117
    options::sepChildRefine__option_t);
118
template <> const options::sepChildRefine__option_t::type& Options::operator[](
119
    options::sepChildRefine__option_t) const;
120
template <> bool Options::wasSetByUser(options::sepChildRefine__option_t) const;
121
template <> options::sepDisequalC__option_t::type& Options::ref(
122
    options::sepDisequalC__option_t);
123
template <> const options::sepDisequalC__option_t::type& Options::operator[](
124
    options::sepDisequalC__option_t) const;
125
template <> bool Options::wasSetByUser(options::sepDisequalC__option_t) const;
126
template <> options::sepExp__option_t::type& Options::ref(
127
    options::sepExp__option_t);
128
template <> const options::sepExp__option_t::type& Options::operator[](
129
    options::sepExp__option_t) const;
130
template <> bool Options::wasSetByUser(options::sepExp__option_t) const;
131
template <> options::sepMinimalRefine__option_t::type& Options::ref(
132
    options::sepMinimalRefine__option_t);
133
template <> const options::sepMinimalRefine__option_t::type& Options::operator[](
134
    options::sepMinimalRefine__option_t) const;
135
template <> bool Options::wasSetByUser(options::sepMinimalRefine__option_t) const;
136
template <> options::sepPreSkolemEmp__option_t::type& Options::ref(
137
    options::sepPreSkolemEmp__option_t);
138
template <> const options::sepPreSkolemEmp__option_t::type& Options::operator[](
139
    options::sepPreSkolemEmp__option_t) const;
140
template <> bool Options::wasSetByUser(options::sepPreSkolemEmp__option_t) const;
141
// clang-format on
142
143
namespace options {
144
// clang-format off
145
98
inline sepCheckNeg__option_t::type sepCheckNeg__option_t::operator()() const
146
{
147
98
  return Options::current()[*this];
148
}
149
54
inline sepChildRefine__option_t::type sepChildRefine__option_t::operator()() const
150
{
151
54
  return Options::current()[*this];
152
}
153
115
inline sepDisequalC__option_t::type sepDisequalC__option_t::operator()() const
154
{
155
115
  return Options::current()[*this];
156
}
157
inline sepExp__option_t::type sepExp__option_t::operator()() const
158
{
159
  return Options::current()[*this];
160
}
161
388
inline sepMinimalRefine__option_t::type sepMinimalRefine__option_t::operator()() const
162
{
163
388
  return Options::current()[*this];
164
}
165
12881
inline sepPreSkolemEmp__option_t::type sepPreSkolemEmp__option_t::operator()() const
166
{
167
12881
  return Options::current()[*this];
168
}
169
// clang-format on
170
171
}  // namespace options
172
}  // namespace cvc5
173
174
#endif /* CVC5__OPTIONS__SEP_H */