@@ -82,18 +82,6 @@ instance HasDecoding 'PGTimestampTZ UTCTime where
82instance HasDecoding 'PGInterval DiffTime where
82instance HasDecoding 'PGInterval DiffTime where
83 decoding _ = Decoder.interval_int
83 decoding _ = Decoder.interval_int
87− :: AllZip HasEncoding xs pgs
92−encodings (_ :: proxy pgs) (I x :* xs) =
93− case (hpure Proxy :: NP Proxy pgs) of
94− proxy :* proxies -> undefined (encoding proxy x) : encodings proxies xs
98 :: AllZip HasDecoding pgs xs
86 :: AllZip HasDecoding pgs xs
99 => proxy pgs
87 => proxy pgs
@@ -104,17 +92,6 @@ decodings (_ :: proxy pgs) (K bytestring :* bytestrings) =
104 proxy :* proxies -> (:*)
92 proxy :* proxies -> (:*)
105 <$> (I <$> Decoder.valueParser (decoding proxy) bytestring)
93 <$> (I <$> Decoder.valueParser (decoding proxy) bytestring)
106 <*> decodings proxies bytestrings
94 <*> decodings proxies bytestrings
107−-- instance HasDecoding pg ty => HasDecoding (column ::: 'Required ('NotNull pg)) ty where
108−-- decoding _ = decoding (proxy# :: Proxy# pg)
110−-- class HasDecodings pgs xs where
111−-- decodeValues :: Proxy# pgs -> NP (K ByteString) xs -> NP (Either Text) xs
112−-- instance HasDecodings '[] '[] where decodeValues _ _ = Nil
113−-- instance (HasDecoding pg x, HasDecodings pgs xs)
114−-- => HasDecodings (pg ': pgs) (x ': xs) where
115−-- decodeValues _ (K result :* results) =
116−-- decodeValue (proxy# :: Proxy# pg) result
117−-- :* decodeValues (proxy# :: Proxy# pgs) results
119class HasEncoding x pg where
96class HasEncoding x pg where
120 encoding :: proxy pg -> x -> Encoder.Encoding
97 encoding :: proxy pg -> x -> Encoder.Encoding
@@ -171,37 +148,3 @@ encodings (_ :: proxy pgs) (I x :* xs) =
171 case (hpure Proxy :: NP Proxy pgs) of
148 case (hpure Proxy :: NP Proxy pgs) of
172 proxy :* proxies -> Encoder.encodingBytes (encoding proxy x)
149 proxy :* proxies -> Encoder.encodingBytes (encoding proxy x)
173 : encodings proxies xs
150 : encodings proxies xs
175−-- class HasEncodings xs pgs where
176−-- encodings :: Proxy# pgs -> NP I xs -> [ByteString]
177−-- instance HasEncodings '[] '[] where encodings _ _ = []
178−-- instance (HasEncoding x pg, HasEncodings xs pgs)
179−-- => HasEncodings (x ': xs) (pg ': pgs) where
180−-- encodings _ (I x :* xs)
181−-- = Encoder.encodingBytes ((encoding (proxy# :: Proxy# pg)) x)
182−-- : encodings (proxy# :: Proxy# pgs) xs
184−-- newtype Encoding x = Encoding { unEncoding :: x -> Encoder.Encoding }
185−-- class ToEncoding pg x where toEncoding :: Proxy pg -> Encoding x
188−-- :: AllZip ToEncoding pgs xs
191−-- toEncodings = \case
193−-- proxy :* proxies -> toEncoding proxy :* toEncodings proxies
195−-- encodeParameters' :: NP (Encoding :*: I) xs -> NP (K ByteString) xs
196−-- encodeParameters' = \case
198−-- (Encoding enc :*: I x) :* parameters ->
199−-- K (Encoder.encodingBytes (enc x)) :* encodeParameters' parameters
202−-- :: AllZip ToEncoding pgs xs
205−-- -> NP (K ByteString) xs
206−-- encodeParameters proxies parameters = encodeParameters' $
207−-- hzipWith (:*:) (toEncodings proxies) parameters