summaryrefslogtreecommitdiff
path: root/src/balance.cc
diff options
context:
space:
mode:
authorJohn Wiegley <johnw@newartisans.com>2009-06-26 17:09:34 +0100
committerJohn Wiegley <johnw@newartisans.com>2009-06-26 17:15:35 +0100
commit2ef1934bb0dbcd08dfe8d4dc68bfd1509c8f51ce (patch)
tree5225fc7f164feed6a0af36f552b9fa713a3d8840 /src/balance.cc
parent4574c30fcfd3b03bab9a368a6ff2928af7e11e28 (diff)
downloadfork-ledger-2ef1934bb0dbcd08dfe8d4dc68bfd1509c8f51ce.tar.gz
fork-ledger-2ef1934bb0dbcd08dfe8d4dc68bfd1509c8f51ce.tar.bz2
fork-ledger-2ef1934bb0dbcd08dfe8d4dc68bfd1509c8f51ce.zip
Restored --price option, added baseline test
This option reports only in terms of the annotated price of the commodities involved, otherwise it reports the amounts themselves. It can be used in conjunction with other reports, as it applies to the displayed amounts, not the actual amounts being calculated.
Diffstat (limited to 'src/balance.cc')
-rw-r--r--src/balance.cc10
1 files changed, 10 insertions, 0 deletions
diff --git a/src/balance.cc b/src/balance.cc
index 07657287..274f860a 100644
--- a/src/balance.cc
+++ b/src/balance.cc
@@ -203,6 +203,16 @@ balance_t::value(const bool primary_only,
return resolved ? temp : optional<balance_t>();
}
+balance_t balance_t::price() const
+{
+ balance_t temp;
+
+ foreach (const amounts_map::value_type& pair, amounts)
+ temp += pair.second.price();
+
+ return temp;
+}
+
optional<amount_t>
balance_t::commodity_amount(const optional<const commodity_t&>& commodity) const
{