mirror of
https://github.com/RPCS3/llvm.git
synced 2024-12-29 07:53:33 +00:00
allow default construction of formatted_raw_ostream.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75674 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
5473f07314
commit
4a18d2f1cc
@ -35,7 +35,7 @@ namespace llvm
|
||||
private:
|
||||
/// TheStream - The real stream we output to.
|
||||
///
|
||||
raw_ostream &TheStream;
|
||||
raw_ostream *TheStream;
|
||||
/// DeleteStream - Do we need to delete TheStream in the
|
||||
/// destructor?
|
||||
///
|
||||
@ -48,7 +48,7 @@ namespace llvm
|
||||
|
||||
virtual void write_impl(const char *Ptr, unsigned Size) {
|
||||
ComputeColumn(Ptr, Size);
|
||||
TheStream.write(Ptr, Size);
|
||||
TheStream->write(Ptr, Size);
|
||||
}
|
||||
|
||||
/// current_pos - Return the current position within the stream,
|
||||
@ -56,7 +56,7 @@ namespace llvm
|
||||
virtual uint64_t current_pos() {
|
||||
// This has the same effect as calling TheStream.current_pos(),
|
||||
// but that interface is private.
|
||||
return TheStream.tell() - TheStream.GetNumBytesInBuffer();
|
||||
return TheStream->tell() - TheStream->GetNumBytesInBuffer();
|
||||
}
|
||||
|
||||
/// ComputeColumn - Examine the current output and figure out
|
||||
@ -75,12 +75,19 @@ namespace llvm
|
||||
/// \param Binary - The file should be opened in binary mode on
|
||||
/// platforms that support this distinction.
|
||||
formatted_raw_ostream(raw_ostream &Stream, bool Delete = false)
|
||||
: raw_ostream(), TheStream(Stream), DeleteStream(Delete), Column(0) {}
|
||||
: raw_ostream(), TheStream(&Stream), DeleteStream(Delete), Column(0) {}
|
||||
explicit formatted_raw_ostream()
|
||||
: raw_ostream(), TheStream(0), DeleteStream(false), Column(0) {}
|
||||
|
||||
~formatted_raw_ostream() {
|
||||
if (DeleteStream)
|
||||
delete &TheStream;
|
||||
}
|
||||
|
||||
void setStream(raw_ostream &Stream, bool Delete = false) {
|
||||
TheStream = &Stream;
|
||||
DeleteStream = Delete;
|
||||
}
|
||||
|
||||
/// PadToColumn - Align the output to some column number.
|
||||
///
|
||||
|
Loading…
Reference in New Issue
Block a user