Safe Haskell | None |
---|---|
Language | Haskell98 |
Type class entailment
- entails :: forall m. (Functor m, Applicative m, MonadError MultipleErrors m, MonadWriter MultipleErrors m) => ModuleName -> Map (Maybe ModuleName) (Map (Qualified (ProperName ClassName)) (Map (Qualified Ident) TypeClassDictionaryInScope)) -> Constraint -> m Expr
Documentation
entails :: forall m. (Functor m, Applicative m, MonadError MultipleErrors m, MonadWriter MultipleErrors m) => ModuleName -> Map (Maybe ModuleName) (Map (Qualified (ProperName ClassName)) (Map (Qualified Ident) TypeClassDictionaryInScope)) -> Constraint -> m Expr Source
Check that the current set of type class dictionaries entail the specified type class goal, and, if so, return a type class dictionary reference.