libcaf  0.15.5
Protected Member Functions | List of all members
caf::stream_buffer< CharT, Traits > Class Template Reference

The base class for all stream buffer implementations. More...

#include <streambuf.hpp>

Inheritance diagram for caf::stream_buffer< CharT, Traits >:
caf::arraybuf< CharT, Traits >

Protected Member Functions

template<class T = int>
std::enable_if< sizeof(T)==4 >::type safe_pbump (std::streamsize n)
 The standard only defines pbump(int), which can overflow on 64-bit architectures. More...
 
template<class T = int>
std::enable_if< sizeof(T)==8 >::type safe_pbump (std::streamsize n)
 
template<class T = int>
std::enable_if< sizeof(T)==4 >::type safe_gbump (std::streamsize n)
 
template<class T = int>
std::enable_if< sizeof(T)==8 >::type safe_gbump (std::streamsize n)
 

Detailed Description

template<class CharT = char, class Traits = std::char_traits<CharT>>
class caf::stream_buffer< CharT, Traits >

The base class for all stream buffer implementations.

Member Function Documentation

template<class CharT = char, class Traits = std::char_traits<CharT>>
template<class T = int>
std::enable_if<sizeof(T) == 4>::type caf::stream_buffer< CharT, Traits >::safe_pbump ( std::streamsize  n)
protected

The standard only defines pbump(int), which can overflow on 64-bit architectures.

All stream buffer implementations should therefore use these function instead. For a detailed discussion, see: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=47921


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