@@ -49,18 +49,18 @@ class GHasPosition (i :: Nat) (s :: Type -> Type) (t :: Type -> Type) a b | s i
49type GHasPosition' i s a = GHasPosition i s s a a
49type GHasPosition' i s a = GHasPosition i s s a a
51instance (GHasPosition i l l' a b, GHasPosition i r r' a b) => GHasPosition i (l :+: r) (l' :+: r') a b where
51instance (GHasPosition i l l' a b, GHasPosition i r r' a b) => GHasPosition i (l :+: r) (l' :+: r') a b where
52− gposition = sumIso . choosing (gposition @i) (gposition @i)
52+ gposition = \x -> sumIso (choosing (gposition @i) (gposition @i) x)
53 {-# INLINE gposition #-}
53 {-# INLINE gposition #-}
55instance GHasPosition i s t a b => GHasPosition i (M1 D meta s) (M1 D meta t) a b where
55instance GHasPosition i s t a b => GHasPosition i (M1 D meta s) (M1 D meta t) a b where
56− gposition = mLens . gposition @i
56+ gposition x = mLens (gposition @i x)
57 {-# INLINE gposition #-}
57 {-# INLINE gposition #-}
60 ( IndexList (i - 1) as bs a b
60 ( IndexList (i - 1) as bs a b
61 , GIsList () f g as bs
61 , GIsList () f g as bs
62 ) => GHasPosition i (M1 C meta f) (M1 C meta g) a b where
62 ) => GHasPosition i (M1 C meta f) (M1 C meta g) a b where
63− gposition = mIso . glist @() . point @(i - 1)
63+ gposition x = mIso (glist @() (point @(i - 1) x))
64 {-# INLINE gposition #-}
64 {-# INLINE gposition #-}
66type family Size f :: Nat where
66type family Size f :: Nat where