Range class. More...
Public Types | |
typedef std::integral_constant< bool, !std::is_const< T >::value > | is_mutable |
Type that specifies if the elements can be modified. More... | |
typedef nonconst_container_value_type< T >::type | value_type |
The type of each element. More... | |
typedef std::conditional< is_mutable::value, _mutable_range_template< value_type, Traits >, _const_range_template< value_type, Traits > >::type | _base_type |
Type for the base class. More... | |
typedef _base_type::native_handle_type | native_handle_type |
Type for the native handle of the container. More... | |
typedef value_type & | reference |
Type for a reference to an element. More... | |
typedef value_type const & | const_reference |
Type for a constant reference to an element. More... | |
typedef value_type * | pointer |
Type for a pointer to an element. More... | |
typedef value_type const * | const_pointer |
Type for a constant pointer to an element. More... | |
typedef Traits::template const_iterator< value_type >::type | const_iterator |
Type for constant iterator to the range. More... | |
typedef _base_type::const_reverse_iterator | const_reverse_iterator |
Type for constant reverse iterator to the range. More... | |
typedef Traits::template iterator< value_type >::type | iterator |
Type for iterator to the range. More... | |
typedef _base_type::reverse_iterator | reverse_iterator |
Type for reverse iterator to the range. More... | |
typedef _base_type::size_type | size_type |
Type for size information. More... | |
typedef _base_type::difference_type | difference_type |
Type to represent the distance between two iterators. More... | |
Public Member Functions | |
_range_template () | |
Creates a singular range object. | |
_range_template (native_handle_type handle) | |
Creates a range object wrapping the given native container handle. | |
Range class.
Provide objects for accessing and/or modifying elements inside a container without modifying the container itself.
typedef std::integral_constant<bool, !std::is_const<T>::value> efl::eina::_range_template< T, Traits >::is_mutable |
Type that specifies if the elements can be modified.
typedef nonconst_container_value_type<T>::type efl::eina::_range_template< T, Traits >::value_type |
The type of each element.
typedef std::conditional<is_mutable::value, _mutable_range_template<value_type, Traits> , _const_range_template<value_type, Traits> >::type efl::eina::_range_template< T, Traits >::_base_type |
Type for the base class.
typedef _base_type::native_handle_type efl::eina::_range_template< T, Traits >::native_handle_type |
Type for the native handle of the container.
typedef value_type& efl::eina::_range_template< T, Traits >::reference |
Type for a reference to an element.
typedef value_type const& efl::eina::_range_template< T, Traits >::const_reference |
Type for a constant reference to an element.
typedef value_type* efl::eina::_range_template< T, Traits >::pointer |
Type for a pointer to an element.
typedef value_type const* efl::eina::_range_template< T, Traits >::const_pointer |
Type for a constant pointer to an element.
typedef Traits::template const_iterator<value_type>::type efl::eina::_range_template< T, Traits >::const_iterator |
Type for constant iterator to the range.
typedef _base_type::const_reverse_iterator efl::eina::_range_template< T, Traits >::const_reverse_iterator |
Type for constant reverse iterator to the range.
typedef Traits::template iterator<value_type>::type efl::eina::_range_template< T, Traits >::iterator |
Type for iterator to the range.
typedef _base_type::reverse_iterator efl::eina::_range_template< T, Traits >::reverse_iterator |
Type for reverse iterator to the range.
typedef _base_type::size_type efl::eina::_range_template< T, Traits >::size_type |
Type for size information.
typedef _base_type::difference_type efl::eina::_range_template< T, Traits >::difference_type |
Type to represent the distance between two iterators.