Blame examples/Twitter/TH.hs

Packit 9a2dfb
-- Use Template Haskell to generate good instances.
Packit 9a2dfb
Packit 9a2dfb
{-# LANGUAGE CPP #-}
Packit 9a2dfb
{-# LANGUAGE TemplateHaskell #-}
Packit 9a2dfb
{-# OPTIONS_GHC -fno-warn-orphans #-}
Packit 9a2dfb
Packit 9a2dfb
#ifdef HAS_BOTH_AESON_AND_BENCHMARKS
Packit 9a2dfb
{-# LANGUAGE PackageImports #-}
Packit 9a2dfb
#endif
Packit 9a2dfb
Packit 9a2dfb
module Twitter.TH
Packit 9a2dfb
    (
Packit 9a2dfb
      Metadata(..)
Packit 9a2dfb
    , Geo(..)
Packit 9a2dfb
    , Story(..)
Packit 9a2dfb
    , Result(..)
Packit 9a2dfb
    ) where
Packit 9a2dfb
Packit 9a2dfb
import Prelude ()
Packit 9a2dfb
Packit 9a2dfb
import Twitter
Packit 9a2dfb
import Twitter.Options
Packit 9a2dfb
Packit 9a2dfb
#ifndef HAS_BOTH_AESON_AND_BENCHMARKS
Packit 9a2dfb
import Data.Aeson.TH
Packit 9a2dfb
#else
Packit 9a2dfb
import "aeson" Data.Aeson.TH
Packit 9a2dfb
import qualified "aeson-benchmarks" Data.Aeson.TH as B
Packit 9a2dfb
#endif
Packit 9a2dfb
Packit 9a2dfb
$(deriveJSON twitterOptions ''Metadata)
Packit 9a2dfb
$(deriveJSON twitterOptions ''Geo)
Packit 9a2dfb
$(deriveJSON twitterOptions ''Story)
Packit 9a2dfb
$(deriveJSON twitterOptions ''Result)
Packit 9a2dfb
Packit 9a2dfb
#ifdef HAS_BOTH_AESON_AND_BENCHMARKS
Packit 9a2dfb
$(B.deriveJSON btwitterOptions ''Metadata)
Packit 9a2dfb
$(B.deriveJSON btwitterOptions ''Geo)
Packit 9a2dfb
$(B.deriveJSON btwitterOptions ''Story)
Packit 9a2dfb
$(B.deriveJSON btwitterOptions ''Result)
Packit 9a2dfb
#endif