SYNOPSIS
Inherits std::_Temporary_buffer< _ForwardIterator, _Tp >.
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
Detailed Description
template<class _ForwardIterator, class _Tp = typename std::iterator_traits<_ForwardIterator>::value_type>
struct __gnu_cxx::temporary_buffer< _ForwardIterator, _Tp >" 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.
Constructor & Destructor Documentation
template<class _ForwardIterator , class _Tp = typename std::iterator_traits<_ForwardIterator>::value_type> __gnu_cxx::temporary_buffer< _ForwardIterator, _Tp >::temporary_buffer (_ForwardIterator __first, _ForwardIterator __last) [inline]
Requests storage large enough to hold a copy of [first,last).
Definition at line 186 of file ext/memory.
template<class _ForwardIterator , class _Tp = typename std::iterator_traits<_ForwardIterator>::value_type> __gnu_cxx::temporary_buffer< _ForwardIterator, _Tp >::~temporary_buffer () [inline]
Destroys objects and frees storage.
Definition at line 190 of file ext/memory.
Member Function Documentation
template<typename _ForwardIterator, typename _Tp> iterator std::_Temporary_buffer< _ForwardIterator, _Tp >::begin () [inline], [inherited]
As per Table mumble.
Definition at line 151 of file stl_tempbuf.h.
Referenced by std::__stable_partition_adaptive().
template<typename _ForwardIterator, typename _Tp> iterator std::_Temporary_buffer< _ForwardIterator, _Tp >::end () [inline], [inherited]
As per Table mumble.
Definition at line 156 of file stl_tempbuf.h.
References std::__addressof(), std::_Construct(), std::_Destroy(), std::_Temporary_buffer< _ForwardIterator, _Tp >::_Temporary_buffer(), and std::return_temporary_buffer().
template<typename _ForwardIterator, typename _Tp> size_type std::_Temporary_buffer< _ForwardIterator, _Tp >::requested_size () const [inline], [inherited]
Returns the size requested by the constructor; may be >size().
Definition at line 146 of file stl_tempbuf.h.
Referenced by std::__stable_partition_adaptive().
template<typename _ForwardIterator, typename _Tp> size_type std::_Temporary_buffer< _ForwardIterator, _Tp >::size () const [inline], [inherited]
As per Table mumble.
Definition at line 141 of file stl_tempbuf.h.
Referenced by std::__stable_partition_adaptive().
Author
Generated automatically by Doxygen for libstdc++ from the source code.