Elaztek Developer Hub
Blamite Game Engine - blam!  00398.09.22.23.2015.blamite
The core library for the Blamite Game Engine.
SchemaValidatingReader< parseFlags, InputStream, SourceEncoding, SchemaDocumentType, StackAllocator > Class Template Reference

A helper class for parsing with validation. More...

#include <schema.h>

Public Types

typedef SchemaDocumentType::PointerType PointerType
 
typedef InputStream::Ch Ch
 
typedef GenericValue< SourceEncoding, StackAllocator > ValueType
 

Public Member Functions

 SchemaValidatingReader (InputStream &is, const SchemaDocumentType &sd)
 Constructor. More...
 
template<typename Handler >
bool operator() (Handler &handler)
 
const ParseResultGetParseResult () const
 
bool IsValid () const
 
const PointerTypeGetInvalidSchemaPointer () const
 
const ChGetInvalidSchemaKeyword () const
 
const PointerTypeGetInvalidDocumentPointer () const
 
const ValueTypeGetError () const
 
ValidateErrorCode GetInvalidSchemaCode () const
 

Detailed Description

template<unsigned parseFlags, typename InputStream, typename SourceEncoding, typename SchemaDocumentType = SchemaDocument, typename StackAllocator = CrtAllocator>
class SchemaValidatingReader< parseFlags, InputStream, SourceEncoding, SchemaDocumentType, StackAllocator >

A helper class for parsing with validation.

This helper class is a functor, designed as a parameter of GenericDocument::Populate().

Template Parameters
parseFlagsCombination of ParseFlag.
InputStreamType of input stream, implementing Stream concept.
SourceEncodingEncoding of the input stream.
SchemaDocumentTypeType of schema document.
StackAllocatorAllocator type for stack.

Member Typedef Documentation

◆ Ch

template<unsigned parseFlags, typename InputStream , typename SourceEncoding , typename SchemaDocumentType = SchemaDocument, typename StackAllocator = CrtAllocator>
typedef InputStream::Ch SchemaValidatingReader< parseFlags, InputStream, SourceEncoding, SchemaDocumentType, StackAllocator >::Ch

◆ PointerType

template<unsigned parseFlags, typename InputStream , typename SourceEncoding , typename SchemaDocumentType = SchemaDocument, typename StackAllocator = CrtAllocator>
typedef SchemaDocumentType::PointerType SchemaValidatingReader< parseFlags, InputStream, SourceEncoding, SchemaDocumentType, StackAllocator >::PointerType

◆ ValueType

template<unsigned parseFlags, typename InputStream , typename SourceEncoding , typename SchemaDocumentType = SchemaDocument, typename StackAllocator = CrtAllocator>
typedef GenericValue<SourceEncoding, StackAllocator> SchemaValidatingReader< parseFlags, InputStream, SourceEncoding, SchemaDocumentType, StackAllocator >::ValueType

Constructor & Destructor Documentation

◆ SchemaValidatingReader()

template<unsigned parseFlags, typename InputStream , typename SourceEncoding , typename SchemaDocumentType = SchemaDocument, typename StackAllocator = CrtAllocator>
SchemaValidatingReader< parseFlags, InputStream, SourceEncoding, SchemaDocumentType, StackAllocator >::SchemaValidatingReader ( InputStream &  is,
const SchemaDocumentType &  sd 
)
inline

Constructor.

Parameters
isInput stream.
sdSchema document.

Member Function Documentation

◆ GetError()

template<unsigned parseFlags, typename InputStream , typename SourceEncoding , typename SchemaDocumentType = SchemaDocument, typename StackAllocator = CrtAllocator>
const ValueType& SchemaValidatingReader< parseFlags, InputStream, SourceEncoding, SchemaDocumentType, StackAllocator >::GetError ( ) const
inline

◆ GetInvalidDocumentPointer()

template<unsigned parseFlags, typename InputStream , typename SourceEncoding , typename SchemaDocumentType = SchemaDocument, typename StackAllocator = CrtAllocator>
const PointerType& SchemaValidatingReader< parseFlags, InputStream, SourceEncoding, SchemaDocumentType, StackAllocator >::GetInvalidDocumentPointer ( ) const
inline

◆ GetInvalidSchemaCode()

template<unsigned parseFlags, typename InputStream , typename SourceEncoding , typename SchemaDocumentType = SchemaDocument, typename StackAllocator = CrtAllocator>
ValidateErrorCode SchemaValidatingReader< parseFlags, InputStream, SourceEncoding, SchemaDocumentType, StackAllocator >::GetInvalidSchemaCode ( ) const
inline

◆ GetInvalidSchemaKeyword()

template<unsigned parseFlags, typename InputStream , typename SourceEncoding , typename SchemaDocumentType = SchemaDocument, typename StackAllocator = CrtAllocator>
const Ch* SchemaValidatingReader< parseFlags, InputStream, SourceEncoding, SchemaDocumentType, StackAllocator >::GetInvalidSchemaKeyword ( ) const
inline

◆ GetInvalidSchemaPointer()

template<unsigned parseFlags, typename InputStream , typename SourceEncoding , typename SchemaDocumentType = SchemaDocument, typename StackAllocator = CrtAllocator>
const PointerType& SchemaValidatingReader< parseFlags, InputStream, SourceEncoding, SchemaDocumentType, StackAllocator >::GetInvalidSchemaPointer ( ) const
inline

◆ GetParseResult()

template<unsigned parseFlags, typename InputStream , typename SourceEncoding , typename SchemaDocumentType = SchemaDocument, typename StackAllocator = CrtAllocator>
const ParseResult& SchemaValidatingReader< parseFlags, InputStream, SourceEncoding, SchemaDocumentType, StackAllocator >::GetParseResult ( ) const
inline

◆ IsValid()

template<unsigned parseFlags, typename InputStream , typename SourceEncoding , typename SchemaDocumentType = SchemaDocument, typename StackAllocator = CrtAllocator>
bool SchemaValidatingReader< parseFlags, InputStream, SourceEncoding, SchemaDocumentType, StackAllocator >::IsValid ( ) const
inline

◆ operator()()

template<unsigned parseFlags, typename InputStream , typename SourceEncoding , typename SchemaDocumentType = SchemaDocument, typename StackAllocator = CrtAllocator>
template<typename Handler >
bool SchemaValidatingReader< parseFlags, InputStream, SourceEncoding, SchemaDocumentType, StackAllocator >::operator() ( Handler handler)
inline
+ Here is the call graph for this function:

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