JSON Schema Validator. More...
#include <schema.h>
Inheritance diagram for rapidjson::GenericSchemaValidator< SchemaDocumentType, OutputHandler, StateAllocator >:
Public Types | |
| typedef SchemaDocumentType::SchemaType | SchemaType |
| typedef SchemaDocumentType::PointerType | PointerType |
| typedef SchemaType::EncodingType | EncodingType |
| typedef EncodingType::Ch | Ch |
Public Member Functions | |
| GenericSchemaValidator (const SchemaDocumentType &schemaDocument, StateAllocator *allocator=0, size_t schemaStackCapacity=kDefaultSchemaStackCapacity, size_t documentStackCapacity=kDefaultDocumentStackCapacity) | |
| Constructor without output handler. | |
| GenericSchemaValidator (const SchemaDocumentType &schemaDocument, OutputHandler &outputHandler, StateAllocator *allocator=0, size_t schemaStackCapacity=kDefaultSchemaStackCapacity, size_t documentStackCapacity=kDefaultDocumentStackCapacity) | |
| Constructor with output handler. | |
| ~GenericSchemaValidator () | |
| Destructor. | |
| void | Reset () |
| Reset the internal states. | |
| virtual bool | IsValid () const |
| Checks whether the current state is valid. | |
| PointerType | GetInvalidSchemaPointer () const |
| Gets the JSON pointer pointed to the invalid schema. | |
| const Ch * | GetInvalidSchemaKeyword () const |
| Gets the keyword of invalid schema. | |
| PointerType | GetInvalidDocumentPointer () const |
| Gets the JSON pointer pointed to the invalid value. | |
| bool | Null () |
| bool | Bool (bool b) |
| bool | Int (int i) |
| bool | Uint (unsigned u) |
| bool | Int64 (int64_t i) |
| bool | Uint64 (uint64_t u) |
| bool | Double (double d) |
| bool | RawNumber (const Ch *str, SizeType length, bool copy) |
| bool | String (const Ch *str, SizeType length, bool copy) |
| bool | StartObject () |
| bool | Key (const Ch *str, SizeType len, bool copy) |
| bool | EndObject (SizeType memberCount) |
| bool | StartArray () |
| bool | EndArray (SizeType elementCount) |
| virtual ISchemaValidator * | CreateSchemaValidator (const SchemaType &root) |
| virtual void | DestroySchemaValidator (ISchemaValidator *validator) |
| virtual void * | CreateHasher () |
| virtual uint64_t | GetHashCode (void *hasher) |
| virtual void | DestroryHasher (void *hasher) |
| virtual void * | MallocState (size_t size) |
| virtual void | FreeState (void *p) |
Detailed Description
template<typename SchemaDocumentType, typename OutputHandler = BaseReaderHandler<typename SchemaDocumentType::SchemaType::EncodingType>, typename StateAllocator = CrtAllocator>
class rapidjson::GenericSchemaValidator< SchemaDocumentType, OutputHandler, StateAllocator >
class rapidjson::GenericSchemaValidator< SchemaDocumentType, OutputHandler, StateAllocator >
JSON Schema Validator.
A SAX style JSON schema validator. It uses a GenericSchemaDocument to validate SAX events. It delegates the incoming SAX events to an output handler. The default output handler does nothing. It can be reused multiple times by calling Reset().
Constructor & Destructor Documentation
◆ GenericSchemaValidator() [1/2]
template<typename SchemaDocumentType, typename OutputHandler = BaseReaderHandler<typename SchemaDocumentType::SchemaType::EncodingType>, typename StateAllocator = CrtAllocator>
|
inline |
Constructor without output handler.
- Parameters
-
schemaDocument The schema document to conform to. allocator Optional allocator for storing internal validation states. schemaStackCapacity Optional initial capacity of schema path stack. documentStackCapacity Optional initial capacity of document path stack.
◆ GenericSchemaValidator() [2/2]
template<typename SchemaDocumentType, typename OutputHandler = BaseReaderHandler<typename SchemaDocumentType::SchemaType::EncodingType>, typename StateAllocator = CrtAllocator>
|
inline |
Constructor with output handler.
- Parameters
-
schemaDocument The schema document to conform to. allocator Optional allocator for storing internal validation states. schemaStackCapacity Optional initial capacity of schema path stack. documentStackCapacity Optional initial capacity of document path stack.
The documentation for this class was generated from the following files: