system_category_message.hpp 1.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071
  1. #ifndef BOOST_SYSTEM_DETAIL_SYSTEM_CATEGORY_MESSAGE_HPP_INCLUDED
  2. #define BOOST_SYSTEM_DETAIL_SYSTEM_CATEGORY_MESSAGE_HPP_INCLUDED
  3. // Implementation of system_error_category_message
  4. //
  5. // Copyright 2018, 2022 Peter Dimov
  6. //
  7. // Distributed under the Boost Software License, Version 1.0. (See accompanying
  8. // file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
  9. //
  10. // See library home page at http://www.boost.org/libs/system
  11. #include <boost/system/api_config.hpp>
  12. #if !defined(BOOST_POSIX_API) && !defined(BOOST_WINDOWS_API)
  13. # error BOOST_POSIX_API or BOOST_WINDOWS_API must be defined
  14. #endif
  15. #if defined(BOOST_WINDOWS_API)
  16. #include <boost/system/detail/system_category_message_win32.hpp>
  17. namespace boost
  18. {
  19. namespace system
  20. {
  21. namespace detail
  22. {
  23. inline std::string system_error_category_message( int ev )
  24. {
  25. return system_category_message_win32( ev );
  26. }
  27. inline char const * system_error_category_message( int ev, char * buffer, std::size_t len ) noexcept
  28. {
  29. return system_category_message_win32( ev, buffer, len );
  30. }
  31. } // namespace detail
  32. } // namespace system
  33. } // namespace boost
  34. #else // #if defined(BOOST_WINDOWS_API)
  35. #include <boost/system/detail/generic_category_message.hpp>
  36. namespace boost
  37. {
  38. namespace system
  39. {
  40. namespace detail
  41. {
  42. inline std::string system_error_category_message( int ev )
  43. {
  44. return generic_error_category_message( ev );
  45. }
  46. inline char const * system_error_category_message( int ev, char * buffer, std::size_t len ) noexcept
  47. {
  48. return generic_error_category_message( ev, buffer, len );
  49. }
  50. } // namespace detail
  51. } // namespace system
  52. } // namespace boost
  53. #endif // #if defined(BOOST_WINDOWS_API)
  54. #endif // #ifndef BOOST_SYSTEM_DETAIL_SYSTEM_CATEGORY_MESSAGE_HPP_INCLUDED