12#ifndef ARCANE_CORE_AXLOPTIONSBUILDER_H
13#define ARCANE_CORE_AXLOPTIONSBUILDER_H
17#include "arcane/utils/String.h"
26namespace Arcane::AxlOptionsBuilder
42 friend DocumentXmlWriter;
43 friend DocumentJSONWriter;
50 explicit OptionList(
const std::initializer_list<OneOption>& options);
56 OptionList& add(
const std::initializer_list<OneOption>& options);
64 std::shared_ptr<OneOptionImpl> m_p;
72class ARCANE_CORE_EXPORT OneOption
74 friend class OptionList;
75 friend class OneOptionImpl;
76 friend DocumentXmlWriter;
77 friend DocumentJSONWriter;
92 OneOption() =
default;
96 OneOption(Type type,
const String& name,
const String& value)
101 OneOption(Type type,
const String& name,
const OptionList& option);
105 Type m_type = Type::CO_Simple;
110 std::shared_ptr<OneOptionImpl> m_sub_option;
118class ARCANE_CORE_EXPORT Simple
124 : OneOption(Type::CO_Simple, name, String::fromNumber(value))
128 : OneOption(Type::CO_Simple, name, String::fromNumber(value))
133 : OneOption(Type::CO_Simple, name, String::fromNumber(value))
138 : OneOption(Type::CO_Simple, name, value)
144 Simple& addFunction(
const String& func_name)
146 m_function_name = func_name;
156class ARCANE_CORE_EXPORT Enumeration
162 : OneOption(Type::CO_Enumeration, name, value)
172class ARCANE_CORE_EXPORT Extended
178 : OneOption(Type::CO_Extended, name, value)
188class ARCANE_CORE_EXPORT Complex
193 Complex(
const String& name,
const std::initializer_list<OneOption>& options);
194 Complex(
const String& name,
const OptionList& option);
202class ARCANE_CORE_EXPORT ServiceInstance
207 ServiceInstance(
const String& option_name,
const String& service_name,
208 const std::initializer_list<OneOption>& options);
209 ServiceInstance(
const String& option_name,
const String& service_name,
210 const OptionList& options);
211 ServiceInstance(
const String& option_name,
const String& service_name);
220class ARCANE_CORE_EXPORT Document
222 friend DocumentXmlWriter;
223 friend DocumentJSONWriter;
234 const String& language()
const {
return m_language; }
Déclarations des types généraux de Arcane.
Écrivain au format JSON pour un jeu de données.
Écrivain au format XML pour un jeu de données.
Classe de base d'une option dynamique.
String m_value
Nom de l'option.
String m_service_name
Valeur de l'option (si option CO_Simple)
Liste d'options du jeu de données.
OptionList()
Construit un jeu d'options vide.
Chaîne de caractères unicode.
GenericDocument< UTF8<> > Document
GenericDocument with UTF8 encoding.
std::int64_t Int64
Type entier signé sur 64 bits.
double Real
Type représentant un réel.
std::int32_t Int32
Type entier signé sur 32 bits.