| Safe Haskell | None |
|---|---|
| Language | Haskell2010 |
Buchhaltung.Match
Contents
- type MatchT m = RWST (FullOptions FilePath) () (Map AccountName Bool, Zipper Update) (ErrorT m)
- match :: FullOptions FilePath -> Journal -> ErrorT IO ()
- updateAccountName :: Update -> Maybe (Transaction, Transaction)
- printSource :: Source -> String
- mainLoop :: String -> MatchT IO ()
- histfsuf :: String
- data Default = Default {
- prefixed :: Text
- defAcc :: AccountName
- suggestAccount :: Update -> MatchT IO (Maybe Default)
- bayesLine :: Monad m => WithSource a -> MatchT m Text
- learn :: [(AccountName, NonEmpty (WithSource a))] -> MatchT IO ()
- accountCompletion :: [String] -> CompletionFunc IO
- type Update = WithSource (Maybe AccountName)
- groupByAccount :: MonadReader (Options User Config env) m => Journal -> m (Maybe ([(AccountName, NonEmpty (WithSource ()))], NonEmpty Update))
- myAskAccount :: Maybe Default -> MatchT IO AccountName
- getAccountList :: Monad m => (Bool -> Bool) -> MatchT m [AccountName]
- tmp :: Monad m => Text -> MatchT m FilePath
- dbaclProc :: String -> [String]
- dbaclProcC :: [String] -> [String]
Documentation
Arguments
| = RWST (FullOptions FilePath) () (Map AccountName Bool, Zipper Update) (ErrorT m) | R: temporaray dbacl path W: Set of learned accounts S: Zipper with all transaction that neede to be matched |
updateAccountName :: Update -> Maybe (Transaction, Transaction) Source #
Apply the first matching Todo
printSource :: Source -> String Source #
Data type describing the suggested or 'default' account when asking the user for account input
Constructors
| Default | |
Fields
| |
learn :: [(AccountName, NonEmpty (WithSource a))] -> MatchT IO () Source #
accountCompletion :: [String] -> CompletionFunc IO Source #
type Update = WithSource (Maybe AccountName) Source #
groupByAccount :: MonadReader (Options User Config env) m => Journal -> m (Maybe ([(AccountName, NonEmpty (WithSource ()))], NonEmpty Update)) Source #
Group all transactions with source into those that already have
an account (ignoring those in ignoredAccountsOnMatch) and those
that start with cTodoAccount
returns Nothing if there are no todo transactions
myAskAccount :: Maybe Default -> MatchT IO AccountName Source #
getAccountList :: Monad m => (Bool -> Bool) -> MatchT m [AccountName] Source #
dbacl arguments
dbaclProcC :: [String] -> [String] Source #
classification