x
Yes
No
Do you want to visit DriveHQ English website?
Inicio
Características
Precios
Prueba gratuita
Software cliente
Acerca de nosotros
Servidor de archivos
|
Solución de copias de seguridad
|
Servidor FTP
|
Servidor de correo electrónico
|
Alojamiento web
|
Software cliente
Servidor de archivos
Solución de copia de seguridad
Servidor FTP
Servidor de correo electrónico
Alojamiento web
Software cliente
indirect_traits.hpp - Hosted on DriveHQ Cloud IT Platform
Arriba
Subir
Descargar
Compartir
Publicar
Nueva carpeta
Nuevo archivo
Copiar
Cortar
Eliminar
Pegar
Clasificación
Actualizar
Ruta de la carpeta: \\game3dprogramming\materials\GameFactory\GameFactoryDemo\references\boost_1_35_0\boost\detail\indirect_traits.hpp
Girar
Efecto
Propiedad
Historial
// Copyright David Abrahams 2002. // Distributed under the Boost Software License, Version 1.0. (See // accompanying file LICENSE_1_0.txt or copy at // http://www.boost.org/LICENSE_1_0.txt) #ifndef INDIRECT_TRAITS_DWA2002131_HPP # define INDIRECT_TRAITS_DWA2002131_HPP # include
# include
# include
# include
# include
# include
# include
# include
# include
# include
# include
# include
# include
# include
# include
# include
# include
# include
# include
# ifdef BOOST_NO_TEMPLATE_PARTIAL_SPECIALIZATION # include
# endif namespace boost { namespace detail { namespace indirect_traits { # ifndef BOOST_NO_TEMPLATE_PARTIAL_SPECIALIZATION template
struct is_reference_to_const : mpl::false_ { }; template
struct is_reference_to_const
: mpl::true_ { }; # if defined(BOOST_MSVC) && _MSC_FULL_VER <= 13102140 // vc7.01 alpha workaround template
struct is_reference_to_const
: mpl::true_ { }; # endif template
struct is_reference_to_function : mpl::false_ { }; template
struct is_reference_to_function
: is_function
{ }; template
struct is_pointer_to_function : mpl::false_ { }; // There's no such thing as a pointer-to-cv-function, so we don't need // specializations for those template
struct is_pointer_to_function
: is_function
{ }; template
struct is_reference_to_member_function_pointer_impl : mpl::false_ { }; template
struct is_reference_to_member_function_pointer_impl
: is_member_function_pointer
::type> { }; template
struct is_reference_to_member_function_pointer : is_reference_to_member_function_pointer_impl
{ BOOST_MPL_AUX_LAMBDA_SUPPORT(1,is_reference_to_member_function_pointer,(T)) }; template
struct is_reference_to_function_pointer_aux : mpl::and_< is_reference
, is_pointer_to_function< typename remove_cv< typename remove_reference
::type >::type > > { // There's no such thing as a pointer-to-cv-function, so we don't need specializations for those }; template
struct is_reference_to_function_pointer : mpl::if_< is_reference_to_function
, mpl::false_ , is_reference_to_function_pointer_aux
>::type { }; template
struct is_reference_to_non_const : mpl::and_< is_reference
, mpl::not_< is_reference_to_const
> > { }; template
struct is_reference_to_volatile : mpl::false_ { }; template
struct is_reference_to_volatile
: mpl::true_ { }; # if defined(BOOST_MSVC) && _MSC_FULL_VER <= 13102140 // vc7.01 alpha workaround template
struct is_reference_to_volatile
: mpl::true_ { }; # endif template
struct is_reference_to_pointer : mpl::false_ { }; template
struct is_reference_to_pointer
: mpl::true_ { }; template
struct is_reference_to_pointer
: mpl::true_ { }; template
struct is_reference_to_pointer
: mpl::true_ { }; template
struct is_reference_to_pointer
: mpl::true_ { }; template
struct is_reference_to_class : mpl::and_< is_reference
, is_class< typename remove_cv< typename remove_reference
::type >::type > > { BOOST_MPL_AUX_LAMBDA_SUPPORT(1,is_reference_to_class,(T)) }; template
struct is_pointer_to_class : mpl::and_< is_pointer
, is_class< typename remove_cv< typename remove_pointer
::type >::type > > { BOOST_MPL_AUX_LAMBDA_SUPPORT(1,is_pointer_to_class,(T)) }; # else using namespace boost::detail::is_function_ref_tester_; typedef char (&inner_yes_type)[3]; typedef char (&inner_no_type)[2]; typedef char (&outer_no_type)[1]; template
struct is_const_help { typedef typename mpl::if_< is_const
, inner_yes_type , inner_no_type >::type type; }; template
struct is_volatile_help { typedef typename mpl::if_< is_volatile
, inner_yes_type , inner_no_type >::type type; }; template
struct is_pointer_help { typedef typename mpl::if_< is_pointer
, inner_yes_type , inner_no_type >::type type; }; template
struct is_class_help { typedef typename mpl::if_< is_class
, inner_yes_type , inner_no_type >::type type; }; template
struct is_reference_to_function_aux { static T t; BOOST_STATIC_CONSTANT( bool, value = sizeof(detail::is_function_ref_tester(t,0)) == sizeof(::boost::type_traits::yes_type)); typedef mpl::bool_
type; }; template
struct is_reference_to_function : mpl::if_
, is_reference_to_function_aux
, mpl::bool_
>::type { }; template
struct is_pointer_to_function_aux { static T t; BOOST_STATIC_CONSTANT( bool, value = sizeof(::boost::type_traits::is_function_ptr_tester(t)) == sizeof(::boost::type_traits::yes_type)); typedef mpl::bool_
type; }; template
struct is_pointer_to_function : mpl::if_
, is_pointer_to_function_aux
, mpl::bool_
>::type { BOOST_MPL_AUX_LAMBDA_SUPPORT(1,is_pointer_to_function,(T)) }; struct false_helper1 { template
struct apply : mpl::false_ { }; }; template
typename is_const_help
::type reference_to_const_helper(V&); outer_no_type reference_to_const_helper(...); struct true_helper1 { template
struct apply { static T t; BOOST_STATIC_CONSTANT( bool, value = sizeof(reference_to_const_helper(t)) == sizeof(inner_yes_type)); typedef mpl::bool_
type; }; }; template
struct is_reference_to_const_helper1 : true_helper1 { }; template <> struct is_reference_to_const_helper1
: false_helper1 { }; template
struct is_reference_to_const : is_reference_to_const_helper1
::value>::template apply
{ }; template
struct is_reference_to_non_const_helper1 { template
struct apply { static T t; BOOST_STATIC_CONSTANT( bool, value = sizeof(reference_to_const_helper(t)) == sizeof(inner_no_type)); typedef mpl::bool_
type; }; }; template <> struct is_reference_to_non_const_helper1
: false_helper1 { }; template
struct is_reference_to_non_const : is_reference_to_non_const_helper1
::value>::template apply
{ BOOST_MPL_AUX_LAMBDA_SUPPORT(1,is_reference_to_non_const,(T)) }; template
typename is_volatile_help
::type reference_to_volatile_helper(V&); outer_no_type reference_to_volatile_helper(...); template
struct is_reference_to_volatile_helper1 { template
struct apply { static T t; BOOST_STATIC_CONSTANT( bool, value = sizeof(reference_to_volatile_helper(t)) == sizeof(inner_yes_type)); typedef mpl::bool_
type; }; }; template <> struct is_reference_to_volatile_helper1
: false_helper1 { }; template
struct is_reference_to_volatile : is_reference_to_volatile_helper1
::value>::template apply
{ }; template
typename is_pointer_help
::type reference_to_pointer_helper(V&); outer_no_type reference_to_pointer_helper(...); template
struct reference_to_pointer_impl { static T t; BOOST_STATIC_CONSTANT( bool, value = (sizeof((reference_to_pointer_helper)(t)) == sizeof(inner_yes_type)) ); typedef mpl::bool_
type; }; template
struct is_reference_to_pointer : mpl::eval_if
, reference_to_pointer_impl
, mpl::false_>::type { BOOST_MPL_AUX_LAMBDA_SUPPORT(1,is_reference_to_pointer,(T)) }; template
struct is_reference_to_function_pointer : mpl::eval_if
, is_pointer_to_function_aux
, mpl::false_>::type { BOOST_MPL_AUX_LAMBDA_SUPPORT(1,is_reference_to_function_pointer,(T)) }; template
struct is_member_function_pointer_help : mpl::if_
, inner_yes_type, inner_no_type> {}; template
typename is_member_function_pointer_help
::type member_function_pointer_helper(V&); outer_no_type member_function_pointer_helper(...); template
struct is_pointer_to_member_function_aux { static T t; BOOST_STATIC_CONSTANT( bool, value = sizeof((member_function_pointer_helper)(t)) == sizeof(inner_yes_type)); typedef mpl::bool_
type; }; template
struct is_reference_to_member_function_pointer : mpl::if_< is_reference
, is_pointer_to_member_function_aux
, mpl::bool_
>::type { BOOST_MPL_AUX_LAMBDA_SUPPORT(1,is_reference_to_member_function_pointer,(T)) }; template
typename is_class_help
::type reference_to_class_helper(V const volatile&); outer_no_type reference_to_class_helper(...); template
struct is_reference_to_class { static T t; BOOST_STATIC_CONSTANT( bool, value = (is_reference
::value & (sizeof(reference_to_class_helper(t)) == sizeof(inner_yes_type))) ); typedef mpl::bool_
type; BOOST_MPL_AUX_LAMBDA_SUPPORT(1,is_reference_to_class,(T)) }; template
typename is_class_help
::type pointer_to_class_helper(V const volatile*); outer_no_type pointer_to_class_helper(...); template
struct is_pointer_to_class { static T t; BOOST_STATIC_CONSTANT( bool, value = (is_pointer
::value && sizeof(pointer_to_class_helper(t)) == sizeof(inner_yes_type)) ); typedef mpl::bool_
type; }; # endif // BOOST_NO_TEMPLATE_PARTIAL_SPECIALIZATION } using namespace indirect_traits; }} // namespace boost::python::detail #endif // INDIRECT_TRAITS_DWA2002131_HPP
indirect_traits.hpp
Dirección de la página
Dirección del archivo
Anterior
19/61
Siguiente
Descargar
( 11 KB )
Comments
Total ratings:
0
Average rating:
No clasificado
of 10
Would you like to comment?
Join now
, or
Logon
if you are already a member.