X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/5c3828b73d16d598f6103b76a10cf1ae892b2855..5a4bab52900d62dfd3dec063ece907974899db09:/src/surf/PropertyHolder.cpp diff --git a/src/surf/PropertyHolder.cpp b/src/surf/PropertyHolder.cpp deleted file mode 100644 index bf262b9e1e..0000000000 --- a/src/surf/PropertyHolder.cpp +++ /dev/null @@ -1,56 +0,0 @@ -/* Copyright (c) 2015-2019. The SimGrid Team. All rights reserved. */ - -/* This program is free software; you can redistribute it and/or modify it - * under the terms of the license (GNU LGPL) which comes with this package. */ - -#include "PropertyHolder.hpp" - -#include - -namespace simgrid { -namespace surf { - -/** @brief Return the property associated to the provided key (or nullptr if not existing) */ -const char* PropertyHolder::get_property(const std::string& key) const -{ - if (not properties_) - return nullptr; - auto prop = properties_->find(key); - return prop == properties_->end() ? nullptr : prop->second.c_str(); -} - -/** @brief Change the value of a given key in the property set */ -void PropertyHolder::set_property(const std::string& key, const std::string& value) -{ - if (not properties_) - properties_.reset(new std::unordered_map); - (*properties_)[key] = value; -} - -/** @brief Return the whole set of properties. Don't mess with it, dude! */ -const std::unordered_map* PropertyHolder::get_properties() -{ - if (not properties_) - properties_.reset(new std::unordered_map); - return properties_.get(); -} - -/** @brief Change the value of the given keys in the property set */ -template void PropertyHolder::set_properties(const Assoc& properties) -{ - if (not properties_) - properties_.reset(new std::unordered_map); - std::unordered_map props(properties.cbegin(), properties.cend()); -#if __cplusplus >= 201703L - props.merge(properties_); -#else - props.insert(properties_->cbegin(), properties_->cend()); -#endif - properties_->swap(props); -} - -template void PropertyHolder::set_properties(const std::map& properties); -template void PropertyHolder::set_properties(const std::unordered_map& properties); - -} /* namespace surf */ -} /* namespace simgrid */