LLDB  mainline
StreamAsynchronousIO.h
Go to the documentation of this file.
1 //===-- StreamAsynchronousIO.h -----------------------------------*- C++-*-===//
2 //
3 // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
4 // See https://llvm.org/LICENSE.txt for license information.
5 // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
6 //
7 //===----------------------------------------------------------------------===//
8 
9 #ifndef LLDB_CORE_STREAMASYNCHRONOUSIO_H
10 #define LLDB_CORE_STREAMASYNCHRONOUSIO_H
11 
12 #include "lldb/Utility/Stream.h"
13 
14 #include <string>
15 
16 #include <cstddef>
17 
18 namespace lldb_private {
19 class Debugger;
20 
21 class StreamAsynchronousIO : public Stream {
22 public:
23  StreamAsynchronousIO(Debugger &debugger, bool for_stdout);
24 
25  ~StreamAsynchronousIO() override;
26 
27  void Flush() override;
28 
29 protected:
30  size_t WriteImpl(const void *src, size_t src_len) override;
31 
32 private:
36 };
37 
38 } // namespace lldb_private
39 
40 #endif // LLDB_CORE_STREAMASYNCHRONOUSIO_H
lldb_private::StreamAsynchronousIO::Flush
void Flush() override
Flush the stream.
Definition: StreamAsynchronousIO.cpp:26
lldb_private::StreamAsynchronousIO::WriteImpl
size_t WriteImpl(const void *src, size_t src_len) override
Output character bytes to the stream.
Definition: StreamAsynchronousIO.cpp:33
lldb_private::StreamAsynchronousIO::StreamAsynchronousIO
StreamAsynchronousIO(Debugger &debugger, bool for_stdout)
Definition: StreamAsynchronousIO.cpp:17
lldb_private::Stream
Definition: Stream.h:28
lldb_private::StreamAsynchronousIO::m_debugger
Debugger & m_debugger
Definition: StreamAsynchronousIO.h:33
lldb_private::Debugger
Definition: Debugger.h:70
string
string(SUBSTRING ${p} 10 -1 pStripped) if($
Definition: Plugins/CMakeLists.txt:40
lldb_private::StreamAsynchronousIO::m_for_stdout
bool m_for_stdout
Definition: StreamAsynchronousIO.h:35
lldb_private::StreamAsynchronousIO::~StreamAsynchronousIO
~StreamAsynchronousIO() override
Definition: StreamAsynchronousIO.cpp:21
lldb_private
A class that represents a running process on the host machine.
Definition: SBCommandInterpreterRunOptions.h:16
lldb_private::StreamAsynchronousIO
Definition: StreamAsynchronousIO.h:21
Stream.h
lldb_private::StreamAsynchronousIO::m_data
std::string m_data
Definition: StreamAsynchronousIO.h:34