12#ifndef ARCANE_UTILS_INTERNAL_JSONPROPERTYREADER_H
13#define ARCANE_UTILS_INTERNAL_JSONPROPERTYREADER_H
22#include "arccore/common/JSONReader.h"
23#include "arccore/common/internal/Property.h"
30namespace Arcane::properties
37class JSONPropertyReader
42 JSONPropertyReader(
JSONValue jv, T& instance)
44 , m_instance(instance)
57 if (child_value.
null())
59 s.setFromJSON(child_value, m_instance);
60 s.print(std::cout, m_instance);
73template <
typename T,
typename PropertyType = T>
inline void
76 const char* instance_property_name = PropertyType ::propertyClassName();
78 if (child_value.
null())
81 PropertyType ::applyPropertyVisitor(reader);
Représente une valeur JSON.
bool null() const
Vrai si le noeud est nul.
JSONValue child(StringView name) const
Valeur fille de nom name. Retourne une valeur nulle si non trouvé.
virtual String name() const =0
Nom de la propriété
Classe de base d'une proriété typée par une classe.
Classe de base d'un visiteur typé sur une propriété.