range/iterator.hpp
Go to the documentation of this file.
1 // Boost.Range library
2 //
3 // Copyright Thorsten Ottosen 2003-2004. Use, modification and
4 // distribution is subject to the Boost Software License, Version
5 // 1.0. (See accompanying file LICENSE_1_0.txt or copy at
6 // http://www.boost.org/LICENSE_1_0.txt)
7 //
8 // For more information, see http://www.boost.org/libs/range/
9 //
10 
11 #ifndef BOOST_RANGE_ITERATOR_HPP
12 #define BOOST_RANGE_ITERATOR_HPP
13 
14 #if defined(_MSC_VER)
15 # pragma once
16 #endif
17 
18 #include <boost/range/config.hpp>
24 #include <boost/mpl/eval_if.hpp>
25 
26 namespace boost
27 {
28 
29 #if BOOST_WORKAROUND(BOOST_MSVC, == 1310)
30 
31  namespace range_detail_vc7_1
32  {
33  template< typename C, typename Sig = void(C) >
34  struct range_iterator
35  {
37  mpl::eval_if_c< is_const<C>::value,
38  range_const_iterator< typename remove_const<C>::type >,
39  range_mutable_iterator<C> >::type type;
40  };
41 
42  template< typename C, typename T >
43  struct range_iterator< C, void(T[]) >
44  {
45  typedef T* type;
46  };
47  }
48 
49  template< typename C, typename Enabler=void >
50  struct range_iterator
51  {
52 
54  range_detail_vc7_1::range_iterator<C>::type type;
55 
56  };
57 
58 #else
59 
60  template< typename C, typename Enabler=void >
62  : mpl::if_c<
63  is_const<typename remove_reference<C>::type>::value,
64  range_const_iterator<typename remove_const<typename remove_reference<C>::type>::type>,
65  range_mutable_iterator<typename remove_reference<C>::type>
66  >::type
67  {
68  };
69 
70 #endif
71 
72 } // namespace boost
73 
74 #endif
T
T
Definition: mem_fn_cc.hpp:25
boost::type
Definition: type.hpp:14
boost
BOOST_MOVE_USE_STANDARD_LIBRARY_MOVE.
const_iterator.hpp
boost::mpl::if_c
Definition: mpl/if.hpp:34
mutable_iterator.hpp
boost::range_iterator
Definition: range/iterator.hpp:61
remove_const.hpp
range_fwd.hpp
BOOST_RANGE_DEDUCED_TYPENAME
#define BOOST_RANGE_DEDUCED_TYPENAME
Definition: range/config.hpp:29
is_const.hpp
eval_if.hpp
config.hpp


sick_visionary_ros
Author(s): SICK AG TechSupport 3D Snapshot
autogenerated on Thu Feb 8 2024 03:40:42