Z3
Public Member Functions
array< T > Class Template Reference

#include <z3++.h>

Public Member Functions

 array (unsigned sz)
 
template<typename T2 >
 array (ast_vector_tpl< T2 > const &v)
 
 ~array ()
 
void resize (unsigned sz)
 
unsigned size () const
 
T & operator[] (int i)
 
T const & operator[] (int i) const
 
T const * ptr () const
 
T * ptr ()
 

Detailed Description

template<typename T>
class z3::array< T >

Definition at line 382 of file z3++.h.

Constructor & Destructor Documentation

◆ array() [1/2]

array ( unsigned  sz)
inline

Definition at line 388 of file z3++.h.

388:m_size(sz) { m_array = new T[sz]; }

◆ array() [2/2]

array ( ast_vector_tpl< T2 > const &  v)

Definition at line 1925 of file z3++.h.

1925 {
1926 m_array = new T[v.size()];
1927 m_size = v.size();
1928 for (unsigned i = 0; i < m_size; i++) {
1929 m_array[i] = v[i];
1930 }
1931 }

◆ ~array()

~array ( )
inline

Definition at line 391 of file z3++.h.

391{ delete[] m_array; }

Member Function Documentation

◆ operator[]() [1/2]

T & operator[] ( int  i)
inline

Definition at line 394 of file z3++.h.

394{ assert(0 <= i); assert(static_cast<unsigned>(i) < m_size); return m_array[i]; }

◆ operator[]() [2/2]

T const & operator[] ( int  i) const
inline

Definition at line 395 of file z3++.h.

395{ assert(0 <= i); assert(static_cast<unsigned>(i) < m_size); return m_array[i]; }

◆ ptr() [1/2]

T * ptr ( )
inline

Definition at line 397 of file z3++.h.

397{ return m_array; }

◆ ptr() [2/2]

T const * ptr ( ) const
inline

◆ resize()

void resize ( unsigned  sz)
inline

Definition at line 392 of file z3++.h.

392{ delete[] m_array; m_size = sz; m_array = new T[sz]; }

Referenced by solver::trail().

◆ size()

unsigned size ( ) const
inline