///
unsigned Column;
- virtual void write_impl(const char *Ptr, unsigned Size) {
+ virtual void write_impl(const char *Ptr, size_t Size) {
ComputeColumn(Ptr, Size);
TheStream->write(Ptr, Size);
}
/// ComputeColumn - Examine the current output and figure out
/// which column we end up in after output.
///
- void ComputeColumn(const char *Ptr, unsigned Size);
+ void ComputeColumn(const char *Ptr, size_t Size);
public:
/// formatted_raw_ostream - Open the specified file for
/// SetBufferSize - Set the internal buffer size to the specified amount
/// instead of the default.
- void SetBufferSize(unsigned Size=4096) {
+ void SetBufferSize(size_t Size=4096) {
assert(Size >= 64 &&
"Buffer size must be somewhat large for invariants to hold");
flush();
Unbuffered = true;
}
- unsigned GetNumBytesInBuffer() const {
+ size_t GetNumBytesInBuffer() const {
return OutBufCur - OutBufStart;
}
// Inline fast path, particulary for constant strings where a
// sufficiently smart compiler will simplify strlen.
- unsigned Size = strlen(Str);
+ size_t Size = strlen(Str);
// Make sure we can use the fast path.
if (OutBufCur+Size > OutBufEnd)
}
raw_ostream &write(unsigned char C);
- raw_ostream &write(const char *Ptr, unsigned Size);
+ raw_ostream &write(const char *Ptr, size_t Size);
// Formatted output, see the format() function in Support/Format.h.
raw_ostream &operator<<(const format_object_base &Fmt);
/// \arg Ptr to the underlying stream.
///
/// \invariant { Size > 0 }
- virtual void write_impl(const char *Ptr, unsigned Size) = 0;
+ virtual void write_impl(const char *Ptr, size_t Size) = 0;
// An out of line virtual method to provide a home for the class vtable.
virtual void handle();
uint64_t pos;
/// write_impl - See raw_ostream::write_impl.
- virtual void write_impl(const char *Ptr, unsigned Size);
+ virtual void write_impl(const char *Ptr, size_t Size);
/// current_pos - Return the current position within the stream, not
/// counting the bytes currently in the buffer.
std::ostream &OS;
/// write_impl - See raw_ostream::write_impl.
- virtual void write_impl(const char *Ptr, unsigned Size);
+ virtual void write_impl(const char *Ptr, size_t Size);
/// current_pos - Return the current position within the stream, not
/// counting the bytes currently in the buffer.
std::string &OS;
/// write_impl - See raw_ostream::write_impl.
- virtual void write_impl(const char *Ptr, unsigned Size);
+ virtual void write_impl(const char *Ptr, size_t Size);
/// current_pos - Return the current position within the stream, not
/// counting the bytes currently in the buffer.
SmallVectorImpl<char> &OS;
/// write_impl - See raw_ostream::write_impl.
- virtual void write_impl(const char *Ptr, unsigned Size);
+ virtual void write_impl(const char *Ptr, size_t Size);
/// current_pos - Return the current position within the stream, not
/// counting the bytes currently in the buffer.
/// ComputeColumn - Examine the current output and figure out which
/// column we end up in after output.
///
-void formatted_raw_ostream::ComputeColumn(const char *Ptr, unsigned Size) {
+void formatted_raw_ostream::ComputeColumn(const char *Ptr, size_t Size) {
// Keep track of the current column by scanning the string for
// special characters
char *CurPtr = EndPtr;
while (N) {
- unsigned x = N % 16;
+ uintptr_t x = N % 16;
*--CurPtr = (x < 10 ? '0' + x : 'a' + x - 10);
N /= 16;
}
return *this;
}
-raw_ostream &raw_ostream::write(const char *Ptr, unsigned Size) {
+raw_ostream &raw_ostream::write(const char *Ptr, size_t Size) {
// Group exceptional cases into a single branch.
if (BUILTIN_EXPECT(OutBufCur+Size > OutBufEnd, false)) {
if (Unbuffered) {
// anyway. We should just flush upfront in such cases, and use the
// whole buffer as our scratch pad. Note, however, that this case is
// also necessary for correctness on unbuffered streams.
- unsigned NextBufferSize = 127;
+ size_t NextBufferSize = 127;
if (OutBufEnd-OutBufCur > 3) {
- unsigned BufferBytesLeft = OutBufEnd-OutBufCur;
- unsigned BytesUsed = Fmt.print(OutBufCur, BufferBytesLeft);
+ size_t BufferBytesLeft = OutBufEnd-OutBufCur;
+ size_t BytesUsed = Fmt.print(OutBufCur, BufferBytesLeft);
// Common case is that we have plenty of space.
if (BytesUsed < BufferBytesLeft) {
V.resize(NextBufferSize);
// Try formatting into the SmallVector.
- unsigned BytesUsed = Fmt.print(&V[0], NextBufferSize);
+ size_t BytesUsed = Fmt.print(&V[0], NextBufferSize);
// If BytesUsed fit into the vector, we win.
if (BytesUsed <= NextBufferSize)
}
}
-void raw_fd_ostream::write_impl(const char *Ptr, unsigned Size) {
+void raw_fd_ostream::write_impl(const char *Ptr, size_t Size) {
assert (FD >= 0 && "File already closed.");
pos += Size;
if (::write(FD, Ptr, Size) != (ssize_t) Size)
(colors == SAVEDCOLOR) ? sys::Process::OutputBold(bg)
: sys::Process::OutputColor(colors, bold, bg);
if (colorcode) {
- unsigned len = strlen(colorcode);
+ size_t len = strlen(colorcode);
write(colorcode, len);
// don't account colors towards output characters
pos -= len;
flush();
const char *colorcode = sys::Process::ResetColor();
if (colorcode) {
- unsigned len = strlen(colorcode);
+ size_t len = strlen(colorcode);
write(colorcode, len);
// don't account colors towards output characters
pos -= len;
flush();
}
-void raw_os_ostream::write_impl(const char *Ptr, unsigned Size) {
+void raw_os_ostream::write_impl(const char *Ptr, size_t Size) {
OS.write(Ptr, Size);
}
flush();
}
-void raw_string_ostream::write_impl(const char *Ptr, unsigned Size) {
+void raw_string_ostream::write_impl(const char *Ptr, size_t Size) {
OS.append(Ptr, Size);
}
flush();
}
-void raw_svector_ostream::write_impl(const char *Ptr, unsigned Size) {
+void raw_svector_ostream::write_impl(const char *Ptr, size_t Size) {
OS.append(Ptr, Ptr + Size);
}