LLVM
15.0.0git
|
A raw_ostream of a file for reading/writing/seeking. More...
#include "llvm/Support/raw_ostream.h"
Public Member Functions | |
raw_fd_stream (StringRef Filename, std::error_code &EC) | |
Open the specified file for reading/writing/seeking. More... | |
ssize_t | read (char *Ptr, size_t Size) |
This reads the Size bytes into a buffer pointed by Ptr . More... | |
![]() | |
raw_fd_ostream (StringRef Filename, std::error_code &EC) | |
Open the specified file for writing. More... | |
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. More... | |
~raw_fd_ostream () override | |
void | close () |
Manually flush the stream and close the file. More... | |
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. More... | |
bool | is_displayed () const override |
This function determines if this stream is connected to a "tty" or "console" window. More... | |
bool | has_colors () const override |
This function determines if this stream is displayed and supports colors. More... | |
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. More... | |
void | clear_error () |
Set the flag read by has_error() to false. More... | |
LLVM_NODISCARD Expected< sys::fs::FileLocker > | lock () |
Locks the underlying file. More... | |
LLVM_NODISCARD Expected< sys::fs::FileLocker > | tryLockFor (Duration const &Timeout) |
Tries to lock the underlying file within the specified period. More... | |
![]() | |
raw_pwrite_stream (bool Unbuffered=false, OStreamKind K=OStreamKind::OK_OStream) | |
void | pwrite (const char *Ptr, size_t Size, uint64_t Offset) |
![]() | |
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. More... | |
OStreamKind | get_kind () const |
virtual void | reserveExtraSpace (uint64_t ExtraSize) |
If possible, pre-allocate ExtraSize bytes for stream data. More... | |
void | SetBuffered () |
Set the stream to be buffered, with an automatically determined buffer size. More... | |
void | SetBufferSize (size_t Size) |
Set the stream to be buffered, using the specified buffer size. More... | |
size_t | GetBufferSize () const |
void | SetUnbuffered () |
Set the stream to be unbuffered. More... | |
size_t | GetNumBytesInBuffer () const |
void | flush () |
raw_ostream & | operator<< (char C) |
raw_ostream & | operator<< (unsigned char C) |
raw_ostream & | operator<< (signed char C) |
raw_ostream & | operator<< (StringRef Str) |
raw_ostream & | operator<< (const char *Str) |
raw_ostream & | operator<< (const std::string &Str) |
raw_ostream & | operator<< (const SmallVectorImpl< char > &Str) |
raw_ostream & | operator<< (unsigned long N) |
raw_ostream & | operator<< (long N) |
raw_ostream & | operator<< (unsigned long long N) |
raw_ostream & | operator<< (long long N) |
raw_ostream & | operator<< (const void *P) |
raw_ostream & | operator<< (unsigned int N) |
raw_ostream & | operator<< (int N) |
raw_ostream & | operator<< (double N) |
raw_ostream & | write_hex (unsigned long long N) |
Output N in hexadecimal, without any prefix or padding. More... | |
raw_ostream & | operator<< (Colors C) |
raw_ostream & | write_uuid (const uuid_t UUID) |
raw_ostream & | write_escaped (StringRef Str, bool UseHexEscapes=false) |
Output Str , turning '\', '\t', '', '"', and anything that doesn't satisfy llvm::isPrint into an escape sequence. More... | |
raw_ostream & | write (unsigned char C) |
raw_ostream & | write (const char *Ptr, size_t Size) |
raw_ostream & | operator<< (const format_object_base &Fmt) |
raw_ostream & | operator<< (const FormattedString &) |
raw_ostream & | operator<< (const FormattedNumber &) |
raw_ostream & | operator<< (const formatv_object_base &) |
raw_ostream & | operator<< (const FormattedBytes &) |
raw_ostream & | indent (unsigned NumSpaces) |
indent - Insert 'NumSpaces' spaces. More... | |
raw_ostream & | write_zeros (unsigned NumZeros) |
write_zeros - Insert 'NumZeros' nulls. More... | |
virtual raw_ostream & | changeColor (enum Colors Color, bool Bold=false, bool BG=false) |
Changes the foreground color of text that will be output from this point forward. More... | |
virtual raw_ostream & | resetColor () |
Resets the colors to terminal defaults. More... | |
virtual raw_ostream & | reverseColor () |
Reverses the foreground and background colors. More... | |
virtual void | enable_colors (bool enable) |
bool | colors_enabled () const |
void | tie (raw_ostream *TieTo) |
Tie this stream to the specified stream. More... | |
Static Public Member Functions | |
static bool | classof (const raw_ostream *OS) |
Check if OS is a pointer of type raw_fd_stream*. More... | |
Additional Inherited Members | |
![]() | |
enum | OStreamKind { OStreamKind::OK_OStream, OStreamKind::OK_FDStream } |
enum | Colors { Colors::BLACK = 0, Colors::RED, Colors::GREEN, Colors::YELLOW, Colors::BLUE, Colors::MAGENTA, Colors::CYAN, Colors::WHITE, Colors::SAVEDCOLOR, Colors::RESET } |
using | uuid_t = uint8_t[16] |
Output a formatted UUID with dash separators. More... | |
![]() | |
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 | SAVEDCOLOR = Colors::SAVEDCOLOR |
static constexpr Colors | RESET = Colors::RESET |
![]() | |
void | error_detected (std::error_code EC) |
Set the flag indicating that an output error has been encountered. More... | |
int | get_fd () const |
Return the file descriptor. More... | |
void | inc_pos (uint64_t Delta) |
![]() | |
void | SetBuffer (char *BufferStart, size_t Size) |
Use the provided buffer as the raw_ostream buffer. More... | |
const char * | getBufferStart () const |
Return the beginning of the current stream buffer, or 0 if the stream is unbuffered. More... | |
A raw_ostream of a file for reading/writing/seeking.
Definition at line 601 of file raw_ostream.h.
raw_fd_stream::raw_fd_stream | ( | StringRef | Filename, |
std::error_code & | EC | ||
) |
Open the specified file for reading/writing/seeking.
If an error occurs, information about the error is put into EC, and the stream should be immediately destroyed.
Definition at line 909 of file raw_ostream.cpp.
References llvm::raw_fd_ostream::isRegularFile(), and llvm::make_error_code().
|
static |
Check if OS
is a pointer of type raw_fd_stream*.
Definition at line 931 of file raw_ostream.cpp.
References llvm::raw_ostream::get_kind(), and llvm::raw_ostream::OK_FDStream.
ssize_t raw_fd_stream::read | ( | char * | Ptr, |
size_t | Size | ||
) |
This reads the Size
bytes into a buffer pointed by Ptr
.
Ptr | The start of the buffer to hold data to be read. |
Size | The number of bytes to be read. |
On success, the number of bytes read is returned, and the file position is advanced by this number. On error, -1 is returned, use error() to get the error code.
Definition at line 921 of file raw_ostream.cpp.
References assert(), llvm::raw_fd_ostream::error_detected(), llvm::raw_fd_ostream::get_fd(), llvm::raw_fd_ostream::inc_pos(), llvm::MipsISD::Ret, and llvm::Check::Size.