singletons-2.1: tests/compile-and-dump/GradingClient/Main.ghc80.template
GradingClient/Main.hs:(0,0)-(0,0): Splicing declarations
singletons
[d| lastName, firstName, yearName, gradeName, majorName :: [AChar]
lastName = [CL, CA, CS, CT]
firstName = [CF, CI, CR, CS, CT]
yearName = [CY, CE, CA, CR]
gradeName = [CG, CR, CA, CD, CE]
majorName = [CM, CA, CJ, CO, CR]
gradingSchema :: Schema
gradingSchema
= Sch
[Attr lastName STRING, Attr firstName STRING, Attr yearName NAT,
Attr gradeName NAT, Attr majorName BOOL]
names :: Schema
names = Sch [Attr firstName STRING, Attr lastName STRING] |]
======>
lastName :: [AChar]
firstName :: [AChar]
yearName :: [AChar]
gradeName :: [AChar]
majorName :: [AChar]
lastName = [CL, CA, CS, CT]
firstName = [CF, CI, CR, CS, CT]
yearName = [CY, CE, CA, CR]
gradeName = [CG, CR, CA, CD, CE]
majorName = [CM, CA, CJ, CO, CR]
gradingSchema :: Schema
gradingSchema
= Sch
[Attr lastName STRING, Attr firstName STRING, Attr yearName NAT,
Attr gradeName NAT, Attr majorName BOOL]
names :: Schema
names = Sch [Attr firstName STRING, Attr lastName STRING]
type MajorNameSym0 = MajorName
type GradeNameSym0 = GradeName
type YearNameSym0 = YearName
type FirstNameSym0 = FirstName
type LastNameSym0 = LastName
type GradingSchemaSym0 = GradingSchema
type NamesSym0 = Names
type family MajorName :: [AChar] where
MajorName = Apply (Apply (:$) CMSym0) (Apply (Apply (:$) CASym0) (Apply (Apply (:$) CJSym0) (Apply (Apply (:$) COSym0) (Apply (Apply (:$) CRSym0) '[]))))
type family GradeName :: [AChar] where
GradeName = Apply (Apply (:$) CGSym0) (Apply (Apply (:$) CRSym0) (Apply (Apply (:$) CASym0) (Apply (Apply (:$) CDSym0) (Apply (Apply (:$) CESym0) '[]))))
type family YearName :: [AChar] where
YearName = Apply (Apply (:$) CYSym0) (Apply (Apply (:$) CESym0) (Apply (Apply (:$) CASym0) (Apply (Apply (:$) CRSym0) '[])))
type family FirstName :: [AChar] where
FirstName = Apply (Apply (:$) CFSym0) (Apply (Apply (:$) CISym0) (Apply (Apply (:$) CRSym0) (Apply (Apply (:$) CSSym0) (Apply (Apply (:$) CTSym0) '[]))))
type family LastName :: [AChar] where
LastName = Apply (Apply (:$) CLSym0) (Apply (Apply (:$) CASym0) (Apply (Apply (:$) CSSym0) (Apply (Apply (:$) CTSym0) '[])))
type family GradingSchema :: Schema where
GradingSchema = Apply SchSym0 (Apply (Apply (:$) (Apply (Apply AttrSym0 LastNameSym0) STRINGSym0)) (Apply (Apply (:$) (Apply (Apply AttrSym0 FirstNameSym0) STRINGSym0)) (Apply (Apply (:$) (Apply (Apply AttrSym0 YearNameSym0) NATSym0)) (Apply (Apply (:$) (Apply (Apply AttrSym0 GradeNameSym0) NATSym0)) (Apply (Apply (:$) (Apply (Apply AttrSym0 MajorNameSym0) BOOLSym0)) '[])))))
type family Names :: Schema where
Names = Apply SchSym0 (Apply (Apply (:$) (Apply (Apply AttrSym0 FirstNameSym0) STRINGSym0)) (Apply (Apply (:$) (Apply (Apply AttrSym0 LastNameSym0) STRINGSym0)) '[]))
sMajorName :: Sing (MajorNameSym0 :: [AChar])
sGradeName :: Sing (GradeNameSym0 :: [AChar])
sYearName :: Sing (YearNameSym0 :: [AChar])
sFirstName :: Sing (FirstNameSym0 :: [AChar])
sLastName :: Sing (LastNameSym0 :: [AChar])
sGradingSchema :: Sing (GradingSchemaSym0 :: Schema)
sNames :: Sing (NamesSym0 :: Schema)
sMajorName
= applySing
(applySing (singFun2 (Proxy :: Proxy (:$)) SCons) SCM)
(applySing
(applySing (singFun2 (Proxy :: Proxy (:$)) SCons) SCA)
(applySing
(applySing (singFun2 (Proxy :: Proxy (:$)) SCons) SCJ)
(applySing
(applySing (singFun2 (Proxy :: Proxy (:$)) SCons) SCO)
(applySing
(applySing (singFun2 (Proxy :: Proxy (:$)) SCons) SCR) SNil))))
sGradeName
= applySing
(applySing (singFun2 (Proxy :: Proxy (:$)) SCons) SCG)
(applySing
(applySing (singFun2 (Proxy :: Proxy (:$)) SCons) SCR)
(applySing
(applySing (singFun2 (Proxy :: Proxy (:$)) SCons) SCA)
(applySing
(applySing (singFun2 (Proxy :: Proxy (:$)) SCons) SCD)
(applySing
(applySing (singFun2 (Proxy :: Proxy (:$)) SCons) SCE) SNil))))
sYearName
= applySing
(applySing (singFun2 (Proxy :: Proxy (:$)) SCons) SCY)
(applySing
(applySing (singFun2 (Proxy :: Proxy (:$)) SCons) SCE)
(applySing
(applySing (singFun2 (Proxy :: Proxy (:$)) SCons) SCA)
(applySing
(applySing (singFun2 (Proxy :: Proxy (:$)) SCons) SCR) SNil)))
sFirstName
= applySing
(applySing (singFun2 (Proxy :: Proxy (:$)) SCons) SCF)
(applySing
(applySing (singFun2 (Proxy :: Proxy (:$)) SCons) SCI)
(applySing
(applySing (singFun2 (Proxy :: Proxy (:$)) SCons) SCR)
(applySing
(applySing (singFun2 (Proxy :: Proxy (:$)) SCons) SCS)
(applySing
(applySing (singFun2 (Proxy :: Proxy (:$)) SCons) SCT) SNil))))
sLastName
= applySing
(applySing (singFun2 (Proxy :: Proxy (:$)) SCons) SCL)
(applySing
(applySing (singFun2 (Proxy :: Proxy (:$)) SCons) SCA)
(applySing
(applySing (singFun2 (Proxy :: Proxy (:$)) SCons) SCS)
(applySing
(applySing (singFun2 (Proxy :: Proxy (:$)) SCons) SCT) SNil)))
sGradingSchema
= applySing
(singFun1 (Proxy :: Proxy SchSym0) SSch)
(applySing
(applySing
(singFun2 (Proxy :: Proxy (:$)) SCons)
(applySing
(applySing (singFun2 (Proxy :: Proxy AttrSym0) SAttr) sLastName)
SSTRING))
(applySing
(applySing
(singFun2 (Proxy :: Proxy (:$)) SCons)
(applySing
(applySing (singFun2 (Proxy :: Proxy AttrSym0) SAttr) sFirstName)
SSTRING))
(applySing
(applySing
(singFun2 (Proxy :: Proxy (:$)) SCons)
(applySing
(applySing (singFun2 (Proxy :: Proxy AttrSym0) SAttr) sYearName)
SNAT))
(applySing
(applySing
(singFun2 (Proxy :: Proxy (:$)) SCons)
(applySing
(applySing (singFun2 (Proxy :: Proxy AttrSym0) SAttr) sGradeName)
SNAT))
(applySing
(applySing
(singFun2 (Proxy :: Proxy (:$)) SCons)
(applySing
(applySing (singFun2 (Proxy :: Proxy AttrSym0) SAttr) sMajorName)
SBOOL))
SNil)))))
sNames
= applySing
(singFun1 (Proxy :: Proxy SchSym0) SSch)
(applySing
(applySing
(singFun2 (Proxy :: Proxy (:$)) SCons)
(applySing
(applySing (singFun2 (Proxy :: Proxy AttrSym0) SAttr) sFirstName)
SSTRING))
(applySing
(applySing
(singFun2 (Proxy :: Proxy (:$)) SCons)
(applySing
(applySing (singFun2 (Proxy :: Proxy AttrSym0) SAttr) sLastName)
SSTRING))
SNil))