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