Endgame-Analyzer/include/null_buffer.h

35 lines
519 B
C
Raw Permalink Normal View History

#ifndef DYNAMIC_PROGRAM_NULL_BUFFER_H
#define DYNAMIC_PROGRAM_NULL_BUFFER_H
2023-11-15 23:07:39 +01:00
#include <iosfwd>
2023-11-16 16:20:04 +01:00
namespace NullBuffer
{
class NullBuffer final : public std::streambuf
{
public:
int overflow(int c) override
{ return c; }
};
2023-11-16 16:29:41 +01:00
/**
* A Stream that does nothing on writing to it
*/
2023-11-16 16:20:04 +01:00
class NullStream final : public std::ostream
{
public:
NullStream() : std::ostream(&_m_sb)
{}
private:
NullBuffer _m_sb;
};
NullStream null_stream;
}
#endif //DYNAMIC_PROGRAM_NULL_BUFFER_H