SMT-RAT  24.02
Toolbox for Strategic and Parallel Satisfiability-Modulo-Theories Solving
Minisat::RegionAllocator< T > Class Template Reference

#include <Alloc.h>

Inheritance diagram for Minisat::RegionAllocator< T >:

Public Types

enum  { Ref_Undef = UINT32_MAX }
 
enum  { Unit_Size = sizeof(uint32_t) }
 
typedef uint32_t Ref
 

Public Member Functions

 RegionAllocator (uint32_t start_cap=1024 *1024)
 
 ~RegionAllocator ()
 
uint32_t size () const
 
uint32_t wasted () const
 
Ref alloc (int size)
 
void free (int size)
 
T & operator[] (Ref r)
 
const T & operator[] (Ref r) const
 
T * lea (Ref r)
 
const T * lea (Ref r) const
 
Ref ael (const T *t)
 
void moveTo (RegionAllocator &to)
 

Private Member Functions

void capacity (uint32_t min_cap)
 

Private Attributes

T * memory
 
uint32_t sz
 
uint32_t cap
 
uint32_t wasted_
 

Detailed Description

template<class T>
class Minisat::RegionAllocator< T >

Definition at line 32 of file Alloc.h.

Member Typedef Documentation

◆ Ref

template<class T >
typedef uint32_t Minisat::RegionAllocator< T >::Ref

Definition at line 43 of file Alloc.h.

Member Enumeration Documentation

◆ anonymous enum

template<class T >
anonymous enum
Enumerator
Ref_Undef 

Definition at line 45 of file Alloc.h.

◆ anonymous enum

template<class T >
anonymous enum
Enumerator
Unit_Size 

Definition at line 47 of file Alloc.h.

Constructor & Destructor Documentation

◆ RegionAllocator()

template<class T >
Minisat::RegionAllocator< T >::RegionAllocator ( uint32_t  start_cap = 1024 * 1024)
inlineexplicit

Definition at line 49 of file Alloc.h.

Here is the call graph for this function:

◆ ~RegionAllocator()

template<class T >
Minisat::RegionAllocator< T >::~RegionAllocator ( )
inline

Definition at line 57 of file Alloc.h.

Here is the call graph for this function:

Member Function Documentation

◆ ael()

template<class T >
Ref Minisat::RegionAllocator< T >::ael ( const T *  t)
inline

Definition at line 106 of file Alloc.h.

Here is the caller graph for this function:

◆ alloc()

template<class T >
RegionAllocator< T >::Ref Minisat::RegionAllocator< T >::alloc ( int  size)

Definition at line 153 of file Alloc.h.

Here is the caller graph for this function:

◆ capacity()

template<class T >
void Minisat::RegionAllocator< T >::capacity ( uint32_t  min_cap)
private

Definition at line 128 of file Alloc.h.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ free()

template<class T >
void Minisat::RegionAllocator< T >::free ( int  size)
inline

Definition at line 75 of file Alloc.h.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ lea() [1/2]

template<class T >
T* Minisat::RegionAllocator< T >::lea ( Ref  r)
inline

Definition at line 94 of file Alloc.h.

Here is the caller graph for this function:

◆ lea() [2/2]

template<class T >
const T* Minisat::RegionAllocator< T >::lea ( Ref  r) const
inline

Definition at line 100 of file Alloc.h.

◆ moveTo()

template<class T >
void Minisat::RegionAllocator< T >::moveTo ( RegionAllocator< T > &  to)
inline

Definition at line 112 of file Alloc.h.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ operator[]() [1/2]

template<class T >
T& Minisat::RegionAllocator< T >::operator[] ( Ref  r)
inline

Definition at line 81 of file Alloc.h.

Here is the caller graph for this function:

◆ operator[]() [2/2]

template<class T >
const T& Minisat::RegionAllocator< T >::operator[] ( Ref  r) const
inline

Definition at line 88 of file Alloc.h.

◆ size()

template<class T >
uint32_t Minisat::RegionAllocator< T >::size ( ) const
inline

Definition at line 63 of file Alloc.h.

Here is the caller graph for this function:

◆ wasted()

template<class T >
uint32_t Minisat::RegionAllocator< T >::wasted ( ) const
inline

Definition at line 68 of file Alloc.h.

Here is the caller graph for this function:

Field Documentation

◆ cap

template<class T >
uint32_t Minisat::RegionAllocator< T >::cap
private

Definition at line 36 of file Alloc.h.

◆ memory

template<class T >
T* Minisat::RegionAllocator< T >::memory
private

Definition at line 34 of file Alloc.h.

◆ sz

template<class T >
uint32_t Minisat::RegionAllocator< T >::sz
private

Definition at line 35 of file Alloc.h.

◆ wasted_

template<class T >
uint32_t Minisat::RegionAllocator< T >::wasted_
private

Definition at line 37 of file Alloc.h.


The documentation for this class was generated from the following file: