type-tree-0.2.0.0: src/Language/Haskell/TypeTree/ExampleDatatypes.hs
module Language.Haskell.TypeTree.ExampleDatatypes where
import Prelude
data CondTree v c a = CondNode
{ condTreeData :: a
, condTreeConstraints :: c
, condTreeComponents :: [CondBranch v c a]
}
data CondBranch v c a = CondBranch
{ condBranchCondition :: Condition v
, condBranchIfTrue :: CondTree v c a
, condBranchIfFalse :: Maybe (CondTree v c a)
}
data Condition c
= Var c
| Lit Bool
| CAnd (Condition c)
(Condition c)