17 #ifndef EASTL_CALL_TRAITS_H
18 #define EASTL_CALL_TRAITS_H
21 #include <EASTL/internal/config.h>
22 #include <EASTL/type_traits.h>
24 #if defined(EA_PRAGMA_ONCE_SUPPORTED)
34 template <
typename T,
bool small_>
35 struct ct_imp2 {
typedef const T& param_type; };
38 struct ct_imp2<T, true> {
typedef const T param_type; };
40 template <
typename T,
bool isp,
bool b1>
41 struct ct_imp {
typedef const T& param_type; };
43 template <
typename T,
bool isp>
44 struct ct_imp<T, isp, true> {
typedef typename ct_imp2<T,
sizeof(T) <=
sizeof(
void*)>::param_type param_type; };
46 template <
typename T,
bool b1>
47 struct ct_imp<T, true, b1> {
typedef T
const param_type; };
57 typedef const T& const_reference;
65 typedef T& value_type;
67 typedef const T& const_reference;
68 typedef T& param_type;
72 template <
typename T,
size_t N>
76 typedef T array_type[N];
79 typedef const T* value_type;
80 typedef array_type& reference;
81 typedef const array_type& const_reference;
82 typedef const T*
const param_type;
86 template <
typename T,
size_t N>
90 typedef const T array_type[N];
93 typedef const T* value_type;
94 typedef array_type& reference;
95 typedef const array_type& const_reference;
96 typedef const T*
const param_type;
EA Standard Template Library.
Definition: algorithm.h:288
Definition: call_traits.h:53
Definition: call_traits.h:35
Definition: call_traits.h:41
Definition: type_fundamental.h:213