diff --git a/gen/src/Gen/AST/Data.hs b/gen/src/Gen/AST/Data.hs index 2d1fa75b69f..8ad30bec44b 100644 --- a/gen/src/Gen/AST/Data.hs +++ b/gen/src/Gen/AST/Data.hs @@ -44,7 +44,6 @@ import Gen.AST.Data.Instance import Gen.AST.Data.Syntax import Gen.Formatting import Gen.Types -import Gen.Types.TypeOf import HIndent import Language.Haskell.Exts.Pretty import Language.Haskell.Exts.Syntax hiding (Int, List, Lit, Var) @@ -61,7 +60,7 @@ operationData cfg m o = do (xd, xs) <- prodData m xa x (yd, ys) <- prodData m ya y - is <- requestInsts m (_opName o) h xr xs + is <- instances xa <$> requestInsts m (_opName o) h xr xs cls <- pp Print $ requestD cfg m h (xr, is) (yr, ys) @@ -88,6 +87,10 @@ operationData cfg m o = do yr = o ^. opOutput . _Identity xn = identifier xr + instances s is + | isHashable s = IsHashable : is + | otherwise = is + shapeData :: HasMetadata a Identity => a -> Shape Solved