@@ -114,7 +114,8 @@ instance ClientLike client custom
114instance ClientLike (ClientM a) (ClientM a) where
114instance ClientLike (ClientM a) (ClientM a) where
115 mkClient = id
115 mkClient = id
117−-- GClientLikeP
117+-- | Match client structure with client functions, regarding left-nested API clients
118+-- as separate data structures.
118class GClientLikeP client xs where
119class GClientLikeP client xs where
119 gMkClientP :: client -> NP I xs
120 gMkClientP :: client -> NP I xs
@@ -125,7 +126,8 @@ instance (GClientLikeP b (y ': xs), ClientLike a x)
125instance ClientLike a x => GClientLikeP a '[x] where
126instance ClientLike a x => GClientLikeP a '[x] where
126 gMkClientP a = I (mkClient a) :* Nil
127 gMkClientP a = I (mkClient a) :* Nil
128−-- GClientLikeL
129+-- | Match client structure with client functions, expanding left-nested API clients
130+-- in the same structure.
129class GClientLikeL (xs :: [*]) (ys :: [*]) where
131class GClientLikeL (xs :: [*]) (ys :: [*]) where
130 gMkClientL :: NP I xs -> NP I ys
132 gMkClientL :: NP I xs -> NP I ys