GCC Code Coverage Report
Directory: . Exec Total Coverage
File: build-coverage/src/options/arrays_options.cpp Lines: 21 55 38.2 %
Date: 2021-05-24 Branches: 2 4 50.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
 * Option template for option modules.
14
 *
15
 * For each <module>_options.toml configuration file, mkoptions.py
16
 * expands this template and generates a <module>_options.cpp file.
17
 */
18
#include "options/arrays_options.h"
19
20
#include <iostream>
21
22
#include "base/check.h"
23
#include "options/option_exception.h"
24
25
// clang-format off
26
namespace cvc5 {
27
28
template <> options::arraysConfig__option_t::type& Options::ref(
29
    options::arraysConfig__option_t)
30
{
31
    return arrays().arraysConfig;
32
}
33
template <> const options::arraysConfig__option_t::type& Options::operator[](
34
    options::arraysConfig__option_t) const
35
{
36
  return arrays().arraysConfig;
37
}
38
template <> bool Options::wasSetByUser(options::arraysConfig__option_t) const
39
{
40
  return arrays().arraysConfig__setByUser__;
41
}
42
176
template <> options::arraysEagerIndexSplitting__option_t::type& Options::ref(
43
    options::arraysEagerIndexSplitting__option_t)
44
{
45
176
    return arrays().arraysEagerIndexSplitting;
46
}
47
16992
template <> const options::arraysEagerIndexSplitting__option_t::type& Options::operator[](
48
    options::arraysEagerIndexSplitting__option_t) const
49
{
50
16992
  return arrays().arraysEagerIndexSplitting;
51
}
52
9459
template <> bool Options::wasSetByUser(options::arraysEagerIndexSplitting__option_t) const
53
{
54
9459
  return arrays().arraysEagerIndexSplitting__setByUser__;
55
}
56
template <> options::arraysEagerLemmas__option_t::type& Options::ref(
57
    options::arraysEagerLemmas__option_t)
58
{
59
    return arrays().arraysEagerLemmas;
60
}
61
166434
template <> const options::arraysEagerLemmas__option_t::type& Options::operator[](
62
    options::arraysEagerLemmas__option_t) const
63
{
64
166434
  return arrays().arraysEagerLemmas;
65
}
66
template <> bool Options::wasSetByUser(options::arraysEagerLemmas__option_t) const
67
{
68
  return arrays().arraysEagerLemmas__setByUser__;
69
}
70
template <> options::arraysExp__option_t::type& Options::ref(
71
    options::arraysExp__option_t)
72
{
73
    return arrays().arraysExp;
74
}
75
9477
template <> const options::arraysExp__option_t::type& Options::operator[](
76
    options::arraysExp__option_t) const
77
{
78
9477
  return arrays().arraysExp;
79
}
80
template <> bool Options::wasSetByUser(options::arraysExp__option_t) const
81
{
82
  return arrays().arraysExp__setByUser__;
83
}
84
template <> options::arraysModelBased__option_t::type& Options::ref(
85
    options::arraysModelBased__option_t)
86
{
87
    return arrays().arraysModelBased;
88
}
89
template <> const options::arraysModelBased__option_t::type& Options::operator[](
90
    options::arraysModelBased__option_t) const
91
{
92
  return arrays().arraysModelBased;
93
}
94
template <> bool Options::wasSetByUser(options::arraysModelBased__option_t) const
95
{
96
  return arrays().arraysModelBased__setByUser__;
97
}
98
3418
template <> options::arraysOptimizeLinear__option_t::type& Options::ref(
99
    options::arraysOptimizeLinear__option_t)
100
{
101
3418
    return arrays().arraysOptimizeLinear;
102
}
103
36048
template <> const options::arraysOptimizeLinear__option_t::type& Options::operator[](
104
    options::arraysOptimizeLinear__option_t) const
105
{
106
36048
  return arrays().arraysOptimizeLinear;
107
}
108
template <> bool Options::wasSetByUser(options::arraysOptimizeLinear__option_t) const
109
{
110
  return arrays().arraysOptimizeLinear__setByUser__;
111
}
112
template <> options::arraysPropagate__option_t::type& Options::ref(
113
    options::arraysPropagate__option_t)
114
{
115
    return arrays().arraysPropagate;
116
}
117
61764
template <> const options::arraysPropagate__option_t::type& Options::operator[](
118
    options::arraysPropagate__option_t) const
119
{
120
61764
  return arrays().arraysPropagate;
121
}
122
template <> bool Options::wasSetByUser(options::arraysPropagate__option_t) const
123
{
124
  return arrays().arraysPropagate__setByUser__;
125
}
126
template <> options::arraysReduceSharing__option_t::type& Options::ref(
127
    options::arraysReduceSharing__option_t)
128
{
129
    return arrays().arraysReduceSharing;
130
}
131
1956
template <> const options::arraysReduceSharing__option_t::type& Options::operator[](
132
    options::arraysReduceSharing__option_t) const
133
{
134
1956
  return arrays().arraysReduceSharing;
135
}
136
template <> bool Options::wasSetByUser(options::arraysReduceSharing__option_t) const
137
{
138
  return arrays().arraysReduceSharing__setByUser__;
139
}
140
template <> options::arraysWeakEquivalence__option_t::type& Options::ref(
141
    options::arraysWeakEquivalence__option_t)
142
{
143
    return arrays().arraysWeakEquivalence;
144
}
145
111018
template <> const options::arraysWeakEquivalence__option_t::type& Options::operator[](
146
    options::arraysWeakEquivalence__option_t) const
147
{
148
111018
  return arrays().arraysWeakEquivalence;
149
}
150
template <> bool Options::wasSetByUser(options::arraysWeakEquivalence__option_t) const
151
{
152
  return arrays().arraysWeakEquivalence__setByUser__;
153
}
154
155
namespace options {
156
157
thread_local struct arraysConfig__option_t arraysConfig;
158
thread_local struct arraysEagerIndexSplitting__option_t arraysEagerIndexSplitting;
159
thread_local struct arraysEagerLemmas__option_t arraysEagerLemmas;
160
thread_local struct arraysExp__option_t arraysExp;
161
thread_local struct arraysModelBased__option_t arraysModelBased;
162
thread_local struct arraysOptimizeLinear__option_t arraysOptimizeLinear;
163
thread_local struct arraysPropagate__option_t arraysPropagate;
164
thread_local struct arraysReduceSharing__option_t arraysReduceSharing;
165
thread_local struct arraysWeakEquivalence__option_t arraysWeakEquivalence;
166
167
168
169
}  // namespace options
170
28191
}  // namespace cvc5
171
// clang-format on