Public Types | Public Member Functions | Private Member Functions | Private Attributes | List of all members
GenericReader< SourceEncoding, TargetEncoding, StackAllocator >::StackStream< CharType > Class Template Reference

Public Types

typedef CharType Ch
 

Public Member Functions

 StackStream (internal::Stack< StackAllocator > &stack)
 
RAPIDJSON_FORCEINLINE void Put (Ch c)
 
RAPIDJSON_FORCEINLINE void * Push (SizeType count)
 
size_t Length () const
 
ChPop ()
 

Private Member Functions

 StackStream (const StackStream &)
 
StackStreamoperator= (const StackStream &)
 

Private Attributes

internal::Stack< StackAllocator > & stack_
 
SizeType length_
 

Detailed Description

template<typename SourceEncoding, typename TargetEncoding, typename StackAllocator = CrtAllocator>
template<typename CharType>
class GenericReader< SourceEncoding, TargetEncoding, StackAllocator >::StackStream< CharType >

Definition at line 926 of file reader.h.

Member Typedef Documentation

template<typename SourceEncoding, typename TargetEncoding, typename StackAllocator = CrtAllocator>
template<typename CharType>
typedef CharType GenericReader< SourceEncoding, TargetEncoding, StackAllocator >::StackStream< CharType >::Ch

Definition at line 928 of file reader.h.

Constructor & Destructor Documentation

template<typename SourceEncoding, typename TargetEncoding, typename StackAllocator = CrtAllocator>
template<typename CharType>
GenericReader< SourceEncoding, TargetEncoding, StackAllocator >::StackStream< CharType >::StackStream ( internal::Stack< StackAllocator > &  stack)
inline

Definition at line 930 of file reader.h.

930 : stack_(stack), length_(0) {}
internal::Stack< StackAllocator > & stack_
Definition: reader.h:951
template<typename SourceEncoding, typename TargetEncoding, typename StackAllocator = CrtAllocator>
template<typename CharType>
GenericReader< SourceEncoding, TargetEncoding, StackAllocator >::StackStream< CharType >::StackStream ( const StackStream< CharType > &  )
private

Member Function Documentation

template<typename SourceEncoding, typename TargetEncoding, typename StackAllocator = CrtAllocator>
template<typename CharType>
size_t GenericReader< SourceEncoding, TargetEncoding, StackAllocator >::StackStream< CharType >::Length ( ) const
inline

Definition at line 941 of file reader.h.

941 { return length_; }
template<typename SourceEncoding, typename TargetEncoding, typename StackAllocator = CrtAllocator>
template<typename CharType>
StackStream& GenericReader< SourceEncoding, TargetEncoding, StackAllocator >::StackStream< CharType >::operator= ( const StackStream< CharType > &  )
private
template<typename SourceEncoding, typename TargetEncoding, typename StackAllocator = CrtAllocator>
template<typename CharType>
Ch* GenericReader< SourceEncoding, TargetEncoding, StackAllocator >::StackStream< CharType >::Pop ( )
inline

Definition at line 943 of file reader.h.

943  {
944  return stack_.template Pop<Ch>(length_);
945  }
internal::Stack< StackAllocator > & stack_
Definition: reader.h:951
template<typename SourceEncoding, typename TargetEncoding, typename StackAllocator = CrtAllocator>
template<typename CharType>
RAPIDJSON_FORCEINLINE void* GenericReader< SourceEncoding, TargetEncoding, StackAllocator >::StackStream< CharType >::Push ( SizeType  count)
inline

Definition at line 936 of file reader.h.

936  {
937  length_ += count;
938  return stack_.template Push<Ch>(count);
939  }
internal::Stack< StackAllocator > & stack_
Definition: reader.h:951
template<typename SourceEncoding, typename TargetEncoding, typename StackAllocator = CrtAllocator>
template<typename CharType>
RAPIDJSON_FORCEINLINE void GenericReader< SourceEncoding, TargetEncoding, StackAllocator >::StackStream< CharType >::Put ( Ch  c)
inline

Definition at line 931 of file reader.h.

931  {
932  *stack_.template Push<Ch>() = c;
933  ++length_;
934  }
internal::Stack< StackAllocator > & stack_
Definition: reader.h:951

Member Data Documentation

template<typename SourceEncoding, typename TargetEncoding, typename StackAllocator = CrtAllocator>
template<typename CharType>
SizeType GenericReader< SourceEncoding, TargetEncoding, StackAllocator >::StackStream< CharType >::length_
private

Definition at line 952 of file reader.h.

template<typename SourceEncoding, typename TargetEncoding, typename StackAllocator = CrtAllocator>
template<typename CharType>
internal::Stack<StackAllocator>& GenericReader< SourceEncoding, TargetEncoding, StackAllocator >::StackStream< CharType >::stack_
private

Definition at line 951 of file reader.h.


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