00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013 #include "config.hpp"
00014
00015 #if !defined(ARAGELI_INCLUDE_CPP_WITH_EXPORT_TEMPLATE) || \
00016 defined(ARAGELI_INCLUDE_CPP_WITH_EXPORT_TEMPLATE_TYPE_TRAITS)
00017
00018 #include "type_traits.hpp"
00019
00020
00021 namespace Arageli
00022 {
00023
00024 template <typename T>
00025 const type_category::type
00026 type_traits_default<T>::category_value =
00027 category_type();
00028
00029 template <typename T>
00030 const typename auto_type_category_by_numeric_limits<T>::value_type
00031 type_traits<T>::category_value = category_type();
00032
00033 template <typename T>
00034 const type_category::complex
00035 type_traits<std::complex<T> >::category_value = type_category::complex();
00036
00037 template <typename Iter, typename Val>
00038 const type_category::iterator
00039 type_traits_iterator<Iter, Val>::category_value =
00040 type_category::iterator();
00041
00042 template <typename Str, typename Char>
00043 const type_category::string
00044 type_traits_string<Str, Char>::category_value =
00045 type_category::string();
00046
00047 template <typename Str>
00048 const type_category::iostream
00049 type_traits_iostream<Str>::category_value =
00050 type_category::iostream();
00051
00052
00053 }
00054
00055
00056 #endif