Arcane  v3.14.10.0
Documentation développeur
Chargement...
Recherche...
Aucune correspondance
Référence du modèle de la classe GenericSchemaDocument< ValueT, Allocator >

JSON schema document. Plus de détails...

#include <arcane/utils/internal/json/rapidjson/schema.h>

+ Graphe de collaboration de GenericSchemaDocument< ValueT, Allocator >:

Classes

struct  SchemaEntry
 
struct  SchemaRefEntry
 

Types publics

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
 

Fonctions membres publiques

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

Fonctions membres privées

 GenericSchemaDocument (const GenericSchemaDocument &)
 Prohibit copying.
 
GenericSchemaDocumentoperator= (const GenericSchemaDocument &)
 Prohibit assignment.
 
void CreateSchemaRecursive (const SchemaType **schema, const PointerType &pointer, const ValueType &v, const ValueType &document)
 
void CreateSchema (const SchemaType **schema, const PointerType &pointer, const ValueType &v, const ValueType &document)
 
bool HandleRefSchema (const PointerType &source, const SchemaType **schema, const ValueType &v, const ValueType &document)
 
const SchemaTypeGetSchema (const PointerType &pointer) const
 
PointerType GetPointer (const SchemaType *schema) const
 
const SchemaTypeGetTypeless () const
 

Attributs privés

IRemoteSchemaDocumentProviderTyperemoteProvider_
 
Allocatorallocator_
 
AllocatorownAllocator_
 
const SchemaTyperoot_
 Root schema.
 
SchemaTypetypeless_
 
internal::Stack< AllocatorschemaMap_
 
internal::Stack< AllocatorschemaRef_
 
URIType uri_
 

Attributs privés statiques

static const size_t kInitialSchemaMapSize = 64
 
static const size_t kInitialSchemaRefSize = 64
 

Amis

class internal::Schema< GenericSchemaDocument >
 
template<typename , typename , typename >
class GenericSchemaValidator
 

Description détaillée

template<typename ValueT, typename Allocator = CrtAllocator>
class 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.

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

Définition à la ligne 1502 du fichier schema.h.

Documentation des définitions de type membres

◆ AllocatorType

template<typename ValueT , typename Allocator = CrtAllocator>
typedef Allocator GenericSchemaDocument< ValueT, Allocator >::AllocatorType

Définition à la ligne 1506 du fichier schema.h.

◆ Ch

template<typename ValueT , typename Allocator = CrtAllocator>
typedef EncodingType::Ch GenericSchemaDocument< ValueT, Allocator >::Ch

Définition à la ligne 1508 du fichier schema.h.

◆ EncodingType

template<typename ValueT , typename Allocator = CrtAllocator>
typedef ValueType::EncodingType GenericSchemaDocument< ValueT, Allocator >::EncodingType

Définition à la ligne 1507 du fichier schema.h.

◆ IRemoteSchemaDocumentProviderType

template<typename ValueT , typename Allocator = CrtAllocator>
typedef IGenericRemoteSchemaDocumentProvider<GenericSchemaDocument> GenericSchemaDocument< ValueT, Allocator >::IRemoteSchemaDocumentProviderType

Définition à la ligne 1505 du fichier schema.h.

◆ PointerType

template<typename ValueT , typename Allocator = CrtAllocator>
typedef GenericPointer<ValueType, Allocator> GenericSchemaDocument< ValueT, Allocator >::PointerType

Définition à la ligne 1510 du fichier schema.h.

◆ SchemaType

template<typename ValueT , typename Allocator = CrtAllocator>
typedef internal::Schema<GenericSchemaDocument> GenericSchemaDocument< ValueT, Allocator >::SchemaType

Définition à la ligne 1509 du fichier schema.h.

◆ URIType

template<typename ValueT , typename Allocator = CrtAllocator>
typedef GenericValue<EncodingType, Allocator> GenericSchemaDocument< ValueT, Allocator >::URIType

Définition à la ligne 1511 du fichier schema.h.

◆ ValueType

template<typename ValueT , typename Allocator = CrtAllocator>
typedef ValueT GenericSchemaDocument< ValueT, Allocator >::ValueType

Définition à la ligne 1504 du fichier schema.h.

Documentation des constructeurs et destructeur

◆ GenericSchemaDocument()

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

Constructor.

Compile a JSON document into schema document.

Paramètres
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.

Définition à la ligne 1526 du fichier schema.h.

Références kObjectType, RAPIDJSON_ASSERT, RAPIDJSON_NEW, et GenericSchemaDocument< ValueT, Allocator >::root_.

◆ ~GenericSchemaDocument()

template<typename ValueT , typename Allocator = CrtAllocator>
GenericSchemaDocument< ValueT, Allocator >::~GenericSchemaDocument ( )
inline

Destructor.

Définition à la ligne 1592 du fichier schema.h.

Références RAPIDJSON_DELETE.

Documentation des fonctions membres

◆ CreateSchema()

template<typename ValueT , typename Allocator = CrtAllocator>
void GenericSchemaDocument< ValueT, Allocator >::CreateSchema ( const SchemaType **  schema,
const PointerType pointer,
const ValueType &  v,
const ValueType &  document 
)
inlineprivate

