BVB Source Codes

mars Show bounds.hpp Source code

Return Download mars: download bounds.hpp Source code - Download mars Source code - Type:.hpp
  1. //  (c) Copyright Fernando Luis Cacciola Carballal 2000-2004
  2. //  Use, modification, and distribution is subject to the Boost Software
  3. //  License, Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at
  4. //  http://www.boost.org/LICENSE_1_0.txt)
  5.  
  6. //  See library home page at http://www.boost.org/libs/numeric/conversion
  7. //
  8. // Contact the author at: fernando_cacciola@hotmail.com
  9. //
  10. #ifndef BOOST_NUMERIC_CONVERSION_BOUNDS_DETAIL_FLC_12NOV2002_HPP
  11. #define BOOST_NUMERIC_CONVERSION_BOUNDS_DETAIL_FLC_12NOV2002_HPP
  12.  
  13. #include "boost/limits.hpp"
  14. #include "boost/config.hpp"
  15. #include "boost/mpl/if.hpp"
  16.  
  17. namespace mars_boost {} namespace boost = mars_boost; namespace mars_boost { namespace numeric { namespace boundsdetail
  18. {
  19.   template<class N>
  20.   class Integral
  21.   {
  22.       typedef std::numeric_limits<N> limits ;
  23.  
  24.     public :
  25.    
  26.       static N lowest  () { return limits::min BOOST_PREVENT_MACRO_SUBSTITUTION (); }
  27.       static N highest () { return limits::max BOOST_PREVENT_MACRO_SUBSTITUTION (); }
  28.       static N smallest() { return static_cast<N>(1); }
  29.   } ;
  30.  
  31.   template<class N>
  32.   class Float
  33.   {
  34.       typedef std::numeric_limits<N> limits ;
  35.  
  36.     public :
  37.    
  38.       static N lowest  () { return static_cast<N>(-limits::max BOOST_PREVENT_MACRO_SUBSTITUTION ()) ; }
  39.       static N highest () { return limits::max BOOST_PREVENT_MACRO_SUBSTITUTION (); }
  40.       static N smallest() { return limits::min BOOST_PREVENT_MACRO_SUBSTITUTION (); }
  41.   } ;
  42.  
  43.   template<class N>
  44.   struct get_impl
  45.   {
  46.     typedef mpl::bool_< ::std::numeric_limits<N>::is_integer > is_int ;
  47.  
  48.     typedef Integral<N> impl_int   ;
  49.     typedef Float   <N> impl_float ;
  50.  
  51.     typedef typename mpl::if_<is_int,impl_int,impl_float>::type type ;
  52.   } ;
  53.  
  54. } } } // namespace mars_boost::numeric::boundsdetail.
  55.  
  56. #endif
  57. //
  58. ///////////////////////////////////////////////////////////////////////////////////////////////
  59.  
downloadbounds.hpp Source code - Download mars Source code
Related Source Codes/Software:
Hero - Elegant transition library for iOS & tvOS 2017-06-09
deep-photo-styletransfer - Code and data for paper "Deep Photo Style Transfer... 2017-06-09
mastodon - A GNU Social-compatible microblogging server ... 2017-06-09
plyr - A simple HTML5, YouTube and Vimeo player ... 2017-06-08
prepack - Prepack is a partial evaluator for JavaScript. Pre... 2017-06-08
Public-APIs - 2017-06-09
lottie-ios - An iOS library to natively render After Effects ve... 2017-06-09
Awesome-Hacking - A collection of various awesome lists for hackers,... 2017-06-09
algorithms - Minimal examples of data structures and algorithms... 2017-06-10
lectures - Oxford Deep NLP 2017 course 2017-06-10
CRYENGINE - CRYENGINE is a powerful real-time game development... 2017-06-11
postal - 2017-06-11
reactide - Reactide is the first dedicated IDE for React web ... 2017-06-11
rkt - rkt is a pod-native container engine for Linux. It... 2017-06-11
uWebSockets - Tiny WebSockets https://for... 2017-06-11
realworld - TodoMVC for the RealWorld - Exemplary fullstack Me... 2017-06-11
goreplay - GoReplay is an open-source tool for capturing and ... 2017-06-10
pyenv - Simple Python version management 2017-06-10
redux-saga - An alternative side effect model for Redux apps ... 2017-06-10
angular-starter - 2017-06-10

 Back to top