helium-1.8: The Helium Compiler.

Safe HaskellNone
LanguageHaskell98

Helium.StaticAnalysis.Heuristics.UnifierHeuristics

Description

A heuristic that tries to blaim two program locations that both contribute to the type error, instead of preferring (or choosing) one location over the other. The type error messages will be more "symmetric".

Documentation

class IsUnifier a where Source

Methods

typeErrorForUnifier :: (Tp, Tp) -> (a, a) -> a Source

isUnifier :: a -> Maybe (Int, (String, LocalInfo, String)) Source

unifierVertex :: (HasTypeGraph m info, IsUnifier info) => Selector m info Source