defun-core-0.1: Defunctionalization helpers: core definitions
Safe HaskellTrustworthy
LanguageHaskell2010

DeFun.Bool

Description

Boolean functions.

Type families are defined in Data.Type.Bool module in base package. For term-level reflections see defun-bool package.

Synopsis

Logical and

type LAnd x y = x && y Source #

Logical and. A synonym of &&

data LAndSym x Source #

Instances

Instances details
type App LAndSym (x :: Bool) Source # 
Instance details

Defined in DeFun.Bool

type App LAndSym (x :: Bool) = LAndSym1 x

data LAndSym1 x y Source #

Instances

Instances details
type App (LAndSym1 x :: FunKind Bool Bool -> Type) (y :: Bool) Source # 
Instance details

Defined in DeFun.Bool

type App (LAndSym1 x :: FunKind Bool Bool -> Type) (y :: Bool) = LAnd x y

Logical or

type LOr x y = x || y Source #

Logical or. A synonym of ||

data LOrSym x Source #

Instances

Instances details
type App LOrSym (x :: Bool) Source # 
Instance details

Defined in DeFun.Bool

type App LOrSym (x :: Bool) = LOrSym1 x

data LOrSym1 x y Source #

Instances

Instances details
type App (LOrSym1 x :: FunKind Bool Bool -> Type) (y :: Bool) Source # 
Instance details

Defined in DeFun.Bool

type App (LOrSym1 x :: FunKind Bool Bool -> Type) (y :: Bool) = LOr x y

Logical not

type family Not (a :: Bool) = (res :: Bool) | res -> a where ... #

Type-level "not". An injective type family since 4.10.0.0.

Since: base-4.7.0.0

Equations

Not 'False = 'True 
Not 'True = 'False 

data NotSym x Source #

Logical not.

Instances

Instances details
type App NotSym (x :: Bool) Source # 
Instance details

Defined in DeFun.Bool

type App NotSym (x :: Bool) = Not x