@@ -57,15 +57,18 @@ class GSplash (sub :: Type -> Type) (sup :: Type -> Type) where
5757instance (GSplash a sup, GSplash b sup) => GSplash (a :+: b) sup where
5858 _GSplash (L1 rep) = _GSplash rep
5959 _GSplash (R1 rep) = _GSplash rep
60+ {-# INLINE[0] _GSplash #-}
6061
6162instance
6263 ( GIsList () subf subf as as
6364 , GAsType supf as
6465 ) => GSplash (C1 meta subf) supf where
6566 _GSplash p = build ((_GTyped . fromIso (glist @()) . fromIso mIso)) p
67+ {-# INLINE[0] _GSplash #-}
6668
6769instance GSplash sub sup => GSplash (D1 c sub) sup where
6870 _GSplash (M1 m) = _GSplash m
71+ {-# INLINE[0] _GSplash #-}
6972
7073--------------------------------------------------------------------------------
7174
@@ -79,6 +82,7 @@ instance
7982 _GDowncast (M1 m) = case _GDowncastC @(HasPartialTypeP as sub) m of
8083 Left _ -> Left (M1 m)
8184 Right r -> Right r
85+ {-# INLINE[0] _GDowncast #-}
8286
8387instance (GDowncast sub l, GDowncast sub r) => GDowncast sub (l :+: r) where
8488 _GDowncast (L1 x) = case _GDowncast x of
@@ -87,22 +91,25 @@ instance (GDowncast sub l, GDowncast sub r) => GDowncast sub (l :+: r) where
8791 _GDowncast (R1 x) = case _GDowncast x of
8892 Left _ -> Left (R1 x)
8993 Right r -> Right r
94+ {-# INLINE[0] _GDowncast #-}
9095
9196instance GDowncast sub sup => GDowncast sub (D1 m sup) where
9297 _GDowncast (M1 m) = case _GDowncast m of
9398 Left _ -> Left (M1 m)
9499 Right r -> Right r
100+ {-# INLINE[0] _GDowncast #-}
95101
96102class GDowncastC (contains :: Bool) sub sup where
97103 _GDowncastC :: sup x -> Either (sup x) (sub x)
98104
99105instance GDowncastC 'False sub sup where
100106 _GDowncastC sup = Left sup
107+ {-# INLINE[0] _GDowncastC #-}
101108
102109instance
103110 ( GAsType sub subl
104111 , GIsList () sup sup subl subl
105112 ) => GDowncastC 'True sub sup where
106113 _GDowncastC sup = Right (build (_GTyped . fromIso (glist @())) sup)
107− {-# INLINE _GDowncastC #-}
114+ {-# INLINE[0] _GDowncastC #-}
108115