7#include <unordered_map>
9#include <userver/rcu/rcu.hpp>
11USERVER_NAMESPACE_BEGIN
13namespace engine::subprocess {
18 using Map = std::unordered_map<std::string, std::string>;
24 auto begin() {
return vars_.begin(); }
27 auto end() {
return vars_.end(); }
30 auto begin()
const {
return vars_.begin(); }
33 auto end()
const {
return vars_.end(); }
62 const std::string&
GetValue(
const std::string& variable_name)
const;
69 void SetValue(std::string variable_name, std::string value);
72 std::string&
operator[](
const std::string& variable_name);
78 auto empty()
const {
return vars_.empty(); }
81 auto size()
const {
return vars_.size(); }
83 using const_iterator = Map::const_iterator;
84 using iterator = const_iterator;
87 auto begin()
const {
return vars_.begin(); }
90 auto end()
const {
return vars_.end(); }
119 const std::string& variable_name,
120 const std::string& value,
132 EnvironmentVariablesScope();
133 ~EnvironmentVariablesScope();