|
libstdc++
|
Public Types | |
| typedef pointer | iterator |
| typedef value_type * | pointer |
| typedef ptrdiff_t | size_type |
| typedef _Tp | value_type |
Public Member Functions | |
| temporary_buffer (_ForwardIterator __first, _ForwardIterator __last) | |
| ~temporary_buffer () | |
| iterator | begin () |
| iterator | end () |
| size_type | requested_size () const |
| size_type | size () const |
Protected Attributes | |
| pointer | _M_buffer |
| size_type | _M_len |
| size_type | _M_original_len |
This class provides similar behavior and semantics of the standard functions get_temporary_buffer() and return_temporary_buffer(), but encapsulated in a type vaguely resembling a standard container.
By default, a temporary_buffer<Iter> stores space for objects of whatever type the Iter iterator points to. It is constructed from a typical [first,last) range, and provides the begin(), end(), size() functions, as well as requested_size(). For non-trivial types, copies of *first will be used to initialize the storage.
malloc is used to obtain underlying storage.
Like get_temporary_buffer(), not all the requested memory may be available. Ideally, the created buffer will be large enough to hold a copy of [first,last), but if size() is less than requested_size(), then this didn't happen.
Definition at line 183 of file ext/memory.
|
inline |
Requests storage large enough to hold a copy of [first,last).
Definition at line 186 of file ext/memory.
|
inline |
Destroys objects and frees storage.
Definition at line 190 of file ext/memory.
|
inlineinherited |
As per Table mumble.
Definition at line 151 of file stl_tempbuf.h.
Referenced by std::inplace_merge(), std::stable_partition(), and std::stable_sort().
|
inlineinherited |
As per Table mumble.
Definition at line 156 of file stl_tempbuf.h.
|
inlineinherited |
Returns the size requested by the constructor; may be >size().
Definition at line 146 of file stl_tempbuf.h.
Referenced by std::stable_partition().
|
inlineinherited |
As per Table mumble.
Definition at line 141 of file stl_tempbuf.h.
Referenced by std::inplace_merge(), std::stable_partition(), and std::stable_sort().