logo
Free, unlimited AI code reviews that run on commit
git-lrc git-lrc GitHub Install Now We'd appreciate a star git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt

__gnu_cxx::temporary_buffer.3cxx

Author

       Generated automatically by Doxygen for libstdc++ from the source code.

                                                    libst__gnu_cxx::temporary_bu..._ForwardIterator,_Tp>(3cxx)

Constructor & Destructor Documentation

template<class_ForwardIterator,class_Tp=typenamestd::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).

   template<class_ForwardIterator,class_Tp=typenamestd::iterator_traits<_ForwardIterator>::value_type>__gnu_cxx::temporary_buffer<_ForwardIterator,_Tp>::~temporary_buffer()[inline]
       Destroys objects and frees storage.

Detailed Description

template<class_ForwardIterator,class_Tp=typenamestd::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.

Member Function Documentation

template<typename_ForwardIterator,typename_Tp>iteratorstd::_Temporary_buffer<_ForwardIterator,_Tp>::begin()[inline],[inherited]
       As per Table mumble.

   template<typename_ForwardIterator,typename_Tp>iteratorstd::_Temporary_buffer<_ForwardIterator,_Tp>::end()[inline],[inherited]
       As per Table mumble.

   template<typename_ForwardIterator,typename_Tp>size_typestd::_Temporary_buffer<_ForwardIterator,_Tp>::requested_size()const[inline],[inherited]
       Returns the size requested by the constructor; may be >size().

   template<typename_ForwardIterator,typename_Tp>size_typestd::_Temporary_buffer<_ForwardIterator,_Tp>::size()const[inline],[inherited]
       As per Table mumble.

Name

       __gnu_cxx::temporary_buffer< _ForwardIterator, _Tp >

Synopsis

       #include <memory>

       Inherits std::_Temporary_buffer<_ForwardIterator,_Tp>.

   PublicTypes
       typedef pointer iterator
       typedef value_type * pointer
       typedef ptrdiff_t size_type
       typedef _Tp value_typePublicMemberFunctionstemporary_buffer (_ForwardIterator __first, _ForwardIterator __last)
           Requests storage large enough to hold a copy of [first,last).
       ~temporary_buffer ()
           Destroys objects and frees storage.
       iterator begin ()
           As per Table mumble.
       iterator end ()
           As per Table mumble.
       size_type requested_size () const
           Returns the size requested by the constructor; may be >size().
       size_type size () const
           As per Table mumble.

   ProtectedAttributes
       pointer _M_buffer
       size_type _M_len
       size_type _M_original_len

See Also