lmi-commits
[Top][All Lists]
Advanced

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

[lmi-commits] [lmi] master 18f1ca3 7/9: Refactor to remove duplication


From: Greg Chicares
Subject: [lmi-commits] [lmi] master 18f1ca3 7/9: Refactor to remove duplication
Date: Thu, 4 Oct 2018 19:24:15 -0400 (EDT)

branch: master
commit 18f1ca307120ff02874418411f8b6af5af943956
Author: Gregory W. Chicares <address@hidden>
Commit: Gregory W. Chicares <address@hidden>

    Refactor to remove duplication
    
    One function contained an inlined copy of another's code; replaced the
    copy with a function call. Incidentally removed type-system acrobatics.
---
 ledger.cpp | 20 +++++---------------
 1 file changed, 5 insertions(+), 15 deletions(-)

diff --git a/ledger.cpp b/ledger.cpp
index 71472be..34beb93 100644
--- a/ledger.cpp
+++ b/ledger.cpp
@@ -170,17 +170,8 @@ void Ledger::SetRunBases(int length)
 
 void Ledger::ZeroInforceAfterLapse()
 {
-    ledger_map_t const& l_map_rep = ledger_map_->held();
-
-    double lapse_year = 0.0;
-    for(auto const& i : l_map_rep)
-        {
-        lapse_year = std::max(lapse_year, i.second.LapseYear);
-        }
-
-    auto original_length = ledger_invariant_->InforceLives.size();
-    using T = decltype(original_length);
-    T unlapsed_length = bourn_cast<T>(1 + lapse_year);
+    int original_length = lmi::ssize(ledger_invariant_->InforceLives);
+    int unlapsed_length = 1 + greatest_lapse_dur();
     if(unlapsed_length < original_length)
         {
         ledger_invariant_->InforceLives.resize(unlapsed_length);
@@ -285,13 +276,12 @@ void Ledger::SetOneLedgerVariant
 int Ledger::greatest_lapse_dur() const
 {
     ledger_map_t const& l_map_rep = ledger_map_->held();
-    double max_length = 0.0;
-
+    double lapse_dur = 0.0;
     for(auto const& i : l_map_rep)
         {
-        max_length = std::max(max_length, i.second.LapseYear);
+        lapse_dur = std::max(lapse_dur, i.second.LapseYear);
         }
-    return bourn_cast<int>(max_length);
+    return bourn_cast<int>(lapse_dur);
 }
 
 //============================================================================



reply via email to

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