lib: TransactionModifier: cleanup
This commit is contained in:
		
							parent
							
								
									cd1d15da8a
								
							
						
					
					
						commit
						80b34ea48d
					
				| @ -76,35 +76,6 @@ transactionModifierToFunction mt = | |||||||
| tmParseQuery :: TransactionModifier -> (Day -> Query) | tmParseQuery :: TransactionModifier -> (Day -> Query) | ||||||
| tmParseQuery mt = fst . flip parseQuery (tmquerytxt mt) | tmParseQuery mt = fst . flip parseQuery (tmquerytxt mt) | ||||||
| 
 | 
 | ||||||
| ---- | 'DateSpan' of all dates mentioned in 'Journal' |  | ||||||
| ---- |  | ||||||
| ---- >>> jdatespan nulljournal |  | ||||||
| ---- DateSpan - |  | ||||||
| ---- >>> jdatespan nulljournal{jtxns=[nulltransaction{tdate=read "2016-01-01"}] } |  | ||||||
| ---- DateSpan 2016/01/01 |  | ||||||
| ---- >>> jdatespan nulljournal{jtxns=[nulltransaction{tdate=read "2016-01-01", tpostings=[nullposting{pdate=Just $ read "2016-02-01"}]}] } |  | ||||||
| ---- DateSpan 2016/01/01-2016/02/01 |  | ||||||
| --jdatespan :: Journal -> DateSpan |  | ||||||
| --jdatespan j |  | ||||||
| --        | null dates = nulldatespan |  | ||||||
| --        | otherwise = DateSpan (Just $ minimum dates) (Just $ 1 `addDays` maximum dates) |  | ||||||
| --    where |  | ||||||
| --        dates = concatMap tdates $ jtxns j |  | ||||||
| 
 |  | ||||||
| ---- | 'DateSpan' of all dates mentioned in 'Transaction' |  | ||||||
| ---- |  | ||||||
| ---- >>> tdates nulltransaction |  | ||||||
| ---- [0000-01-01] |  | ||||||
| --tdates :: Transaction -> [Day] |  | ||||||
| --tdates t = tdate t : concatMap pdates (tpostings t) ++ maybeToList (tdate2 t) where |  | ||||||
| --    pdates p = catMaybes [pdate p, pdate2 p] |  | ||||||
| 
 |  | ||||||
| postingScale :: Posting -> Maybe Quantity |  | ||||||
| postingScale p = |  | ||||||
|     case amounts $ pamount p of |  | ||||||
|         [a] | amultiplier a -> Just $ aquantity a |  | ||||||
|         _ -> Nothing |  | ||||||
| 
 |  | ||||||
| -- | Converts a 'TransactionModifier''s posting to a 'Posting'-generating function, | -- | Converts a 'TransactionModifier''s posting to a 'Posting'-generating function, | ||||||
| -- which will be used to make a new posting based on the old one (an "automated posting"). | -- which will be used to make a new posting based on the old one (an "automated posting"). | ||||||
| tmPostingToFunction :: Posting -> (Posting -> Posting) | tmPostingToFunction :: Posting -> (Posting -> Posting) | ||||||
| @ -122,6 +93,12 @@ tmPostingToFunction p' = | |||||||
|         "" -> Mixed as |         "" -> Mixed as | ||||||
|         c -> Mixed [a{acommodity = c, astyle = astyle amount, aprice = aprice amount} | a <- as] |         c -> Mixed [a{acommodity = c, astyle = astyle amount, aprice = aprice amount} | a <- as] | ||||||
| 
 | 
 | ||||||
|  | postingScale :: Posting -> Maybe Quantity | ||||||
|  | postingScale p = | ||||||
|  |     case amounts $ pamount p of | ||||||
|  |         [a] | amultiplier a -> Just $ aquantity a | ||||||
|  |         _ -> Nothing | ||||||
|  | 
 | ||||||
| renderPostingCommentDates :: Posting -> Posting | renderPostingCommentDates :: Posting -> Posting | ||||||
| renderPostingCommentDates p = p { pcomment = comment' } | renderPostingCommentDates p = p { pcomment = comment' } | ||||||
|     where |     where | ||||||
|  | |||||||
| @ -205,7 +205,7 @@ data Amount = Amount { | |||||||
|       aquantity   :: Quantity, |       aquantity   :: Quantity, | ||||||
|       aprice      :: Price,           -- ^ the (fixed) price for this amount, if any |       aprice      :: Price,           -- ^ the (fixed) price for this amount, if any | ||||||
|       astyle      :: AmountStyle, |       astyle      :: AmountStyle, | ||||||
|       amultiplier :: Bool             -- ^ amount is a multipier used in TransactionModifier postings |       amultiplier :: Bool             -- ^ kludge: a flag marking this amount and posting as a multipier in a TransactionModifier | ||||||
|     } deriving (Eq,Ord,Typeable,Data,Generic,Show) |     } deriving (Eq,Ord,Typeable,Data,Generic,Show) | ||||||
| 
 | 
 | ||||||
| instance NFData Amount | instance NFData Amount | ||||||
|  | |||||||
		Loading…
	
		Reference in New Issue
	
	Block a user