module Hcompta.LCC.Compta where import Data.Eq (Eq) import Text.Show (Show) import Language.Symantic import Hcompta.LCC.Amount import Hcompta.LCC.Chart import Hcompta.LCC.Journal import Hcompta.LCC.Grammar (Terms) -- * Type 'Compta' -- -- NOTE: 'Compta' is recursively prepended to @ss@ in 'compta_modules' here, -- where it is possible. It is more simple than introducing some fix-point wrapping @ss@ -- to include 'Compta' later, especially because this fix-point -- would not be a type-level list like @ss@, hence not matching Symantic's API. data Compta src ss j = Compta { compta_chart :: Chart , compta_journals :: Journals j , compta_modules :: Modules src (Proxy (Compta src ss) ': ss) , compta_style_amounts :: Style_Amounts , compta_terms :: Terms -- , compta_code :: Map Name Text } deriving (Eq, Show)