]> Git — Sourcephile - comptalang.git/blob - lcc/Hcompta/LCC/Sym/Date.hs
Rewrite hcompta-lcc to use new symantic.
[comptalang.git] / lcc / Hcompta / LCC / Sym / Date.hs
1 {-# LANGUAGE UndecidableInstances #-}
2 {-# OPTIONS_GHC -fno-warn-orphans #-}
3 -- | Symantic for 'Date'.
4 module Hcompta.LCC.Sym.Date where
5
6 import qualified Prelude ()
7
8 import Hcompta.LCC.Posting (Date)
9 import Language.Symantic
10
11 -- * Class 'Sym_Date'
12 type instance Sym (Proxy Date) = Sym_Date
13 class Sym_Date (term:: * -> *) where
14
15 instance Sym_Date Eval where
16 instance Sym_Date View where
17 instance (Sym_Date r1, Sym_Date r2) => Sym_Date (Dup r1 r2) where
18 instance (Sym_Date term, Sym_Lambda term) => Sym_Date (BetaT term)
19
20 instance ClassInstancesFor Date
21 instance TypeInstancesFor Date
22 instance (Source src, Inj_Sym ss Date) => ModuleFor src ss Date
23 instance Gram_Term_AtomsFor src ss g Date
24
25 tyDate :: Source src => Inj_Len vs => Type src vs Date
26 tyDate = tyConst @(K Date) @Date