12#ifndef ARCANE_UTILS_JSONREADER_H
13#define ARCANE_UTILS_JSONREADER_H
18#include "arcane/utils/Array.h"
27class JSONWrapperUtils;
29class JSONKeyValueList;
63 bool null()
const {
return !m_p; }
64 bool operator!()
const {
return null(); }
68 ARCANE_DEPRECATED_REASON(
"Y2023: Use valueAsStringView() or value() instead")
69 StringView valueAsString() const;
79 StringView valueAsStringView() const;
81 Real valueAsReal() const;
83 Int64 valueAsInt64() const;
85 Int32 valueAsInt32() const;
87 bool valueAsBool() const;
88 JSONValueList valueAsArray() const;
92 JSONKeyValue keyValueChild(StringView name) const;
94 JSONValue child(StringView name) const;
96 JSONValue expectedChild(StringView name) const;
98 JSONValueList children() const;
99 JSONKeyValueList keyValueChildren() const;
103 bool isArray() const;
104 bool isObject() const;
142 bool null()
const {
return !m_p; }
143 bool operator!()
const {
return null(); }
147 StringView name()
const;
148 JSONValue value()
const;
167 typedef std::vector<JSONKeyValue> ContainerType;
171 typedef ContainerType::const_iterator const_iterator;
172 typedef ContainerType::iterator iterator;
178 m_values.push_back(v);
180 const_iterator begin()
const {
return m_values.begin(); }
181 const_iterator end()
const {
return m_values.end(); }
185 std::vector<JSONKeyValue> m_values;
200 typedef std::vector<JSONValue> ContainerType;
204 typedef ContainerType::const_iterator const_iterator;
205 typedef ContainerType::iterator iterator;
211 m_values.push_back(v);
213 const_iterator begin()
const {
return m_values.begin(); }
214 const_iterator end()
const {
return m_values.end(); }
218 std::vector<JSONValue> m_values;
Déclarations des types utilisés dans Arcane.
Gestion d'un document JSON.
Liste de (clé,valeur) d'un document JSON.
Représente une paire (clé,valeur) de JSON.
bool null() const
Vrai si le noeud est nul.
Liste de valeurs d'un document JSON.
Représente une valeur JSON.
bool null() const
Vrai si le noeud est nul.
Lecteur des fichiers de maillage via la bibliothèque LIMA.
Vue sur une chaîne de caractères UTF-8.
-*- tab-width: 2; indent-tabs-mode: nil; coding: utf-8-with-signature -*-