HepMC3 event record library
Public Types | Public Member Functions | Static Public Member Functions
type_caster< T, enable_if_t< std::is_arithmetic< T >::value &&!is_std_char_type< T >::value > > Struct Template Reference

Public Types

using _py_type_0 = conditional_t< sizeof(T)<=sizeof(long), long, long long >
 
using _py_type_1 = conditional_t< std::is_signed< T >::value, _py_type_0, typename std::make_unsigned< _py_type_0 >::type >
 
using py_type = conditional_t< std::is_floating_point< T >::value, double, _py_type_1 >
 

Public Member Functions

bool load (handle src, bool convert)
 
 PYBIND11_TYPE_CASTER (T, _< std::is_integral< T >::value >("int","float"))
 

Static Public Member Functions

template<typename U = T>
static std::enable_if
< std::is_floating_point< U >
::value, handle >::type 
cast (U src, return_value_policy, handle)
 
template<typename U = T>
static std::enable_if
<!std::is_floating_point< U >
::value &&std::is_signed< U >
::value &&(sizeof(U)<=sizeof(long)),
handle >::type 
cast (U src, return_value_policy, handle)
 
template<typename U = T>
static std::enable_if
<!std::is_floating_point< U >
::value &&std::is_unsigned< U >
::value &&(sizeof(U)<=sizeof(unsigned
long)), handle >::type 
cast (U src, return_value_policy, handle)
 
template<typename U = T>
static std::enable_if
<!std::is_floating_point< U >
::value &&std::is_signed< U >
::value &&(sizeof(U) > sizeof(long)),
handle >::type 
cast (U src, return_value_policy, handle)
 
template<typename U = T>
static std::enable_if
<!std::is_floating_point< U >
::value &&std::is_unsigned< U >
::value &&(sizeof(U) > sizeof(unsigned
long)), handle >::type 
cast (U src, return_value_policy, handle)
 

Detailed Description

template<typename T>
struct type_caster< T, enable_if_t< std::is_arithmetic< T >::value &&!is_std_char_type< T >::value > >

Definition at line 1011 of file cast.h.


The documentation for this struct was generated from the following file: