Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
Add explicit keyword to one-parameter constructors.
authorArnaud Giersch <arnaud.giersch@univ-fcomte.fr>
Thu, 7 Dec 2017 08:21:14 +0000 (09:21 +0100)
committerArnaud Giersch <arnaud.giersch@univ-fcomte.fr>
Thu, 7 Dec 2017 16:01:55 +0000 (17:01 +0100)
Easy part: no additional change needed.

include/simgrid/kernel/future.hpp
include/simgrid/s4u/Host.hpp
include/simgrid/simix/blocking_simcall.hpp
include/xbt/functional.hpp
include/xbt/string.hpp

index a4db6ec..3a3f29c 100644 (file)
@@ -455,7 +455,7 @@ template<class T>
 class Promise {
 public:
   Promise() : state_(std::make_shared<FutureState<T>>()) {}
-  Promise(std::shared_ptr<FutureState<T>> state) : state_(std::move(state)) {}
+  explicit Promise(std::shared_ptr<FutureState<T>> state) : state_(std::move(state)) {}
 
   // Move type
   Promise(Promise const&) = delete;
@@ -510,7 +510,7 @@ template<>
 class Promise<void> {
 public:
   Promise() : state_(std::make_shared<FutureState<void>>()) {}
-  Promise(std::shared_ptr<FutureState<void>> state) : state_(std::move(state)) {}
+  explicit Promise(std::shared_ptr<FutureState<void>> state) : state_(std::move(state)) {}
   ~Promise()
   {
     if (state_ && state_->get_status() == FutureStatus::not_ready)
index 9f9ef0c..6743001 100644 (file)
@@ -114,7 +114,7 @@ public:
   void execute(double flops);
 
 private:
-  simgrid::xbt::string name_ = "noname";
+  simgrid::xbt::string name_{"noname"};
   std::unordered_map<std::string, Storage*>* mounts = nullptr; // caching
 
 public:
index 682b2ee..a856eca 100644 (file)
@@ -82,7 +82,7 @@ template <class T>
 class Future {
 public:
   Future() { /* Nothing to do*/}
-  Future(simgrid::kernel::Future<T> future) : future_(std::move(future)) {}
+  explicit Future(simgrid::kernel::Future<T> future) : future_(std::move(future)) {}
 
   bool valid() const { return future_.valid(); }
   T get()
index 64c3caa..dde3b7e 100644 (file)
@@ -171,7 +171,7 @@ private:
 
 public:
   Task() { /* Nothing to do */}
-  Task(std::nullptr_t) { /* Nothing to do */}
+  explicit Task(std::nullptr_t) { /* Nothing to do */}
   ~Task()
   {
     this->clear();
index 1916178..0cc1c48 100644 (file)
@@ -89,7 +89,7 @@ public:
     }
   }
   string() : string(&NUL, 0) {}
-  string(const char* s) : string(s, strlen(s)) {}
+  explicit string(const char* s) : string(s, strlen(s)) {}
   string(string const& s) : string(s.c_str(), s.size()) {}
   string(string&& s)
   {