{-# LANGUAGE TemplateHaskell, TypeSynonymInstances, FlexibleInstances #-} module Scion.Browser.Instances.NFData where import Control.DeepSeq import Data.DeriveTH import Distribution.Package hiding (Package) import Distribution.Version import Language.Haskell.Exts.Annotated.Syntax import Scion.Browser.Types $( derive makeNFData ''Doc ) $( derive makeNFData ''Package ) $( derive makeNFData ''PackageIdentifier ) $( derive makeNFData ''PackageName ) $( derive makeNFData ''Version ) -- derive NFData instances for haskell-src-exts $( derive makeNFData ''Module ) $( derive makeNFData ''ModuleHead ) $( derive makeNFData ''WarningText ) $( derive makeNFData ''ExportSpecList ) $( derive makeNFData ''ExportSpec ) $( derive makeNFData ''ImportDecl ) $( derive makeNFData ''ImportSpecList ) $( derive makeNFData ''ImportSpec ) $( derive makeNFData ''Assoc ) $( derive makeNFData ''Decl ) $( derive makeNFData ''DeclHead ) $( derive makeNFData ''InstHead ) $( derive makeNFData ''Binds ) $( derive makeNFData ''IPBind ) $( derive makeNFData ''ClassDecl ) $( derive makeNFData ''InstDecl ) $( derive makeNFData ''Deriving ) $( derive makeNFData ''DataOrNew ) $( derive makeNFData ''ConDecl ) $( derive makeNFData ''FieldDecl ) $( derive makeNFData ''QualConDecl ) $( derive makeNFData ''GadtDecl ) $( derive makeNFData ''BangType ) $( derive makeNFData ''Match ) $( derive makeNFData ''Rhs ) $( derive makeNFData ''GuardedRhs ) $( derive makeNFData ''Context ) $( derive makeNFData ''FunDep ) $( derive makeNFData ''Asst ) $( derive makeNFData ''Type ) $( derive makeNFData ''Boxed ) $( derive makeNFData ''Kind ) $( derive makeNFData ''TyVarBind ) $( derive makeNFData ''Exp ) $( derive makeNFData ''Stmt ) $( derive makeNFData ''QualStmt ) $( derive makeNFData ''FieldUpdate ) $( derive makeNFData ''Alt ) $( derive makeNFData ''GuardedAlts ) $( derive makeNFData ''GuardedAlt ) $( derive makeNFData ''XAttr ) $( derive makeNFData ''Pat ) $( derive makeNFData ''PatField ) $( derive makeNFData ''PXAttr ) $( derive makeNFData ''RPat ) $( derive makeNFData ''RPatOp ) $( derive makeNFData ''Literal ) $( derive makeNFData ''ModuleName ) $( derive makeNFData ''QName ) $( derive makeNFData ''Name ) $( derive makeNFData ''QOp ) $( derive makeNFData ''Op ) $( derive makeNFData ''SpecialCon ) $( derive makeNFData ''CName ) $( derive makeNFData ''IPName ) $( derive makeNFData ''XName ) $( derive makeNFData ''Bracket ) $( derive makeNFData ''Splice ) $( derive makeNFData ''Safety ) $( derive makeNFData ''CallConv ) $( derive makeNFData ''ModulePragma ) $( derive makeNFData ''Tool ) $( derive makeNFData ''Rule ) $( derive makeNFData ''RuleVar ) $( derive makeNFData ''Activation ) $( derive makeNFData ''Annotation )