cstdint.hpp 2.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108
  1. // Copyright (c) 2024 Matt Borland
  2. // Use, modification and distribution are subject to the
  3. // Boost Software License, Version 1.0. (See accompanying file
  4. // LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
  5. #ifndef BOOST_MATH_TOOLS_CSTDINT
  6. #define BOOST_MATH_TOOLS_CSTDINT
  7. #include <boost/math/tools/config.hpp>
  8. #ifdef BOOST_MATH_ENABLE_CUDA
  9. #include <cuda/std/cstdint>
  10. namespace boost {
  11. namespace math {
  12. using cuda::std::int8_t;
  13. using cuda::std::int16_t;
  14. using cuda::std::int32_t;
  15. using cuda::std::int64_t;
  16. using cuda::std::int_fast8_t;
  17. using cuda::std::int_fast16_t;
  18. using cuda::std::int_fast32_t;
  19. using cuda::std::int_fast64_t;
  20. using cuda::std::int_least8_t;
  21. using cuda::std::int_least16_t;
  22. using cuda::std::int_least32_t;
  23. using cuda::std::int_least64_t;
  24. using cuda::std::intmax_t;
  25. using cuda::std::intptr_t;
  26. using cuda::std::uint8_t;
  27. using cuda::std::uint16_t;
  28. using cuda::std::uint32_t;
  29. using cuda::std::uint64_t;
  30. using cuda::std::uint_fast8_t;
  31. using cuda::std::uint_fast16_t;
  32. using cuda::std::uint_fast32_t;
  33. using cuda::std::uint_fast64_t;
  34. using cuda::std::uint_least8_t;
  35. using cuda::std::uint_least16_t;
  36. using cuda::std::uint_least32_t;
  37. using cuda::std::uint_least64_t;
  38. using cuda::std::uintmax_t;
  39. using cuda::std::uintptr_t;
  40. using size_t = unsigned long;
  41. #else
  42. #include <cstdint>
  43. namespace boost {
  44. namespace math {
  45. using std::int8_t;
  46. using std::int16_t;
  47. using std::int32_t;
  48. using std::int64_t;
  49. using std::int_fast8_t;
  50. using std::int_fast16_t;
  51. using std::int_fast32_t;
  52. using std::int_fast64_t;
  53. using std::int_least8_t;
  54. using std::int_least16_t;
  55. using std::int_least32_t;
  56. using std::int_least64_t;
  57. using std::intmax_t;
  58. using std::intptr_t;
  59. using std::uint8_t;
  60. using std::uint16_t;
  61. using std::uint32_t;
  62. using std::uint64_t;
  63. using std::uint_fast8_t;
  64. using std::uint_fast16_t;
  65. using std::uint_fast32_t;
  66. using std::uint_fast64_t;
  67. using std::uint_least8_t;
  68. using std::uint_least16_t;
  69. using std::uint_least32_t;
  70. using std::uint_least64_t;
  71. using std::uintmax_t;
  72. using std::uintptr_t;
  73. using std::size_t;
  74. #endif
  75. } // namespace math
  76. } // namespace boost
  77. #endif // BOOST_MATH_TOOLS_CSTDINT