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
type_traits
remove_reference.hpp
Go to the documentation of this file.
1
2
// (C) Copyright Steve Cleary, Beman Dawes, Howard Hinnant & John Maddock 2000.
3
// Use, modification and distribution are subject to the Boost Software License,
4
// Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at
5
// http://www.boost.org/LICENSE_1_0.txt).
6
//
7
// See http://www.boost.org/libs/type_traits for most recent version including documentation.
8
9
#ifndef BOOST_TT_REMOVE_REFERENCE_HPP_INCLUDED
10
#define BOOST_TT_REMOVE_REFERENCE_HPP_INCLUDED
11
12
#include <
boost/config.hpp
>
13
#include <
boost/detail/workaround.hpp
>
14
15
namespace
boost
{
16
17
18
namespace
detail{
19
//
20
// We can't filter out rvalue_references at the same level as
21
// references or we get ambiguities from msvc:
22
//
23
template
<
class
T>
24
struct
remove_rvalue_ref
25
{
26
typedef
T
type
;
27
};
28
#ifndef BOOST_NO_CXX11_RVALUE_REFERENCES
29
template
<
class
T>
30
struct
remove_rvalue_ref
<
T
&&>
31
{
32
typedef
T
type
;
33
};
34
#endif
35
36
}
// namespace detail
37
38
template
<
class
T>
struct
remove_reference
{
typedef
typename
boost::detail::remove_rvalue_ref<T>::type
type
; };
39
template
<
class
T>
struct
remove_reference
<
T
&>{
typedef
T
type
; };
40
41
#if defined(BOOST_ILLEGAL_CV_REFERENCES)
42
// these are illegal specialisations; cv-qualifies applied to
43
// references have no effect according to [8.3.2p1],
44
// C++ Builder requires them though as it treats cv-qualified
45
// references as distinct types...
46
template
<
class
T>
struct
remove_reference
<
T
&
const
>{
typedef
T
type
; };
47
template
<
class
T>
struct
remove_reference<
T
&
volatile
>{
typedef
T
type; };
48
template
<
class
T>
struct
remove_reference<
T
&
const
volatile
>{
typedef
T
type; };
49
#endif
50
51
52
}
// namespace boost
53
54
#endif // BOOST_TT_REMOVE_REFERENCE_HPP_INCLUDED
boost::detail::remove_rvalue_ref
Definition:
remove_reference.hpp:24
T
T
Definition:
mem_fn_cc.hpp:25
boost::remove_reference< T & >::type
T type
Definition:
remove_reference.hpp:39
config.hpp
boost::type
Definition:
type.hpp:14
boost
BOOST_MOVE_USE_STANDARD_LIBRARY_MOVE.
boost::remove_reference
Definition:
remove_reference.hpp:38
boost::detail::remove_rvalue_ref::type
T type
Definition:
remove_reference.hpp:26
boost::detail::remove_rvalue_ref< T && >::type
T type
Definition:
remove_reference.hpp:32
boost::remove_reference::type
boost::detail::remove_rvalue_ref< T >::type type
Definition:
remove_reference.hpp:38
workaround.hpp
sick_visionary_ros
Author(s): SICK AG TechSupport 3D Snapshot
autogenerated on Thu Feb 8 2024 03:45:49