diff --git a/io/ansiescapecodes.cpp b/io/ansiescapecodes.cpp index f99850c..370cd29 100644 --- a/io/ansiescapecodes.cpp +++ b/io/ansiescapecodes.cpp @@ -1 +1,28 @@ #include "./ansiescapecodes.h" + +namespace EscapeCodes { + +std::ostream &operator<<(std::ostream &stream, Phrases phrase) +{ + switch (phrase) { + case Phrases::Error: + setStyle(stream, Color::Red, ColorContext::Foreground, TextAttribute::Bold); + stream << "Error: "; + setStyle(stream, TextAttribute::Reset); + setStyle(stream, TextAttribute::Bold); + break; + case Phrases::Warning: + setStyle(stream, Color::Yellow, ColorContext::Foreground, TextAttribute::Bold); + stream << "Warning: "; + setStyle(stream, TextAttribute::Reset); + setStyle(stream, TextAttribute::Bold); + break; + case Phrases::End: + setStyle(stream, TextAttribute::Reset); + stream << '\n'; + break; + } + return stream; +} + +} // namespace EscapeCodes diff --git a/io/ansiescapecodes.h b/io/ansiescapecodes.h index 072c261..950beaf 100644 --- a/io/ansiescapecodes.h +++ b/io/ansiescapecodes.h @@ -98,6 +98,13 @@ inline std::ostream &operator<<(std::ostream &stream, std::tuple