1
1
mirror of https://github.com/github/semantic.git synced 2024-12-19 12:51:52 +03:00

Simplify a context.

This commit is contained in:
Rob Rix 2018-03-23 20:20:01 -04:00
parent 2cce44a9ec
commit ce8a3a6d5d

View File

@ -109,14 +109,7 @@ instance Evaluatable s => Evaluatable (TermF s a) where
class MonadAnalysis term value m => MonadEvaluateModule term value m where
evaluateModule :: Module term -> m value
instance ( Evaluatable (Base term)
, FreeVariables term
, MonadAddressable (LocationFor value) value m
, MonadAnalysis term value m
, MonadValue value m
, Show (LocationFor value)
, MonadThrow Prelude.String value m
)
instance (MonadAnalysis term value m, MonadEvaluatable term value m, Evaluatable (Base term))
=> MonadEvaluateModule term value m where
evaluateModule m = analyzeModule (subtermValue . moduleBody) (fmap (Subterm <*> evaluateTerm) m :: Module (Subterm term (m value)))