-- Hoogle documentation, generated by Haddock -- See Hoogle, http://www.haskell.org/hoogle/ -- | A direct-to-bytes single-pass JSON encoder with a declarative DSL -- -- A direct-to-bytes single-pass JSON encoder with a declarative DSL @package json-encoder @version 0.1.6 module JSONEncoder run :: Value a -> a -> Builder data Value a null :: Value () boolean :: Value Bool number_integral :: Integral a => Value a number_scientific :: Value Scientific string :: Value Text object :: Object a -> Value a array :: Array a -> Value a nullable :: Value a -> Value (Maybe a) data Object a field :: Text -> Value a -> Object a data Array a -- | A homogenous array. homo :: (forall a. (a -> b -> a) -> a -> c -> a) -> Value b -> Array c -- | A heterogenous array encoder. hetero :: Hetero a -> Array a data Hetero a element :: Value a -> Hetero a instance Data.Functor.Contravariant.Contravariant JSONEncoder.Hetero instance Data.Functor.Contravariant.Contravariant JSONEncoder.Array instance Data.Functor.Contravariant.Contravariant JSONEncoder.Object instance Data.Functor.Contravariant.Divisible.Decidable JSONEncoder.Value instance Data.Functor.Contravariant.Divisible.Divisible JSONEncoder.Value instance Data.Functor.Contravariant.Contravariant JSONEncoder.Value instance Data.Functor.Contravariant.Divisible.Divisible JSONEncoder.Object instance Data.Functor.Contravariant.Divisible.Decidable JSONEncoder.Object instance GHC.Base.Monoid (JSONEncoder.Object a) instance Data.Semigroup.Semigroup (JSONEncoder.Object a) instance Data.Functor.Contravariant.Divisible.Divisible JSONEncoder.Hetero instance Data.Functor.Contravariant.Divisible.Decidable JSONEncoder.Hetero instance GHC.Base.Monoid (JSONEncoder.Hetero a) instance Data.Semigroup.Semigroup (JSONEncoder.Hetero a)