TrinityCore
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
GenericInsituStringStream< Encoding > Struct Template Reference

A read-write string stream. More...

#include <rapidjson.h>

Public Types

typedef Encoding::Ch Ch
 

Public Member Functions

 GenericInsituStringStream (Ch *src)
 
Ch Peek ()
 
Ch Take ()
 
size_t Tell ()
 
void Put (Ch c)
 
ChPutBegin ()
 
size_t PutEnd (Ch *begin)
 
void Flush ()
 
ChPush (size_t count)
 
void Pop (size_t count)
 

Public Attributes

Chsrc_
 
Chdst_
 
Chhead_
 

Detailed Description

template<typename Encoding>
struct GenericInsituStringStream< Encoding >

A read-write string stream.

This string stream is particularly designed for in-situ parsing.

Note
implements Stream concept

Member Typedef Documentation

template<typename Encoding>
typedef Encoding::Ch GenericInsituStringStream< Encoding >::Ch

Constructor & Destructor Documentation

template<typename Encoding>
GenericInsituStringStream< Encoding >::GenericInsituStringStream ( Ch src)
inline
608 : src_(src), dst_(0), head_(src) {}
Ch * dst_
Definition: rapidjson.h:626
Ch * src_
Definition: rapidjson.h:625
Ch * head_
Definition: rapidjson.h:627

Member Function Documentation

template<typename Encoding>
void GenericInsituStringStream< Encoding >::Flush ( )
inline
620 {}
template<typename Encoding>
Ch GenericInsituStringStream< Encoding >::Peek ( )
inline
611 { return *src_; }
Ch * src_
Definition: rapidjson.h:625
template<typename Encoding>
void GenericInsituStringStream< Encoding >::Pop ( size_t  count)
inline
623 { dst_ -= count; }
Ch * dst_
Definition: rapidjson.h:626
template<typename Encoding>
Ch* GenericInsituStringStream< Encoding >::Push ( size_t  count)
inline
622 { Ch* begin = dst_; dst_ += count; return begin; }
Ch * dst_
Definition: rapidjson.h:626
Encoding::Ch Ch
Definition: rapidjson.h:606
template<typename Encoding>
void GenericInsituStringStream< Encoding >::Put ( Ch  c)
inline
616 { RAPIDJSON_ASSERT(dst_ != 0); *dst_++ = c; }
#define RAPIDJSON_ASSERT(x)
Assertion.
Definition: rapidjson.h:344
Ch * dst_
Definition: rapidjson.h:626
template<typename Encoding>
Ch* GenericInsituStringStream< Encoding >::PutBegin ( )
inline
618 { return dst_ = src_; }
Ch * dst_
Definition: rapidjson.h:626
Ch * src_
Definition: rapidjson.h:625
template<typename Encoding>
size_t GenericInsituStringStream< Encoding >::PutEnd ( Ch begin)
inline
619 { return static_cast<size_t>(dst_ - begin); }
Ch * dst_
Definition: rapidjson.h:626
template<typename Encoding>
Ch GenericInsituStringStream< Encoding >::Take ( )
inline
612 { return *src_++; }
Ch * src_
Definition: rapidjson.h:625
template<typename Encoding>
size_t GenericInsituStringStream< Encoding >::Tell ( )
inline
613 { return static_cast<size_t>(src_ - head_); }
Ch * src_
Definition: rapidjson.h:625
Ch * head_
Definition: rapidjson.h:627

Member Data Documentation

template<typename Encoding>
Ch* GenericInsituStringStream< Encoding >::dst_
template<typename Encoding>
Ch* GenericInsituStringStream< Encoding >::head_
template<typename Encoding>
Ch* GenericInsituStringStream< Encoding >::src_

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