Safe Haskell | Safe |
---|---|
Language | Haskell2010 |
Documentation
class Require (op :: Type) (ctx :: [ErrorMessage]) where Source #
Instances
(TypeError ((Text "Error: " :<>: m) :$$: (Text "trace: " :<>: ShowCTX ctx)) :: Constraint) => Require (OpError m) ctx Source # | |
(RequireR (OpComAsp al ar) ctx (Aspect ar'), Require (OpComRA ctx prd sc ip ic sp ic' sp' ar') ctx) => Require (OpComAsp al ((,) prd (CRule ctx prd sc ip ic sp ic' sp') ': ar)) ctx Source # | |
Require (OpComAsp al ([] :: [(Prod, Type)])) ctx Source # | |
RequireEqRes t1 t2 ctx => Require (OpEq t1 t2) ctx Source # | |
Require (OpError ((Text "Empty " :<>: Text (ShowRec c)) :$$: Text " Required to be nonempty ")) ctx => Require (OpNonEmpty c ([] :: [(k, k')])) ctx Source # | |
Defined in Language.Grammars.AspectAG.GenRecord type ReqR (OpNonEmpty c []) :: Type Source # req :: Proxy ctx -> OpNonEmpty c [] -> ReqR (OpNonEmpty c []) Source # | |
Require (OpNonEmpty c ((,) l v ': r)) ctx Source # | |
Defined in Language.Grammars.AspectAG.GenRecord type ReqR (OpNonEmpty c ((l, v) ': r)) :: Type Source # req :: Proxy ctx -> OpNonEmpty c ((l, v) ': r) -> ReqR (OpNonEmpty c ((l, v) ': r)) Source # | |
Require (OpError ((Text "field not Found on " :<>: Text (ShowRec c)) :$$: ((Text "looking up the " :<>: Text (ShowField c)) :<>: ShowT l))) ctx => Require (OpLookup c l ([] :: [(k, k')])) ctx Source # | |
Require (OpLookup' (l == l') c l ((,) l' v ': r)) ctx => Require (OpLookup c l ((,) l' v ': r)) ctx Source # | |
(LabelSetF ((,) l v ': r) ~ b, Require (OpExtend' b c l v r) ctx) => Require (OpExtend c l v r) ctx Source # | |
Require (OpError ((Text "field not Found on " :<>: Text (ShowRec c)) :$$: ((Text "updating the " :<>: Text (ShowField c)) :<>: ShowT l))) ctx => Require (OpUpdate c l v ([] :: [(k, k')])) ctx Source # | |
Require (OpUpdate' (l == l') c l v ((,) l' v' ': r)) ctx => Require (OpUpdate c l v ((,) l' v' ': r)) ctx Source # | |
Require (OpLookup c l r) ctx => Require (OpLookup' False c l ((,) l' v ': r)) ctx Source # | |
Require (OpLookup' True c l ((,) l v ': r)) ctx Source # | |
Require (OpError ((Text "Duplicated Labels on " :<>: Text (ShowRec c)) :$$: ((Text "on the " :<>: Text (ShowField c)) :<>: ShowT l))) ctx => Require (OpExtend' False c l v r) ctx Source # | |
LabelSetF ((,) l v ': r) ~ True => Require (OpExtend' True c l v r) ctx Source # | |
(LabelSet ((,) l v ': r), LabelSet ((,) l v' ': r)) => Require (OpUpdate' True c l v ((,) l v' ': r)) ctx Source # | |
(Require (OpUpdate c l v r) ctx, (UnWrap (ReqR (OpUpdate c l v r)) :: [(k2, k1)]) ~ r0, LabelSet ((,) l' v' ': r0), ReqR (OpUpdate c l v r) ~ Rec c r0) => Require (OpUpdate' False c l v ((,) l' v' ': r)) ctx Source # | |
Require (OpComRA' (HasLabel prd a) ctx prd sc ip ic sp ic' sp' a) ctx => Require (OpComRA ctx prd sc ip ic sp ic' sp' a) ctx Source # | |
Require (OpExtend PrdReco prd (CRule ctx prd sc ip ic sp ic' sp') a) ctx => Require (OpComRA' False ctx prd sc ip ic sp ic' sp' a) ctx Source # | |
(Require (OpUpdate PrdReco prd (CRule ctx prd sc ip ic sp ic'' sp'') a) ctx, RequireR (OpLookup PrdReco prd a) ctx (CRule ctx prd sc ip ic sp ic' sp'), IC (ReqR (OpLookup PrdReco prd a)) ~ ic, SP (ReqR (OpLookup PrdReco prd a)) ~ sp) => Require (OpComRA' True ctx prd sc ip ic' sp' ic'' sp'' a) ctx Source # | |
data OpError (m :: ErrorMessage) Source #
type family ShowCTX (ctx :: [ErrorMessage]) :: ErrorMessage where ... Source #
type family ShowEM (m :: ErrorMessage) :: ErrorMessage Source #
type family ShowT (t :: k) :: ErrorMessage Source #
Instances
type ShowT (t :: Type) Source # | |
Defined in Language.Grammars.AspectAG.Require | |
type ShowT (T l :: T) Source # | |
type ShowT (NT l :: NT) Source # | |
type ShowT (Prd l nt :: Prod) Source # | |
type ShowT (Att l t :: Att) Source # | |
type ShowT (Chi l p s :: Child) Source # | |
type ShowT (Right r :: Either a k) Source # | |
Defined in Language.Grammars.AspectAG.RecordInstances | |
type ShowT (Left l :: Either k b) Source # | |
Defined in Language.Grammars.AspectAG.RecordInstances |
type RequireR (op :: Type) (ctx :: [ErrorMessage]) (res :: Type) = (Require op ctx, ReqR op ~ res) Source #
type RequireEq (t1 :: k) (t2 :: k) (ctx :: [ErrorMessage]) = (Require (OpEq t1 t2) ctx, t1 ~ t2) Source #
Instances
RequireEqRes t1 t2 ctx => Require (OpEq t1 t2) ctx Source # | |
type ReqR (OpEq t1 t2) Source # | |
Defined in Language.Grammars.AspectAG.Require |
type family RequireEqRes (t1 :: k) (t2 :: k) (ctx :: [ErrorMessage]) :: Constraint where ... Source #