Documentation
type family f |> s :: * -> * infixr 5 Source
Append a new element to a union.
(@>) infixr 0 Source
Arguments
:: (f x -> r) | first case
|
-> (Union s x -> r) | otherwise
|
-> Union (f :> s) x -> r | matching function
|
Perform type-safe matching.
class f ∈ s infix 4 Source
Constraint f ∈ s
indicates that f
is an element of a type-level list s
.
Minimal complete definition
query
class s ⊆ t where infix 4 Source
Type-level inclusion characterized by reunion
.
Methods
reunion :: Union s a -> Union t a Source
Lift a union into equivalent or larger one, permuting elements if necessary.
Instances
(Empty (* -> *)) ⊆ t | Every set has an empty set as its subset.
|
((∈) (* -> *) f t, (⊆) s t) => ((:>) (* -> *) f s) ⊆ t | |