mod_servlet
C++Servlets
|
Definitions for custom implementation of std::istream
and std::ostream
objects.
More...
#include <type_traits>
#include <iostream>
#include <vector>
#include <experimental/type_traits>
Go to the source code of this file.
Classes | |
struct | servlet::buffering< BufSize > |
Template class holder of the buffer size. More... | |
struct | servlet::sink |
Sink tag. More... | |
struct | servlet::source |
Source tag. More... | |
struct | servlet::buffer_provider |
Source tag. More... | |
class | servlet::basic_outstream< Sink, Buffering, CharT, Traits > |
Implementation of output stream object. More... | |
class | servlet::basic_instream< Source, Buffering, CharT, Traits > |
Implementation of input stream object. More... | |
Typedefs | |
typedef buffering< 0 > | servlet::non_buffered |
Type definition for zero buffer. | |
typedef buffering< 1024 > | servlet::buffer_1k |
Type definition for 1Kb buffer. | |
typedef buffering< 2048 > | servlet::buffer_2k |
Type definition for 2Kb buffer. | |
typedef buffering< 4096 > | servlet::buffer_4k |
Type definition for 4Kb buffer. | |
typedef buffering< 8192 > | servlet::buffer_8k |
Type definition for 8Kb buffer. | |
template<typename Sink , typename Buffering = non_buffered> | |
using | servlet::outstream = basic_outstream< Sink, Buffering, char > |
Type definition for basic_outstream with char type. | |
template<typename Source , typename Buffering = non_buffered> | |
using | servlet::instream = basic_instream< Source, Buffering, char > |
Type definition for basic_instream with char type. | |
Definitions for custom implementation of std::istream
and std::ostream
objects.
This recembles to the project boost::iostreams, but provides new time ot sink and source - buffer provider, which provides the buffer directly to inbuf
and outbuf
which eliminates unnecessary copying.