sick_visionary_cpp_shared
3pp
boost
type_traits
is_pointer.hpp
Go to the documentation of this file.
1
2
// (C) Copyright Dave Abrahams, Steve Cleary, Beman Dawes,
3
// Howard Hinnant and John Maddock 2000.
4
// (C) Copyright Mat Marcus, Jesse Jones and Adobe Systems Inc 2001
5
6
// Use, modification and distribution are subject to the Boost Software License,
7
// Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at
8
// http://www.boost.org/LICENSE_1_0.txt).
9
//
10
// See http://www.boost.org/libs/type_traits for most recent version including documentation.
11
12
// Fixed is_pointer, is_reference, is_const, is_volatile, is_same,
13
// is_member_pointer based on the Simulated Partial Specialization work
14
// of Mat Marcus and Jesse Jones. See http://opensource.adobe.com or
15
// http://groups.yahoo.com/group/boost/message/5441
16
// Some workarounds in here use ideas suggested from "Generic<Programming>:
17
// Mappings between Types and Values"
18
// by Andrei Alexandrescu (see http://www.cuj.com/experts/1810/alexandr.html).
19
20
21
#ifndef BOOST_TT_IS_POINTER_HPP_INCLUDED
22
#define BOOST_TT_IS_POINTER_HPP_INCLUDED
23
24
#include <
boost/type_traits/integral_constant.hpp
>
25
26
namespace
boost
{
27
28
#if defined( __CODEGEARC__ )
29
template
<
class
T>
struct
is_pointer :
public
integral_constant<bool, __is_pointer(T)>{};
30
#else
31
template
<
class
T>
struct
is_pointer
:
public
false_type
{};
32
template
<
class
T>
struct
is_pointer
<
T
*> :
public
true_type
{};
33
template
<
class
T>
struct
is_pointer
<
T
*
const
> :
public
true_type
{};
34
template
<
class
T>
struct
is_pointer
<
T
*
const
volatile
> :
public
true_type
{};
35
template
<
class
T>
struct
is_pointer
<
T
*
volatile
> :
public
true_type
{};
36
37
#ifdef BOOST_MSVC
38
template
<
class
T>
struct
is_pointer
<
T
const> :
public
is_pointer
<T>{};
39
template
<
class
T>
struct
is_pointer<
T
const volatile> :
public
is_pointer<T>{};
40
template
<
class
T>
struct
is_pointer<
T
volatile> :
public
is_pointer<T>{};
41
#endif
42
43
#endif
44
45
}
// namespace boost
46
47
#endif // BOOST_TT_IS_POINTER_HPP_INCLUDED
T
T
Definition:
mem_fn_cc.hpp:25
integral_constant.hpp
boost
BOOST_MOVE_USE_STANDARD_LIBRARY_MOVE.
boost::integral_constant< bool, false >
boost::is_pointer
Definition:
is_pointer.hpp:31
sick_visionary_ros
Author(s): SICK AG TechSupport 3D Snapshot
autogenerated on Thu Feb 8 2024 03:40:01