typecheck-plugin-nat-simple-0.1.0.9: Simple type check plugin which calculate addition, subtraction and less-or-equal-than
Safe HaskellNone
LanguageHaskell2010

Data.Derivation.Expression

Contents

Synopsis

DATA EXP

data Exp v (t :: ExpType) where Source #

Constructors

Bool :: forall v. Bool -> Exp v 'Boolean 
Var :: forall v (t :: ExpType). v -> Exp v t 
Const :: forall v. Integer -> Exp v 'Number 
(:==) :: forall v (t1 :: ExpType). Exp v t1 -> Exp v t1 -> Exp v 'Boolean 
(:<=) :: forall v. Exp v 'Number -> Exp v 'Number -> Exp v 'Boolean 
(:+) :: forall v. Exp v 'Number -> Exp v 'Number -> Exp v 'Number 
(:-) :: forall v. Exp v 'Number -> Exp v 'Number -> Exp v 'Number 

Instances

Instances details
IsString s => Loggable s v (Exp v t) Source # 
Instance details

Defined in Data.Derivation.Expression.Internal

Methods

log :: Exp v t -> Log s v Source #

Show v => Show (Exp v t) Source # 
Instance details

Defined in Data.Derivation.Expression.Internal

Methods

showsPrec :: Int -> Exp v t -> ShowS #

show :: Exp v t -> String #

showList :: [Exp v t] -> ShowS #

Outputable v => Outputable (Exp v t) Source # 
Instance details

Defined in Data.Derivation.Expression.Internal

Methods

ppr :: Exp v t -> SDoc #

data ExpType Source #

Constructors

Boolean 
Number 

Instances

Instances details
Show ExpType Source # 
Instance details

Defined in Data.Derivation.Expression.Internal