mirror of
https://github.com/catchorg/Catch2.git
synced 2025-08-03 13:55:39 +02:00
Rename isStdout => isConsole and add doccomment
This commit is contained in:
@@ -97,7 +97,7 @@ namespace {
|
||||
// Win32 text colour APIs can only be used on console streams
|
||||
// We cannot check that the output hasn't been redirected,
|
||||
// so we just check that the original stream is console stream.
|
||||
return stream.isStdout();
|
||||
return stream.isConsole();
|
||||
}
|
||||
|
||||
private:
|
||||
@@ -164,7 +164,7 @@ namespace {
|
||||
// only want to use the colours if we are writing to console.
|
||||
// However, console might be redirected, so we make an attempt at
|
||||
// checking for that on platforms where we know how to do that.
|
||||
bool useColour = stream.isStdout();
|
||||
bool useColour = stream.isConsole();
|
||||
#if defined( CATCH_INTERNAL_HAS_ISATTY ) && \
|
||||
!( defined( __DJGPP__ ) && defined( __STRICT_ANSI__ ) )
|
||||
ErrnoGuard _; // for isatty
|
||||
|
@@ -99,7 +99,7 @@ namespace Detail {
|
||||
|
||||
public: // IStream
|
||||
std::ostream& stream() const override { return m_os; }
|
||||
bool isStdout() const override { return true; }
|
||||
bool isConsole() const override { return true; }
|
||||
};
|
||||
|
||||
class CerrStream : public IStream {
|
||||
@@ -113,7 +113,7 @@ namespace Detail {
|
||||
|
||||
public: // IStream
|
||||
std::ostream& stream() const override { return m_os; }
|
||||
bool isStdout() const override { return true; }
|
||||
bool isConsole() const override { return true; }
|
||||
};
|
||||
|
||||
///////////////////////////////////////////////////////////////////////////
|
||||
|
@@ -26,9 +26,18 @@ namespace Catch {
|
||||
public:
|
||||
virtual ~IStream(); // = default
|
||||
virtual std::ostream& stream() const = 0;
|
||||
// Win32 colour supports requires us to identify whether a stream
|
||||
// is backed by stdout (so we can colour it) or not (and we can't).
|
||||
virtual bool isStdout() const { return false; }
|
||||
/**
|
||||
* Best guess on whether the instance is writing to a console (e.g. via stdout/stderr)
|
||||
*
|
||||
* This is useful for e.g. Win32 colour support, because the Win32
|
||||
* API manipulates console directly, unlike POSIX escape codes,
|
||||
* that can be written anywhere.
|
||||
*
|
||||
* Due to variety of ways to change where the stdout/stderr is
|
||||
* _actually_ being written, users should always assume that
|
||||
* the answer might be wrong.
|
||||
*/
|
||||
virtual bool isConsole() const { return false; }
|
||||
};
|
||||
|
||||
auto makeStream( std::string const& filename ) -> Detail::unique_ptr<IStream const>;
|
||||
|
Reference in New Issue
Block a user