LLVM 20.0.0git
Public Member Functions | Static Public Member Functions | List of all members
llvm::raw_socket_stream Class Reference

#include "llvm/Support/raw_socket_stream.h"

Inheritance diagram for llvm::raw_socket_stream:
Inheritance graph
[legend]

Public Member Functions

 raw_socket_stream (int SocketFD)
 
 ~raw_socket_stream ()
 
ssize_t read (char *Ptr, size_t Size, const std::chrono::milliseconds &Timeout=std::chrono::milliseconds(-1))
 Attempt to read from the raw_socket_stream's file descriptor.
 
- Public Member Functions inherited from llvm::raw_fd_stream
 raw_fd_stream (StringRef Filename, std::error_code &EC)
 Open the specified file for reading/writing/seeking.
 
 raw_fd_stream (int fd, bool shouldClose)
 
ssize_t read (char *Ptr, size_t Size)
 This reads the Size bytes into a buffer pointed by Ptr.
 
- Public Member Functions inherited from llvm::raw_fd_ostream
 raw_fd_ostream (StringRef Filename, std::error_code &EC)
 Open the specified file for writing.
 
 raw_fd_ostream (StringRef Filename, std::error_code &EC, sys::fs::CreationDisposition Disp)
 
 raw_fd_ostream (StringRef Filename, std::error_code &EC, sys::fs::FileAccess Access)
 
 raw_fd_ostream (StringRef Filename, std::error_code &EC, sys::fs::OpenFlags Flags)
 
 raw_fd_ostream (StringRef Filename, std::error_code &EC, sys::fs::CreationDisposition Disp, sys::fs::FileAccess Access, sys::fs::OpenFlags Flags)
 
 raw_fd_ostream (int fd, bool shouldClose, bool unbuffered=false, OStreamKind K=OStreamKind::OK_OStream)
 FD is the file descriptor that this writes to.
 
 ~raw_fd_ostream () override
 
void close ()
 Manually flush the stream and close the file.
 
bool supportsSeeking () const
 
bool isRegularFile () const
 
uint64_t seek (uint64_t off)
 Flushes the stream and repositions the underlying file descriptor position to the offset specified from the beginning of the file.
 
bool is_displayed () const override
 This function determines if this stream is connected to a "tty" or "console" window.
 
bool has_colors () const override
 This function determines if this stream is displayed and supports colors.
 
void tie (raw_ostream *TieTo)
 Tie this stream to the specified stream.
 
std::error_code error () const
 
bool has_error () const
 Return the value of the flag in this raw_fd_ostream indicating whether an output error has been encountered.
 
void clear_error ()
 Set the flag read by has_error() to false.
 
Expected< sys::fs::FileLockerlock ()
 Locks the underlying file.
 
Expected< sys::fs::FileLockertryLockFor (Duration const &Timeout)
 Tries to lock the underlying file within the specified period.
 
- Public Member Functions inherited from llvm::raw_pwrite_stream
 raw_pwrite_stream (bool Unbuffered=false, OStreamKind K=OStreamKind::OK_OStream)
 
void pwrite (const char *Ptr, size_t Size, uint64_t Offset)
 
- Public Member Functions inherited from llvm::raw_ostream
 raw_ostream (bool unbuffered=false, OStreamKind K=OStreamKind::OK_OStream)
 
 raw_ostream (const raw_ostream &)=delete
 
void operator= (const raw_ostream &)=delete
 
virtual ~raw_ostream ()
 
uint64_t tell () const
 tell - Return the current offset with the file.
 
OStreamKind get_kind () const
 
virtual void reserveExtraSpace (uint64_t ExtraSize)
 If possible, pre-allocate ExtraSize bytes for stream data.
 
void SetBuffered ()
 Set the stream to be buffered, with an automatically determined buffer size.
 
void SetBufferSize (size_t Size)
 Set the stream to be buffered, using the specified buffer size.
 
