@@ -61,9 +61,10 @@ import Prelude.Compat
62import Control.Applicative (Const(..))
62import Control.Applicative (Const(..))
63import Control.Monad.ST (ST)
63import Control.Monad.ST (ST)
64−import Data.Aeson.Encoding.Internal ((>*<), (><), Encoding, Encoding', Series, dict, emptyArray_, tuple)
64+import Data.Aeson.Encoding (Encoding, Encoding', Series, dict, emptyArray_)
65+import Data.Aeson.Encoding.Internal ((>*<), (><), tuple)
65import Data.Aeson.Internal.Functions (mapHashKeyVal, mapKeyVal)
66import Data.Aeson.Internal.Functions (mapHashKeyVal, mapKeyVal)
66−import Data.Aeson.Types.Generic
67+import Data.Aeson.Types.Generic (AllNullary, False, IsRecord(..), One, ProductSize, Tagged2(..), True, Zero, productSize)
67import Data.Aeson.Types.Internal
68import Data.Aeson.Types.Internal
68import Data.Attoparsec.Number (Number(..))
69import Data.Attoparsec.Number (Number(..))
69import Data.Bits (unsafeShiftR)
70import Data.Bits (unsafeShiftR)
@@ -92,8 +93,9 @@ import Data.Word (Word16, Word32, Word64, Word8)
92import Foreign.Storable (Storable)
93import Foreign.Storable (Storable)
93import GHC.Generics
94import GHC.Generics
94import Numeric.Natural (Natural)
95import Numeric.Natural (Natural)
96+import qualified Data.Aeson.Encoding as E
95-- We need internal here for generic deriving
97-- We need internal here for generic deriving
96−import qualified Data.Aeson.Encoding.Internal as E
98+import qualified Data.Aeson.Encoding.Internal as E (InArray, closeCurly, colon, comma, econcat, empty, openCurly, retagEncoding, tuple, wrapObject)
97import qualified Data.ByteString as S
99import qualified Data.ByteString as S
98import qualified Data.ByteString.Lazy as L
100import qualified Data.ByteString.Lazy as L
99import qualified Data.DList as DList
101import qualified Data.DList as DList