singleton-bool-0.1.2.0: Type level booleans

Safe HaskellNone
LanguageHaskell2010

Data.Singletons.Bool

Contents

Synopsis

Documentation

data SBool b where Source #

Constructors

STrue :: SBool True 
SFalse :: SBool False 

class SBoolI b where Source #

Minimal complete definition

sbool

Methods

sbool :: SBool b Source #

Data.Type.Bool and .Equality

These are only defined with base >= 4.7

sboolAnd :: SBool a -> SBool b -> SBool (a && b) Source #

sboolOr :: SBool a -> SBool b -> SBool (a || b) Source #

eqToRefl :: (a == b) ~ True => a :~: b Source #

Since: 0.1.1.0

eqCast :: (a == b) ~ True => a -> b Source #

Since: 0.1.1.0

sboolEqRefl :: forall a b. SBoolI (a == b) => Maybe (a :~: b) Source #

Useful combination of sbool and eqToRefl

Since: 0.1.2.0

trivialRefl :: () :~: () Source #

Since: 0.1.1.0