Main Page
Namespaces
Namespace List
Namespace Members
All
_
a
b
c
d
e
f
g
h
i
k
l
m
n
o
p
r
s
t
u
v
w
x
y
Functions
_
a
b
c
d
e
f
g
h
i
l
m
n
o
p
r
s
t
u
v
w
x
y
Variables
_
a
b
i
k
n
p
r
s
t
v
Typedefs
a
b
c
f
h
i
m
n
p
s
t
u
w
y
Enumerations
Enumerator
a
b
c
e
f
h
i
l
m
n
o
p
r
s
t
u
v
w
Classes
Class List
Class Hierarchy
Class Members
All
_
a
b
c
d
e
f
g
h
i
k
l
m
n
o
p
r
s
t
u
v
w
x
y
z
~
Functions
_
a
b
c
d
e
f
g
h
i
k
l
m
n
o
p
r
s
t
u
v
w
x
~
Variables
_
a
b
c
d
e
f
h
i
k
l
m
n
o
p
r
s
t
u
v
w
x
y
z
Typedefs
_
a
b
c
d
e
f
h
i
k
l
m
n
o
p
r
s
t
u
v
w
y
Enumerations
Enumerator
a
b
c
e
g
i
k
l
m
n
o
p
r
s
u
v
Related Functions
a
b
c
d
e
i
l
m
o
r
s
u
w
x
Files
File List
File Members
All
_
a
b
c
d
e
f
g
h
i
l
m
o
p
r
s
t
u
v
w
x
Functions
_
a
b
c
d
e
g
m
o
p
r
s
t
Variables
_
a
b
f
g
l
t
u
Typedefs
Enumerations
Enumerator
Macros
_
a
b
c
e
f
g
i
l
m
r
s
u
v
w
x
sick_visionary_cpp_shared
3pp
boost
range
detail
detail/begin.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_DETAIL_BEGIN_HPP
12
#define BOOST_RANGE_DETAIL_BEGIN_HPP
13
14
#include <
boost/config.hpp
>
// BOOST_MSVC
15
#include <
boost/detail/workaround.hpp
>
16
#include <
boost/range/iterator.hpp
>
17
#include <
boost/range/detail/common.hpp
>
18
19
namespace
boost
20
{
21
22
namespace
range_detail
23
{
24
template
<
typename
T >
25
struct
range_begin
;
26
28
// default
30
31
template
<>
32
struct
range_begin
<
std_container_
>
33
{
34
template
<
typename
C >
35
static
BOOST_RANGE_DEDUCED_TYPENAME
range_iterator<C>::type
fun
( C& c )
36
{
37
return
c.begin();
38
};
39
};
40
42
// pair
44
45
template
<>
46
struct
range_begin
<
std_pair_
>
47
{
48
template
<
typename
P >
49
static
BOOST_RANGE_DEDUCED_TYPENAME
range_iterator<P>::type
fun
(
const
P& p )
50
{
51
return
p.first;
52
}
53
};
54
56
// array
58
59
template
<>
60
struct
range_begin
<
array_
>
61
{
62
template
<
typename
T>
63
static
BOOST_RANGE_DEDUCED_TYPENAME
range_value<T>::type
*
fun
(
T
& t)
64
{
65
return
t;
66
}
67
};
68
69
}
// namespace 'range_detail'
70
71
namespace
range_adl_barrier
72
{
73
template
<
typename
C >
74
inline
BOOST_RANGE_DEDUCED_TYPENAME
range_iterator<C>::type
75
begin
( C& c )
76
{
77
return
range_detail::range_begin< BOOST_RANGE_DEDUCED_TYPENAME range_detail::range<C>::type
>::fun( c );
78
}
79
}
80
}
// namespace 'boost'
81
82
83
#endif
boost::range_detail::array_
mpl::int_< 4 >::type array_
Definition:
common.hpp:51
boost::range_detail::range_begin< std_container_ >::fun
static BOOST_RANGE_DEDUCED_TYPENAME range_iterator< C >::type fun(C &c)
Definition:
detail/begin.hpp:35
T
T
Definition:
mem_fn_cc.hpp:25
config.hpp
common.hpp
boost::range_adl_barrier::begin
BOOST_DEDUCED_TYPENAME range_iterator< T >::type begin(T &r)
Definition:
begin.hpp:97
boost
BOOST_MOVE_USE_STANDARD_LIBRARY_MOVE.
boost::range_detail::range_begin< array_ >::fun
static BOOST_RANGE_DEDUCED_TYPENAME range_value< T >::type * fun(T &t)
Definition:
detail/begin.hpp:63
boost::range_detail::range_begin< std_pair_ >::fun
static BOOST_RANGE_DEDUCED_TYPENAME range_iterator< P >::type fun(const P &p)
Definition:
detail/begin.hpp:49
boost::range_iterator
Definition:
range/iterator.hpp:61
boost::range_detail::range_begin
Definition:
detail/begin.hpp:25
boost::range_detail::std_pair_
mpl::int_< 2 >::type std_pair_
Definition:
common.hpp:49
BOOST_RANGE_DEDUCED_TYPENAME
#define BOOST_RANGE_DEDUCED_TYPENAME
Definition:
range/config.hpp:29
iterator.hpp
boost::range_value
Definition:
range_fwd.hpp:53
boost::range_detail::std_container_
mpl::int_< 1 >::type std_container_
Definition:
common.hpp:48
workaround.hpp
sick_visionary_ros
Author(s): SICK AG TechSupport 3D Snapshot
autogenerated on Thu Feb 8 2024 03:37:12