size_t GetBufferSize () const
 
void SetUnbuffered ()
 Set the stream to be unbuffered.
 
size_t GetNumBytesInBuffer () const
 
void flush ()
 
raw_ostreamoperator<< (char C)
 
raw_ostreamoperator<< (unsigned char C)
 
raw_ostreamoperator<< (signed char C)
 
raw_ostreamoperator<< (StringRef Str)
 
raw_ostreamoperator<< (const char *Str)
 
raw_ostreamoperator<< (const std::string &Str)
 
raw_ostreamoperator<< (const std::string_view &Str)
 
raw_ostreamoperator<< (const SmallVectorImpl< char > &Str)
 
raw_ostreamoperator<< (unsigned long N)
 
raw_ostreamoperator<< (long N)
 
raw_ostreamoperator<< (unsigned long long N)
 
raw_ostreamoperator<< (long long N)
 
raw_ostreamoperator<< (const void *P)
 
raw_ostreamoperator<< (unsigned int N)
 
raw_ostreamoperator<< (int N)
 
raw_ostreamoperator<< (double N)
 
raw_ostreamwrite_hex (unsigned long long N)
 Output N in hexadecimal, without any prefix or padding.
 
raw_ostreamoperator<< (Colors C)
 
raw_ostreamwrite_uuid (const uuid_t UUID)
 
raw_ostreamwrite_escaped (StringRef Str, bool UseHexEscapes=false)
 Output Str, turning '\', '\t', '
', '"', and anything that doesn't satisfy llvm::isPrint into an escape sequence.
 
raw_ostreamwrite (unsigned char C)
 
raw_ostreamwrite (const char *Ptr, size_t Size)
 
raw_ostreamoperator<< (const format_object_base &Fmt)
 
raw_ostreamoperator<< (const FormattedString &)
 
raw_ostreamoperator<< (const FormattedNumber &)
 
raw_ostreamoperator<< (const formatv_object_base &)
 
raw_ostreamoperator<< (const FormattedBytes &)
 
raw_ostreamindent (unsigned NumSpaces)
 indent - Insert 'NumSpaces' spaces.
 
raw_ostreamwrite_zeros (unsigned NumZeros)
 write_zeros - Insert 'NumZeros' nulls.
 
virtual raw_ostreamchangeColor (enum Colors Color, bool Bold=false, bool BG=false)
 Changes the foreground color of text that will be output from this point forward.
 
virtual raw_ostreamresetColor ()
 Resets the colors to terminal defaults.
 
virtual raw_ostreamreverseColor ()
 Reverses the foreground and background colors.
 
virtual bool is_displayed () const
 This function determines if this stream is connected to a "tty" or "console" window.
 
virtual bool has_colors () const
 This function determines if this stream is displayed and supports colors.
 
virtual void enable_colors (bool enable)
 
bool colors_enabled () const
 

Static Public Member Functions

static Expected< std::unique_ptr< raw_socket_stream > > createConnectedUnix (StringRef SocketPath)
 Create a raw_socket_stream connected to the UNIX domain socket at SocketPath.
 
- Static Public Member Functions inherited from llvm::raw_fd_stream
static bool classof (const raw_ostream *OS)
 Check if OS is a pointer of type raw_fd_stream*.
 

Additional Inherited Members

- Public Types inherited from llvm::raw_ostream
enum class  OStreamKind { OK_OStream , OK_FDStream , OK_SVecStream }
 
enum class  Colors {
  BLACK = 0 , RED , GREEN , YELLOW ,
  BLUE , MAGENTA , CYAN , WHITE ,
  BRIGHT_BLACK , BRIGHT_RED , BRIGHT_GREEN , BRIGHT_YELLOW ,
  BRIGHT_BLUE , BRIGHT_MAGENTA , BRIGHT_CYAN , BRIGHT_WHITE ,
  SAVEDCOLOR , RESET
}
 
