Safe Haskell | None |
---|---|
Language | Haskell2010 |
Synopsis
- type SourceKind = Kind SourceAnn
- data Kind a
- srcKUnknown :: Int -> SourceKind
- srcRow :: SourceKind -> SourceKind
- srcFunKind :: SourceKind -> SourceKind -> SourceKind
- srcNamedKind :: Qualified (ProperName KindName) -> SourceKind
- kindToJSON :: forall a. (a -> Value) -> Kind a -> Value
- kindFromJSON :: forall a. Parser a -> (Value -> Parser a) -> Value -> Parser (Kind a)
- everywhereOnKinds :: (Kind a -> Kind a) -> Kind a -> Kind a
- everywhereOnKindsM :: Monad m => (Kind a -> m (Kind a)) -> Kind a -> m (Kind a)
- everythingOnKinds :: (r -> r -> r) -> (Kind a -> r) -> Kind a -> r
- annForKind :: Lens' (Kind a) a
- getAnnForKind :: Kind a -> a
- setAnnForKind :: a -> Kind a -> Kind a
- eqKind :: Kind a -> Kind b -> Bool
- eqMaybeKind :: Maybe (Kind a) -> Maybe (Kind b) -> Bool
- compareKind :: Kind a -> Kind b -> Ordering
- compareMaybeKind :: Maybe (Kind a) -> Maybe (Kind b) -> Ordering
Documentation
type SourceKind = Kind SourceAnn Source #
The data type of kinds
KUnknown a Int | Unification variable of type Kind |
Row a (Kind a) | Kinds for labelled, unordered rows without duplicates |
FunKind a (Kind a) (Kind a) | Function kinds |
NamedKind a (Qualified (ProperName KindName)) | A named kind |
Instances
srcKUnknown :: Int -> SourceKind Source #
srcRow :: SourceKind -> SourceKind Source #
srcFunKind :: SourceKind -> SourceKind -> SourceKind Source #
srcNamedKind :: Qualified (ProperName KindName) -> SourceKind Source #
everythingOnKinds :: (r -> r -> r) -> (Kind a -> r) -> Kind a -> r Source #
annForKind :: Lens' (Kind a) a Source #
getAnnForKind :: Kind a -> a Source #
setAnnForKind :: a -> Kind a -> Kind a Source #