]> https://gitweb.dealii.org/ - dealii.git/commitdiff
Use range-based for loop in include/base
authorDaniel Arndt <daniel.arndt@iwr.uni-heidelberg.de>
Sat, 5 Jan 2019 21:30:53 +0000 (22:30 +0100)
committerDaniel Arndt <daniel.arndt@iwr.uni-heidelberg.de>
Fri, 18 Jan 2019 22:22:57 +0000 (23:22 +0100)
include/deal.II/base/event.h
include/deal.II/base/graph_coloring.h
include/deal.II/base/hdf5.h
include/deal.II/base/index_set.h
include/deal.II/base/parameter_handler.h
include/deal.II/base/partitioner.templates.h
include/deal.II/base/path_search.h
include/deal.II/base/patterns.h
include/deal.II/base/subscriptor.h
include/deal.II/base/table_handler.h

index d567c163e33e9e48ed9f8f24ca173328f6588f82..72cb7c937b30c45adbcd03d1624a607bc920c29b 100644 (file)
@@ -19,6 +19,7 @@
 
 #include <deal.II/base/config.h>
 
+#include <algorithm>
 #include <iostream>
 #include <string>
 #include <vector>
@@ -177,11 +178,7 @@ namespace Algorithms
   {
     if (all_true)
       return true;
-    for (std::vector<bool>::const_iterator i = flags.begin(); i != flags.end();
-         ++i)
-      if (*i)
-        return true;
-    return false;
+    return std::find(flags.begin(), flags.end(), true) != flags.end();
   }
 
 
@@ -209,13 +206,7 @@ namespace Algorithms
         // Test all flags separately
         // and return false if one is
         // not set
-        for (std::vector<bool>::const_iterator i = flags.begin();
-             i != flags.end();
-             ++i)
-          if (!*i)
-            return false;
-        // All flags are set
-        return true;
+        return std::find(flags.begin(), flags.end(), false) == flags.end();
       }
 
     // Finally, compare each flag
@@ -256,9 +247,7 @@ namespace Algorithms
     all_true = false;
     if (event.all_true)
       {
-        for (std::vector<bool>::iterator i = flags.begin(); i != flags.end();
-             ++i)
-          *i = false;
+        std::fill(flags.begin(), flags.end(), false);
         return *this;
       }
 
index d396e496c0c0c2925662493c7d18d7ca063b471a..62927a301cf0f5c88f44fe8fb257b714d111d443 100644 (file)
@@ -285,8 +285,8 @@ namespace GraphColoring
               // linked to current_vertex is already using the color j, this
               // color cannot be used anymore.
               bool unused_color(true);
