glibmm: Glib::ListHandle< T, Tr > Class Template Reference

This is an intermediate type. More...

#include <glibmm/listhandle.h>

Public Types

using CppType = typename Tr::CppType
using CType = typename Tr::CType
using value_type = CppType
using size_type = std::size_t
using difference_type = std::ptrdiff_t
using const_iterator = Glib::Container_Helpers::ListHandleIterator < Tr >
using iterator = Glib::Container_Helpers::ListHandleIterator < Tr >

Public Member Functions

template<class Cont >
ListHandle (const Cont& container)
ListHandle (GList* glist, Glib::OwnershipType ownership)
ListHandle (const ListHandle < T, Tr >& other)
~ListHandle () noexcept
const_iterator begin () const
const_iterator end () const
template<class U >
operator std::vector< U > () const
template<class U >
operator std::deque< U > () const
template<class U >
operator std::list< U > () const
template<class Cont >
void assign_to (Cont& container) const
template<class Out >
void copy (Out pdest) const
GList* data () const
std::size_t size () const
bool empty () const

Detailed Description

template<class T, class Tr = Glib::Container_Helpers::TypeTraits<T>>

class Glib::ListHandle< T, Tr >

This is an intermediate type.

When a method takes this, or returns this, you should use a standard C++ container of your choice, such as std::list or std::vector .

However, this is not used in new API. We now prefer to just use std::vector , which is less flexibile, but makes the API clearer.

Member Typedef Documentation

template <class T , class Tr = Glib::Container_Helpers::TypeTraits<T>>
using Glib::ListHandle < T, Tr >:: const_iterator = Glib::Container_Helpers::ListHandleIterator <Tr>
template <class T , class Tr = Glib::Container_Helpers::TypeTraits<T>>
using Glib::ListHandle < T, Tr >:: CppType = typename Tr::CppType
template <class T , class Tr = Glib::Container_Helpers::TypeTraits<T>>
using Glib::ListHandle < T, Tr >:: CType = typename Tr::CType
template <class T , class Tr = Glib::Container_Helpers::TypeTraits<T>>
using Glib::ListHandle < T, Tr >:: difference_type = std::ptrdiff_t
template <class T , class Tr = Glib::Container_Helpers::TypeTraits<T>>
using Glib::ListHandle < T, Tr >:: iterator = Glib::Container_Helpers::ListHandleIterator <Tr>
template <class T , class Tr = Glib::Container_Helpers::TypeTraits<T>>
using Glib::ListHandle < T, Tr >:: size_type = std::size_t
template <class T , class Tr = Glib::Container_Helpers::TypeTraits<T>>
using Glib::ListHandle < T, Tr >:: value_type = CppType

Constructor & Destructor Documentation

template <class T , class Tr = Glib::Container_Helpers::TypeTraits<T>>
template <class Cont >
Glib::ListHandle < T, Tr >:: ListHandle ( const Cont & container )
inline
template <class T , class Tr = Glib::Container_Helpers::TypeTraits<T>>
Glib::ListHandle < T, Tr >:: ListHandle ( GList * glist ,
Glib::OwnershipType ownership
)
inline
template <class T , class Tr = Glib::Container_Helpers::TypeTraits<T>>
Glib::ListHandle < T, Tr >:: ListHandle ( const ListHandle < T, Tr >& other )
inline
template <class T , class Tr = Glib::Container_Helpers::TypeTraits<T>>
Glib::ListHandle < T, Tr >::~ ListHandle ( )
noexcept

Member Function Documentation

template <class T , class Tr = Glib::Container_Helpers::TypeTraits<T>>
template <class Cont >
void Glib::ListHandle < T, Tr >::assign_to ( Cont & container ) const
inline
template <class T , class Tr = Glib::Container_Helpers::TypeTraits<T>>
const_iterator Glib::ListHandle < T, Tr >::begin ( ) const
inline
template <class T , class Tr = Glib::Container_Helpers::TypeTraits<T>>
template <class Out >
void Glib::ListHandle < T, Tr >::copy ( Out pdest ) const
inline
template <class T , class Tr = Glib::Container_Helpers::TypeTraits<T>>
GList* Glib::ListHandle < T, Tr >::data ( ) const
inline
template <class T , class Tr = Glib::Container_Helpers::TypeTraits<T>>
bool Glib::ListHandle < T, Tr >::empty ( ) const
inline
template <class T , class Tr = Glib::Container_Helpers::TypeTraits<T>>
const_iterator Glib::ListHandle < T, Tr >::end ( ) const
inline
template <class T , class Tr = Glib::Container_Helpers::TypeTraits<T>>
template <class U >
Glib::ListHandle < T, Tr >::operator std::deque < U > ( ) const
inline
template <class T , class Tr = Glib::Container_Helpers::TypeTraits<T>>
template <class U >
Glib::ListHandle < T, Tr >::operator std::list < U > ( ) const
inline
template <class T , class Tr = Glib::Container_Helpers::TypeTraits<T>>
template <class U >
Glib::ListHandle < T, Tr >::operator std::vector < U > ( ) const
inline
template <class T , class Tr = Glib::Container_Helpers::TypeTraits<T>>
std::size_t Glib::ListHandle < T, Tr >::size ( ) const
inline