24 #ifndef PPL_Temp_inlines_hh
25 #define PPL_Temp_inlines_hh 1
107 #define PPL_DIRTY_TEMP(T, id) \
108 Parma_Polyhedra_Library::Dirty_Temp<PPL_U(T)> holder_ ## id; \
109 PPL_U(T)& PPL_U(id) = holder_ ## id.item()
111 #endif // !defined(PPL_Temp_inlines_hh)
~Temp_Reference_Holder()
Destructor.
T & item()
Returns the value of the held item.
T & item()
Returns a reference to the held item.
A pool of temporary items of type T.
Temp_Value_Holder()
Constructs a fake holder.
Temp_Item()
Default constructor.
T & item()
Returns a reference to the encapsulated item.
The entire library is confined to this namespace.
Temp_Item * next
Pointer to the next item in the free list.
static void release(Temp_Item &p)
Releases the temporary item p.
static Temp_Item *& free_list_ref()
Head of the free list.
static Temp_Item & obtain()
Obtains a reference to a temporary item.
Temp_Reference_Holder()
Constructs an holder holding a dirty temp.