-              for (unsigned int k = 0; k < graph[current_vertex].size(); ++k)
-                if (colors_used[j].count(graph[current_vertex][k]) == 1)
+              for (const auto adjacent_vertex : graph[current_vertex])
+                if (colors_used[j].count(adjacent_vertex) == 1)
                   {
                     unused_color = false;
                     break;
index 292640535d1e723d0c2591f035dbdc63cd4eaf66..be38947801f522113fe98157819a011c197fa3ed 100644 (file)
@@ -318,7 +318,7 @@ namespace HDF5
      * Constructor. @p string_name is the name of the HDF5 Object. If @p mpi is
      * True then MPI I/O is used.
      */
-    HDF5Object(const std::string name, const bool mpi);
+    HDF5Object(const std::string &name, const bool mpi);
 
   public:
     /**
@@ -404,11 +404,11 @@ namespace HDF5
      * Create dataset. This is an internal constructor. The function
      * Group::create_dataset() should be used to create a dataset.
      */
-    DataSet(const std::string &         name,
-            const hid_t &               parent_group_id,
-            const std::vector<hsize_t> &dimensions,
-            std::shared_ptr<hid_t>      t_type,
-            const bool                  mpi);
+    DataSet(const std::string &           name,
+            const hid_t &                 parent_group_id,
+            const std::vector<hsize_t> &  dimensions,
+            const std::shared_ptr<hid_t> &t_type,
+            const bool                    mpi);
 
   public:
     /**
index 1e2a9d3dbc7be17432b1fc6758b9ea3a3fc709b8..f2ec3322bef383383bda423ee4d842475d30580d 100644 (file)
@@ -1754,10 +1754,8 @@ IndexSet::n_elements() const
 
 #ifdef DEBUG
   size_type s = 0;
-  for (std::vector<Range>::iterator range = ranges.begin();
-       range != ranges.end();
-       ++range)
-    s += (range->end - range->begin);
+  for (const auto &range : ranges)
+    s += (range.end - range.begin);
   Assert(s == v, ExcInternalError());
 #endif
 
@@ -1916,9 +1914,8 @@ IndexSet::fill_binary_vector(Vector &vector) const
 
   // then write ones into the elements whose indices are contained in the
   // index set
-  for (std::vector<Range>::iterator it = ranges.begin(); it != ranges.end();
-       ++it)
-    for (size_type i = it->begin; i < it->end; ++i)
+  for (const auto &range : ranges)
+    for (size_type i = range.begin; i < range.end; ++i)
       vector[i] = 1;
 }
 
index 37ecbbf3542352b5604f46f0c303ea8dd8d841af..a57d3875fc06e32937076577fbb9e339898594f8 100644 (file)
@@ -2155,8 +2155,8 @@ ParameterHandler::save(Archive &ar, const unsigned int) const
 
   std::vector<std::string> descriptions;
 
-  for (unsigned int j = 0; j < patterns.size(); ++j)
-    descriptions.push_back(patterns[j]->description());
+  for (const auto &pattern : patterns)
+    descriptions.push_back(pattern->description());
 
   ar &descriptions;
 }
@@ -2176,8 +2176,8 @@ ParameterHandler::load(Archive &ar, const unsigned int)
   ar &                     descriptions;
 
   patterns.clear();
-  for (unsigned int j = 0; j < descriptions.size(); ++j)
-    patterns.push_back(Patterns::pattern_factory(descriptions[j]));
+  for (const auto &description : descriptions)
+    patterns.push_back(Patterns::pattern_factory(description));
 }
 
 
index ddf531bd221164fdbc7077bf5ef4a3a508ded0ff..7ccedad7379a83434efd46f705dd34cec4c5e757 100644 (file)
@@ -238,7 +238,7 @@ namespace Utilities
           unsigned int offset =
             n_ghost_indices_in_larger_set - n_ghost_indices();
           // must copy ghost data into extended ghost array
-          for (const auto ghost_range : ghost_indices_subset_data)
+          for (const auto &ghost_range : ghost_indices_subset_data)
             {
               if (offset > ghost_range.first)
                 {
index c0451162cdb418317f3de4f39ee5f01b62e840f4..32aec5acc6a754a398fb235dff6b41a3ad249617 100644 (file)
@@ -265,20 +265,16 @@ PathSearch::show(StreamType &out) const
 {
   out << "DEAL_II_" << cls << "PATH=\"";
   bool first = true;
-  for (std::vector<std::string>::iterator p = my_path_list.begin();
-       p != my_path_list.end();
-       ++p)
+  for (const auto &p : my_path_list)
     {
       if (!first)
         out << ':';
-      out << *p;
+      out << p;
       first = false;
     }
   out << '"' << std::endl << " Suffixes";
-  for (std::vector<std::string>::iterator s = my_suffix_list.begin();
-       s != my_suffix_list.end();
-       ++s)
-    out << " \"" << *s << '"';
+  for (const auto &s : my_suffix_list)
+    out << " \"" << s << '"';
   out << std::endl;
 }
 
index 9a4bcccd8936d0645b699e768e78d621793161e9..2789bf8434077a40fb542629909256b3db4910c6 100644 (file)
@@ -1436,7 +1436,7 @@ namespace Patterns
     static_assert(sizeof...(ps) > 0,
                   "The number of PatternTypes must be greater than zero!");
     auto pattern_pointers = {(static_cast<const PatternBase *>(&ps))...};
-    for (auto p : pattern_pointers)
+    for (const auto p : pattern_pointers)
       patterns.push_back(p->clone());
   }
 
@@ -1787,8 +1787,8 @@ namespace Patterns
         std::vector<std::string> vec(t.size());
 
         unsigned int i = 0;
-        for (const auto &ti : t)
-          vec[i++] = Convert<typename T::value_type>::to_string(ti, base_p);
+        for (const auto entry : t)
+          vec[i++] = Convert<typename T::value_type>::to_string(entry, base_p);
 
         std::string s;
         if (vec.size() > 0)
index c41b315ba3b2917874697680e81cde85d1f0ef6f..f59d18283973ad773eda51a840be7e50577c5cfb 100644 (file)
@@ -304,9 +304,9 @@ Subscriptor::list_subscribers(StreamType &stream) const
 {
   std::lock_guard<std::mutex> lock(mutex);
 
-  for (map_iterator it = counter_map.begin(); it != counter_map.end(); ++it)
-    stream << it->second << '/' << counter << " subscriptions from \""
-           << it->first << '\"' << std::endl;
+  for (const auto &it : counter_map)
+    stream << it.second << '/' << counter << " subscriptions from \""
+           << it.first << '\"' << std::endl;
 }
 
 DEAL_II_NAMESPACE_CLOSE
index 42e16a1149f237fd6ae2bea969a8548c56877b76..ba9d07424257b2a3a9bbd1336b91578cb985f7d5 100644 (file)
@@ -912,12 +912,10 @@ TableHandler::add_value(const std::string &key, const T value)
       // follow the algorithm given in the introduction to this class
       // of padding columns as necessary
       unsigned int max_col_length = 0;
-      for (std::map<std::string, Column>::iterator p = columns.begin();
-           p != columns.end();
-           ++p)
+      for (const auto &column : columns)
         max_col_length =
           std::max(max_col_length,
-                   static_cast<unsigned int>(p->second.entries.size()));
+                   static_cast<unsigned int>(column.second.entries.size()));
 
       while (columns[key].entries.size() + 1 < max_col_length)
         {

In the beginning the Universe was created. This has made a lot of people very angry and has been widely regarded as a bad move.

Douglas Adams


Typeset in Trocchi and Trocchi Bold Sans Serif.