FMT_NO_STREAM_LIBRARIES -> FMT_USE_IOSTREAMS

for consistency with similar macros and removed unnecessary
checks.
This commit is contained in:
vitaut 2015-10-18 08:50:35 -07:00
parent 6049fd9d66
commit b2714f83cc
3 changed files with 20 additions and 24 deletions

View File

@ -1252,13 +1252,11 @@ FMT_FUNC void fmt::print(CStringRef format_str, ArgList args) {
print(stdout, format_str, args); print(stdout, format_str, args);
} }
#ifndef FMT_NO_STREAM_LIBRARIES
FMT_FUNC void fmt::print(std::ostream &os, CStringRef format_str, ArgList args) { FMT_FUNC void fmt::print(std::ostream &os, CStringRef format_str, ArgList args) {
MemoryWriter w; MemoryWriter w;
w.write(format_str, args); w.write(format_str, args);
os.write(w.data(), w.size()); os.write(w.data(), w.size());
} }
#endif
FMT_FUNC void fmt::print_colored(Color c, CStringRef format, ArgList args) { FMT_FUNC void fmt::print_colored(Color c, CStringRef format, ArgList args) {
char escape[] = "\x1b[30m"; char escape[] = "\x1b[30m";

View File

@ -40,7 +40,11 @@
#include <string> #include <string>
#include <map> #include <map>
#ifndef FMT_NO_STREAM_LIBRARIES #ifndef FMT_USE_IOSTREAMS
# define FMT_USE_IOSTREAMS 1
#endif
#if FMT_USE_IOSTREAMS
# include <sstream> # include <sstream>
#endif #endif
@ -2688,20 +2692,6 @@ void print(std::FILE *f, CStringRef format_str, ArgList args);
*/ */
void print(CStringRef format_str, ArgList args); void print(CStringRef format_str, ArgList args);
#ifndef FMT_NO_STREAM_LIBRARIES
/**
\rst
Prints formatted data to the stream *os*.
**Example**::
print(cerr, "Don't {}!", "panic");
\endrst
*/
void print(std::ostream &os, CStringRef format_str, ArgList args);
#endif
template <typename Char> template <typename Char>
void printf(BasicWriter<Char> &w, BasicCStringRef<Char> format, ArgList args) { void printf(BasicWriter<Char> &w, BasicCStringRef<Char> format, ArgList args) {
internal::PrintfFormatter<Char>(args).format(w, format); internal::PrintfFormatter<Char>(args).format(w, format);
@ -3014,16 +3004,26 @@ FMT_VARIADIC_W(std::wstring, format, WCStringRef)
FMT_VARIADIC(void, print, CStringRef) FMT_VARIADIC(void, print, CStringRef)
FMT_VARIADIC(void, print, std::FILE *, CStringRef) FMT_VARIADIC(void, print, std::FILE *, CStringRef)
#ifndef FMT_NO_STREAM_LIBRARIES
FMT_VARIADIC(void, print, std::ostream &, CStringRef)
#endif
FMT_VARIADIC(void, print_colored, Color, CStringRef) FMT_VARIADIC(void, print_colored, Color, CStringRef)
FMT_VARIADIC(std::string, sprintf, CStringRef) FMT_VARIADIC(std::string, sprintf, CStringRef)
FMT_VARIADIC_W(std::wstring, sprintf, WCStringRef) FMT_VARIADIC_W(std::wstring, sprintf, WCStringRef)
FMT_VARIADIC(int, printf, CStringRef) FMT_VARIADIC(int, printf, CStringRef)
FMT_VARIADIC(int, fprintf, std::FILE *, CStringRef) FMT_VARIADIC(int, fprintf, std::FILE *, CStringRef)
}
#if FMT_USE_IOSTREAMS
/**
\rst
Prints formatted data to the stream *os*.
**Example**::
print(cerr, "Don't {}!", "panic");
\endrst
*/
void print(std::ostream &os, CStringRef format_str, ArgList args);
FMT_VARIADIC(void, print, std::ostream &, CStringRef)
#endif
} // namespace fmt
#if FMT_USE_USER_DEFINED_LITERALS #if FMT_USE_USER_DEFINED_LITERALS
namespace fmt { namespace fmt {

View File

@ -1539,7 +1539,6 @@ TEST(FormatIntTest, FormatDec) {
EXPECT_EQ("42", format_decimal(42ull)); EXPECT_EQ("42", format_decimal(42ull));
} }
#ifndef FMT_NO_STREAM_LIBRARIES
TEST(FormatTest, Print) { TEST(FormatTest, Print) {
#if FMT_USE_FILE_DESCRIPTORS #if FMT_USE_FILE_DESCRIPTORS
EXPECT_WRITE(stdout, fmt::print("Don't {}!", "panic"), "Don't panic!"); EXPECT_WRITE(stdout, fmt::print("Don't {}!", "panic"), "Don't panic!");
@ -1550,7 +1549,6 @@ TEST(FormatTest, Print) {
fmt::print(os, "Don't {}!", "panic"); fmt::print(os, "Don't {}!", "panic");
EXPECT_EQ("Don't panic!", os.str()); EXPECT_EQ("Don't panic!", os.str());
} }
#endif
#if FMT_USE_FILE_DESCRIPTORS #if FMT_USE_FILE_DESCRIPTORS
TEST(FormatTest, PrintColored) { TEST(FormatTest, PrintColored) {