libsigc++ 2.0: sigc::internal::slot_iterator_buf< T_emitter, T_result > Struct Template Reference

Main Page Groups Namespaces

# sigc::internal::slot_iterator_buf<T_emitter, T_result> Struct Template Reference

Special iterator over sigc::internal::signal_impl's slot list that holds extra data. More...

List of all members.

## Public Types
typedef size_t | size_type
typedef ptrdiff_t | difference_type
typedef std::bidirectional_iterator_tag | iterator_category
typedef T_emitter | emitter_type
typedef T_result | result_type
typedef T_emitter::slot_type | slot_type
typedef signal_impl::const_iterator_type | iterator_type
## Public Member Functions
| slot_iterator_buf ()
| slot_iterator_buf (const iterator_type& i, const emitter_type* c)
result_type | operator* () const
slot_iterator_buf& | operator++ ()
slot_iterator_buf | operator++ (int)
slot_iterator_buf | operator-- ()
slot_iterator_buf | operator-- (int)
bool | operator== (const slot_iterator_buf&other) const
bool | operator!= (const slot_iterator_buf&other) const

## Detailed Description

### template <class T_emitter, class T_result = typename T_emitter::result_type>
struct sigc::internal::slot_iterator_buf< T_emitter, T_result >

Special iterator over sigc::internal::signal_impl's slot list that holds extra data.

This iterators is for use in accumulators. operator*() executes the slot. The return value is buffered, so that in an expression like

     a = (* i)* (* i);

the slot is executed only once.

## Member Typedef Documentation

template <class T_emitter, class T_result = typename T_emitter::result_type>
typedef ptrdiff_t sigc::internal::slot_iterator_buf<T_emitter, T_result>::difference_type

template <class T_emitter, class T_result = typename T_emitter::result_type>
typedef T_emitter sigc::internal::slot_iterator_buf<T_emitter, T_result>::emitter_type

template <class T_emitter, class T_result = typename T_emitter::result_type>
typedef std::bidirectional_iterator_tag sigc::internal::slot_iterator_buf<T_emitter, T_result>::iterator_category

template <class T_emitter, class T_result = typename T_emitter::result_type>
typedef signal_impl::const_iterator_type sigc::internal::slot_iterator_buf<T_emitter, T_result>::iterator_type

template <class T_emitter, class T_result = typename T_emitter::result_type>
typedef T_result sigc::internal::slot_iterator_buf<T_emitter, T_result>::result_type

template <class T_emitter, class T_result = typename T_emitter::result_type>
typedef size_t sigc::internal::slot_iterator_buf<T_emitter, T_result>::size_type

template <class T_emitter, class T_result = typename T_emitter::result_type>
typedef T_emitter::slot_type sigc::internal::slot_iterator_buf<T_emitter, T_result>::slot_type

## Constructor & Destructor Documentation

template <class T_emitter, class T_result = typename T_emitter::result_type>
sigc::internal::slot_iterator_buf<T_emitter, T_result>::slot_iterator_buf | ( |  | ) | `[inline]`

template <class T_emitter, class T_result = typename T_emitter::result_type>
sigc::internal::slot_iterator_buf<T_emitter, T_result>::slot_iterator_buf | ( | const iterator_type& | i,
|  | const emitter_type* | c
| ) | `[inline]`

## Member Function Documentation

template <class T_emitter, class T_result = typename T_emitter::result_type>
result_type sigc::internal::slot_iterator_buf<T_emitter, T_result>::operator* | ( |  | ) | const`[inline]`

template <class T_emitter, class T_result = typename T_emitter::result_type>
bool sigc::internal::slot_iterator_buf<T_emitter, T_result>::operator!= | ( | const slot_iterator_buf<T_emitter, T_result>& | other | ) | const`[inline]`

template <class T_emitter, class T_result = typename T_emitter::result_type>
slot_iterator_buf sigc::internal::slot_iterator_buf<T_emitter, T_result>::operator++ | ( | int |  | ) | `[inline]`

template <class T_emitter, class T_result = typename T_emitter::result_type>
slot_iterator_buf& sigc::internal::slot_iterator_buf<T_emitter, T_result>::operator++ | ( |  | ) | `[inline]`

template <class T_emitter, class T_result = typename T_emitter::result_type>
slot_iterator_buf sigc::internal::slot_iterator_buf<T_emitter, T_result>::operator-- | ( | int |  | ) | `[inline]`

template <class T_emitter, class T_result = typename T_emitter::result_type>
slot_iterator_buf sigc::internal::slot_iterator_buf<T_emitter, T_result>::operator-- | ( |  | ) | `[inline]`

template <class T_emitter, class T_result = typename T_emitter::result_type>
bool sigc::internal::slot_iterator_buf<T_emitter, T_result>::operator== | ( | const slot_iterator_buf<T_emitter, T_result>& | other | ) | const`[inline]`

The documentation for this struct was generated from the following file:

- signal.h