lib: memoise accountNameApplyAliases too ?
This adds a accountNameApplyAliasesMemo, which memoises the result of applying a set of aliases (simple and regex) to an account name. In theory this should reduce more repetitive work, but in practice it doesn't seem to make a difference, so it's unused for now.
This commit is contained in:
parent
4326f88c26
commit
5048d3bf06
@ -37,6 +37,7 @@ module Hledger.Data.Posting (
|
||||
joinAccountNames,
|
||||
concatAccountNames,
|
||||
accountNameApplyAliases,
|
||||
accountNameApplyAliasesMemo,
|
||||
-- * arithmetic
|
||||
sumPostings,
|
||||
-- * rendering
|
||||
@ -231,6 +232,10 @@ accountNameApplyAliases aliases a = accountNameWithPostingType atype aname'
|
||||
aname
|
||||
aliases
|
||||
|
||||
-- | Memoising version of accountNameApplyAliases, maybe overkill.
|
||||
accountNameApplyAliasesMemo :: [AccountAlias] -> AccountName -> AccountName
|
||||
accountNameApplyAliasesMemo aliases = memo (accountNameApplyAliases aliases)
|
||||
|
||||
-- aliasMatches :: AccountAlias -> AccountName -> Bool
|
||||
-- aliasMatches (BasicAlias old _) a = old `isAccountNamePrefixOf` a
|
||||
-- aliasMatches (RegexAlias re _) a = regexMatchesCI re a
|
||||
|
||||
@ -664,6 +664,7 @@ modifiedaccountnamep = do
|
||||
a <- accountnamep
|
||||
return $
|
||||
accountNameApplyAliases aliases $
|
||||
-- XXX accountNameApplyAliasesMemo ? doesn't seem to make a difference
|
||||
joinAccountNames parent
|
||||
a
|
||||
|
||||
|
||||
Loading…
Reference in New Issue
Block a user