SchemaValidatingReader< parseFlags, InputStream, SourceEncoding, SchemaDocumentType, StackAllocator > Class Template Reference

SchemaValidatingReader&lt; parseFlags, InputStream, SourceEncoding, SchemaDocumentType, StackAllocator &gt; Class Template Reference#

Composable Kernel: SchemaValidatingReader< parseFlags, InputStream, SourceEncoding, SchemaDocumentType, StackAllocator > Class Template Reference
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.
template<typename Handler>
bool operator() (Handler &handler)
const ParseResult & GetParseResult () const
bool IsValid () const
const PointerType & GetInvalidSchemaPointer () const
const Ch * GetInvalidSchemaKeyword () const
const PointerType & GetInvalidDocumentPointer () const
const ValueType & GetError () 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

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