Safe Haskell | None |
---|---|
Language | Haskell2010 |
A TransactionModifier
is a rule that modifies certain Transaction
s,
typically adding automated postings to them.
Synopsis
Documentation
transactionModifierToFunction :: TransactionModifier -> Transaction -> Transaction Source #
Converts a TransactionModifier
to a Transaction
-transforming function,
which applies the modification(s) specified by the TransactionModifier.
Currently this means adding automated postings when certain other postings are present.
The postings of the transformed transaction will reference it in the usual
way (ie, txnTieKnot
is called).
>>>
putStr $ showTransaction $ transactionModifierToFunction (TransactionModifier "" ["pong" `post` usd 2]) nulltransaction{tpostings=["ping" `post` usd 1]}
0000/01/01 ping $1.00 pong $2.00>>>
putStr $ showTransaction $ transactionModifierToFunction (TransactionModifier "miss" ["pong" `post` usd 2]) nulltransaction{tpostings=["ping" `post` usd 1]}
0000/01/01 ping $1.00>>>
putStr $ showTransaction $ transactionModifierToFunction (TransactionModifier "ping" ["pong" `post` amount{amultiplier=True, aquantity=3}]) nulltransaction{tpostings=["ping" `post` usd 2]}
0000/01/01 ping $2.00 pong $6.00