module GHC.JustDoIt.Solver ( solve ) where import Type import CoreSyn import GHC.LJT import Data.Maybe -- | Central place to plug additional solvers in. For now, we just do "GHC.LJT" solve :: Type -> Maybe CoreExpr solve :: Type -> Maybe CoreExpr solve = [CoreExpr] -> Maybe CoreExpr forall a. [a] -> Maybe a listToMaybe ([CoreExpr] -> Maybe CoreExpr) -> (Type -> [CoreExpr]) -> Type -> Maybe CoreExpr forall b c a. (b -> c) -> (a -> b) -> a -> c . Type -> [CoreExpr] ljt