@@ -79,6 +79,7 @@ everywhereOnValues f g h = (f', g', h')
79 h' (ArrayBinder bs) = h (ArrayBinder (map h' bs))
79 h' (ArrayBinder bs) = h (ArrayBinder (map h' bs))
80 h' (NamedBinder name b) = h (NamedBinder name (h' b))
80 h' (NamedBinder name b) = h (NamedBinder name (h' b))
81 h' (PositionedBinder pos com b) = h (PositionedBinder pos com (h' b))
81 h' (PositionedBinder pos com b) = h (PositionedBinder pos com (h' b))
82+ h' (TypedBinder t b) = h (TypedBinder t (h' b))
82 h' other = h other
83 h' other = h other
84 handleCaseAlternative :: CaseAlternative -> CaseAlternative
85 handleCaseAlternative :: CaseAlternative -> CaseAlternative
@@ -135,6 +136,7 @@ everywhereOnValuesTopDownM f g h = (f' <=< f, g' <=< g, h' <=< h)
135 h' (ArrayBinder bs) = ArrayBinder <$> mapM (h' <=< h) bs
136 h' (ArrayBinder bs) = ArrayBinder <$> mapM (h' <=< h) bs
136 h' (NamedBinder name b) = NamedBinder name <$> (h b >>= h')
137 h' (NamedBinder name b) = NamedBinder name <$> (h b >>= h')
137 h' (PositionedBinder pos com b) = PositionedBinder pos com <$> (h b >>= h')
138 h' (PositionedBinder pos com b) = PositionedBinder pos com <$> (h b >>= h')
139+ h' (TypedBinder t b) = TypedBinder t <$> (h b >>= h')
138 h' other = h other
140 h' other = h other
140 handleCaseAlternative (CaseAlternative bs val) = CaseAlternative <$> mapM (h' <=< h) bs
142 handleCaseAlternative (CaseAlternative bs val) = CaseAlternative <$> mapM (h' <=< h) bs
@@ -187,6 +189,7 @@ everywhereOnValuesM f g h = (f', g', h')
187 h' (ArrayBinder bs) = (ArrayBinder <$> mapM h' bs) >>= h
189 h' (ArrayBinder bs) = (ArrayBinder <$> mapM h' bs) >>= h
188 h' (NamedBinder name b) = (NamedBinder name <$> h' b) >>= h
190 h' (NamedBinder name b) = (NamedBinder name <$> h' b) >>= h
189 h' (PositionedBinder pos com b) = (PositionedBinder pos com <$> h' b) >>= h
191 h' (PositionedBinder pos com b) = (PositionedBinder pos com <$> h' b) >>= h
192+ h' (TypedBinder t b) = (TypedBinder t <$> h' b) >>= h
190 h' other = h other
193 h' other = h other
192 handleCaseAlternative (CaseAlternative bs val) = CaseAlternative <$> mapM h' bs
195 handleCaseAlternative (CaseAlternative bs val) = CaseAlternative <$> mapM h' bs
@@ -242,6 +245,7 @@ everythingOnValues (<>) f g h i j = (f', g', h', i', j')
242 h' b@(ArrayBinder bs) = foldl (<>) (h b) (map h' bs)
245 h' b@(ArrayBinder bs) = foldl (<>) (h b) (map h' bs)
243 h' b@(NamedBinder _ b1) = h b <> h' b1
246 h' b@(NamedBinder _ b1) = h b <> h' b1
244 h' b@(PositionedBinder _ _ b1) = h b <> h' b1
247 h' b@(PositionedBinder _ _ b1) = h b <> h' b1
248+ h' b@(TypedBinder _ b1) = h b <> h' b1
245 h' b = h b
249 h' b = h b
247 i' ca@(CaseAlternative bs (Right val)) = foldl (<>) (i ca) (map h' bs) <> g' val
251 i' ca@(CaseAlternative bs (Right val)) = foldl (<>) (i ca) (map h' bs) <> g' val
@@ -310,6 +314,7 @@ everythingWithContextOnValues s0 r0 (<>) f g h i j = (f'' s0, g'' s0, h'' s0, i'
310 h' s (ArrayBinder bs) = foldl (<>) r0 (map (h'' s) bs)
314 h' s (ArrayBinder bs) = foldl (<>) r0 (map (h'' s) bs)
311 h' s (NamedBinder _ b1) = h'' s b1
315 h' s (NamedBinder _ b1) = h'' s b1
312 h' s (PositionedBinder _ _ b1) = h'' s b1
316 h' s (PositionedBinder _ _ b1) = h'' s b1
317+ h' s (TypedBinder _ b1) = h'' s b1
313 h' _ _ = r0
318 h' _ _ = r0
315 i'' s ca = let (s', r) = i s ca in r <> i' s' ca
320 i'' s ca = let (s', r) = i s ca in r <> i' s' ca
@@ -379,6 +384,7 @@ everywhereWithContextOnValuesM s0 f g h i j = (f'' s0, g'' s0, h'' s0, i'' s0, j
379 h' s (ArrayBinder bs) = ArrayBinder <$> mapM (h'' s) bs
384 h' s (ArrayBinder bs) = ArrayBinder <$> mapM (h'' s) bs
380 h' s (NamedBinder name b) = NamedBinder name <$> h'' s b
385 h' s (NamedBinder name b) = NamedBinder name <$> h'' s b
381 h' s (PositionedBinder pos com b) = PositionedBinder pos com <$> h'' s b
386 h' s (PositionedBinder pos com b) = PositionedBinder pos com <$> h'' s b
387+ h' s (TypedBinder t b) = TypedBinder t <$> h'' s b
382 h' _ other = return other
388 h' _ other = return other
384 i'' s = uncurry i' <=< i s
390 i'' s = uncurry i' <=< i s