Définition à la ligne 1652 du fichier schema.h.

◆ CreateSchemaRecursive()

template<typename ValueT , typename Allocator = CrtAllocator>
void GenericSchemaDocument< ValueT, Allocator >::CreateSchemaRecursive ( const SchemaType **  schema,
const PointerType pointer,
const ValueType &  v,
const ValueType &  document 
)
inlineprivate

Définition à la ligne 1635 du fichier schema.h.

◆ GetPointer()

template<typename ValueT , typename Allocator = CrtAllocator>
PointerType GenericSchemaDocument< ValueT, Allocator >::GetPointer ( const SchemaType schema) const
inlineprivate

Définition à la ligne 1718 du fichier schema.h.

◆ GetRoot()

template<typename ValueT , typename Allocator = CrtAllocator>
const SchemaType & GenericSchemaDocument< ValueT, Allocator >::GetRoot ( ) const
inline

Get the root schema.

Définition à la ligne 1607 du fichier schema.h.

Références GenericSchemaDocument< ValueT, Allocator >::root_.

◆ GetSchema()

template<typename ValueT , typename Allocator = CrtAllocator>
const SchemaType * GenericSchemaDocument< ValueT, Allocator >::GetSchema ( const PointerType pointer) const
inlineprivate

Définition à la ligne 1711 du fichier schema.h.

◆ GetTypeless()

template<typename ValueT , typename Allocator = CrtAllocator>
const SchemaType * GenericSchemaDocument< ValueT, Allocator >::GetTypeless ( ) const
inlineprivate

Définition à la ligne 1725 du fichier schema.h.

◆ GetURI()

template<typename ValueT , typename Allocator = CrtAllocator>
const URIType & GenericSchemaDocument< ValueT, Allocator >::GetURI ( ) const
inline

Définition à la ligne 1604 du fichier schema.h.

◆ HandleRefSchema()

template<typename ValueT , typename Allocator = CrtAllocator>
bool GenericSchemaDocument< ValueT, Allocator >::HandleRefSchema ( const PointerType source,
const SchemaType **  schema,
const ValueType &  v,
const ValueType &  document 
)
inlineprivate

Définition à la ligne 1664 du fichier schema.h.

Documentation des fonctions amies et associées

◆ GenericSchemaValidator

template<typename ValueT , typename Allocator = CrtAllocator>
template<typename , typename , typename >
friend class GenericSchemaValidator
friend

Définition à la ligne 1514 du fichier schema.h.

◆ internal::Schema< GenericSchemaDocument >

template<typename ValueT , typename Allocator = CrtAllocator>
friend class internal::Schema< GenericSchemaDocument >
friend

Définition à la ligne 1511 du fichier schema.h.

Documentation des données membres

◆ allocator_

template<typename ValueT , typename Allocator = CrtAllocator>
Allocator* GenericSchemaDocument< ValueT, Allocator >::allocator_
private

Définition à la ligne 1731 du fichier schema.h.

◆ kInitialSchemaMapSize

template<typename ValueT , typename Allocator = CrtAllocator>
const size_t GenericSchemaDocument< ValueT, Allocator >::kInitialSchemaMapSize = 64
staticprivate

Définition à la ligne 1727 du fichier schema.h.

◆ kInitialSchemaRefSize

template<typename ValueT , typename Allocator = CrtAllocator>
const size_t GenericSchemaDocument< ValueT, Allocator >::kInitialSchemaRefSize = 64
staticprivate

Définition à la ligne 1728 du fichier schema.h.

◆ ownAllocator_

template<typename ValueT , typename Allocator = CrtAllocator>
Allocator* GenericSchemaDocument< ValueT, Allocator >::ownAllocator_
private

Définition à la ligne 1732 du fichier schema.h.

◆ remoteProvider_

template<typename ValueT , typename Allocator = CrtAllocator>
IRemoteSchemaDocumentProviderType* GenericSchemaDocument< ValueT, Allocator >::remoteProvider_
private

Définition à la ligne 1730 du fichier schema.h.

◆ root_

template<typename ValueT , typename Allocator = CrtAllocator>
const SchemaType* GenericSchemaDocument< ValueT, Allocator >::root_
private

◆ schemaMap_

template<typename ValueT , typename Allocator = CrtAllocator>
internal::Stack<Allocator> GenericSchemaDocument< ValueT, Allocator >::schemaMap_
private

Définition à la ligne 1735 du fichier schema.h.

◆ schemaRef_

template<typename ValueT , typename Allocator = CrtAllocator>
internal::Stack<Allocator> GenericSchemaDocument< ValueT, Allocator >::schemaRef_
private

Définition à la ligne 1736 du fichier schema.h.

◆ typeless_

template<typename ValueT , typename Allocator = CrtAllocator>
SchemaType* GenericSchemaDocument< ValueT, Allocator >::typeless_
private

Définition à la ligne 1734 du fichier schema.h.

◆ uri_

template<typename ValueT , typename Allocator = CrtAllocator>
URIType GenericSchemaDocument< ValueT, Allocator >::uri_
private

Définition à la ligne 1737 du fichier schema.h.


La documentation de cette classe a été générée à partir des fichiers suivants :