[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[lmi-commits] [lmi] master 259f97c 6/6: Use query<bool> with DB_Allow* a
From: |
Greg Chicares |
Subject: |
[lmi-commits] [lmi] master 259f97c 6/6: Use query<bool> with DB_Allow* and DB_TermIsNotRider |
Date: |
Wed, 7 Nov 2018 02:40:35 -0500 (EST) |
branch: master
commit 259f97c0895509a223331a3aa2147532681e1461
Author: Gregory W. Chicares <address@hidden>
Commit: Gregory W. Chicares <address@hidden>
Use query<bool> with DB_Allow* and DB_TermIsNotRider
Reason: they're inherently boolean.
---
gpt_input.cpp | 36 ++++++++++----------
ihs_acctval.cpp | 8 ++---
ihs_basicval.cpp | 20 +++++------
input_harmonization.cpp | 86 +++++++++++++++++++++++------------------------
input_realization.cpp | 14 ++++----
interest_rates.cpp | 4 +--
ledger_invariant_init.cpp | 2 +-
mec_input.cpp | 32 +++++++++---------
8 files changed, 101 insertions(+), 101 deletions(-)
diff --git a/gpt_input.cpp b/gpt_input.cpp
index 4f2a4fb..81880dd 100644
--- a/gpt_input.cpp
+++ b/gpt_input.cpp
@@ -337,8 +337,8 @@ void gpt_input::DoHarmonize()
{
bool anything_goes = global_settings::instance().ash_nazg();
- DefinitionOfLifeInsurance.allow(mce_gpt , database_->Query(DB_AllowGpt ));
- DefinitionOfLifeInsurance.allow(mce_cvat, database_->Query(DB_AllowCvat));
+ DefinitionOfLifeInsurance.allow(mce_gpt ,
database_->query<bool>(DB_AllowGpt ));
+ DefinitionOfLifeInsurance.allow(mce_cvat,
database_->query<bool>(DB_AllowCvat));
DefinitionOfLifeInsurance.allow(mce_noncompliant, false);
DefinitionOfMaterialChange.enable(mce_noncompliant !=
DefinitionOfLifeInsurance);
@@ -370,11 +370,11 @@ void gpt_input::DoHarmonize()
;
}
- GroupUnderwritingType.allow(mce_medical ,
database_->Query(DB_AllowFullUw ));
- GroupUnderwritingType.allow(mce_paramedical ,
database_->Query(DB_AllowParamedUw));
- GroupUnderwritingType.allow(mce_nonmedical ,
database_->Query(DB_AllowNonmedUw ));
- GroupUnderwritingType.allow(mce_simplified_issue,
database_->Query(DB_AllowSimpUw ));
- GroupUnderwritingType.allow(mce_guaranteed_issue,
database_->Query(DB_AllowGuarUw ));
+ GroupUnderwritingType.allow(mce_medical ,
database_->query<bool>(DB_AllowFullUw ));
+ GroupUnderwritingType.allow(mce_paramedical ,
database_->query<bool>(DB_AllowParamedUw));
+ GroupUnderwritingType.allow(mce_nonmedical ,
database_->query<bool>(DB_AllowNonmedUw ));
+ GroupUnderwritingType.allow(mce_simplified_issue,
database_->query<bool>(DB_AllowSimpUw ));
+ GroupUnderwritingType.allow(mce_guaranteed_issue,
database_->query<bool>(DB_AllowGuarUw ));
IssueAge .enable(mce_no == UseDOB);
DateOfBirth .enable(mce_yes == UseDOB);
@@ -467,9 +467,9 @@ void gpt_input::DoHarmonize()
PaymentHistory .enable(non_mec);
BenefitHistory .enable(non_mec);
- UnderwritingClass.allow(mce_ultrapreferred,
database_->Query(DB_AllowUltraPrefClass));
- UnderwritingClass.allow(mce_preferred ,
database_->Query(DB_AllowPreferredClass));
- UnderwritingClass.allow(mce_rated, database_->Query(DB_AllowSubstdTable));
+ UnderwritingClass.allow(mce_ultrapreferred,
database_->query<bool>(DB_AllowUltraPrefClass));
+ UnderwritingClass.allow(mce_preferred ,
database_->query<bool>(DB_AllowPreferredClass));
+ UnderwritingClass.allow(mce_rated ,
database_->query<bool>(DB_AllowSubstdTable));
OldSubstandardTable.enable(mce_rated == UnderwritingClass);
OldSubstandardTable.allow(mce_table_a, mce_rated == UnderwritingClass);
@@ -495,14 +495,14 @@ void gpt_input::DoHarmonize()
NewSubstandardTable.allow(mce_table_l, mce_rated == UnderwritingClass);
NewSubstandardTable.allow(mce_table_p, mce_rated == UnderwritingClass);
- OldFlatExtra.enable(database_->Query(DB_AllowFlatExtras));
- NewFlatExtra.enable(database_->Query(DB_AllowFlatExtras));
+ OldFlatExtra.enable(database_->query<bool>(DB_AllowFlatExtras));
+ NewFlatExtra.enable(database_->query<bool>(DB_AllowFlatExtras));
bool blend_mortality_by_gender = false;
bool blend_mortality_by_smoking = false;
- bool allow_gender_distinct = database_->Query(DB_AllowSexDistinct);
- bool allow_unisex = database_->Query(DB_AllowUnisex);
+ bool allow_gender_distinct = database_->query<bool>(DB_AllowSexDistinct);
+ bool allow_unisex = database_->query<bool>(DB_AllowUnisex);
OldGender.allow(mce_female, !blend_mortality_by_gender &&
allow_gender_distinct);
OldGender.allow(mce_male , !blend_mortality_by_gender &&
allow_gender_distinct);
@@ -512,8 +512,8 @@ void gpt_input::DoHarmonize()
NewGender.allow(mce_male , !blend_mortality_by_gender &&
allow_gender_distinct);
NewGender.allow(mce_unisex, blend_mortality_by_gender || allow_unisex);
- bool allow_smoker_distinct = database_->Query(DB_AllowSmokeDistinct);
- bool allow_unismoke = database_->Query(DB_AllowUnismoke);
+ bool allow_smoker_distinct = database_->query<bool>(DB_AllowSmokeDistinct);
+ bool allow_unismoke = database_->query<bool>(DB_AllowUnismoke);
OldSmoking.allow(mce_smoker, !blend_mortality_by_smoking &&
allow_smoker_distinct);
OldSmoking.allow(mce_nonsmoker, !blend_mortality_by_smoking &&
allow_smoker_distinct);
@@ -617,7 +617,7 @@ std::string gpt_input::RealizeOldFlatExtra()
return s;
}
- if(database_->Query(DB_AllowFlatExtras))
+ if(database_->query<bool>(DB_AllowFlatExtras))
{
return "";
}
@@ -644,7 +644,7 @@ std::string gpt_input::RealizeNewFlatExtra()
return s;
}
- if(database_->Query(DB_AllowFlatExtras))
+ if(database_->query<bool>(DB_AllowFlatExtras))
{
return "";
}
diff --git a/ihs_acctval.cpp b/ihs_acctval.cpp
index 75d37dc..529a224 100644
--- a/ihs_acctval.cpp
+++ b/ihs_acctval.cpp
@@ -588,7 +588,7 @@ void AccountValue::SetInitialValues()
SepAcctPaymentAllocation = premium_allocation_to_sepacct(yare_input_);
GenAcctPaymentAllocation = 1.0 - SepAcctPaymentAllocation;
- if(!database().Query(DB_AllowGenAcct) && 0.0 != GenAcctPaymentAllocation)
+ if(!database().query<bool>(DB_AllowGenAcct) && 0.0 !=
GenAcctPaymentAllocation)
{
alarum()
<< "No general account is allowed for this product, but "
@@ -598,7 +598,7 @@ void AccountValue::SetInitialValues()
;
}
- if(!database().Query(DB_AllowSepAcct) && 0.0 != SepAcctPaymentAllocation)
+ if(!database().query<bool>(DB_AllowSepAcct) && 0.0 !=
SepAcctPaymentAllocation)
{
alarum()
<< "No separate account is allowed for this product, but "
@@ -716,7 +716,7 @@ void AccountValue::SetInitialValues()
|| oe_prefer_separate_account == distribution_preferred_account
)
{
- LMI_ASSERT(database().Query(DB_AllowSepAcct));
+ LMI_ASSERT(database().query<bool>(DB_AllowSepAcct));
}
// If any account preference for premium is the general account,
// then payment into the separate account must be permitted; but
@@ -727,7 +727,7 @@ void AccountValue::SetInitialValues()
|| oe_prefer_separate_account == er_premium_preferred_account
)
{
- LMI_ASSERT(database().Query(DB_AllowSepAcct));
+ LMI_ASSERT(database().query<bool>(DB_AllowSepAcct));
}
}
diff --git a/ihs_basicval.cpp b/ihs_basicval.cpp
index c10e2ef..e842099 100644
--- a/ihs_basicval.cpp
+++ b/ihs_basicval.cpp
@@ -327,7 +327,7 @@ void BasicValues::GPTServerInit()
// with code in AccountValue::SetInitialValues().
double BasicValues::InvestmentManagementFee() const
{
- if(!database().Query(DB_AllowSepAcct))
+ if(!database().query<bool>(DB_AllowSepAcct))
{
return 0.0;
}
@@ -688,7 +688,7 @@ void BasicValues::SetPermanentInvariants()
// rating, so we assert those preconditions and write simple code
// for 'unusual' COI banding that ignores those features.
LMI_ASSERT(!(UseUnusualCOIBanding && yare_input_.UseExperienceRating));
- LMI_ASSERT(!(UseUnusualCOIBanding && database().Query(DB_AllowTerm)));
+ LMI_ASSERT(!(UseUnusualCOIBanding &&
database().query<bool>(DB_AllowTerm)));
// Flat extras can be used even with guaranteed issue, e.g., for
// aviation, occupation, avocation, or foreign travel. Admin
@@ -722,7 +722,7 @@ void BasicValues::SetPermanentInvariants()
// feature, but either way no end user has ever objected to it.
if
( mce_table_none != yare_input_.SubstandardTable
- && !(database().Query(DB_AllowSubstdTable) && mce_rated ==
yare_input_.UnderwritingClass)
+ && !(database().query<bool>(DB_AllowSubstdTable) && mce_rated ==
yare_input_.UnderwritingClass)
)
{
alarum() << "Substandard table ratings not permitted." << LMI_FLUSH;
@@ -1936,7 +1936,7 @@ std::vector<double> BasicValues::GetWpRates() const
return GetTable
(product().datum("WPFilename")
,DB_WpTable
- ,database().Query(DB_AllowWp)
+ ,database().query<bool>(DB_AllowWp)
);
}
@@ -1945,7 +1945,7 @@ std::vector<double> BasicValues::GetAdbRates() const
return GetTable
(product().datum("ADDFilename")
,DB_AdbTable
- ,database().Query(DB_AllowAdb)
+ ,database().query<bool>(DB_AllowAdb)
);
}
@@ -1954,13 +1954,13 @@ std::vector<double> BasicValues::GetChildRiderRates()
const
return GetTable
(product().datum("ChildRiderFilename")
,DB_ChildRiderTable
- ,database().Query(DB_AllowChildRider)
+ ,database().query<bool>(DB_AllowChildRider)
);
}
std::vector<double> BasicValues::GetCurrentSpouseRiderRates() const
{
- if(!database().Query(DB_AllowSpouseRider))
+ if(!database().query<bool>(DB_AllowSpouseRider))
{
return std::vector<double>(GetLength());
}
@@ -1977,7 +1977,7 @@ std::vector<double>
BasicValues::GetCurrentSpouseRiderRates() const
std::vector<double> BasicValues::GetGuaranteedSpouseRiderRates() const
{
- if(!database().Query(DB_AllowSpouseRider))
+ if(!database().query<bool>(DB_AllowSpouseRider))
{
return std::vector<double>(GetLength());
}
@@ -1997,7 +1997,7 @@ std::vector<double> BasicValues::GetCurrentTermRates()
const
return GetTable
(product().datum("CurrTermFilename")
,DB_TermTable
- ,database().Query(DB_AllowTerm)
+ ,database().query<bool>(DB_AllowTerm)
,CanBlend
,CanBlend
);
@@ -2008,7 +2008,7 @@ std::vector<double> BasicValues::GetGuaranteedTermRates()
const
return GetTable
(product().datum("GuarTermFilename")
,DB_GuarTermTable
- ,database().Query(DB_AllowTerm)
+ ,database().query<bool>(DB_AllowTerm)
,CanBlend
,CanBlend
);
diff --git a/input_harmonization.cpp b/input_harmonization.cpp
index 0433801..ca5f374 100644
--- a/input_harmonization.cpp
+++ b/input_harmonization.cpp
@@ -127,19 +127,19 @@ void Input::DoHarmonize()
bool anything_goes = global_settings::instance().ash_nazg();
bool home_office_only = global_settings::instance().mellon();
- bool allow_sep_acct = database_->Query(DB_AllowSepAcct);
- bool allow_gen_acct = database_->Query(DB_AllowGenAcct);
+ bool allow_sep_acct = database_->query<bool>(DB_AllowSepAcct);
+ bool allow_gen_acct = database_->query<bool>(DB_AllowGenAcct);
bool sepacct_only = allow_sep_acct && !allow_gen_acct;
bool genacct_only = allow_gen_acct && !allow_sep_acct;
- bool wd_allowed = database_->Query(DB_AllowWd);
- bool loan_allowed = database_->Query(DB_AllowLoan);
- bool pref_loan_allowed = loan_allowed &&
database_->Query(DB_AllowPrefLoan);
+ bool wd_allowed = database_->query<bool>(DB_AllowWd);
+ bool loan_allowed = database_->query<bool>(DB_AllowLoan);
+ bool pref_loan_allowed = loan_allowed &&
database_->query<bool>(DB_AllowPrefLoan);
- DefinitionOfLifeInsurance.allow(mce_gpt, database_->Query(DB_AllowGpt));
- DefinitionOfLifeInsurance.allow(mce_cvat, database_->Query(DB_AllowCvat));
- DefinitionOfLifeInsurance.allow(mce_noncompliant,
database_->Query(DB_AllowNo7702));
+ DefinitionOfLifeInsurance.allow(mce_gpt ,
database_->query<bool>(DB_AllowGpt));
+ DefinitionOfLifeInsurance.allow(mce_cvat ,
database_->query<bool>(DB_AllowCvat));
+ DefinitionOfLifeInsurance.allow(mce_noncompliant,
database_->query<bool>(DB_AllowNo7702));
DefinitionOfMaterialChange.enable(anything_goes);
// INPUT !! TAXATION !! This old code will be useful when
@@ -178,17 +178,17 @@ void Input::DoHarmonize()
MaximumNaar.enable(anything_goes);
- AmortizePremiumLoad.enable(database_->Query(DB_AllowAmortPremLoad));
- ExtraCompensationOnAssets
.enable(database_->Query(DB_AllowExtraAssetComp));
- ExtraCompensationOnPremium.enable(database_->Query(DB_AllowExtraPremComp));
+ AmortizePremiumLoad
.enable(database_->query<bool>(DB_AllowAmortPremLoad));
+ ExtraCompensationOnAssets
.enable(database_->query<bool>(DB_AllowExtraAssetComp));
+
ExtraCompensationOnPremium.enable(database_->query<bool>(DB_AllowExtraPremComp));
- RetireesCanEnroll.enable(database_->Query(DB_AllowRetirees));
+ RetireesCanEnroll.enable(database_->query<bool>(DB_AllowRetirees));
- GroupUnderwritingType.allow(mce_medical ,
database_->Query(DB_AllowFullUw ));
- GroupUnderwritingType.allow(mce_paramedical ,
database_->Query(DB_AllowParamedUw));
- GroupUnderwritingType.allow(mce_nonmedical ,
database_->Query(DB_AllowNonmedUw ));
- GroupUnderwritingType.allow(mce_simplified_issue,
database_->Query(DB_AllowSimpUw ));
- GroupUnderwritingType.allow(mce_guaranteed_issue,
database_->Query(DB_AllowGuarUw ));
+ GroupUnderwritingType.allow(mce_medical ,
database_->query<bool>(DB_AllowFullUw ));
+ GroupUnderwritingType.allow(mce_paramedical ,
database_->query<bool>(DB_AllowParamedUw));
+ GroupUnderwritingType.allow(mce_nonmedical ,
database_->query<bool>(DB_AllowNonmedUw ));
+ GroupUnderwritingType.allow(mce_simplified_issue,
database_->query<bool>(DB_AllowSimpUw ));
+ GroupUnderwritingType.allow(mce_guaranteed_issue,
database_->query<bool>(DB_AllowGuarUw ));
bool part_mort_used = mce_yes == UsePartialMortality;
@@ -207,7 +207,7 @@ void Input::DoHarmonize()
SurviveToAge .enable(part_mort_used && mce_survive_to_age ==
SurviveToType);
bool enable_experience_rating =
- database_->Query(DB_AllowExpRating)
+ database_->query<bool>(DB_AllowExpRating)
&& part_mort_used
&& mce_month_by_month == RunOrder
;
@@ -327,7 +327,7 @@ void Input::DoHarmonize()
InforceCumulativeNoLapsePremium .enable(no_lapse_offered && mce_yes ==
InforceNoLapseActive);
InforceCumulativeNoLapsePayments.enable(no_lapse_offered && mce_yes ==
InforceNoLapseActive);
- InforceCumulativeRopPayments.enable(database_->Query(DB_AllowDbo3));
+ InforceCumulativeRopPayments.enable(database_->query<bool>(DB_AllowDbo3));
// It would be possible to enable 'InforceCumulativeSalesLoad' iff
// 'DB_LoadRfdProportion' is nonzero in the inforce year. However,
@@ -338,9 +338,9 @@ void Input::DoHarmonize()
// more complicated: it would require inspecting not only the
// database, but also a rate table.
- UnderwritingClass.allow(mce_ultrapreferred,
database_->Query(DB_AllowUltraPrefClass));
- UnderwritingClass.allow(mce_preferred ,
database_->Query(DB_AllowPreferredClass));
- UnderwritingClass.allow(mce_rated ,
database_->Query(DB_AllowSubstdTable ));
+ UnderwritingClass.allow(mce_ultrapreferred,
database_->query<bool>(DB_AllowUltraPrefClass));
+ UnderwritingClass.allow(mce_preferred ,
database_->query<bool>(DB_AllowPreferredClass));
+ UnderwritingClass.allow(mce_rated ,
database_->query<bool>(DB_AllowSubstdTable ));
SubstandardTable.enable(mce_rated == UnderwritingClass);
SubstandardTable.allow(mce_table_a, mce_rated == UnderwritingClass);
SubstandardTable.allow(mce_table_b, mce_rated == UnderwritingClass);
@@ -363,7 +363,7 @@ void Input::DoHarmonize()
( allow_custom_coi_multiplier
&& mce_yes == OverrideCoiMultiplier
);
- FlatExtra.enable(database_->Query(DB_AllowFlatExtras));
+ FlatExtra.enable(database_->query<bool>(DB_AllowFlatExtras));
calendar_date const most_recent_anniversary = add_years
(EffectiveDate.value()
@@ -380,24 +380,24 @@ void Input::DoHarmonize()
}
LastCoiReentryDate.enable(e_reenter_upon_rate_reset ==
database_->Query(DB_CoiInforceReentry));
- BlendGender.enable(database_->Query(DB_AllowMortBlendSex));
+ BlendGender.enable(database_->query<bool>(DB_AllowMortBlendSex));
bool blend_mortality_by_gender = mce_yes == BlendGender;
- BlendSmoking.enable(database_->Query(DB_AllowMortBlendSmoke));
+ BlendSmoking.enable(database_->query<bool>(DB_AllowMortBlendSmoke));
bool blend_mortality_by_smoking = mce_yes == BlendSmoking;
MaleProportion .enable(blend_mortality_by_gender);
NonsmokerProportion.enable(blend_mortality_by_smoking);
- bool allow_gender_distinct = database_->Query(DB_AllowSexDistinct);
- bool allow_unisex = database_->Query(DB_AllowUnisex);
+ bool allow_gender_distinct = database_->query<bool>(DB_AllowSexDistinct);
+ bool allow_unisex = database_->query<bool>(DB_AllowUnisex);
Gender.allow(mce_female, !blend_mortality_by_gender &&
allow_gender_distinct);
Gender.allow(mce_male , !blend_mortality_by_gender &&
allow_gender_distinct);
Gender.allow(mce_unisex, blend_mortality_by_gender || allow_unisex);
- bool allow_smoker_distinct = database_->Query(DB_AllowSmokeDistinct);
- bool allow_unismoke = database_->Query(DB_AllowUnismoke);
+ bool allow_smoker_distinct = database_->query<bool>(DB_AllowSmokeDistinct);
+ bool allow_unismoke = database_->query<bool>(DB_AllowUnismoke);
Smoking.allow(mce_smoker, !blend_mortality_by_smoking &&
allow_smoker_distinct);
Smoking.allow(mce_nonsmoker, !blend_mortality_by_smoking &&
allow_smoker_distinct);
@@ -413,12 +413,12 @@ void Input::DoHarmonize()
bool contract_is_rated(mce_rated == UnderwritingClass);
bool allow_term =
- database_->Query(DB_AllowTerm)
- && (database_->Query(DB_AllowRatedTerm) || !contract_is_rated)
+ database_->query<bool>(DB_AllowTerm)
+ && (database_->query<bool>(DB_AllowRatedTerm) || !contract_is_rated)
&& database_->Query(DB_TermMinIssAge) <= IssueAge.value()
&& IssueAge.value() <=
database_->Query(DB_TermMaxIssAge)
;
- bool term_is_a_rider = !database_->Query(DB_TermIsNotRider);
+ bool term_is_a_rider = !database_->query<bool>(DB_TermIsNotRider);
bool allow_term_rider = allow_term && term_is_a_rider;
TermRider.enable( allow_term_rider);
TermRider.allow(mce_yes, allow_term_rider);
@@ -441,23 +441,23 @@ void Input::DoHarmonize()
TermAdjustmentMethod.allow(mce_adjust_both, enable_term);
bool allow_wp =
- database_->Query(DB_AllowWp)
- && (database_->Query(DB_AllowRatedWp) || !contract_is_rated)
+ database_->query<bool>(DB_AllowWp)
+ && (database_->query<bool>(DB_AllowRatedWp) || !contract_is_rated)
&& database_->Query(DB_WpMinIssAge) <= IssueAge.value()
&& IssueAge.value() <=
database_->Query(DB_WpMaxIssAge)
;
WaiverOfPremiumBenefit.enable( allow_wp);
WaiverOfPremiumBenefit.allow(mce_yes, allow_wp);
bool allow_adb =
- database_->Query(DB_AllowAdb)
- && (database_->Query(DB_AllowRatedAdb) || !contract_is_rated)
+ database_->query<bool>(DB_AllowAdb)
+ && (database_->query<bool>(DB_AllowRatedAdb) || !contract_is_rated)
&& database_->Query(DB_AdbMinIssAge) <= IssueAge.value()
&& IssueAge.value() <=
database_->Query(DB_AdbMaxIssAge)
;
AccidentalDeathBenefit.enable( allow_adb);
AccidentalDeathBenefit.allow(mce_yes, allow_adb);
- bool allow_child_rider = database_->Query(DB_AllowChildRider);
+ bool allow_child_rider = database_->query<bool>(DB_AllowChildRider);
ChildRider .enable( allow_child_rider);
ChildRider .allow(mce_yes, allow_child_rider);
ChildRiderAmount .enable(mce_yes == ChildRider);
@@ -470,7 +470,7 @@ void Input::DoHarmonize()
((mce_yes == ChildRider) ? database_->Query(DB_ChildRiderMinAmt) : 0.0
,(mce_yes == ChildRider) ? database_->Query(DB_ChildRiderMaxAmt) : 0.0
);
- bool allow_spouse_rider = database_->Query(DB_AllowSpouseRider);
+ bool allow_spouse_rider = database_->query<bool>(DB_AllowSpouseRider);
SpouseRider .enable( allow_spouse_rider);
SpouseRider .allow(mce_yes, allow_spouse_rider);
SpouseRiderAmount.enable(mce_yes == SpouseRider);
@@ -489,7 +489,7 @@ void Input::DoHarmonize()
,database_->query<int>(DB_SpouseRiderMaxIssAge)
);
- bool allow_honeymoon = database_->Query(DB_AllowHoneymoon);
+ bool allow_honeymoon = database_->query<bool>(DB_AllowHoneymoon);
HoneymoonEndorsement .enable( allow_honeymoon);
HoneymoonEndorsement .allow(mce_yes, allow_honeymoon);
PostHoneymoonSpread .enable(mce_yes == HoneymoonEndorsement);
@@ -608,10 +608,10 @@ false // Silly workaround for now.
CorporationPayment.enable(mce_solve_er_prem != SolveType);
GeneralAccountRateType .allow(mce_credited_rate , true);
- GeneralAccountRateType .allow(mce_earned_rate, mce_no ==
UseCurrentDeclaredRate && (anything_goes ||
database_->Query(DB_AllowGenAcctEarnRate)));
+ GeneralAccountRateType .allow(mce_earned_rate, mce_no ==
UseCurrentDeclaredRate && (anything_goes ||
database_->query<bool>(DB_AllowGenAcctEarnRate)));
SeparateAccountRateType.allow(mce_gross_rate, true);
- SeparateAccountRateType.allow(mce_net_rate , anything_goes ||
database_->Query(DB_AllowSepAcctNetRate));
+ SeparateAccountRateType.allow(mce_net_rate , anything_goes ||
database_->query<bool>(DB_AllowSepAcctNetRate));
bool curr_int_rate_solve = false; // May be useful someday.
UseCurrentDeclaredRate .enable(!curr_int_rate_solve && allow_gen_acct);
@@ -632,7 +632,7 @@ false // Silly workaround for now.
// http://apps.leg.wa.gov/rcw/default.aspx?cite=48.23.085
bool allow_vlr =
( loan_allowed
- && ( database_->Query(DB_AllowVlr)
+ && ( database_->query<bool>(DB_AllowVlr)
|| anything_goes
)
);
@@ -642,7 +642,7 @@ false // Silly workaround for now.
UseAverageOfAllFunds.enable(!genacct_only);
bool enable_custom_fund =
!genacct_only
- && ( database_->Query(DB_AllowImfOverride)
+ && ( database_->query<bool>(DB_AllowImfOverride)
|| home_office_only
)
;
diff --git a/input_realization.cpp b/input_realization.cpp
index 6abf00f..c040fae 100644
--- a/input_realization.cpp
+++ b/input_realization.cpp
@@ -555,7 +555,7 @@ std::string Input::RealizeDeathBenefitOption()
}
if
- ( !database_->Query(DB_AllowChangeToDbo2)
+ ( !database_->query<bool>(DB_AllowChangeToDbo2)
&& !std::is_sorted
(DeathBenefitOptionRealized_.begin()
,DeathBenefitOptionRealized_.end()
@@ -573,7 +573,7 @@ std::string Input::RealizeDeathBenefitOption()
}
if
- ( !database_->Query(DB_AllowDbo3)
+ ( !database_->query<bool>(DB_AllowDbo3)
&& contains(DeathBenefitOptionRealized_, mce_dbopt("ROP"))
)
{
@@ -658,7 +658,7 @@ std::string Input::RealizeGeneralAccountRate()
}
// If the field is disabled, then its old contents aren't invalid.
- if(!database_->Query(DB_AllowGenAcct))
+ if(!database_->query<bool>(DB_AllowGenAcct))
{
return "";
}
@@ -740,7 +740,7 @@ std::string Input::RealizeSeparateAccountRate()
}
// If the field is disabled, then its old contents aren't invalid.
- if(!database_->Query(DB_AllowSepAcct))
+ if(!database_->query<bool>(DB_AllowSepAcct))
{
return "";
}
@@ -806,7 +806,7 @@ std::string Input::RealizeNewLoan()
return s;
}
- if(database_->Query(DB_AllowLoan))
+ if(database_->query<bool>(DB_AllowLoan))
{
return "";
}
@@ -832,7 +832,7 @@ std::string Input::RealizeWithdrawal()
return s;
}
- if(!database_->Query(DB_AllowWd))
+ if(!database_->query<bool>(DB_AllowWd))
{
if(!each_equal(WithdrawalRealized_, 0.0))
{
@@ -877,7 +877,7 @@ std::string Input::RealizeFlatExtra()
return s;
}
- if(database_->Query(DB_AllowFlatExtras))
+ if(database_->query<bool>(DB_AllowFlatExtras))
{
return "";
}
diff --git a/interest_rates.cpp b/interest_rates.cpp
index 0a9166e..0f5f3e7 100644
--- a/interest_rates.cpp
+++ b/interest_rates.cpp
@@ -256,7 +256,7 @@ InterestRates::InterestRates(BasicValues const& v)
,Zero_ (Length_)
,NeedMidpointRates_ {v.IsSubjectToIllustrationReg()}
,GenAcctRateType_ {v.yare_input_.GeneralAccountRateType}
- ,NeedSepAcctRates_ {0.0 != v.database().Query(DB_AllowSepAcct)}
+ ,NeedSepAcctRates_ {0.0 != v.database().query<bool>(DB_AllowSepAcct)}
,SepAcctRateType_ {v.yare_input_.SeparateAccountRateType}
,SepAcctSpreadMethod_{v.database().query<mcenum_spread_method>(DB_SepAcctSpreadMethod)}
,AmortLoad_ {Zero_}
@@ -264,7 +264,7 @@ InterestRates::InterestRates(BasicValues const& v)
// ,NeedLoanRates_ {need_loan_rates(v.yare_input_)}
,NeedLoanRates_ {true} // DEPRECATED
,LoanRateType_ {v.yare_input_.LoanRateType}
- ,NeedPrefLoanRates_ {0.0 != v.database().Query(DB_AllowPrefLoan)}
+ ,NeedPrefLoanRates_ {0.0 != v.database().query<bool>(DB_AllowPrefLoan)}
,NeedHoneymoonRates_ {v.yare_input_.HoneymoonEndorsement}
,SpreadFor7702_ {v.SpreadFor7702()}
{
diff --git a/ledger_invariant_init.cpp b/ledger_invariant_init.cpp
index ad06bd7..d57c758 100644
--- a/ledger_invariant_init.cpp
+++ b/ledger_invariant_init.cpp
@@ -92,7 +92,7 @@ void LedgerInvariant::Init(BasicValues const* b)
{
TermSpecAmt .assign(Length, b->yare_input_.TermRiderAmount);
}
- else if(b->database().Query(DB_TermIsNotRider))
+ else if(b->database().query<bool>(DB_TermIsNotRider))
{
TermSpecAmt = b->DeathBfts_->supplamt();
if(!each_equal(TermSpecAmt, 0.0))
diff --git a/mec_input.cpp b/mec_input.cpp
index e267760..1449bd3 100644
--- a/mec_input.cpp
+++ b/mec_input.cpp
@@ -304,8 +304,8 @@ void mec_input::DoHarmonize()
{
bool anything_goes = global_settings::instance().ash_nazg();
- DefinitionOfLifeInsurance.allow(mce_gpt , database_->Query(DB_AllowGpt ));
- DefinitionOfLifeInsurance.allow(mce_cvat, database_->Query(DB_AllowCvat));
+ DefinitionOfLifeInsurance.allow(mce_gpt ,
database_->query<bool>(DB_AllowGpt ));
+ DefinitionOfLifeInsurance.allow(mce_cvat,
database_->query<bool>(DB_AllowCvat));
DefinitionOfLifeInsurance.allow(mce_noncompliant, false);
DefinitionOfMaterialChange.enable(mce_noncompliant !=
DefinitionOfLifeInsurance);
@@ -337,11 +337,11 @@ void mec_input::DoHarmonize()
;
}
- GroupUnderwritingType.allow(mce_medical ,
database_->Query(DB_AllowFullUw ));
- GroupUnderwritingType.allow(mce_paramedical ,
database_->Query(DB_AllowParamedUw));
- GroupUnderwritingType.allow(mce_nonmedical ,
database_->Query(DB_AllowNonmedUw ));
- GroupUnderwritingType.allow(mce_simplified_issue,
database_->Query(DB_AllowSimpUw ));
- GroupUnderwritingType.allow(mce_guaranteed_issue,
database_->Query(DB_AllowGuarUw ));
+ GroupUnderwritingType.allow(mce_medical ,
database_->query<bool>(DB_AllowFullUw ));
+ GroupUnderwritingType.allow(mce_paramedical ,
database_->query<bool>(DB_AllowParamedUw));
+ GroupUnderwritingType.allow(mce_nonmedical ,
database_->query<bool>(DB_AllowNonmedUw ));
+ GroupUnderwritingType.allow(mce_simplified_issue,
database_->query<bool>(DB_AllowSimpUw ));
+ GroupUnderwritingType.allow(mce_guaranteed_issue,
database_->query<bool>(DB_AllowGuarUw ));
IssueAge .enable(mce_no == UseDOB);
DateOfBirth .enable(mce_yes == UseDOB);
@@ -434,9 +434,9 @@ void mec_input::DoHarmonize()
PaymentHistory .enable(non_mec);
BenefitHistory .enable(non_mec);
- UnderwritingClass.allow(mce_ultrapreferred,
database_->Query(DB_AllowUltraPrefClass));
- UnderwritingClass.allow(mce_preferred ,
database_->Query(DB_AllowPreferredClass));
- UnderwritingClass.allow(mce_rated, database_->Query(DB_AllowSubstdTable));
+ UnderwritingClass.allow(mce_ultrapreferred,
database_->query<bool>(DB_AllowUltraPrefClass));
+ UnderwritingClass.allow(mce_preferred ,
database_->query<bool>(DB_AllowPreferredClass));
+ UnderwritingClass.allow(mce_rated ,
database_->query<bool>(DB_AllowSubstdTable));
SubstandardTable.enable(mce_rated == UnderwritingClass);
@@ -451,20 +451,20 @@ void mec_input::DoHarmonize()
SubstandardTable.allow(mce_table_l, mce_rated == UnderwritingClass);
SubstandardTable.allow(mce_table_p, mce_rated == UnderwritingClass);
- FlatExtra.enable(database_->Query(DB_AllowFlatExtras));
+ FlatExtra.enable(database_->query<bool>(DB_AllowFlatExtras));
bool blend_mortality_by_gender = false;
bool blend_mortality_by_smoking = false;
- bool allow_gender_distinct = database_->Query(DB_AllowSexDistinct);
- bool allow_unisex = database_->Query(DB_AllowUnisex);
+ bool allow_gender_distinct = database_->query<bool>(DB_AllowSexDistinct);
+ bool allow_unisex = database_->query<bool>(DB_AllowUnisex);
Gender.allow(mce_female, !blend_mortality_by_gender &&
allow_gender_distinct);
Gender.allow(mce_male , !blend_mortality_by_gender &&
allow_gender_distinct);
Gender.allow(mce_unisex, blend_mortality_by_gender || allow_unisex);
- bool allow_smoker_distinct = database_->Query(DB_AllowSmokeDistinct);
- bool allow_unismoke = database_->Query(DB_AllowUnismoke);
+ bool allow_smoker_distinct = database_->query<bool>(DB_AllowSmokeDistinct);
+ bool allow_unismoke = database_->query<bool>(DB_AllowUnismoke);
Smoking.allow(mce_smoker, !blend_mortality_by_smoking &&
allow_smoker_distinct);
Smoking.allow(mce_nonsmoker, !blend_mortality_by_smoking &&
allow_smoker_distinct);
@@ -563,7 +563,7 @@ std::string mec_input::RealizeFlatExtra()
return s;
}
- if(database_->Query(DB_AllowFlatExtras))
+ if(database_->query<bool>(DB_AllowFlatExtras))
{
return "";
}
- [lmi-commits] [lmi] master updated (8580716 -> 259f97c), Greg Chicares, 2018/11/07
- [lmi-commits] [lmi] master 61c1056 2/6: Demonstrate effect of redundantly specifying deduced template parameter, Greg Chicares, 2018/11/07
- [lmi-commits] [lmi] master 5b4e08d 4/6: Remove redundant template arguments, Greg Chicares, 2018/11/07
- [lmi-commits] [lmi] master 937ceba 3/6: Strengthen type checking, Greg Chicares, 2018/11/07
- [lmi-commits] [lmi] master 4b2a5d7 5/6: Use query_into() wherever it fits, Greg Chicares, 2018/11/07
- [lmi-commits] [lmi] master 8667743 1/6: Replace ...cast<T>(...Query(...)) with ...Query<T>(...), Greg Chicares, 2018/11/07
- [lmi-commits] [lmi] master 259f97c 6/6: Use query<bool> with DB_Allow* and DB_TermIsNotRider,
Greg Chicares <=