Public Types | Public Member Functions | Private Member Functions | Private Attributes | List of all members
BasicOStreamWrapper< StreamType > Class Template Reference

Wrapper of std::basic_ostream into RapidJSON's Stream concept. More...

#include <ostreamwrapper.h>

Public Types

typedef StreamType::char_type Ch
 

Public Member Functions

 BasicOStreamWrapper (StreamType &stream)
 
void Put (Ch c)
 
void Flush ()
 
char Peek () const
 
char Take ()
 
size_t Tell () const
 
char * PutBegin ()
 
size_t PutEnd (char *)
 

Private Member Functions

 BasicOStreamWrapper (const BasicOStreamWrapper &)
 
BasicOStreamWrapperoperator= (const BasicOStreamWrapper &)
 

Private Attributes

StreamType & stream_
 

Detailed Description

template<typename StreamType>
class BasicOStreamWrapper< StreamType >

Wrapper of std::basic_ostream into RapidJSON's Stream concept.

The classes can be wrapped including but not limited to:

Template Parameters
StreamTypeClass derived from std::basic_ostream.

Definition at line 45 of file ostreamwrapper.h.

Member Typedef Documentation

template<typename StreamType >
typedef StreamType::char_type BasicOStreamWrapper< StreamType >::Ch

Definition at line 47 of file ostreamwrapper.h.

Constructor & Destructor Documentation

template<typename StreamType >
BasicOStreamWrapper< StreamType >::BasicOStreamWrapper ( StreamType &  stream)
inline

Definition at line 48 of file ostreamwrapper.h.

template<typename StreamType >
BasicOStreamWrapper< StreamType >::BasicOStreamWrapper ( const BasicOStreamWrapper< StreamType > &  )
private

Member Function Documentation

template<typename StreamType >
void BasicOStreamWrapper< StreamType >::Flush ( )
inline

Definition at line 54 of file ostreamwrapper.h.

54  {
55  stream_.flush();
56  }
StreamType & stream_
template<typename StreamType >
BasicOStreamWrapper& BasicOStreamWrapper< StreamType >::operator= ( const BasicOStreamWrapper< StreamType > &  )
private
template<typename StreamType >
char BasicOStreamWrapper< StreamType >::Peek ( ) const
inline

Definition at line 59 of file ostreamwrapper.h.

59 { RAPIDJSON_ASSERT(false); return 0; }
#define RAPIDJSON_ASSERT(x)
Assertion.
Definition: rapidjson.h:406
template<typename StreamType >
void BasicOStreamWrapper< StreamType >::Put ( Ch  c)
inline

Definition at line 50 of file ostreamwrapper.h.

50  {
51  stream_.put(c);
52  }
StreamType & stream_
template<typename StreamType >
char* BasicOStreamWrapper< StreamType >::PutBegin ( )
inline

Definition at line 62 of file ostreamwrapper.h.

62 { RAPIDJSON_ASSERT(false); return 0; }
#define RAPIDJSON_ASSERT(x)
Assertion.
Definition: rapidjson.h:406
template<typename StreamType >
size_t BasicOStreamWrapper< StreamType >::PutEnd ( char *  )
inline

Definition at line 63 of file ostreamwrapper.h.

63 { RAPIDJSON_ASSERT(false); return 0; }
#define RAPIDJSON_ASSERT(x)
Assertion.
Definition: rapidjson.h:406
template<typename StreamType >
char BasicOStreamWrapper< StreamType >::Take ( )
inline

Definition at line 60 of file ostreamwrapper.h.

60 { RAPIDJSON_ASSERT(false); return 0; }
#define RAPIDJSON_ASSERT(x)
Assertion.
Definition: rapidjson.h:406
template<typename StreamType >
size_t BasicOStreamWrapper< StreamType >::Tell ( ) const
inline

Definition at line 61 of file ostreamwrapper.h.

61 { RAPIDJSON_ASSERT(false); return 0; }
#define RAPIDJSON_ASSERT(x)
Assertion.
Definition: rapidjson.h:406

Member Data Documentation

template<typename StreamType >
StreamType& BasicOStreamWrapper< StreamType >::stream_
private

Definition at line 69 of file ostreamwrapper.h.


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