| type-int-0.4: Type Level 2s- and 16s- Complement Integers | Contents | Index |
|
Data.Type.Boolean | Portability | non-portable (FD and MPTC. no constructor data types) | Stability | experimental | Maintainer | Edward Kmett <ekmett@gmail.com> |
|
|
|
Description |
Simple closed type-level booleans.
|
|
Synopsis |
|
|
|
Documentation |
|
class TCBool Closure x => TBool x |
...and every boolean is in that set.
This lets us avoid carrying the closure parameter around
| | Instances | |
|
|
data F |
Instances | |
|
|
data T |
Instances | |
|
|
tT :: T |
|
tF :: F |
|
class TAnd a b c | a b -> c |
Type-Level a and b = c
| | Instances | |
|
|
class TOr a b c | a b -> c |
Type-Level a or b = c
| | Instances | |
|
|
class TNot a b | a -> b, b -> a |
Type-Level: not a
| | Instances | |
|
|
class (TXOr' a b c, TXOr' b c a, TXOr' c a b) => TXOr a b c | a b -> c, a c -> b, b c -> a |
implemented this way rather than directly so that Binary can extend it properly.
otherwise the normal form restriction makes that nigh impossible.
| | Instances | |
|
|
class TXOr' a b c | a b -> c |
Type-Level: a xor b = c
| | Instances | |
|
|
class TImplies a b c | a b -> c |
Type-Level: a implies b = c
| | Instances | |
|
|
class TIf t x y z | t x y -> z where |
Type-Level: if t then x else y
| | Methods | | | Instances | |
|
|
tAnd :: TAnd a b c => a -> b -> c |
|
tOr :: TOr a b c => a -> b -> c |
|
tNot :: TNot a b => a -> b |
|
tXOr :: TXOr a b c => a -> b -> c |
|
tXOr' :: TXOr' a b c => a -> b -> c |
|
tImplies :: TImplies a b c => a -> b -> c |
|
tIf :: TIf t x y z => t -> x -> y -> z |
|
Produced by Haddock version 0.8 |