Bash++
Bash++ compiler internal documentation
NullStream.h
Go to the documentation of this file.
1
7#pragma once
8
9#include <streambuf>
10#include <ostream>
11
17class NullBuffer : public std::streambuf {
18 protected:
19 int overflow(int c) override {
20 return traits_type::not_eof(c); // Indicate success, but discard the character
21 }
22
23 std::streamsize xsputn(const char* /*s*/, std::streamsize n) override {
24 return n; // Indicate success, but discard the characters
25 }
26};
27
37class NullOStream : public std::ostream {
38 private:
39 inline static NullBuffer null_buffer;
40 public:
41 NullOStream() : std::ostream(&null_buffer) {}
42};
A stream buffer that discards all output.
Definition NullStream.h:17
int overflow(int c) override
Definition NullStream.h:19
std::streamsize xsputn(const char *, std::streamsize n) override
Definition NullStream.h:23
An output stream that discards all output This is used in the language server to parse programs witho...
Definition NullStream.h:37
static NullBuffer null_buffer
Definition NullStream.h:39
NullOStream()
Definition NullStream.h:41