Safe Haskell | Safe-Inferred |
---|---|
Language | Haskell2010 |
Synopsis
- class OverNewtype (current :: Type) (wrapped :: Maybe Type) (inner :: Type) | current -> inner where
- overNewtype :: (NonEmpty (Segment inner) -> inner) -> NonEmpty (Segment current) -> current
- class OverNewtypes (result :: Type) (inner :: Type) | result -> inner where
- overNewtypes :: (NonEmpty (Segment inner) -> inner) -> NonEmpty (Segment result) -> result
Documentation
class OverNewtype (current :: Type) (wrapped :: Maybe Type) (inner :: Type) | current -> inner where Source #
Internal auxiliary class that applies a function to the value inside of a nested chain of Generic
newtypes.
overNewtype :: (NonEmpty (Segment inner) -> inner) -> NonEmpty (Segment current) -> current Source #
Instances
OverNewtype current ('Nothing :: Maybe Type) current Source # | |
Defined in Exon.Class.Newtype | |
(OverNt current wrapped, IsNewtype wrapped next, OverNewtype wrapped next inner) => OverNewtype current ('Just wrapped) inner Source # | |
Defined in Exon.Class.Newtype |
class OverNewtypes (result :: Type) (inner :: Type) | result -> inner where Source #
Internal auxiliary class that applies a function to the value inside of a nested chain of Generic
newtypes.
The method only passes its arguments to overNewtypes
, but the class hides the intermediate parameter.
Instances
(IsNewtype result wrapped, OverNewtype result wrapped inner) => OverNewtypes result inner Source # | |
Defined in Exon.Class.Newtype |