ossrv_pub/boost_apis/boost/integer_fwd.hpp
changeset 0 e4d67989cc36
equal deleted inserted replaced
-1:000000000000 0:e4d67989cc36
       
     1 //  Boost integer_fwd.hpp header file  ---------------------------------------//
       
     2 
       
     3 //  (C) Copyright Dave Abrahams and Daryle Walker 2001. Distributed under the Boost
       
     4 //  Software License, Version 1.0. (See accompanying file
       
     5 //  LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       
     6 
       
     7 //  See http://www.boost.org/libs/integer for documentation.
       
     8 
       
     9 #ifndef BOOST_INTEGER_FWD_HPP
       
    10 #define BOOST_INTEGER_FWD_HPP
       
    11 
       
    12 #include <climits>  // for UCHAR_MAX, etc.
       
    13 #include <cstddef>  // for std::size_t
       
    14 
       
    15 #include <boost/config.hpp>  // for BOOST_NO_INTRINSIC_WCHAR_T
       
    16 #include <boost/limits.hpp>  // for std::numeric_limits
       
    17 
       
    18 
       
    19 namespace boost
       
    20 {
       
    21 
       
    22 
       
    23 //  From <boost/cstdint.hpp>  ------------------------------------------------//
       
    24 
       
    25 // Only has typedefs or using statements, with #conditionals
       
    26 
       
    27 
       
    28 //  From <boost/integer_traits.hpp>  -----------------------------------------//
       
    29 
       
    30 template < class T >
       
    31     class integer_traits;
       
    32 
       
    33 template <  >
       
    34     class integer_traits< bool >;
       
    35 
       
    36 template <  >
       
    37     class integer_traits< char >;
       
    38 
       
    39 template <  >
       
    40     class integer_traits< signed char >;
       
    41 
       
    42 template <  >
       
    43     class integer_traits< unsigned char >;
       
    44 
       
    45 #ifndef BOOST_NO_INTRINSIC_WCHAR_T
       
    46 template <  >
       
    47     class integer_traits< wchar_t >;
       
    48 #endif
       
    49 
       
    50 template <  >
       
    51     class integer_traits< short >;
       
    52 
       
    53 template <  >
       
    54     class integer_traits< unsigned short >;
       
    55 
       
    56 template <  >
       
    57     class integer_traits< int >;
       
    58 
       
    59 template <  >
       
    60     class integer_traits< unsigned int >;
       
    61 
       
    62 template <  >
       
    63     class integer_traits< long >;
       
    64 
       
    65 template <  >
       
    66     class integer_traits< unsigned long >;
       
    67 
       
    68 #ifdef ULLONG_MAX
       
    69 template <  >
       
    70     class integer_traits<  ::boost::long_long_type>;
       
    71 
       
    72 template <  >
       
    73     class integer_traits<  ::boost::ulong_long_type >;
       
    74 #endif
       
    75 
       
    76 
       
    77 //  From <boost/integer.hpp>  ------------------------------------------------//
       
    78 
       
    79 template < typename LeastInt >
       
    80     struct int_fast_t;
       
    81 
       
    82 template< int Bits >
       
    83     struct int_t;
       
    84 
       
    85 template< int Bits >
       
    86     struct uint_t;
       
    87 
       
    88 template< long MaxValue >
       
    89     struct int_max_value_t;
       
    90 
       
    91 template< long MinValue >
       
    92     struct int_min_value_t;
       
    93 
       
    94 template< unsigned long Value >
       
    95     struct uint_value_t;
       
    96 
       
    97 
       
    98 //  From <boost/integer/integer_mask.hpp>  -----------------------------------//
       
    99 
       
   100 template < std::size_t Bit >
       
   101     struct high_bit_mask_t;
       
   102 
       
   103 template < std::size_t Bits >
       
   104     struct low_bits_mask_t;
       
   105 
       
   106 template <  >
       
   107     struct low_bits_mask_t< ::std::numeric_limits<unsigned char>::digits >;
       
   108 
       
   109 #if USHRT_MAX > UCHAR_MAX
       
   110 template <  >
       
   111     struct low_bits_mask_t< ::std::numeric_limits<unsigned short>::digits >;
       
   112 #endif
       
   113 
       
   114 #if UINT_MAX > USHRT_MAX
       
   115 template <  >
       
   116     struct low_bits_mask_t< ::std::numeric_limits<unsigned int>::digits >;
       
   117 #endif
       
   118 
       
   119 #if ULONG_MAX > UINT_MAX
       
   120 template <  >
       
   121     struct low_bits_mask_t< ::std::numeric_limits<unsigned long>::digits >;
       
   122 #endif
       
   123 
       
   124 
       
   125 //  From <boost/integer/static_log2.hpp>  ------------------------------------//
       
   126 
       
   127 template < unsigned long Value >
       
   128     struct static_log2;
       
   129 
       
   130 template <  >
       
   131     struct static_log2< 0ul >;
       
   132 
       
   133 
       
   134 //  From <boost/integer/static_min_max.hpp>  ---------------------------------//
       
   135 
       
   136 template < long Value1, long Value2 >
       
   137     struct static_signed_min;
       
   138 
       
   139 template < long Value1, long Value2 >
       
   140     struct static_signed_max;
       
   141 
       
   142 template < unsigned long Value1, unsigned long Value2 >
       
   143     struct static_unsigned_min;
       
   144 
       
   145 template < unsigned long Value1, unsigned long Value2 >
       
   146     struct static_unsigned_max;
       
   147 
       
   148 
       
   149 }  // namespace boost
       
   150 
       
   151 
       
   152 #endif  // BOOST_INTEGER_FWD_HPP