mirror of
https://github.com/Z3Prover/z3
synced 2025-04-28 19:35:50 +00:00
Add support for transcendental values such as pi and e, and the power operator
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
This commit is contained in:
parent
ae1da72cb7
commit
ecb58091f7
4 changed files with 153 additions and 12 deletions
|
@ -351,4 +351,26 @@ public:
|
|||
void e(unsigned k, interval & r);
|
||||
};
|
||||
|
||||
template<typename Manager>
|
||||
class _scoped_interval {
|
||||
public:
|
||||
typedef typename Manager::interval interval;
|
||||
private:
|
||||
Manager & m_manager;
|
||||
interval m_interval;
|
||||
public:
|
||||
_scoped_interval(Manager & m):m_manager(m) {}
|
||||
~_scoped_interval() { m_manager.del(m_interval); }
|
||||
|
||||
Manager & m() const { return m_manager; }
|
||||
|
||||
operator interval const &() const { return m_interval; }
|
||||
operator interval&() { return m_interval; }
|
||||
interval const & get() const { return m_interval; }
|
||||
interval & get() { return m_interval; }
|
||||
interval * operator->() {
|
||||
return &m_interval;
|
||||
}
|
||||
};
|
||||
|
||||
#endif
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue