Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2025-01-18 09:51:37

0001 #ifndef BOOST_NUMERIC_SAFE_INTEGER_HPP
0002 #define BOOST_NUMERIC_SAFE_INTEGER_HPP
0003 
0004 //  Copyright (c) 2012 Robert Ramey
0005 //
0006 // Distributed under the Boost Software License, Version 1.0. (See
0007 // accompanying file LICENSE_1_0.txt or copy at
0008 // http://www.boost.org/LICENSE_1_0.txt)
0009 
0010 // not actually used here - but needed for integer arithmetic
0011 // so this is a good place to include it
0012 #include "checked_integer.hpp"
0013 #include "checked_result_operations.hpp"
0014 
0015 #include "safe_base.hpp"
0016 #include "safe_base_operations.hpp"
0017 
0018 #include "native.hpp"
0019 #include "exception_policies.hpp"
0020 
0021 // specialization for meta functions with safe<T> argument
0022 namespace boost {
0023 namespace safe_numerics {
0024 
0025 template <
0026     class T,
0027     class P = native,
0028     class E = default_exception_policy
0029 >
0030 using safe = safe_base<
0031     T,
0032     ::std::numeric_limits<T>::min(),
0033     ::std::numeric_limits<T>::max(),
0034     P,
0035     E
0036 >;
0037 
0038 } // safe_numerics
0039 } // boost
0040 
0041 
0042 #endif // BOOST_NUMERIC_SAFE_INTEGER_HPP