Skip to content
Snippets Groups Projects
Commit 28294afb authored by Paul Gessinger's avatar Paul Gessinger Committed by Andre Sailer
Browse files

Make VariantParameters::value_or const

parent 63f67eb7
No related branches found
No related tags found
No related merge requests found
...@@ -517,13 +517,22 @@ namespace dd4hep { ...@@ -517,13 +517,22 @@ namespace dd4hep {
const T& get(const std::string& key) const { const T& get(const std::string& key) const {
auto it = variantParameters.find(key); auto it = variantParameters.find(key);
if(it == variantParameters.end()) { if(it == variantParameters.end()) {
throw std::runtime_error{"Key "+key+"not found"}; throw std::runtime_error{"Key "+key+" not found"};
} }
return boost::get<T>(it->second); return boost::get<T>(it->second);
} }
template <typename T> template <typename T>
T value_or(const std::string& key, T alternative) { T& get(const std::string& key) {
auto it = variantParameters.find(key);
if(it == variantParameters.end()) {
throw std::runtime_error{"Key "+key+" not found"};
}
return boost::get<T>(it->second);
}
template <typename T>
T value_or(const std::string& key, T alternative) const {
auto it = variantParameters.find(key); auto it = variantParameters.find(key);
if(it == variantParameters.end()) { if(it == variantParameters.end()) {
return alternative; return alternative;
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment