namespace hamigaki {
namespace iostreams {
class tmp_file;
}
}
namespace hamigaki {
namespace iostreams {
template<typename Ch> class basic_zero_source;
typedef basic_zero_source<char> zero_source;
typedef basic_zero_source<wchar_t> wzero_source;
}
}
namespace hamigaki {
namespace iostreams {
template<typename ExceptionStorage = hamigaki::thread::exception_storage>
class basic_background_copy;
typedef basic_background_copy<> background_copy;
}
}
namespace hamigaki {
namespace iostreams {
template<typename CharT> class basic_demultiplexer;
}
}
namespace hamigaki {
namespace iostreams {
template<typename Device> class lazy_restriction;
template<typename Device>
lazy_restriction<Device>
lazy_restrict(Device&, boost::iostreams::stream_offset,
boost::iostreams::stream_offset = -1);
}
}
namespace hamigaki {
namespace iostreams {
template<typename CharT> class basic_multiplexer;
}
}
namespace hamigaki {
namespace iostreams {
template<typename Device> class relative_restriction;
template<typename Device>
relative_restriction<Device>
relative_restrict(Device&, boost::iostreams::stream_offset,
boost::iostreams::stream_offset = -1);
}
}
namespace hamigaki {
namespace iostreams {
template<typename Device> class tiny_restriction;
template<typename Device>
tiny_restriction<Device>
tiny_restrict(const Device&, boost::iostreams::stream_offset = -1);
}
}