=============================================================================*/
#include "stream.hpp"
-#include "path.hpp"
#include "files.hpp"
+#include "path.hpp"
#if QUICKBOOK_WIDE_PATHS || QUICKBOOK_WIDE_STREAMS
-#include <io.h>
#include <fcntl.h>
+#include <io.h>
#endif
-namespace quickbook {
-namespace detail {
- namespace {
- bool ms_errors = false;
- }
+namespace quickbook
+{
+ namespace detail
+ {
+ namespace
+ {
+ bool ms_errors = false;
+ }
- void set_ms_errors(bool x) {
- ms_errors = x;
- }
+ void set_ms_errors(bool x) { ms_errors = x; }
#if QUICKBOOK_WIDE_STREAMS
- void initialise_output()
- {
- if (_isatty(_fileno(stdout))) _setmode(_fileno(stdout), _O_U16TEXT);
- if (_isatty(_fileno(stderr))) _setmode(_fileno(stderr), _O_U16TEXT);
- }
-
- void write_utf8(ostream::base_ostream& out, quickbook::string_view x)
- {
- out << from_utf8(x);
- }
+ void initialise_output()
+ {
+ if (_isatty(_fileno(stdout))) _setmode(_fileno(stdout), _O_U16TEXT);
+ if (_isatty(_fileno(stderr))) _setmode(_fileno(stderr), _O_U16TEXT);
+ }
- ostream& out()
- {
- static ostream x(std::wcout);
- return x;
- }
+ void write_utf8(ostream::base_ostream& out, quickbook::string_view x)
+ {
+ out << from_utf8(x);
+ }
- namespace
- {
- inline ostream& error_stream()
+ ostream& out()
{
- static ostream x(std::wcerr);
+ static ostream x(std::wcout);
return x;
}
- }
-#else
+ namespace
+ {
+ inline ostream& error_stream()
+ {
+ static ostream x(std::wcerr);
+ return x;
+ }
+ }
- void initialise_output()
- {
- }
+#else
- void write_utf8(ostream::base_ostream& out, quickbook::string_view x)
- {
- out << x;
- }
+ void initialise_output() {}
- ostream& out()
- {
- static ostream x(std::cout);
- return x;
- }
+ void write_utf8(ostream::base_ostream& out, quickbook::string_view x)
+ {
+ out << x;
+ }
- namespace
- {
- inline ostream& error_stream()
+ ostream& out()
{
- static ostream x(std::clog);
+ static ostream x(std::cout);
return x;
}
- }
+
+ namespace
+ {
+ inline ostream& error_stream()
+ {
+ static ostream x(std::clog);
+ return x;
+ }
+ }
#endif
- ostream& outerr()
- {
- return error_stream() << "Error: ";
- }
+ ostream& outerr() { return error_stream() << "Error: "; }
- ostream& outerr(fs::path const& file, std::ptrdiff_t line)
- {
- if (line >= 0)
+ ostream& outerr(fs::path const& file, std::ptrdiff_t line)
{
- if (ms_errors)
- return error_stream() << path_to_stream(file) << "(" << line << "): error: ";
- else
- return error_stream() << path_to_stream(file) << ":" << line << ": error: ";
+ if (line >= 0) {
+ if (ms_errors)
+ return error_stream() << path_to_stream(file) << "(" << line
+ << "): error: ";
+ else
+ return error_stream() << path_to_stream(file) << ":" << line
+ << ": error: ";
+ }
+ else {
+ return error_stream() << path_to_stream(file) << ": error: ";
+ }
}
- else
+
+ ostream& outerr(file_ptr const& f, string_iterator pos)
{
- return error_stream() << path_to_stream(file) << ": error: ";
+ return outerr(f->path, f->position_of(pos).line);
}
- }
-
- ostream& outerr(file_ptr const& f, string_iterator pos)
- {
- return outerr(f->path, f->position_of(pos).line);
- }
- ostream& outwarn(fs::path const& file, std::ptrdiff_t line)
- {
- if (line >= 0)
+ ostream& outwarn(fs::path const& file, std::ptrdiff_t line)
{
- if (ms_errors)
- return error_stream() << path_to_stream(file) << "(" << line << "): warning: ";
- else
- return error_stream() << path_to_stream(file) << ":" << line << ": warning: ";
+ if (line >= 0) {
+ if (ms_errors)
+ return error_stream() << path_to_stream(file) << "(" << line
+ << "): warning: ";
+ else
+ return error_stream() << path_to_stream(file) << ":" << line
+ << ": warning: ";
+ }
+ else {
+ return error_stream() << path_to_stream(file) << ": warning: ";
+ }
}
- else
+
+ ostream& outwarn(file_ptr const& f, string_iterator pos)
{
- return error_stream() << path_to_stream(file) << ": warning: ";
+ return outwarn(f->path, f->position_of(pos).line);
}
- }
-
- ostream& outwarn(file_ptr const& f, string_iterator pos)
- {
- return outwarn(f->path, f->position_of(pos).line);
- }
- ostream& ostream::operator<<(char c) {
- assert(c && !(c & 0x80));
- base << c;
- return *this;
- }
+ ostream& ostream::operator<<(char c)
+ {
+ assert(c && !(c & 0x80));
+ base << c;
+ return *this;
+ }
- inline bool check_ascii(char const* x) {
- for(;*x;++x) if(*x & 0x80) return false;
- return true;
- }
+ inline bool check_ascii(char const* x)
+ {
+ for (; *x; ++x)
+ if (*x & 0x80) return false;
+ return true;
+ }
- ostream& ostream::operator<<(char const* x) {
- assert(check_ascii(x));
- base << x;
- return *this;
- }
+ ostream& ostream::operator<<(char const* x)
+ {
+ assert(check_ascii(x));
+ base << x;
+ return *this;
+ }
- ostream& ostream::operator<<(std::string const& x) {
- write_utf8(base, x);
- return *this;
- }
+ ostream& ostream::operator<<(std::string const& x)
+ {
+ write_utf8(base, x);
+ return *this;
+ }
- ostream& ostream::operator<<(quickbook::string_view x) {
- write_utf8(base, x);
- return *this;
- }
+ ostream& ostream::operator<<(quickbook::string_view x)
+ {
+ write_utf8(base, x);
+ return *this;
+ }
- ostream& ostream::operator<<(int x) {
- base << x;
- return *this;
- }
+ ostream& ostream::operator<<(int x)
+ {
+ base << x;
+ return *this;
+ }
- ostream& ostream::operator<<(unsigned int x) {
- base << x;
- return *this;
- }
+ ostream& ostream::operator<<(unsigned int x)
+ {
+ base << x;
+ return *this;
+ }
- ostream& ostream::operator<<(long x) {
- base << x;
- return *this;
- }
+ ostream& ostream::operator<<(long x)
+ {
+ base << x;
+ return *this;
+ }
- ostream& ostream::operator<<(unsigned long x) {
- base << x;
- return *this;
- }
+ ostream& ostream::operator<<(unsigned long x)
+ {
+ base << x;
+ return *this;
+ }
#if !defined(BOOST_NO_LONG_LONG)
- ostream& ostream::operator<<(boost::long_long_type x) {
- base << x;
- return *this;
- }
+ ostream& ostream::operator<<(boost::long_long_type x)
+ {
+ base << x;
+ return *this;
+ }
- ostream& ostream::operator<<(boost::ulong_long_type x) {
- base << x;
- return *this;
- }
+ ostream& ostream::operator<<(boost::ulong_long_type x)
+ {
+ base << x;
+ return *this;
+ }
#endif
- ostream& ostream::operator<<(fs::path const& x) {
- base << path_to_stream(x);
- return *this;
- }
+ ostream& ostream::operator<<(fs::path const& x)
+ {
+ base << path_to_stream(x);
+ return *this;
+ }
- ostream& ostream::operator<<(base_ostream& (*x)(base_ostream&)) {
- base << x;
- return *this;
- }
+ ostream& ostream::operator<<(base_ostream& (*x)(base_ostream&))
+ {
+ base << x;
+ return *this;
+ }
- ostream& ostream::operator<<(base_ios& (*x)(base_ios&)) {
- base << x;
- return *this;
+ ostream& ostream::operator<<(base_ios& (*x)(base_ios&))
+ {
+ base << x;
+ return *this;
+ }
}
-}}
+}