Go to the documentation of this file.
12 #ifndef CBMC_ABSTRACT_OBJECT_SET_H
13 #define CBMC_ABSTRACT_OBJECT_SET_H
16 #include <unordered_set>
35 values.insert(std::move(o));
43 for(
auto const &value : rhs)
103 #endif //CBMC_ABSTRACT_OBJECT_SET_H
void insert(const abstract_object_sett &rhs)
sharing_ptrt< class abstract_objectt > abstract_object_pointert
const_iterator begin() const
std::unordered_set< abstract_object_pointert, abstract_hashert, abstract_equalert > value_sett
void push_back(const abstract_object_pointert &v)
const_iterator end() const
value_sett::const_iterator const_iterator
void insert(abstract_object_pointert &&o)
Represents an interval of values.
void insert(const value_ranget &rhs)
A namespacet is essentially one or two symbol tables bound together, to allow for symbol lookups in t...
value_sett::size_type size() const
value_sett::value_type value_type
virtual const abstract_object_sett & get_values() const =0
void insert(const abstract_object_pointert &o)
abstract_object_pointert first() const
value_sett::size_type size_type
This is the basic interface of the abstract interpreter with default implementations of the core func...
bool operator==(const abstract_object_sett &rhs) const
void output(std::ostream &out, const ai_baset &ai, const namespacet &ns) const
unsignedbv_typet size_type()
constant_interval_exprt to_interval() const
Calculate the set of values as an interval.