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
mpl
set
aux_
set/aux_/has_key_impl.hpp
Go to the documentation of this file.
1
2
#ifndef BOOST_MPL_SET_AUX_HAS_KEY_IMPL_HPP_INCLUDED
3
#define BOOST_MPL_SET_AUX_HAS_KEY_IMPL_HPP_INCLUDED
4
5
// Copyright Aleksey Gurtovoy 2003-2004
6
// Copyright David Abrahams 2003-2004
7
//
8
// Distributed under the Boost Software License, Version 1.0.
9
// (See accompanying file LICENSE_1_0.txt or copy at
10
// http://www.boost.org/LICENSE_1_0.txt)
11
//
12
// See http://www.boost.org/libs/mpl for documentation.
13
14
// $Id: has_key_impl.hpp 13472 2017-08-22 07:53:44Z richean $
15
// $Date: 2017-08-22 09:53:44 +0200 (Di, 22 Aug 2017) $
16
// $Revision: 13472 $
17
18
#include <
boost/mpl/set/aux_/tag.hpp
>
19
#include <
boost/mpl/has_key_fwd.hpp
>
20
#include <
boost/mpl/bool.hpp
>
21
#include <
boost/mpl/aux_/overload_names.hpp
>
22
#include <
boost/mpl/aux_/static_cast.hpp
>
23
#include <
boost/mpl/aux_/yes_no.hpp
>
24
#include <
boost/mpl/aux_/type_wrapper.hpp
>
25
#include <
boost/mpl/aux_/config/workaround.hpp
>
26
#include <
boost/mpl/aux_/config/static_constant.hpp
>
27
28
namespace
boost
{
namespace
mpl {
29
30
template
<>
31
struct
has_key_impl
< aux::set_tag >
32
{
33
template
<
typename
Set,
typename
T >
struct
apply
34
#if
BOOST_WORKAROUND
(
BOOST_MSVC
,
BOOST_TESTED_AT
(1400)) \
35
||
BOOST_WORKAROUND
(__EDG_VERSION__, <= 245)
36
{
37
BOOST_STATIC_CONSTANT
(
bool
, value =
38
(
sizeof
(
BOOST_MPL_AUX_OVERLOAD_CALL_IS_MASKED
(
39
Set
40
,
BOOST_MPL_AUX_STATIC_CAST
(
aux::type_wrapper<T>
*, 0)
41
) ) ==
sizeof
(
aux::no_tag
) )
42
);
43
44
typedef
bool_<value>
type
;
45
46
#else // ISO98 C++
47
:
bool_
<
48
(
sizeof
(
BOOST_MPL_AUX_OVERLOAD_CALL_IS_MASKED
(
49
Set
50
,
BOOST_MPL_AUX_STATIC_CAST
(
aux::type_wrapper<T>
*, 0)
51
) ) ==
sizeof
(
aux::no_tag
) )
52
>
53
{
54
#endif
55
};
56
};
57
58
}}
59
60
#endif // BOOST_MPL_SET_AUX_HAS_KEY_IMPL_HPP_INCLUDED
BOOST_WORKAROUND
#define BOOST_WORKAROUND(symbol, test)
Definition:
detail/workaround.hpp:233
BOOST_STATIC_CONSTANT
#define BOOST_STATIC_CONSTANT(type, assignment)
Definition:
suffix.hpp:394
bool.hpp
boost
BOOST_MOVE_USE_STANDARD_LIBRARY_MOVE.
overload_names.hpp
type_wrapper.hpp
workaround.hpp
yes_no.hpp
BOOST_TESTED_AT
#define BOOST_TESTED_AT(value)
Definition:
detail/workaround.hpp:258
boost::mpl::apply
primary template (not a specialization!)
Definition:
aux_/preprocessed/bcc/apply.hpp:163
tag.hpp
has_key_fwd.hpp
BOOST_MPL_AUX_OVERLOAD_CALL_IS_MASKED
#define BOOST_MPL_AUX_OVERLOAD_CALL_IS_MASKED(T, x)
Definition:
overload_names.hpp:44
boost::mpl::aux::type_wrapper
Definition:
type_wrapper.hpp:22
BOOST_MSVC
#define BOOST_MSVC
Definition:
visualc.hpp:23
static_constant.hpp
BOOST_MPL_AUX_STATIC_CAST
#define BOOST_MPL_AUX_STATIC_CAST(T, expr)
Definition:
static_cast.hpp:24
bool_
Definition:
mpl/bool.hpp:23
boost::mpl::aux::no_tag
char(& no_tag)[1]
Definition:
yes_no.hpp:25
static_cast.hpp
boost::mpl::has_key_impl
Definition:
aux_/has_key_impl.hpp:25
sick_visionary_ros
Author(s): SICK AG TechSupport 3D Snapshot
autogenerated on Thu Feb 8 2024 03:39:49