rapidjson::GenericSchemaDocument< ValueT, Allocator > 模板类 参考

JSON schema document. 更多...

#include <schema.h>

Public 类型

typedef ValueT ValueType
typedef IGenericRemoteSchemaDocumentProvider< GenericSchemaDocumentIRemoteSchemaDocumentProviderType
typedef Allocator AllocatorType
typedef ValueType::EncodingType EncodingType
typedef EncodingType::Ch Ch
typedef internal::Schema< GenericSchemaDocumentSchemaType
typedef GenericPointer< ValueType, AllocatorPointerType
typedef GenericValue< EncodingType, AllocatorURIType

Public 成员函数

 GenericSchemaDocument (const ValueType &document, const Ch *uri=0, SizeType uriLength=0, IRemoteSchemaDocumentProviderType *remoteProvider=0, Allocator *allocator=0)
 Constructor. 更多...
 ~GenericSchemaDocument ()
const URITypeGetURI () const
const SchemaType & GetRoot () const
 Get the root schema.


template<typename , typename , typename >
class GenericSchemaValidator


template<typename ValueT, typename Allocator = CrtAllocator>
class rapidjson::GenericSchemaDocument< ValueT, Allocator >

JSON schema document.

A JSON schema document is a compiled version of a JSON schema. It is basically a tree of internal::Schema.

This is an immutable class (i.e. its instance cannot be modified after construction).
ValueTType of JSON value (e.g. Value ), which also determine the encoding.
AllocatorAllocator type for allocating memory of this document.


◆ GenericSchemaDocument()

template<typename ValueT , typename Allocator = CrtAllocator>
rapidjson::GenericSchemaDocument< ValueT, Allocator >::GenericSchemaDocument ( const ValueType &  document,
const Ch *  uri = 0,
SizeType  uriLength = 0,
IRemoteSchemaDocumentProviderType remoteProvider = 0,
Allocator allocator = 0 


Compile a JSON document into schema document.

documentA JSON document as source.
uriThe base URI of this schema document for purposes of violation reporting.
uriLengthLength of name, in code points.
remoteProviderAn optional remote schema document provider for resolving remote reference. Can be null.
allocatorAn optional allocator instance for allocating memory. Can be null.