66struct convert<Antares::IO::Inputs::YmlModel::ValueType>
68 static bool decode(
const Node& node, Antares::IO::Inputs::YmlModel::ValueType& rhs)
74 const auto value = node.as<std::string>();
75 if (value ==
"continuous")
77 rhs = Antares::IO::Inputs::YmlModel::ValueType::CONTINUOUS;
79 else if (value ==
"integer")
81 rhs = Antares::IO::Inputs::YmlModel::ValueType::INTEGER;
83 else if (value ==
"boolean")
85 rhs = Antares::IO::Inputs::YmlModel::ValueType::BOOL;
96struct convert<Antares::IO::Inputs::YmlModel::Variable>
104 rhs.id = node[
"id"].as<std::string>();
105 rhs.lower_bound = node[
"lower-bound"].as<std::string>(
"");
106 rhs.upper_bound = node[
"upper-bound"].as<std::string>(
"");
107 rhs.variable_type = node[
"variable-type"].as<Antares::IO::Inputs::YmlModel::ValueType>(
108 Antares::IO::Inputs::YmlModel::ValueType::CONTINUOUS);
109 rhs.time_dependent = node[
"time-dependent"].as<
bool>(
true);
110 rhs.scenario_dependent = node[
"scenario-dependent"].as<
bool>(
true);
163struct convert<Antares::IO::Inputs::YmlModel::Model>
171 rhs.id = node[
"id"].as<std::string>();
172 rhs.description = node[
"description"].as<std::string>(
"");
173 rhs.parameters = as_fallback_default<std::vector<Antares::IO::Inputs::YmlModel::Parameter>>(
175 rhs.variables = as_fallback_default<std::vector<Antares::IO::Inputs::YmlModel::Variable>>(
177 rhs.ports = as_fallback_default<std::vector<Antares::IO::Inputs::YmlModel::Port>>(
179 rhs.port_field_definitions = as_fallback_default<
180 std::vector<Antares::IO::Inputs::YmlModel::PortFieldDefinition>>(
181 node[
"port-field-definitions"]);
182 rhs.constraints = as_fallback_default<
183 std::vector<Antares::IO::Inputs::YmlModel::Constraint>>(node[
"constraints"]);
184 rhs.binding_constraints = as_fallback_default<
185 std::vector<Antares::IO::Inputs::YmlModel::Constraint>>(node[
"binding-constraints"]);
186 rhs.objective = node[
"objective"].as<std::string>(
"");