Optimized several "in_place" function in balance_t

This commit is contained in:
John Wiegley 2010-05-23 15:23:19 -06:00
parent efcede3ca5
commit 847a5e4e73

View file

@ -321,10 +321,8 @@ public:
return temp; return temp;
} }
void in_place_round() { void in_place_round() {
balance_t temp; foreach (amounts_map::value_type& pair, amounts)
foreach (const amounts_map::value_type& pair, amounts) pair.second.in_place_round();
temp += pair.second.rounded();
*this = temp;
} }
balance_t truncated() const { balance_t truncated() const {
@ -333,10 +331,8 @@ public:
return temp; return temp;
} }
void in_place_truncate() { void in_place_truncate() {
balance_t temp; foreach (amounts_map::value_type& pair, amounts)
foreach (const amounts_map::value_type& pair, amounts) pair.second.in_place_truncate();
temp += pair.second.truncated();
*this = temp;
} }
balance_t floored() const { balance_t floored() const {
@ -345,10 +341,8 @@ public:
return temp; return temp;
} }
void in_place_floor() { void in_place_floor() {
balance_t temp; foreach (amounts_map::value_type& pair, amounts)
foreach (const amounts_map::value_type& pair, amounts) pair.second.in_place_floor();
temp += pair.second.floored();
*this = temp;
} }
balance_t unrounded() const { balance_t unrounded() const {
@ -357,10 +351,8 @@ public:
return temp; return temp;
} }
void in_place_unround() { void in_place_unround() {
balance_t temp; foreach (amounts_map::value_type& pair, amounts)
foreach (const amounts_map::value_type& pair, amounts) pair.second.in_place_unround();
temp += pair.second.unrounded();
*this = temp;
} }
balance_t reduced() const { balance_t reduced() const {