 | 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 |