LLVM  8.0.1
Public Member Functions | List of all members
llvm::raw_string_ostream Class Reference

A raw_ostream that writes to an std::string. More...

#include "llvm/Support/raw_ostream.h"

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

Public Member Functions

 raw_string_ostream (std::string &O)
 
 ~raw_string_ostream () override
 
std::string & str ()
 Flushes the stream contents to the target string and returns the string's reference. More...
 
- Public Member Functions inherited from llvm::raw_ostream
 raw_ostream (bool unbuffered=false)
 
 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...
 
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_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 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. More...
 
raw_ostreamwrite_uuid (const uuid_t UUID)
 
raw_ostreamwrite_escaped (StringRef Str, bool UseHexEscapes=false)
 Output Str, turning '\', '', '
', '"', and anything that doesn't satisfy llvm::isPrint into an escape sequence. More...
 
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. More...
 
raw_ostreamwrite_zeros (unsigned NumZeros)
 write_zeros - Insert 'NumZeros' nulls. More...
 
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. More...
 
virtual raw_ostreamresetColor ()
 Resets the colors to terminal defaults. More...
 
virtual raw_ostreamreverseColor ()
 Reverses the foreground and background colors. More...
 
virtual bool is_displayed () const
 This function determines if this stream is connected to a "tty" or "console" window. More...
 
virtual bool has_colors () const
 This function determines if this stream is displayed and supports colors. More...
 

Additional Inherited Members

- Public Types inherited from llvm::raw_ostream
enum  Colors {
  BLACK = 0, RED, GREEN, YELLOW,
  BLUE, MAGENTA, CYAN, WHITE,
  SAVEDCOLOR
}
 
using uuid_t = uint8_t[16]
 Output a formatted UUID with dash separators. More...
 
- Protected Member Functions inherited from llvm::raw_ostream
void SetBuffer (char *BufferStart, size_t Size)
 Use the provided buffer as the raw_ostream buffer. More...
 
virtual size_t preferred_buffer_size () const
 Return an efficient buffer size for the underlying output mechanism. More...
 
const chargetBufferStart () const
 Return the beginning of the current stream buffer, or 0 if the stream is unbuffered. More...
 

Detailed Description

A raw_ostream that writes to an std::string.

This is a simple adaptor class. This class does not encounter output errors.

Definition at line 483 of file raw_ostream.h.

Constructor & Destructor Documentation

◆ raw_string_ostream()

llvm::raw_string_ostream::raw_string_ostream ( std::string &  O)
inlineexplicit

Definition at line 494 of file raw_ostream.h.

◆ ~raw_string_ostream()

raw_string_ostream::~raw_string_ostream ( )
override

Definition at line 870 of file raw_ostream.cpp.

References llvm::raw_ostream::flush(), llvm::Intrinsic::memcpy, and Size.

Member Function Documentation

◆ str()

std::string& llvm::raw_string_ostream::str ( )
inline

Flushes the stream contents to the target string and returns the string's reference.

Definition at line 499 of file raw_ostream.h.

Referenced by llvm::MIRPrinter::convert(), ConvertDoubleToBytes(), llvm::createEfficiencySanitizerPass(), llvm::createStringError(), doCandidateWalk(), llvm::AMDGPUAsmPrinter::EmitEndOfAsmFile(), EmitGCCInlineAsmStr(), llvm::AMDGPUTargetAsmStreamer::EmitHSAMetadata(), llvm::AMDGPUTargetELFStreamer::EmitHSAMetadata(), llvm::X86AsmPrinter::EmitInstruction(), llvm::AMDGPU::HSAMD::MetadataStreamerV2::emitKernel(), emitKill(), EmitMSInlineAsmStr(), llvm::AMDGPU::HSAMD::MetadataStreamerV3::end(), ErrorFromHResult(), llvm::RuntimeDyldCheckerExprEval::evaluate(), llvm::object::MachOObjectFile::getBuildPlatform(), llvm::object::MachOObjectFile::getBuildTool(), llvm::LockFileManager::getErrorMessage(), llvm::ScheduleDAGSDNodes::getGraphNodeLabel(), llvm::ScheduleDAGInstrs::getGraphNodeLabel(), llvm::DiagnosticInfoOptimizationBase::getMsg(), llvm::DOTGraphTraits< ScheduleDAGMI * >::getNodeLabel(), getSignature(), getSpecialRegForName(), llvm::HexagonTargetLowering::getTargetNodeName(), getTypeString(), hasValueBeenRAUWed(), INITIALIZE_PASS(), llvm::SelectionDAGISel::isOrEquivalentToAdd(), LLVMVerifyModule(), LLVMWriteBitcodeToMemoryBuffer(), llvm::LockFileManager::LockFileManager(), llvm::AsmPrinter::lowerConstant(), makeCombineInst(), llvm::ErrorInfoBase::message(), llvm::ProfOStream::patch(), llvm::AsmPrinter::PrintSpecial(), raise_relocation_error(), llvm::WholeProgramDevirtPass::run(), llvm::IRTranslator::runOnMachineFunction(), selectJumpTableArmEncoding(), false::Chain::str(), llvm::TableGenMain(), llvm::to_hexString(), and llvm::to_string().


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