Safe Haskell | None |
---|---|
Language | Haskell2010 |
- data Union as where
- exhaust :: Union [] -> a
- type family All ca as :: Constraint
- (||>) :: (a -> r) -> (Union as -> r) -> Union (a : as) -> r
- data Position a as where
- class Member a as | as -> a where
- liftU :: forall a as. Member a as => a -> Union as
- picked :: forall a as f. (Applicative f, Member a as) => (a -> f a) -> Union as -> f (Union as)
- retractU :: Member a as => Union as -> Maybe a
- hoistU :: Member a as => (a -> a) -> Union as -> Union as
- newtype Id a = Id {
- getId :: a
- class Include as bs where
- type (∈) a as = Member a as
- type (⊆) as bs = Include as bs
- type (=) as bs = (Include as bs, Include bs as)
Documentation
type family All ca as :: Constraint Source
picked :: forall a as f. (Applicative f, Member a as) => (a -> f a) -> Union as -> f (Union as) Source
Traversal for a specific element.