lmi-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[lmi-commits] [lmi] master 31c3450 4/4: Modernize for and while statemen


From: Greg Chicares
Subject: [lmi-commits] [lmi] master 31c3450 4/4: Modernize for and while statements
Date: Thu, 26 Jan 2017 01:17:22 +0000 (UTC)

branch: master
commit 31c34501a8e9e601f81067ec12ff5046b273992e
Author: Gregory W. Chicares <address@hidden>
Commit: Gregory W. Chicares <address@hidden>

    Modernize for and while statements
---
 input_sequence.cpp |   92 +++++++++++++++++++++++-----------------------------
 1 file changed, 41 insertions(+), 51 deletions(-)

diff --git a/input_sequence.cpp b/input_sequence.cpp
index a483753..4bd3593 100644
--- a/input_sequence.cpp
+++ b/input_sequence.cpp
@@ -291,97 +291,92 @@ void InputSequence::realize_vector()
         return;
         }
 
-    std::vector<ValueInterval>::iterator intervals_i;
     int prior_begin_duration = 0;
-    for
-        (intervals_i = intervals.begin()
-        ;intervals_i != intervals.end()
-        ;++intervals_i
-        )
+    for(auto const& interval_i : intervals)
         {
-        if(intervals_i->insane)
+        if(interval_i.insane)
             {
             fatal_error()
                 << "InputSequence: untrapped parser error."
                 << LMI_FLUSH
                 ;
             }
-        if(e_invalid_mode == intervals_i->begin_mode)
+        if(e_invalid_mode == interval_i.begin_mode)
             {
             fatal_error()
                 << "Interval "
-                << "[ " << intervals_i->begin_duration << ", "
-                << intervals_i->end_duration << " )"
+                << "[ " << interval_i.begin_duration << ", "
+                << interval_i.end_duration << " )"
                 << " has invalid begin_mode."
                 << LMI_FLUSH
                 ;
             }
-        if(e_invalid_mode == intervals_i->end_mode)
+        if(e_invalid_mode == interval_i.end_mode)
             {
             fatal_error()
                 << "Interval "
-                << "[ " << intervals_i->begin_duration << ", "
-                << intervals_i->end_duration << " )"
+                << "[ " << interval_i.begin_duration << ", "
+                << interval_i.end_duration << " )"
                 << " has invalid end_mode."
                 << LMI_FLUSH
                 ;
             }
         // TODO ?? Also check whether value_number is a NaN.
-        if(intervals_i->value_is_keyword && "insane" == 
intervals_i->value_keyword)
+        if(interval_i.value_is_keyword && "insane" == interval_i.value_keyword)
             {
             fatal_error()
                 << "Interval "
-                << "[ " << intervals_i->begin_duration << ", "
-                << intervals_i->end_duration << " )"
+                << "[ " << interval_i.begin_duration << ", "
+                << interval_i.end_duration << " )"
                 << " has invalid value_keyword."
                 << LMI_FLUSH
                 ;
             }
         // TODO ?? Decide whether we should permit what's disallowed here.
         // Similar logic could disallow other things too.
-        if(intervals_i->begin_duration < prior_begin_duration)
+        if(interval_i.begin_duration < prior_begin_duration)
             {
             diagnostics
                 << "Previous interval began at duration "
                 << prior_begin_duration
                 << "; current interval "
-                << "[ " << intervals_i->begin_duration << ", "
-                << intervals_i->end_duration << " )"
+                << "[ " << interval_i.begin_duration << ", "
+                << interval_i.end_duration << " )"
                 << " would begin before that. "
                 ;
                 mark_diagnostic_context();
             return;
             }
-        prior_begin_duration = intervals_i->begin_duration;
+        prior_begin_duration = interval_i.begin_duration;
         bool interval_is_ok =
-               0                           <= intervals_i->begin_duration
-            && intervals_i->begin_duration <= intervals_i->end_duration
-            && intervals_i->end_duration   <= last_possible_duration
+               0                         <= interval_i.begin_duration
+            && interval_i.begin_duration <= interval_i.end_duration
+            && interval_i.end_duration   <= last_possible_duration
             ;
         if(!interval_is_ok)
             {
             fatal_error()
                 << "Interval "
-                << "[ " << intervals_i->begin_duration << ", "
-                << intervals_i->end_duration << " )"
+                << "[ " << interval_i.begin_duration << ", "
+                << interval_i.end_duration << " )"
                 << " not valid."
                 << LMI_FLUSH
                 ;
             }
-        if(intervals_i->value_is_keyword)
+        if(interval_i.value_is_keyword)
             {
             std::fill
-                (s.begin() + intervals_i->begin_duration
-                ,s.begin() + intervals_i->end_duration
-                ,intervals_i->value_keyword
+                (s.begin() + interval_i.begin_duration
+                ,s.begin() + interval_i.end_duration
+                ,interval_i.value_keyword
                 );
             }
         else
             {
             std::fill
-                (r.begin() + intervals_i->begin_duration
-                ,r.begin() + intervals_i->end_duration
-                ,intervals_i->value_number
+                (r.begin() + interval_i.begin_duration
+                ,r.begin() + interval_i.end_duration
+                ,interval_i.value_number
                 );
             }
         }
@@ -1029,17 +1024,15 @@ std::string 
InputSequence::mathematical_representation() const
         }
 
     std::ostringstream oss;
-    std::vector<ValueInterval>::const_iterator intervals_i = intervals.begin();
-    std::vector<ValueInterval>::const_iterator off_the_end = intervals.end();
-    while(intervals_i != intervals.end())
+    for(auto const& interval_i : intervals)
         {
-        if(intervals_i->value_is_keyword)
+        if(interval_i.value_is_keyword)
             {
-            oss << intervals_i->value_keyword;
+            oss << interval_i.value_keyword;
             }
         else
             {
-            oss << value_cast<std::string>(intervals_i->value_number);
+            oss << value_cast<std::string>(interval_i.value_number);
             }
 
         // If there's only one interval, it must span all years, so
@@ -1050,13 +1043,13 @@ std::string 
InputSequence::mathematical_representation() const
             break;
             }
 
-        if(intervals_i->end_duration != last_possible_duration)
+        if(interval_i.end_duration != last_possible_duration)
             {
             oss
                 << " ["
-                << intervals_i->begin_duration
+                << interval_i.begin_duration
                 << ", "
-                << intervals_i->end_duration
+                << interval_i.end_duration
                 << "); "
                 ;
             }
@@ -1071,13 +1064,12 @@ std::string 
InputSequence::mathematical_representation() const
             {
             oss
                 << " ["
-                << intervals_i->begin_duration
+                << interval_i.begin_duration
                 << ", "
                 << "maturity"
                 << ")"
                 ;
             }
-        ++intervals_i;
         }
     return oss.str();
 }
@@ -1087,25 +1079,23 @@ std::string 
InputSequence::mathematical_representation() const
 std::string InputSequence::natural_language_representation() const
 {
     std::ostringstream oss;
-    std::vector<ValueInterval>::const_iterator intervals_i = intervals.begin();
-    while(intervals_i != intervals.end())
+    for(auto const& interval_i : intervals)
         {
-        if(intervals_i->value_is_keyword)
+        if(interval_i.value_is_keyword)
             {
-            oss << intervals_i->value_keyword;
+            oss << interval_i.value_keyword;
             }
         else
             {
-            oss << intervals_i->value_number;
+            oss << interval_i.value_number;
             }
         oss
             << " from "
-            << intervals_i->begin_duration
+            << interval_i.begin_duration
             << " to "
-            << intervals_i->end_duration
+            << interval_i.end_duration
             << "; "
             ;
-        ++intervals_i;
         }
     return oss.str();
 }



reply via email to

[Prev in Thread] Current Thread [Next in Thread]