internals_fwd.hpp 2.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364
  1. // ----------------------------------------------------------------------------
  2. // internals_fwd.hpp : forward declarations, for internal headers
  3. // ----------------------------------------------------------------------------
  4. // Copyright Samuel Krempp 2003. Use, modification, and distribution are
  5. // subject to the Boost Software License, Version 1.0. (See accompanying
  6. // file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
  7. // See http://www.boost.org/libs/format for library home page
  8. // ----------------------------------------------------------------------------
  9. #ifndef BOOST_FORMAT_INTERNAL_FWD_HPP
  10. #define BOOST_FORMAT_INTERNAL_FWD_HPP
  11. #include <boost/format/format_fwd.hpp>
  12. #include <boost/config.hpp>
  13. namespace boost {
  14. namespace io {
  15. namespace detail {
  16. template<class Ch, class Tr> struct stream_format_state;
  17. template<class Ch, class Tr, class Alloc> struct format_item;
  18. // these functions were intended as methods,
  19. // but MSVC have problems with template member functions :
  20. // defined in format_implementation.hpp :
  21. template<class Ch, class Tr, class Alloc, class T>
  22. basic_format<Ch, Tr, Alloc>&
  23. modify_item_body (basic_format<Ch, Tr, Alloc>& self,
  24. int itemN, T manipulator);
  25. template<class Ch, class Tr, class Alloc, class T>
  26. basic_format<Ch, Tr, Alloc>&
  27. bind_arg_body (basic_format<Ch, Tr, Alloc>& self,
  28. int argN, const T& val);
  29. // in internals.hpp :
  30. template<class Ch, class Tr, class T>
  31. void apply_manip_body (stream_format_state<Ch, Tr>& self,
  32. T manipulator);
  33. // argument feeding (defined in feed_args.hpp ) :
  34. template<class Ch, class Tr, class Alloc, class T>
  35. void distribute (basic_format<Ch,Tr, Alloc>& self, T x);
  36. template<class Ch, class Tr, class Alloc, class T>
  37. basic_format<Ch, Tr, Alloc>&
  38. feed (basic_format<Ch,Tr, Alloc>& self, T x);
  39. template<class Ch, class Tr, class Alloc, class T>
  40. basic_format<Ch, Tr, Alloc>&
  41. feed_impl (basic_format<Ch,Tr, Alloc>& self, T x);
  42. } // namespace detail
  43. } // namespace io
  44. } // namespace boost
  45. #endif // BOOST_FORMAT_INTERNAL_FWD_HPP