Skip to content

Commit 134b1a8

Browse files
committed
Add make_interval to the interval_abstract_valuet public interface
1 parent 9f3b9ef commit 134b1a8

File tree

3 files changed

+10
-9
lines changed

3 files changed

+10
-9
lines changed

src/analyses/variable-sensitivity/abstract_value_object.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -502,7 +502,7 @@ class interval_evaluator
502502

503503
interval_abstract_value_pointert make_interval(const exprt &expr) const
504504
{
505-
return std::make_shared<interval_abstract_valuet>(expr, environment, ns);
505+
return interval_abstract_valuet::make_interval(expr, environment, ns);
506506
}
507507

508508
const exprt &expression;

src/analyses/variable-sensitivity/interval_abstract_value.cpp

Lines changed: 1 addition & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -22,13 +22,6 @@ static index_range_implementation_ptrt make_interval_index_range(
2222
const constant_interval_exprt &interval,
2323
const namespacet &n);
2424

25-
template <typename... Args>
26-
std::shared_ptr<interval_abstract_valuet> make_interval(Args &&... args)
27-
{
28-
return std::make_shared<interval_abstract_valuet>(
29-
std::forward<Args>(args)...);
30-
}
31-
3225
class interval_index_ranget : public index_range_implementationt
3326
{
3427
public:
@@ -378,7 +371,7 @@ abstract_object_pointert widening_merge(
378371

379372
// new interval ...
380373
auto new_interval = constant_interval_exprt(lower_bound, upper_bound);
381-
return make_interval(new_interval);
374+
return interval_abstract_valuet::make_interval(new_interval);
382375
}
383376

384377
abstract_object_pointert interval_abstract_valuet::merge_with_value(

src/analyses/variable-sensitivity/interval_abstract_value.h

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,14 @@ class interval_abstract_valuet : public abstract_value_objectt
3232
const abstract_environmentt &environment,
3333
const namespacet &ns);
3434

35+
template <typename... Args>
36+
static std::shared_ptr<interval_abstract_valuet>
37+
make_interval(Args &&... args)
38+
{
39+
return std::make_shared<interval_abstract_valuet>(
40+
std::forward<Args>(args)...);
41+
}
42+
3543
~interval_abstract_valuet() override = default;
3644

3745
index_range_implementation_ptrt

0 commit comments

Comments
 (0)