21 #ifndef _cvc3__include__cdlist_h_
22 #define _cvc3__include__cdlist_h_
51 while (d_list->size() >
d_size) d_list->pop_back(); }
53 {
while (d_list->size()) d_list->pop_back(); d_size = 0; }
60 d_list =
new std::deque<T>();
65 bool empty()
const {
return d_size == 0; }
71 d_list->pop_back(); --
d_size; }
77 const T&
at(
unsigned i)
const {
85 return d_list->back();
89 return d_list->begin();
91 const_iterator
end()
const {
const T & at(unsigned i) const
const ContextObj * getRestore()
void makeCurrent(int scope=-1)
#define DebugAssert(cond, str)
T & push_back(const T &data, int scope=-1)
const_iterator end() const
CDList(const CDList< T > &l)
virtual void setNull(void)
Set the current object to be invalid.
std::string int2string(int n)
bool isCurrent(int scope=-1) const
const T & operator[](unsigned i) const
std::deque< T > * d_list
The actual data.
virtual ContextObj * makeCopy(ContextMemoryManager *cmm)
Make a copy of the current object so it can be restored to its current state.
virtual void restoreData(ContextObj *data)
Restore the current object from the given data.
const_iterator begin() const
std::deque< T >::const_iterator const_iterator