syntactic-1.0: Language/Syntactic/Constructs/Identity.hs
-- | Identity function
module Language.Syntactic.Constructs.Identity where
import Language.Syntactic
-- | Identity function
data Identity sig
where
Id :: Identity (a :-> Full a)
instance Constrained Identity
where
type Sat Identity = Top
exprDict _ = Dict
instance Semantic Identity
where
semantics Id = Sem "id" id
instance Equality Identity where equal = equalDefault; exprHash = exprHashDefault
instance Render Identity where renderArgs = renderArgsDefault
instance Eval Identity where evaluate = evaluateDefault
instance ToTree Identity