| 489 | out.emplace(key, expanded_json(item, context)); |
| 490 | } |
| 491 | return engine::io::json::Value::make_object(std::move(out)); |
| 492 | } |
| 493 | return value; |
| 494 | } |
| 495 | |
| 496 | std::unordered_map<std::string, std::string> merged_options( |
| 497 | const std::unordered_map<std::string, std::string> & base, |
| 498 | const engine::io::json::Value * value, |
| 499 | const WorkflowContext & context) { |
| 500 | auto out = base; |
| 501 | if (value == nullptr || value->is_null()) { |
| 502 | return out; |
| 503 | } |
| 504 | for (const auto & [key, child] : value->as_object()) { |
| 505 | out[key] = expand_value(minitts::cli::json_option_string(child), context); |
| 506 | } |
no test coverage detected