diff options
author | DongHun Kwak <dh0128.kwak@samsung.com> | 2019-12-05 15:21:30 +0900 |
---|---|---|
committer | DongHun Kwak <dh0128.kwak@samsung.com> | 2019-12-05 15:21:30 +0900 |
commit | d6a306e745acfee00e81ccaf3324a2a03516db41 (patch) | |
tree | 145a26368608982f40ebb0f4836185c44abb9ae4 /boost/safe_numerics/safe_integer.hpp | |
parent | 5ce2ccf2f23c6d3de4c79f216f57ca6f2a18ed16 (diff) | |
download | boost-d6a306e745acfee00e81ccaf3324a2a03516db41.tar.gz boost-d6a306e745acfee00e81ccaf3324a2a03516db41.tar.bz2 boost-d6a306e745acfee00e81ccaf3324a2a03516db41.zip |
Imported Upstream version 1.69.0upstream/1.69.0
Diffstat (limited to 'boost/safe_numerics/safe_integer.hpp')
-rw-r--r-- | boost/safe_numerics/safe_integer.hpp | 46 |
1 files changed, 46 insertions, 0 deletions
diff --git a/boost/safe_numerics/safe_integer.hpp b/boost/safe_numerics/safe_integer.hpp new file mode 100644 index 0000000000..0daa84d154 --- /dev/null +++ b/boost/safe_numerics/safe_integer.hpp @@ -0,0 +1,46 @@ +#ifndef BOOST_NUMERIC_SAFE_INTEGER_HPP +#define BOOST_NUMERIC_SAFE_INTEGER_HPP + +// MS compatible compilers support #pragma once +#if defined(_MSC_VER) && (_MSC_VER >= 1020) +# pragma once +#endif + +// Copyright (c) 2012 Robert Ramey +// +// Distributed under the Boost Software License, Version 1.0. (See +// accompanying file LICENSE_1_0.txt or copy at +// http://www.boost.org/LICENSE_1_0.txt) + +// not actually used here - but needed for integer arithmetic +// so this is a good place to include it +#include "checked_integer.hpp" + +#include "safe_base.hpp" +#include "safe_base_operations.hpp" + +#include "native.hpp" +#include "exception_policies.hpp" + +// specialization for meta functions with safe<T> argument +namespace boost { +namespace safe_numerics { + +template < + class T, + class P = native, + class E = default_exception_policy +> +using safe = safe_base< + T, + ::std::numeric_limits<T>::min(), + ::std::numeric_limits<T>::max(), + P, + E +>; + +} // safe_numerics +} // boost + + +#endif // BOOST_NUMERIC_SAFE_INTEGER_HPP |