aboutsummaryrefslogtreecommitdiffstats
path: root/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-core/source/utils/stream
diff options
context:
space:
mode:
authornalpp <nalpp@yandex-team.ru>2022-02-10 16:46:45 +0300
committerDaniil Cherednik <dcherednik@yandex-team.ru>2022-02-10 16:46:45 +0300
commit87f3eb38999df2d3c1cb77f8ffb9c52ec9c516fb (patch)
treef4ab0734eecf35b22f21952d1aa15496f267a6a3 /contrib/libs/aws-sdk-cpp/aws-cpp-sdk-core/source/utils/stream
parent198698b9c1e18958addc9682fbfba4576d604757 (diff)
downloadydb-87f3eb38999df2d3c1cb77f8ffb9c52ec9c516fb.tar.gz
Restoring authorship annotation for <nalpp@yandex-team.ru>. Commit 1 of 2.
Diffstat (limited to 'contrib/libs/aws-sdk-cpp/aws-cpp-sdk-core/source/utils/stream')
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-core/source/utils/stream/PreallocatedStreamBuf.cpp124
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-core/source/utils/stream/ResponseStream.cpp174
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-core/source/utils/stream/SimpleStreamBuf.cpp464
3 files changed, 381 insertions, 381 deletions
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-core/source/utils/stream/PreallocatedStreamBuf.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-core/source/utils/stream/PreallocatedStreamBuf.cpp
index f656fc8613..a91903a0f3 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-core/source/utils/stream/PreallocatedStreamBuf.cpp
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-core/source/utils/stream/PreallocatedStreamBuf.cpp
@@ -1,75 +1,75 @@
-
+
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
-
-#include <aws/core/utils/stream/PreallocatedStreamBuf.h>
-#include <cassert>
-
-namespace Aws
-{
- namespace Utils
- {
- namespace Stream
- {
+
+#include <aws/core/utils/stream/PreallocatedStreamBuf.h>
+#include <cassert>
+
+namespace Aws
+{
+ namespace Utils
+ {
+ namespace Stream
+ {
PreallocatedStreamBuf::PreallocatedStreamBuf(unsigned char* buffer, uint64_t lengthToRead) :
- m_underlyingBuffer(buffer), m_lengthToRead(lengthToRead)
- {
+ m_underlyingBuffer(buffer), m_lengthToRead(lengthToRead)
+ {
char* end = reinterpret_cast<char*>(m_underlyingBuffer + m_lengthToRead);
char* begin = reinterpret_cast<char*>(m_underlyingBuffer);
- setp(begin, end);
- setg(begin, begin, end);
- }
-
- PreallocatedStreamBuf::pos_type PreallocatedStreamBuf::seekoff(off_type off, std::ios_base::seekdir dir, std::ios_base::openmode which)
- {
- if (dir == std::ios_base::beg)
- {
- return seekpos(off, which);
- }
- else if (dir == std::ios_base::end)
- {
- return seekpos(m_lengthToRead - off, which);
- }
- else if (dir == std::ios_base::cur)
- {
- if(which == std::ios_base::in)
- {
+ setp(begin, end);
+ setg(begin, begin, end);
+ }
+
+ PreallocatedStreamBuf::pos_type PreallocatedStreamBuf::seekoff(off_type off, std::ios_base::seekdir dir, std::ios_base::openmode which)
+ {
+ if (dir == std::ios_base::beg)
+ {
+ return seekpos(off, which);
+ }
+ else if (dir == std::ios_base::end)
+ {
+ return seekpos(m_lengthToRead - off, which);
+ }
+ else if (dir == std::ios_base::cur)
+ {
+ if(which == std::ios_base::in)
+ {
return seekpos((gptr() - reinterpret_cast<char*>(m_underlyingBuffer)) + off, which);
- }
- else
- {
+ }
+ else
+ {
return seekpos((pptr() - reinterpret_cast<char*>(m_underlyingBuffer)) + off, which);
- }
- }
-
- return off_type(-1);
- }
-
- PreallocatedStreamBuf::pos_type PreallocatedStreamBuf::seekpos(pos_type pos, std::ios_base::openmode which)
- {
- assert(static_cast<size_t>(pos) <= m_lengthToRead);
- if (static_cast<size_t>(pos) > m_lengthToRead)
- {
- return pos_type(off_type(-1));
- }
-
+ }
+ }
+
+ return off_type(-1);
+ }
+
+ PreallocatedStreamBuf::pos_type PreallocatedStreamBuf::seekpos(pos_type pos, std::ios_base::openmode which)
+ {
+ assert(static_cast<size_t>(pos) <= m_lengthToRead);
+ if (static_cast<size_t>(pos) > m_lengthToRead)
+ {
+ return pos_type(off_type(-1));
+ }
+
char* end = reinterpret_cast<char*>(m_underlyingBuffer + m_lengthToRead);
char* begin = reinterpret_cast<char*>(m_underlyingBuffer);
-
- if (which == std::ios_base::in)
- {
+
+ if (which == std::ios_base::in)
+ {
setg(begin, begin + static_cast<size_t>(pos), end);
- }
-
- if (which == std::ios_base::out)
- {
- setp(begin + static_cast<size_t>(pos), end);
- }
-
- return pos;
- }
- }
- }
+ }
+
+ if (which == std::ios_base::out)
+ {
+ setp(begin + static_cast<size_t>(pos), end);
+ }
+
+ return pos;
+ }
+ }
+ }
}
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-core/source/utils/stream/ResponseStream.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-core/source/utils/stream/ResponseStream.cpp
index 6d1f90ed12..afba5ee828 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-core/source/utils/stream/ResponseStream.cpp
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-core/source/utils/stream/ResponseStream.cpp
@@ -2,90 +2,90 @@
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
-
-#include <aws/core/utils/stream/ResponseStream.h>
-#include <aws/core/utils/memory/stl/AWSStringStream.h>
-
-#if defined(_GLIBCXX_FULLY_DYNAMIC_STRING) && _GLIBCXX_FULLY_DYNAMIC_STRING == 0 && defined(__ANDROID__)
-#include <aws/core/utils/stream/SimpleStreamBuf.h>
-using DefaultStreamBufType = Aws::Utils::Stream::SimpleStreamBuf;
-#else
-using DefaultStreamBufType = Aws::StringBuf;
-#endif
-
-using namespace Aws::Utils::Stream;
-
-ResponseStream::ResponseStream(void) :
- m_underlyingStream(nullptr)
-{
-}
-
-ResponseStream::ResponseStream(Aws::IOStream* underlyingStreamToManage) :
- m_underlyingStream(underlyingStreamToManage)
-{
-}
-
-ResponseStream::ResponseStream(const Aws::IOStreamFactory& factory) :
- m_underlyingStream(factory())
-{
-}
-
-ResponseStream::ResponseStream(ResponseStream&& toMove) : m_underlyingStream(toMove.m_underlyingStream)
-{
- toMove.m_underlyingStream = nullptr;
-}
-
-ResponseStream& ResponseStream::operator=(ResponseStream&& toMove)
-{
- if(m_underlyingStream == toMove.m_underlyingStream)
- {
- return *this;
- }
-
- ReleaseStream();
- m_underlyingStream = toMove.m_underlyingStream;
- toMove.m_underlyingStream = nullptr;
-
- return *this;
-}
-
-ResponseStream::~ResponseStream()
-{
- ReleaseStream();
-}
-
-void ResponseStream::ReleaseStream()
-{
- if (m_underlyingStream)
- {
- m_underlyingStream->flush();
- Aws::Delete(m_underlyingStream);
- }
-
- m_underlyingStream = nullptr;
-}
-
-static const char *DEFAULT_STREAM_TAG = "DefaultUnderlyingStream";
-
-DefaultUnderlyingStream::DefaultUnderlyingStream() :
- Base( Aws::New< DefaultStreamBufType >( DEFAULT_STREAM_TAG ) )
-{}
-
-DefaultUnderlyingStream::DefaultUnderlyingStream(Aws::UniquePtr<std::streambuf> buf) :
- Base(buf.release())
-{}
-
-DefaultUnderlyingStream::~DefaultUnderlyingStream()
-{
- if( rdbuf() )
- {
- Aws::Delete( rdbuf() );
- }
-}
-
-static const char* RESPONSE_STREAM_FACTORY_TAG = "ResponseStreamFactory";
-
-Aws::IOStream* Aws::Utils::Stream::DefaultResponseStreamFactoryMethod()
-{
- return Aws::New<Aws::Utils::Stream::DefaultUnderlyingStream>(RESPONSE_STREAM_FACTORY_TAG);
-}
+
+#include <aws/core/utils/stream/ResponseStream.h>
+#include <aws/core/utils/memory/stl/AWSStringStream.h>
+
+#if defined(_GLIBCXX_FULLY_DYNAMIC_STRING) && _GLIBCXX_FULLY_DYNAMIC_STRING == 0 && defined(__ANDROID__)
+#include <aws/core/utils/stream/SimpleStreamBuf.h>
+using DefaultStreamBufType = Aws::Utils::Stream::SimpleStreamBuf;
+#else
+using DefaultStreamBufType = Aws::StringBuf;
+#endif
+
+using namespace Aws::Utils::Stream;
+
+ResponseStream::ResponseStream(void) :
+ m_underlyingStream(nullptr)
+{
+}
+
+ResponseStream::ResponseStream(Aws::IOStream* underlyingStreamToManage) :
+ m_underlyingStream(underlyingStreamToManage)
+{
+}
+
+ResponseStream::ResponseStream(const Aws::IOStreamFactory& factory) :
+ m_underlyingStream(factory())
+{
+}
+
+ResponseStream::ResponseStream(ResponseStream&& toMove) : m_underlyingStream(toMove.m_underlyingStream)
+{
+ toMove.m_underlyingStream = nullptr;
+}
+
+ResponseStream& ResponseStream::operator=(ResponseStream&& toMove)
+{
+ if(m_underlyingStream == toMove.m_underlyingStream)
+ {
+ return *this;
+ }
+
+ ReleaseStream();
+ m_underlyingStream = toMove.m_underlyingStream;
+ toMove.m_underlyingStream = nullptr;
+
+ return *this;
+}
+
+ResponseStream::~ResponseStream()
+{
+ ReleaseStream();
+}
+
+void ResponseStream::ReleaseStream()
+{
+ if (m_underlyingStream)
+ {
+ m_underlyingStream->flush();
+ Aws::Delete(m_underlyingStream);
+ }
+
+ m_underlyingStream = nullptr;
+}
+
+static const char *DEFAULT_STREAM_TAG = "DefaultUnderlyingStream";
+
+DefaultUnderlyingStream::DefaultUnderlyingStream() :
+ Base( Aws::New< DefaultStreamBufType >( DEFAULT_STREAM_TAG ) )
+{}
+
+DefaultUnderlyingStream::DefaultUnderlyingStream(Aws::UniquePtr<std::streambuf> buf) :
+ Base(buf.release())
+{}
+
+DefaultUnderlyingStream::~DefaultUnderlyingStream()
+{
+ if( rdbuf() )
+ {
+ Aws::Delete( rdbuf() );
+ }
+}
+
+static const char* RESPONSE_STREAM_FACTORY_TAG = "ResponseStreamFactory";
+
+Aws::IOStream* Aws::Utils::Stream::DefaultResponseStreamFactoryMethod()
+{
+ return Aws::New<Aws::Utils::Stream::DefaultUnderlyingStream>(RESPONSE_STREAM_FACTORY_TAG);
+}
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-core/source/utils/stream/SimpleStreamBuf.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-core/source/utils/stream/SimpleStreamBuf.cpp
index 6e42994744..06ce057a36 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-core/source/utils/stream/SimpleStreamBuf.cpp
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-core/source/utils/stream/SimpleStreamBuf.cpp
@@ -1,239 +1,239 @@
-
+
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
-
-#include <aws/core/utils/stream/SimpleStreamBuf.h>
-
-#include <algorithm>
-#include <cassert>
-#include <cstring>
-
-namespace Aws
-{
-namespace Utils
-{
-namespace Stream
-{
-
-static const uint32_t DEFAULT_BUFFER_SIZE = 100;
-static const char* SIMPLE_STREAMBUF_ALLOCATION_TAG = "SimpleStreamBufTag";
-
-SimpleStreamBuf::SimpleStreamBuf() :
- m_buffer(nullptr),
- m_bufferSize(0)
-{
- m_buffer = Aws::NewArray<char>(DEFAULT_BUFFER_SIZE, SIMPLE_STREAMBUF_ALLOCATION_TAG);
- m_bufferSize = DEFAULT_BUFFER_SIZE;
-
- char* begin = m_buffer;
- char* end = begin + m_bufferSize;
-
- setp(begin, end);
- setg(begin, begin, begin);
-}
-
-SimpleStreamBuf::SimpleStreamBuf(const Aws::String& value) :
- m_buffer(nullptr),
- m_bufferSize(0)
-{
- size_t baseSize = (std::max)(value.size(), static_cast<std::size_t>(DEFAULT_BUFFER_SIZE));
-
- m_buffer = Aws::NewArray<char>(baseSize, SIMPLE_STREAMBUF_ALLOCATION_TAG);
- m_bufferSize = baseSize;
-
- std::memcpy(m_buffer, value.c_str(), value.size());
-
- char* begin = m_buffer;
- char* end = begin + m_bufferSize;
-
- setp(begin + value.size(), end);
- setg(begin, begin, begin);
-}
-
-SimpleStreamBuf::~SimpleStreamBuf()
-{
- if(m_buffer)
- {
- Aws::DeleteArray<char>(m_buffer);
- m_buffer = nullptr;
- }
-
- m_bufferSize = 0;
-}
-
-std::streampos SimpleStreamBuf::seekoff(std::streamoff off, std::ios_base::seekdir dir, std::ios_base::openmode which)
-{
- if (dir == std::ios_base::beg)
- {
- return seekpos(off, which);
- }
- else if (dir == std::ios_base::end)
- {
- return seekpos((pptr() - m_buffer) - off, which);
- }
- else if (dir == std::ios_base::cur)
- {
- if(which == std::ios_base::in)
+
+#include <aws/core/utils/stream/SimpleStreamBuf.h>
+
+#include <algorithm>
+#include <cassert>
+#include <cstring>
+
+namespace Aws
+{
+namespace Utils
+{
+namespace Stream
+{
+
+static const uint32_t DEFAULT_BUFFER_SIZE = 100;
+static const char* SIMPLE_STREAMBUF_ALLOCATION_TAG = "SimpleStreamBufTag";
+
+SimpleStreamBuf::SimpleStreamBuf() :
+ m_buffer(nullptr),
+ m_bufferSize(0)
+{
+ m_buffer = Aws::NewArray<char>(DEFAULT_BUFFER_SIZE, SIMPLE_STREAMBUF_ALLOCATION_TAG);
+ m_bufferSize = DEFAULT_BUFFER_SIZE;
+
+ char* begin = m_buffer;
+ char* end = begin + m_bufferSize;
+
+ setp(begin, end);
+ setg(begin, begin, begin);
+}
+
+SimpleStreamBuf::SimpleStreamBuf(const Aws::String& value) :
+ m_buffer(nullptr),
+ m_bufferSize(0)
+{
+ size_t baseSize = (std::max)(value.size(), static_cast<std::size_t>(DEFAULT_BUFFER_SIZE));
+
+ m_buffer = Aws::NewArray<char>(baseSize, SIMPLE_STREAMBUF_ALLOCATION_TAG);
+ m_bufferSize = baseSize;
+
+ std::memcpy(m_buffer, value.c_str(), value.size());
+
+ char* begin = m_buffer;
+ char* end = begin + m_bufferSize;
+
+ setp(begin + value.size(), end);
+ setg(begin, begin, begin);
+}
+
+SimpleStreamBuf::~SimpleStreamBuf()
+{
+ if(m_buffer)
+ {
+ Aws::DeleteArray<char>(m_buffer);
+ m_buffer = nullptr;
+ }
+
+ m_bufferSize = 0;
+}
+
+std::streampos SimpleStreamBuf::seekoff(std::streamoff off, std::ios_base::seekdir dir, std::ios_base::openmode which)
+{
+ if (dir == std::ios_base::beg)
+ {
+ return seekpos(off, which);
+ }
+ else if (dir == std::ios_base::end)
+ {
+ return seekpos((pptr() - m_buffer) - off, which);
+ }
+ else if (dir == std::ios_base::cur)
+ {
+ if(which == std::ios_base::in)
+ {
+ return seekpos((gptr() - m_buffer) + off, which);
+ }
+ else
{
- return seekpos((gptr() - m_buffer) + off, which);
- }
- else
- {
- return seekpos((pptr() - m_buffer) + off, which);
- }
- }
-
- return off_type(-1);
-}
-
-std::streampos SimpleStreamBuf::seekpos(std::streampos pos, std::ios_base::openmode which)
-{
- size_t maxSeek = pptr() - m_buffer;
- assert(static_cast<size_t>(pos) <= maxSeek);
- if (static_cast<size_t>(pos) > maxSeek)
- {
- return pos_type(off_type(-1));
- }
-
- if (which == std::ios_base::in)
- {
- setg(m_buffer, m_buffer + static_cast<size_t>(pos), pptr());
- }
-
- if (which == std::ios_base::out)
- {
- setp(m_buffer + static_cast<size_t>(pos), epptr());
- }
-
- return pos;
-}
-
-bool SimpleStreamBuf::GrowBuffer()
-{
- size_t currentSize = m_bufferSize;
- size_t newSize = currentSize * 2;
-
- char* newBuffer = Aws::NewArray<char>(newSize, SIMPLE_STREAMBUF_ALLOCATION_TAG);
- if(newBuffer == nullptr)
- {
- return false;
- }
-
- if(currentSize > 0)
- {
- std::memcpy(newBuffer, m_buffer, currentSize);
- }
-
- if(m_buffer)
- {
- Aws::DeleteArray<char>(m_buffer);
- }
-
- m_buffer = newBuffer;
- m_bufferSize = newSize;
-
- return true;
-}
-
-int SimpleStreamBuf::overflow (int c)
-{
- auto endOfFile = std::char_traits< char >::eof();
- if(c == endOfFile)
- {
- return endOfFile;
- }
-
- char* old_begin = m_buffer;
-
- char *old_pptr = pptr();
- char *old_gptr = gptr();
- char *old_egptr = egptr();
-
- size_t currentWritePosition = m_bufferSize;
-
- if(!GrowBuffer())
- {
- return endOfFile;
- }
-
- char* new_begin = m_buffer;
- char* new_end = new_begin + m_bufferSize;
-
- setp(new_begin + (old_pptr - old_begin) + 1, new_end);
- setg(new_begin, new_begin + (old_gptr - old_begin), new_begin + (old_egptr - old_begin));
-
- auto val = std::char_traits< char >::to_char_type(c);
- *(new_begin + currentWritePosition) = val;
-
- return c;
-}
-
-std::streamsize SimpleStreamBuf::xsputn(const char* s, std::streamsize n)
-{
- std::streamsize writeCount = 0;
- while(writeCount < n)
- {
- char* current_pptr = pptr();
- char* current_epptr = epptr();
-
- if (current_pptr < current_epptr)
- {
- std::size_t copySize = (std::min)(static_cast< std::size_t >(n - writeCount),
- static_cast< std::size_t >(current_epptr - current_pptr));
-
- std::memcpy(current_pptr, s + writeCount, copySize);
- writeCount += copySize;
- setp(current_pptr + copySize, current_epptr);
- setg(m_buffer, gptr(), pptr());
- }
- else if (overflow(std::char_traits< char >::to_int_type(*(s + writeCount))) != std::char_traits<char>::eof())
- {
- writeCount++;
- }
- else
- {
- return writeCount;
- }
- }
-
- return writeCount;
-}
-
+ return seekpos((pptr() - m_buffer) + off, which);
+ }
+ }
+
+ return off_type(-1);
+}
+
+std::streampos SimpleStreamBuf::seekpos(std::streampos pos, std::ios_base::openmode which)
+{
+ size_t maxSeek = pptr() - m_buffer;
+ assert(static_cast<size_t>(pos) <= maxSeek);
+ if (static_cast<size_t>(pos) > maxSeek)
+ {
+ return pos_type(off_type(-1));
+ }
+
+ if (which == std::ios_base::in)
+ {
+ setg(m_buffer, m_buffer + static_cast<size_t>(pos), pptr());
+ }
+
+ if (which == std::ios_base::out)
+ {
+ setp(m_buffer + static_cast<size_t>(pos), epptr());
+ }
+
+ return pos;
+}
+
+bool SimpleStreamBuf::GrowBuffer()
+{
+ size_t currentSize = m_bufferSize;
+ size_t newSize = currentSize * 2;
+
+ char* newBuffer = Aws::NewArray<char>(newSize, SIMPLE_STREAMBUF_ALLOCATION_TAG);
+ if(newBuffer == nullptr)
+ {
+ return false;
+ }
+
+ if(currentSize > 0)
+ {
+ std::memcpy(newBuffer, m_buffer, currentSize);
+ }
+
+ if(m_buffer)
+ {
+ Aws::DeleteArray<char>(m_buffer);
+ }
+
+ m_buffer = newBuffer;
+ m_bufferSize = newSize;
+
+ return true;
+}
+
+int SimpleStreamBuf::overflow (int c)
+{
+ auto endOfFile = std::char_traits< char >::eof();
+ if(c == endOfFile)
+ {
+ return endOfFile;
+ }
+
+ char* old_begin = m_buffer;
+
+ char *old_pptr = pptr();
+ char *old_gptr = gptr();
+ char *old_egptr = egptr();
+
+ size_t currentWritePosition = m_bufferSize;
+
+ if(!GrowBuffer())
+ {
+ return endOfFile;
+ }
+
+ char* new_begin = m_buffer;
+ char* new_end = new_begin + m_bufferSize;
+
+ setp(new_begin + (old_pptr - old_begin) + 1, new_end);
+ setg(new_begin, new_begin + (old_gptr - old_begin), new_begin + (old_egptr - old_begin));
+
+ auto val = std::char_traits< char >::to_char_type(c);
+ *(new_begin + currentWritePosition) = val;
+
+ return c;
+}
+
+std::streamsize SimpleStreamBuf::xsputn(const char* s, std::streamsize n)
+{
+ std::streamsize writeCount = 0;
+ while(writeCount < n)
+ {
+ char* current_pptr = pptr();
+ char* current_epptr = epptr();
+
+ if (current_pptr < current_epptr)
+ {
+ std::size_t copySize = (std::min)(static_cast< std::size_t >(n - writeCount),
+ static_cast< std::size_t >(current_epptr - current_pptr));
+
+ std::memcpy(current_pptr, s + writeCount, copySize);
+ writeCount += copySize;
+ setp(current_pptr + copySize, current_epptr);
+ setg(m_buffer, gptr(), pptr());
+ }
+ else if (overflow(std::char_traits< char >::to_int_type(*(s + writeCount))) != std::char_traits<char>::eof())
+ {
+ writeCount++;
+ }
+ else
+ {
+ return writeCount;
+ }
+ }
+
+ return writeCount;
+}
+
Aws::String SimpleStreamBuf::str() const
-{
- return Aws::String(m_buffer, pptr());
-}
-
-int SimpleStreamBuf::underflow()
-{
- if(egptr() != pptr())
- {
- setg(m_buffer, gptr(), pptr());
- }
-
- if(gptr() != egptr())
- {
- return std::char_traits< char >::to_int_type(*gptr());
- }
- else
- {
- return std::char_traits< char >::eof();
- }
-}
-
-void SimpleStreamBuf::str(const Aws::String& value)
-{
- char* begin = m_buffer;
- char* end = begin + m_bufferSize;
-
- setp(begin, end);
- setg(begin, begin, begin);
-
- xsputn(value.c_str(), value.size());
-}
-
-}
-}
+{
+ return Aws::String(m_buffer, pptr());
+}
+
+int SimpleStreamBuf::underflow()
+{
+ if(egptr() != pptr())
+ {
+ setg(m_buffer, gptr(), pptr());
+ }
+
+ if(gptr() != egptr())
+ {
+ return std::char_traits< char >::to_int_type(*gptr());
+ }
+ else
+ {
+ return std::char_traits< char >::eof();
+ }
+}
+
+void SimpleStreamBuf::str(const Aws::String& value)
+{
+ char* begin = m_buffer;
+ char* end = begin + m_bufferSize;
+
+ setp(begin, end);
+ setg(begin, begin, begin);
+
+ xsputn(value.c_str(), value.size());
+}
+
+}
+}
}