LLVM API Documentation
#include <raw_ostream.h>
Public Member Functions | |
raw_fd_ostream (const char *Filename, std::string &ErrorInfo, sys::fs::OpenFlags Flags=sys::fs::F_None) | |
raw_fd_ostream (int fd, bool shouldClose, bool unbuffered=false) | |
~raw_fd_ostream () | |
void | close () |
uint64_t | seek (uint64_t off) |
void | SetUseAtomicWrites (bool Value) |
virtual raw_ostream & | changeColor (enum Colors colors, bool bold=false, bool bg=false) LLVM_OVERRIDE |
virtual raw_ostream & | resetColor () LLVM_OVERRIDE |
virtual raw_ostream & | reverseColor () LLVM_OVERRIDE |
Reverses the forground and background colors. More... | |
virtual bool | is_displayed () const LLVM_OVERRIDE |
virtual bool | has_colors () const LLVM_OVERRIDE |
This function determines if this stream is displayed and supports colors. More... | |
bool | has_error () const |
void | clear_error () |
![]() | |
raw_ostream (bool unbuffered=false) | |
virtual | ~raw_ostream () |
uint64_t | tell () const |
tell - Return the current offset with the file. More... | |
void | SetBuffered () |
void | SetBufferSize (size_t Size) |
size_t | GetBufferSize () const |
void | SetUnbuffered () |
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<< (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) |
write_hex - Output N in hexadecimal, without any prefix or padding. More... | |
raw_ostream & | write_escaped (StringRef Str, bool UseHexEscapes=false) |
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 & | indent (unsigned NumSpaces) |
indent - Insert 'NumSpaces' spaces. More... | |
Additional Inherited Members | |
![]() | |
enum | Colors { BLACK =0, RED, GREEN, YELLOW, BLUE, MAGENTA, CYAN, WHITE, SAVEDCOLOR } |
![]() | |
void | SetBuffer (char *BufferStart, size_t Size) |
const char * | getBufferStart () const |
raw_fd_ostream - A raw_ostream that writes to a file descriptor.
Definition at line 310 of file raw_ostream.h.
raw_fd_ostream::raw_fd_ostream | ( | const char * | Filename, |
std::string & | ErrorInfo, | ||
sys::fs::OpenFlags | Flags = sys::fs::F_None |
||
) |
raw_fd_ostream - Open the specified file for writing. If an error occurs, information about the error is put into ErrorInfo, and the stream should be immediately destroyed; the string will be empty if no error occurred. This allows optional flags to control how the file will be opened.
As a special case, if Filename is "-", then the stream will use STDOUT_FILENO instead of opening a file. Note that it will still consider itself to own the file descriptor. In particular, it will close the file descriptor when it is done (this is necessary to detect output errors).
raw_fd_ostream - Open the specified file for writing. If an error occurs, information about the error is put into ErrorInfo, and the stream should be immediately destroyed; the string will be empty if no error occurred.
Definition at line 427 of file raw_ostream.cpp.
References llvm::sys::ChangeStdoutToBinary(), llvm::sys::fs::F_Binary, llvm::error_code::message(), and llvm::sys::fs::openFileForWrite().
raw_fd_ostream ctor - FD is the file descriptor that this writes to. If ShouldClose is true, this closes the file when the stream is destroyed.
Definition at line 462 of file raw_ostream.cpp.
raw_fd_ostream::~raw_fd_ostream | ( | ) |
Definition at line 480 of file raw_ostream.cpp.
References close(), llvm::raw_ostream::flush(), has_error(), and llvm::report_fatal_error().
|
virtual |
Changes the foreground color of text that will be output from this point forward.
Color | ANSI color to use, the special SAVEDCOLOR can be used to change only the bold attribute, and keep colors untouched |
Bold | bold/brighter text, default false |
BG | if true change the background, default: change foreground |
Reimplemented from llvm::raw_ostream.
Definition at line 598 of file raw_ostream.cpp.
References llvm::sys::Process::ColorNeedsFlush(), llvm::raw_ostream::flush(), llvm::sys::Process::OutputBold(), llvm::sys::Process::OutputColor(), llvm::raw_ostream::SAVEDCOLOR, llvm::LibFunc::strlen, and llvm::raw_ostream::write().
|
inline |
clear_error - Set the flag read by has_error() to false. If the error flag is set at the time when this raw_ostream's destructor is called, report_fatal_error is called to report the error. Use clear_error() after handling the error to avoid this behavior.
"Errors should never pass silently. Unless explicitly silenced."
Definition at line 403 of file raw_ostream.h.
Referenced by LTOCodeGenerator::writeMergedModules().
void raw_fd_ostream::close | ( | ) |
close - Manually flush the stream and close the file. Note that this does not call fsync.
Definition at line 558 of file raw_ostream.cpp.
References llvm::raw_ostream::flush().
Referenced by llvm::LockFileManager::LockFileManager(), LTOCodeGenerator::writeMergedModules(), and ~raw_fd_ostream().
|
virtual |
This function determines if this stream is displayed and supports colors.
Reimplemented from llvm::raw_ostream.
Definition at line 644 of file raw_ostream.cpp.
References llvm::sys::Process::FileDescriptorHasColors().
|
inline |
has_error - Return the value of the flag in this raw_fd_ostream indicating whether an output error has been encountered. This doesn't implicitly flush any pending output. Also, it doesn't guarantee to detect all errors unless the stream has been closed.
Definition at line 390 of file raw_ostream.h.
Referenced by llvm::LockFileManager::LockFileManager(), LTOCodeGenerator::writeMergedModules(), and ~raw_fd_ostream().
|
virtual |
This function determines if this stream is connected to a "tty" or "console" window. That is, the output would be displayed to the user rather than being put on a pipe or stored in a file.
Reimplemented from llvm::raw_ostream.
Definition at line 640 of file raw_ostream.cpp.
References llvm::sys::Process::FileDescriptorIsDisplayed().
|
virtual |
Resets the colors to terminal defaults. Call this when you are done outputting colored text, or before program exit.
Reimplemented from llvm::raw_ostream.
Definition at line 614 of file raw_ostream.cpp.
References llvm::sys::Process::ColorNeedsFlush(), llvm::raw_ostream::flush(), llvm::sys::Process::ResetColor(), llvm::LibFunc::strlen, and llvm::raw_ostream::write().
|
virtual |
Reverses the forground and background colors.
Reimplemented from llvm::raw_ostream.
Definition at line 627 of file raw_ostream.cpp.
References llvm::sys::Process::ColorNeedsFlush(), llvm::raw_ostream::flush(), llvm::sys::Process::OutputReverse(), llvm::LibFunc::strlen, and llvm::raw_ostream::write().
uint64_t raw_fd_ostream::seek | ( | uint64_t | off | ) |
seek - Flushes the stream and repositions the underlying file descriptor position to the offset specified from the beginning of the file.
Definition at line 570 of file raw_ostream.cpp.
References llvm::raw_ostream::flush().
|
inline |
SetUseAtomicWrite - Set the stream to attempt to use atomic writes for individual output routines where possible.
Note that because raw_ostream's are typically buffered, this flag is only sensible when used on unbuffered streams which will flush their output immediately.
Definition at line 372 of file raw_ostream.h.