GCC Middle and Back End API Reference
|
#include <vec.h>
Public Member Functions | |
auto_delete_vec () | |
auto_delete_vec (size_t s) | |
~auto_delete_vec () | |
vec< T, va_heap > | to_vec_legacy () |
Private Member Functions | |
DISABLE_COPY_AND_ASSIGN (auto_delete_vec) | |
Private Attributes | |
vec< T, va_heap, vl_embed > | m_auto |
unsigned char | m_data [sizeof(T) *N] |
A subclass of auto_vec <T *> that deletes all of its elements on destruction. This is a crude way for a vec to "own" the objects it points to and clean up automatically. For example, no attempt is made to delete elements when an item within the vec is overwritten. We can't rely on gnu::unique_ptr within a container, since we can't rely on move semantics in C++98.
|
inline |
|
inline |
|
inline |
auto_delete_vec's dtor, deleting all contained items, automatically chaining up to ~auto_vec <T*>, which frees the internal buffer.
References FOR_EACH_VEC_ELT, and i.
|
private |