wide_streams.hpp 1.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354
  1. // (C) Copyright 2008 CodeRage, LLC (turkanis at coderage dot com)
  2. // (C) Copyright 2003-2007 Jonathan Turkanis
  3. // Distributed under the Boost Software License, Version 1.0. (See accompanying
  4. // file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt.)
  5. // See http://www.boost.org/libs/iostreams for documentation.
  6. // Adapted from http://www.boost.org/more/separate_compilation.html, by
  7. // John Maddock.
  8. #ifndef BOOST_IOSTREAMS_DETAIL_CONFIG_WIDE_STREAMS_HPP_INCLUDED
  9. #define BOOST_IOSTREAMS_DETAIL_CONFIG_WIDE_STREAMS_HPP_INCLUDED
  10. #include <boost/config.hpp>
  11. #include <boost/detail/workaround.hpp>
  12. #include <cstddef>
  13. #if defined(_MSC_VER)
  14. # pragma once
  15. #endif
  16. //------------------Templated stream support----------------------------------//
  17. // From boost/dynamic_bitset.hpp; thanks to Matthias Troyer for cray patch.
  18. #ifndef BOOST_IOSTREAMS_NO_STREAM_TEMPLATES
  19. # if defined(__STL_CONFIG_H) && \
  20. !defined (__STL_USE_NEW_IOSTREAMS) && !defined(__crayx1) \
  21. /**/
  22. # define BOOST_IOSTREAMS_NO_STREAM_TEMPLATES
  23. # endif
  24. #endif // #ifndef BOOST_IOSTREAMS_NO_STREAM_TEMPLATES
  25. //------------------Wide stream support---------------------------------------//
  26. #ifndef BOOST_IOSTREAMS_NO_WIDE_STREAMS
  27. # if defined(BOOST_IOSTREAMS_NO_STREAM_TEMPLATES) || \
  28. defined (BOOST_NO_STD_WSTREAMBUF) && \
  29. ( !defined(__MSL_CPP__) || defined(_MSL_NO_WCHART_CPP_SUPPORT) ) \
  30. /**/
  31. # define BOOST_IOSTREAMS_NO_WIDE_STREAMS
  32. # endif
  33. #endif // #ifndef BOOST_IOSTREAMS_NO_WIDE_STREAMS
  34. //------------------Locale support--------------------------------------------//
  35. #ifndef BOOST_IOSTREAMS_NO_LOCALE
  36. # if defined(BOOST_NO_STD_LOCALE) && \
  37. ( !defined(__MSL_CPP__) || defined(_MSL_NO_WCHART_CPP_SUPPORT) ) \
  38. /**/
  39. # define BOOST_IOSTREAMS_NO_LOCALE
  40. # endif
  41. #endif // #ifndef BOOST_IOSTREAMS_NO_LOCALE
  42. #endif // #ifndef BOOST_IOSTREAMS_DETAIL_CONFIG_WIDE_STREAMS_HPP_INCLUDED