Type-level error.
Modulefirst-class-families-0.8.1.0Haskell2010
Fcf.Utils
Miscellaneous families.
- 10 types
- 1 class
- Packagefirst-class-families-0.8.1.0
- Exports13
- LanguageHaskell2010
- LicenceMIT
- SourceUtils.hs
TypeError as a fcf.
Conjunction of a list of constraints.
Instances2Eval
type Eval (Constraints '[]) = ()Defined in first-class-families-0.8.1.0 · Fcf.Utilstype Eval (Constraints (a ': as)) = (a, Eval (Constraints as))Defined in first-class-families-0.8.1.0 · Fcf.Utils
A stuck type that can be used like a type-level undefined.
(Limited) equivalent of \case { .. } syntax. Supports matching of exact
values (-->) and final matches for any value (Any) or for passing value
to subcomputation (Else). Examples:
type BoolToNat = Case
[ 'True --> 0
, 'False --> 1
]
type NatToBool = Case
[ 0 --> 'False
, Any 'True
]
type ZeroOneOrSucc = Case
[ 0 --> 0
, 1 --> 1
, Else ((+) 1)
]
Match concrete type in Case.
Match on predicate being successful with type in Case.
Match any type in Case. Should be used as a final branch.
Note: this identifier conflicts with Any (from Fcf.Class.Foldable) Any (from Data.Monoid), and Any (from GHC.Exts).
We recommend importing this one qualified.
Pass type being matched in Case to subcomputation. Should be used as a final branch.