LLVM API Documentation

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Public Member Functions | Static Public Attributes | List of all members
llvm::formatted_raw_ostream Class Reference

#include <FormattedStream.h>

Inheritance diagram for llvm::formatted_raw_ostream:
Inheritance graph
[legend]
Collaboration diagram for llvm::formatted_raw_ostream:
Collaboration graph
[legend]

Public Member Functions

 formatted_raw_ostream (raw_ostream &Stream, bool Delete=false)
 
 formatted_raw_ostream ()
 
 ~formatted_raw_ostream ()
 
void setStream (raw_ostream &Stream, bool Delete=false)
 
formatted_raw_ostreamPadToColumn (unsigned NewCol)
 
unsigned getColumn ()
 getColumn - Return the column number More...
 
unsigned getLine ()
 getLine - Return the line number More...
 
raw_ostreamresetColor ()
 
raw_ostreamreverseColor ()
 Reverses the forground and background colors. More...
 
raw_ostreamchangeColor (enum Colors Color, bool Bold, bool BG)
 
bool is_displayed () const
 
- Public Member Functions inherited from llvm::raw_ostream
 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_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<< (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)
 write_hex - Output N in hexadecimal, without any prefix or padding. More...
 
raw_ostreamwrite_escaped (StringRef Str, bool UseHexEscapes=false)
 
raw_ostreamwrite (unsigned char C)
 
raw_ostreamwrite (const char *Ptr, size_t Size)
 
raw_ostreamoperator<< (const format_object_base &Fmt)
 
raw_ostreamindent (unsigned NumSpaces)
 indent - Insert 'NumSpaces' spaces. More...
 
virtual bool has_colors () const
 This function determines if this stream is displayed and supports colors. More...
 

Static Public Attributes

static const bool DELETE_STREAM = true
 
static const bool PRESERVE_STREAM = false
 

Additional Inherited Members

- Public Types inherited from llvm::raw_ostream
enum  Colors {
  BLACK =0, RED, GREEN, YELLOW,
  BLUE, MAGENTA, CYAN, WHITE,
  SAVEDCOLOR
}
 
- Protected Member Functions inherited from llvm::raw_ostream
void SetBuffer (char *BufferStart, size_t Size)
 
virtual size_t preferred_buffer_size () const
 
const char * getBufferStart () const
 

Detailed Description

formatted_raw_ostream - A raw_ostream that wraps another one and keeps track of line and column position, allowing padding out to specific column boundaries and querying the number of lines written to the stream.

Definition at line 27 of file FormattedStream.h.

Constructor & Destructor Documentation

llvm::formatted_raw_ostream::formatted_raw_ostream ( raw_ostream Stream,
bool  Delete = false 
)
inline

formatted_raw_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.

As a side effect, the given Stream is set to be Unbuffered. This is because formatted_raw_ostream does its own buffering, so it doesn't want another layer of buffering to be happening underneath it.

Definition at line 87 of file FormattedStream.h.

References setStream().

llvm::formatted_raw_ostream::formatted_raw_ostream ( )
inlineexplicit

Definition at line 91 of file FormattedStream.h.

llvm::formatted_raw_ostream::~formatted_raw_ostream ( )
inline

Definition at line 96 of file FormattedStream.h.

References llvm::raw_ostream::flush().

Member Function Documentation

raw_ostream& llvm::formatted_raw_ostream::changeColor ( enum Colors  Color,
bool  Bold,
bool  BG 
)
inlinevirtual

Changes the foreground color of text that will be output from this point forward.

Parameters
ColorANSI color to use, the special SAVEDCOLOR can be used to change only the bold attribute, and keep colors untouched
Boldbold/brighter text, default false
BGif true change the background, default: change foreground
Returns
itself so it can be used within << invocations

Reimplemented from llvm::raw_ostream.

Definition at line 143 of file FormattedStream.h.

References llvm::raw_ostream::changeColor().

unsigned llvm::formatted_raw_ostream::getColumn ( )
inline

getColumn - Return the column number

Definition at line 128 of file FormattedStream.h.

Referenced by PadToColumn().

unsigned llvm::formatted_raw_ostream::getLine ( )
inline

getLine - Return the line number

Definition at line 131 of file FormattedStream.h.

bool llvm::formatted_raw_ostream::is_displayed ( ) const
inlinevirtual

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 150 of file FormattedStream.h.

References llvm::raw_ostream::is_displayed().

formatted_raw_ostream & formatted_raw_ostream::PadToColumn ( unsigned  NewCol)

PadToColumn - Align the output to some column number. If the current column is already equal to or more than NewCol, PadToColumn inserts one space.

Parameters
NewCol- The column to move to.

PadToColumn - Align the output to some column number.

Parameters
NewCol- The column to move to.

Definition at line 66 of file FormattedStream.cpp.

References llvm::raw_ostream::getBufferStart(), getColumn(), llvm::raw_ostream::GetNumBytesInBuffer(), and llvm::raw_ostream::indent().

Referenced by emitComments(), and llvm::WriteMDNodeComment().

raw_ostream& llvm::formatted_raw_ostream::resetColor ( )
inlinevirtual

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 133 of file FormattedStream.h.

References llvm::raw_ostream::resetColor().

raw_ostream& llvm::formatted_raw_ostream::reverseColor ( )
inlinevirtual

Reverses the forground and background colors.

Reimplemented from llvm::raw_ostream.

Definition at line 138 of file FormattedStream.h.

References llvm::raw_ostream::reverseColor().

void llvm::formatted_raw_ostream::setStream ( raw_ostream Stream,
bool  Delete = false 
)
inline

Member Data Documentation

const bool llvm::formatted_raw_ostream::DELETE_STREAM = true
static

DELETE_STREAM - Tell the destructor to delete the held stream.

Definition at line 31 of file FormattedStream.h.

const bool llvm::formatted_raw_ostream::PRESERVE_STREAM = false
static

PRESERVE_STREAM - Tell the destructor to not delete the held stream.

Definition at line 36 of file FormattedStream.h.


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