From 70d4f32ffd56b2508bb2c2ae8bc37a8452561d5b Mon Sep 17 00:00:00 2001 From: Nikolaj Bjorner Date: Sat, 9 Dec 2023 13:00:43 -0800 Subject: [PATCH] port updates from poly/polysat Signed-off-by: Nikolaj Bjorner --- src/util/dlist.h | 10 ++++++++++ src/util/var_queue.h | 2 ++ 2 files changed, 12 insertions(+) diff --git a/src/util/dlist.h b/src/util/dlist.h index e5c95b8cf..07aefa97e 100644 --- a/src/util/dlist.h +++ b/src/util/dlist.h @@ -223,6 +223,16 @@ public: } }; +template +class dll_elements { + T const* m_list; +public: + dll_elements(T const* list) : m_list(list) {} + dll_iterator begin() const { return dll_iterator::mk_begin(m_list); } + dll_iterator end() const { return dll_iterator::mk_end(m_list); } +}; + + template < typename T , typename U = std::enable_if_t, T>> // should only match if T actually inherits from dll_base > diff --git a/src/util/var_queue.h b/src/util/var_queue.h index 9807e5ac2..0af4de3b8 100644 --- a/src/util/var_queue.h +++ b/src/util/var_queue.h @@ -68,6 +68,8 @@ public: void reset() { m_queue.reset(); } + + bool contains(var v) const { return m_queue.contains(v); } bool empty() const { return m_queue.empty(); }