35 #ifndef _Wolframe_SERIALIZE_STRUCT_TRAITS_GET_CATEGORY_HPP_INCLUDED
36 #define _Wolframe_SERIALIZE_STRUCT_TRAITS_GET_CATEGORY_HPP_INCLUDED
41 #include <boost/lexical_cast.hpp>
42 #include <boost/utility/enable_if.hpp>
43 #include <boost/type_traits.hpp>
44 #include <boost/detail/select_type.hpp>
45 #include <boost/type_traits/function_traits.hpp>
59 template<typename T,bool is_class_type=boost::is_class<T>::value>
81 boost::integral_constant<bool, has_description_method_noprm<T>::value>
88 typename boost::enable_if_c<
89 boost::is_same< std::vector< typename T::value_type> ,T>::value && !boost::is_same<std::string,T>::value
95 typename boost::enable_if_c<
96 has_description_method<T>::value
101 template <
typename T>
102 typename boost::enable_if_c<
103 boost::is_arithmetic<T>::value
104 || boost::is_same<std::string,T>::value
105 || boost::is_same<types::DateTime,T>::value
106 || boost::is_same<types::BigNumber,T>::value
char small_type
Definition: traits_getCategory.hpp:65
Type for representing arbitrary precision fixed point numbers and big integers as binary coded decima...
category tag for a structure with named elements
Definition: traits_getCategory.hpp:53
Definition: traits_getCategory.hpp:68
category tag for a std::vector of any type
Definition: traits_getCategory.hpp:54
Defines allowed log levels of the logger.
Definition: traits_getCategory.hpp:66
category tag for an atomic type
Definition: traits_getCategory.hpp:55
Definition: traits_getCategory.hpp:63
conditional template for detecting if a type is a class with a static/member method getStructDescript...
Definition: traits_getCategory.hpp:60
Date and datetime value type.
static const bool value
value with the boolean property corresponding has getStructDescription static/member method without p...
Definition: traits_getCategory.hpp:76
small_type dummy[2]
Definition: traits_getCategory.hpp:66
Defines the non intrusive base class of serialization/deserialization of objects interfaced as TypedI...
static small_type has_matching_member(tester_static_signature<&U::getStructDescription > *)
boost::enable_if_c< boost::is_same< std::vector< typename T::value_type >,T >::value &&!boost::is_same< std::string, T >::value,const vector_ & >::type getCategory(const T &)
get category vector_ for a type
Definition: traits_getCategory.hpp:90