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
smart_ptr
detail
array_traits.hpp
Go to the documentation of this file.
1
/*
2
* Copyright (c) 2012-2014 Glen Joseph Fernandes
3
* glenfe at live dot com
4
*
5
* Distributed under the Boost Software License,
6
* Version 1.0. (See accompanying file LICENSE_1_0.txt
7
* or copy at http://boost.org/LICENSE_1_0.txt)
8
*/
9
#ifndef BOOST_SMART_PTR_DETAIL_ARRAY_TRAITS_HPP
10
#define BOOST_SMART_PTR_DETAIL_ARRAY_TRAITS_HPP
11
12
#include <
boost/type_traits/remove_cv.hpp
>
13
14
namespace
boost
{
15
namespace
detail {
16
template
<
class
T>
17
struct
array_base
{
18
typedef
typename
boost::remove_cv<T>::type
type
;
19
};
20
21
template
<
class
T>
22
struct
array_base
<
T
[]> {
23
typedef
typename
array_base<T>::type
type
;
24
};
25
26
template
<
class
T, std::
size_t
N>
27
struct
array_base
<
T
[N]> {
28
typedef
typename
array_base<T>::type
type
;
29
};
30
31
template
<
class
T>
32
struct
array_total
{
33
enum
{
34
size
= 1
35
};
36
};
37
38
template
<
class
T, std::
size_t
N>
39
struct
array_total
<
T
[N]> {
40
enum
{
41
size
= N *
array_total<T>::size
42
};
43
};
44
45
template
<
class
T>
46
struct
array_inner
;
47
48
template
<
class
T>
49
struct
array_inner
<
T
[]> {
50
typedef
T
type
;
51
};
52
53
template
<
class
T, std::
size_t
N>
54
struct
array_inner
<
T
[N]> {
55
typedef
T
type
;
56
};
57
}
58
}
59
60
#endif
boost::detail::array_base< T[]>::type
array_base< T >::type type
Definition:
array_traits.hpp:23
T
T
Definition:
mem_fn_cc.hpp:25
boost::detail::array_inner< T[N]>::type
T type
Definition:
array_traits.hpp:55
boost::detail::array_inner
Definition:
array_traits.hpp:46
remove_cv.hpp
boost
BOOST_MOVE_USE_STANDARD_LIBRARY_MOVE.
boost::detail::array_base
Definition:
array_traits.hpp:17
boost::detail::array_base< T[N]>::type
array_base< T >::type type
Definition:
array_traits.hpp:28
boost::detail::array_base::type
boost::remove_cv< T >::type type
Definition:
array_traits.hpp:18
boost::detail::array_total
Definition:
array_traits.hpp:32
boost::detail::array_total::size
@ size
Definition:
array_traits.hpp:34
boost::remove_cv::type
T type
Definition:
remove_cv.hpp:21
boost::detail::array_inner< T[]>::type
T type
Definition:
array_traits.hpp:50
sick_visionary_ros
Author(s): SICK AG TechSupport 3D Snapshot
autogenerated on Thu Feb 8 2024 03:36:32