using uuid_t = uint8_t[16]
 Output a formatted UUID with dash separators.
 
- Static Public Attributes inherited from llvm::raw_ostream
static constexpr Colors BLACK = Colors::BLACK
 
static constexpr Colors RED = Colors::RED
 
static constexpr Colors GREEN = Colors::GREEN
 
static constexpr Colors YELLOW = Colors::YELLOW
 
static constexpr Colors BLUE = Colors::BLUE
 
static constexpr Colors MAGENTA = Colors::MAGENTA
 
static constexpr Colors CYAN = Colors::CYAN
 
static constexpr Colors WHITE = Colors::WHITE
 
static constexpr Colors BRIGHT_BLACK = Colors::BRIGHT_BLACK
 
static constexpr Colors BRIGHT_RED = Colors::BRIGHT_RED
 
static constexpr Colors BRIGHT_GREEN = Colors::BRIGHT_GREEN
 
static constexpr Colors BRIGHT_YELLOW = Colors::BRIGHT_YELLOW
 
static constexpr Colors BRIGHT_BLUE = Colors::BRIGHT_BLUE
 
static constexpr Colors BRIGHT_MAGENTA = Colors::BRIGHT_MAGENTA
 
static constexpr Colors BRIGHT_CYAN = Colors::BRIGHT_CYAN
 
static constexpr Colors BRIGHT_WHITE = Colors::BRIGHT_WHITE
 
static constexpr Colors SAVEDCOLOR = Colors::SAVEDCOLOR
 
static constexpr Colors RESET = Colors::RESET
 
- Protected Member Functions inherited from llvm::raw_fd_ostream
void error_detected (std::error_code EC)
 Set the flag indicating that an output error has been encountered.
 
int get_fd () const
 Return the file descriptor.
 
void inc_pos (uint64_t Delta)
 
- Protected Member Functions inherited from llvm::raw_ostream
void SetBuffer (char *BufferStart, size_t Size)
 Use the provided buffer as the raw_ostream buffer.
 
virtual size_t preferred_buffer_size () const
 Return an efficient buffer size for the underlying output mechanism.
 
const chargetBufferStart () const
 Return the beginning of the current stream buffer, or 0 if the stream is unbuffered.
 

Detailed Description

Definition at line 120 of file raw_socket_stream.h.

Constructor & Destructor Documentation

◆ raw_socket_stream()

raw_socket_stream::raw_socket_stream ( int  SocketFD)

Definition at line 314 of file raw_socket_stream.cpp.

◆ ~raw_socket_stream()

raw_socket_stream::~raw_socket_stream ( )

Definition at line 317 of file raw_socket_stream.cpp.

Member Function Documentation

◆ createConnectedUnix()

Expected< std::unique_ptr< raw_socket_stream > > raw_socket_stream::createConnectedUnix ( StringRef  SocketPath)
static

Create a raw_socket_stream connected to the UNIX domain socket at SocketPath.

Definition at line 320 of file raw_socket_stream.cpp.

References _, getSocketFD(), and llvm::Expected< T >::takeError().

◆ read()

ssize_t raw_socket_stream::read ( char Ptr,
size_t  Size,
const std::chrono::milliseconds &  Timeout = std::chrono::milliseconds(-1) 
)

Attempt to read from the raw_socket_stream's file descriptor.

This method can optionally either block until data is read or an error has occurred or timeout after a specified amount of time has passed. By default the method will block until the socket has read data or encountered an error. If the read times out this method will return std::errc:timed_out

Parameters
PtrThe start of the buffer that will hold any read data
SizeThe number of bytes to be read
TimeoutAn optional timeout duration in milliseconds

Definition at line 330 of file raw_socket_stream.cpp.

References llvm::raw_fd_ostream::error_detected(), llvm::raw_fd_ostream::get_fd(), manageTimeout(), Ptr, llvm::raw_fd_stream::read(), and Size.


The documentation for this class was generated from the following files: