X-Git-Url: https://git.lyx.org/gitweb/?a=blobdiff_plain;f=src%2Fsupport%2Fstrfwd.h;h=069357ff9cbdd5258e3b4b1927c5dbe77926e765;hb=de6ff1fec2b918a0bd09f48b17a2770bfc15aef7;hp=324560952fd4bb4cbb5e52b6ffa32f28d8041ad7;hpb=a15472ecfeb50c79e436d37404eeb93044599bb8;p=lyx.git diff --git a/src/support/strfwd.h b/src/support/strfwd.h index 324560952f..069357ff9c 100644 --- a/src/support/strfwd.h +++ b/src/support/strfwd.h @@ -31,14 +31,15 @@ namespace lyx { typedef boost::uint32_t char_type; } namespace std { +template class allocator; + template struct char_traits; template<> struct char_traits; -template<> struct char_traits; - -template class allocator; +#ifdef USE_WCHAR_T +template<> struct char_traits; +#endif template class basic_string; - typedef basic_string, allocator > string; template class basic_istream; @@ -47,22 +48,30 @@ template class basic_ostream; typedef basic_istream > istream; typedef basic_ostream > ostream; -} +} // namepace std namespace lyx { +/// String type for storing the main text in UCS4 encoding typedef std::basic_string, std::allocator > docstring; /// Base class for UCS4 input streams -typedef std::basic_istream > - idocstream; +typedef std::basic_istream > idocstream; /// Base class for UCS4 output streams -typedef std::basic_ostream > - odocstream; +typedef std::basic_ostream > odocstream; + +#if ! defined(USE_WCHAR_T) +extern odocstream & operator<<(odocstream &, char); +#endif +// defined in lstrings.cpp +docstring const & empty_docstring(); +std::string const & empty_string(); +// defined in docstring.cpp +bool operator==(docstring const &, char const *); } // namespace lyx