Safe Haskell | Safe-Inferred |
---|---|
Language | Haskell2010 |
Synopsis
- data OneOrMoreApp :: SetApp Type -> Type
- type Expandable f as as' = Expandable (f `Map` as) (f `Map` as')
- type Collapsable f as as' = Collapsable (f `Map` as) (f `Map` as')
- type Mergeable f as as' mrg = Mergeable (f `Map` as) (f `Map` as') (f `Map` mrg)
- pattern Singleton :: a -> OneOrMoreApp ('SetApp f (Singleton a))
- unSingleton :: OneOrMoreApp ('SetApp f (Singleton a)) -> a
- project :: Projectable as a => OneOrMoreApp ('SetApp f as) -> Maybe a
- (>-) :: Insertable a as as' => a -> OneOrMoreApp ('SetApp f as) -> OneOrMoreApp ('SetApp f as')
- expand :: Expandable as as' => OneOrMoreApp ('SetApp f as) -> OneOrMoreApp ('SetApp f as')
- collapse :: Collapsable as as' => OneOrMoreApp ('SetApp f as) -> Maybe (OneOrMoreApp ('SetApp f as'))
- merge :: Mergeable as as' mrg => OneOrMoreApp ('SetApp f as) -> OneOrMoreApp ('SetApp f as') -> OneOrMoreApp ('SetApp f mrg)
- merge' :: (Mergeable as as' mrg, Expandable as mrg, Expandable as' mrg) => Maybe (OneOrMoreApp ('SetApp f as)) -> Maybe (OneOrMoreApp ('SetApp f as')) -> Maybe (OneOrMoreApp ('SetApp f mrg))
Type
Constraint Synonym
type Expandable f as as' = Expandable (f `Map` as) (f `Map` as') Source #
type Collapsable f as as' = Collapsable (f `Map` as) (f `Map` as') Source #
Function
Single Type
pattern Singleton :: a -> OneOrMoreApp ('SetApp f (Singleton a)) Source #
unSingleton :: OneOrMoreApp ('SetApp f (Singleton a)) -> a Source #
Multiple Type
project :: Projectable as a => OneOrMoreApp ('SetApp f as) -> Maybe a Source #
(>-) :: Insertable a as as' => a -> OneOrMoreApp ('SetApp f as) -> OneOrMoreApp ('SetApp f as') Source #
Expand and Collapse
expand :: Expandable as as' => OneOrMoreApp ('SetApp f as) -> OneOrMoreApp ('SetApp f as') Source #
collapse :: Collapsable as as' => OneOrMoreApp ('SetApp f as) -> Maybe (OneOrMoreApp ('SetApp f as')) Source #
Merge
merge :: Mergeable as as' mrg => OneOrMoreApp ('SetApp f as) -> OneOrMoreApp ('SetApp f as') -> OneOrMoreApp ('SetApp f mrg) Source #
merge' :: (Mergeable as as' mrg, Expandable as mrg, Expandable as' mrg) => Maybe (OneOrMoreApp ('SetApp f as)) -> Maybe (OneOrMoreApp ('SetApp f as')) -> Maybe (OneOrMoreApp ('SetApp f mrg)) Source #