brintos

brintos / llvm-project-archived public Read only

0
0
Text · 3.1 KiB · 7d69f8b Raw
88 lines · plain
1// Copyright John Maddock 2008.2// Copyright Matt Borland 20243 4// Use, modification and distribution are subject to the5// Boost Software License, Version 1.0.6// (See accompanying file LICENSE_1_0.txt7// or copy at http://www.boost.org/LICENSE_1_0.txt)8 9#ifndef BOOST_MATH_SPECIAL_ROUND_FWD_HPP10#define BOOST_MATH_SPECIAL_ROUND_FWD_HPP11 12#include <boost/math/tools/config.hpp>13#include <boost/math/tools/promotion.hpp>14 15#ifdef _MSC_VER16#pragma once17#endif18 19namespace boost20{21   namespace math22   { 23 24   template <class T, class Policy>25   BOOST_MATH_GPU_ENABLED typename tools::promote_args<T>::type trunc(const T& v, const Policy& pol);26   template <class T>27   BOOST_MATH_GPU_ENABLED typename tools::promote_args<T>::type trunc(const T& v);28   template <class T, class Policy>29   BOOST_MATH_GPU_ENABLED int itrunc(const T& v, const Policy& pol);30   template <class T>31   BOOST_MATH_GPU_ENABLED int itrunc(const T& v);32   template <class T, class Policy>33   BOOST_MATH_GPU_ENABLED long ltrunc(const T& v, const Policy& pol);34   template <class T>35   BOOST_MATH_GPU_ENABLED long ltrunc(const T& v);36   template <class T, class Policy>37   BOOST_MATH_GPU_ENABLED long long lltrunc(const T& v, const Policy& pol);38   template <class T>39   BOOST_MATH_GPU_ENABLED long long lltrunc(const T& v);40   template <class T, class Policy>41   BOOST_MATH_GPU_ENABLED typename tools::promote_args<T>::type round(const T& v, const Policy& pol);42   template <class T>43   BOOST_MATH_GPU_ENABLED typename tools::promote_args<T>::type round(const T& v);44   template <class T, class Policy>45   BOOST_MATH_GPU_ENABLED int iround(const T& v, const Policy& pol);46   template <class T>47   BOOST_MATH_GPU_ENABLED int iround(const T& v);48   template <class T, class Policy>49   BOOST_MATH_GPU_ENABLED long lround(const T& v, const Policy& pol);50   template <class T>51   BOOST_MATH_GPU_ENABLED long lround(const T& v);52   template <class T, class Policy>53   BOOST_MATH_GPU_ENABLED long long llround(const T& v, const Policy& pol);54   template <class T>55   BOOST_MATH_GPU_ENABLED long long llround(const T& v);56   template <class T, class Policy>57   BOOST_MATH_GPU_ENABLED T modf(const T& v, T* ipart, const Policy& pol);58   template <class T>59   BOOST_MATH_GPU_ENABLED T modf(const T& v, T* ipart);60   template <class T, class Policy>61   BOOST_MATH_GPU_ENABLED T modf(const T& v, int* ipart, const Policy& pol);62   template <class T>63   BOOST_MATH_GPU_ENABLED T modf(const T& v, int* ipart);64   template <class T, class Policy>65   BOOST_MATH_GPU_ENABLED T modf(const T& v, long* ipart, const Policy& pol);66   template <class T>67   BOOST_MATH_GPU_ENABLED T modf(const T& v, long* ipart);68   template <class T, class Policy>69   BOOST_MATH_GPU_ENABLED T modf(const T& v, long long* ipart, const Policy& pol);70   template <class T>71   BOOST_MATH_GPU_ENABLED T modf(const T& v, long long* ipart);72   }73}74 75#undef BOOST_MATH_STD_USING76#define BOOST_MATH_STD_USING BOOST_MATH_STD_USING_CORE\77   using boost::math::round;\78   using boost::math::iround;\79   using boost::math::lround;\80   using boost::math::trunc;\81   using boost::math::itrunc;\82   using boost::math::ltrunc;\83   using boost::math::modf;84 85 86#endif // BOOST_MATH_SPECIAL_ROUND_FWD_HPP87 88