Intel(R) Threading Building Blocks Doxygen Documentation  version 4.2.3
internal::initializer_list_wrapper< T > Class Template Reference

#include <_flow_graph_types_impl.h>

Collaboration diagram for internal::initializer_list_wrapper< T >:

Public Types

typedef T value_type
 
typedef const T & reference
 
typedef const T & const_reference
 
typedef size_t size_type
 
typedef T * iterator
 
typedef const T * const_iterator
 

Public Member Functions

 initializer_list_wrapper (std::initializer_list< T > il) __TBB_NOEXCEPT(true)
 
 initializer_list_wrapper (const initializer_list_wrapper< T > &ilw) __TBB_NOEXCEPT(true)
 
 initializer_list_wrapper (initializer_list_wrapper< T > &&ilw) __TBB_NOEXCEPT(true)
 
 ~initializer_list_wrapper ()
 
const_iterator begin () const __TBB_NOEXCEPT(true)
 
const_iterator end () const __TBB_NOEXCEPT(true)
 
size_t size () const __TBB_NOEXCEPT(true)
 

Private Attributes

iterator my_begin
 
iterator my_end
 

Detailed Description

template<typename T>
class internal::initializer_list_wrapper< T >

Definition at line 329 of file _flow_graph_types_impl.h.

Member Typedef Documentation

◆ const_iterator

template<typename T>
typedef const T* internal::initializer_list_wrapper< T >::const_iterator

Definition at line 337 of file _flow_graph_types_impl.h.

◆ const_reference

template<typename T>
typedef const T& internal::initializer_list_wrapper< T >::const_reference

Definition at line 333 of file _flow_graph_types_impl.h.

◆ iterator

template<typename T>
typedef T* internal::initializer_list_wrapper< T >::iterator

Definition at line 336 of file _flow_graph_types_impl.h.

◆ reference

template<typename T>
typedef const T& internal::initializer_list_wrapper< T >::reference

Definition at line 332 of file _flow_graph_types_impl.h.

◆ size_type

template<typename T>
typedef size_t internal::initializer_list_wrapper< T >::size_type

Definition at line 334 of file _flow_graph_types_impl.h.

◆ value_type

template<typename T>
typedef T internal::initializer_list_wrapper< T >::value_type

Definition at line 331 of file _flow_graph_types_impl.h.

Constructor & Destructor Documentation

◆ initializer_list_wrapper() [1/3]

template<typename T>
internal::initializer_list_wrapper< T >::initializer_list_wrapper ( std::initializer_list< T >  il)
inline

Definition at line 339 of file _flow_graph_types_impl.h.

339  : my_begin( static_cast<T*>(malloc( il.size()*sizeof( T ) )) ) {
340  iterator dst = my_begin;
341  for ( typename std::initializer_list<T>::const_iterator src = il.begin(); src != il.end(); ++src )
342  new (dst++) T( *src );
343  my_end = dst;
344  }

References internal::initializer_list_wrapper< T >::my_begin, and internal::initializer_list_wrapper< T >::my_end.

◆ initializer_list_wrapper() [2/3]

template<typename T>
internal::initializer_list_wrapper< T >::initializer_list_wrapper ( const initializer_list_wrapper< T > &  ilw)
inline

Definition at line 346 of file _flow_graph_types_impl.h.

346  : my_begin( static_cast<T*>(malloc( ilw.size()*sizeof( T ) )) ) {
347  iterator dst = my_begin;
348  for ( typename std::initializer_list<T>::const_iterator src = ilw.begin(); src != ilw.end(); ++src )
349  new (dst++) T( *src );
350  my_end = dst;
351  }

References internal::initializer_list_wrapper< T >::my_begin, and internal::initializer_list_wrapper< T >::my_end.

◆ initializer_list_wrapper() [3/3]

template<typename T>
internal::initializer_list_wrapper< T >::initializer_list_wrapper ( initializer_list_wrapper< T > &&  ilw)
inline

Definition at line 354 of file _flow_graph_types_impl.h.

354  : my_begin( ilw.my_begin ), my_end( ilw.my_end ) {
355  ilw.my_begin = ilw.my_end = NULL;
356  }

◆ ~initializer_list_wrapper()

template<typename T>
internal::initializer_list_wrapper< T >::~initializer_list_wrapper ( )
inline

Definition at line 359 of file _flow_graph_types_impl.h.

359  {
360  if ( my_begin )
361  free( my_begin );
362  }

References internal::initializer_list_wrapper< T >::my_begin.

Member Function Documentation

◆ begin()

template<typename T>
const_iterator internal::initializer_list_wrapper< T >::begin ( ) const
inline

◆ end()

template<typename T>
const_iterator internal::initializer_list_wrapper< T >::end ( ) const
inline

◆ size()

Member Data Documentation

◆ my_begin

◆ my_end


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

Copyright © 2005-2019 Intel Corporation. All Rights Reserved.

Intel, Pentium, Intel Xeon, Itanium, Intel XScale and VTune are registered trademarks or trademarks of Intel Corporation or its subsidiaries in the United States and other countries.

* Other names and brands may be claimed as the property of others.