GenericPackageDescription { packageDescription = PackageDescription { specVersion = CabalSpecV1_10, package = PackageIdentifier { pkgName = PackageName "generics-sop", pkgVersion = mkVersion [0, 3, 1, 0]}, licenseRaw = Right BSD3, licenseFiles = [ SymbolicPath "LICENSE"], copyright = "", maintainer = "andres@well-typed.com", author = "Edsko de Vries , Andres L\246h ", stability = "", testedWith = [ _×_ GHC (ThisVersion (mkVersion [7, 8, 4])), _×_ GHC (ThisVersion (mkVersion [7, 10, 3])), _×_ GHC (ThisVersion (mkVersion [8, 0, 1])), _×_ GHC (ThisVersion (mkVersion [8, 0, 2])), _×_ GHC (ThisVersion (mkVersion [8, 2, 1])), _×_ GHC (IntersectVersionRanges (OrLaterVersion (mkVersion [8, 3])) (EarlierVersion (mkVersion [8, 4])))], homepage = "", pkgUrl = "", bugReports = "", sourceRepos = [ SourceRepo { repoKind = RepoHead, repoType = Just (KnownRepoType Git), repoLocation = Just "https://github.com/well-typed/generics-sop", repoModule = Nothing, repoBranch = Nothing, repoTag = Nothing, repoSubdir = Nothing}], synopsis = "Generic Programming using True Sums of Products", description = concat [ "A library to support the definition of generic functions.\n", "Datatypes are viewed in a uniform, structured way:\n", "the choice between constructors is represented using an n-ary\n", "sum, and the arguments of each constructor are represented using\n", "an n-ary product.\n", "\n", "The module \"Generics.SOP\" is the main module of this library and contains\n", "more detailed documentation.\n", "\n", "Examples of using this library are provided by the following\n", "packages:\n", "\n", "* @@ basic examples,\n", "\n", "* @@ generic pretty printing,\n", "\n", "* @@ generically computed lenses,\n", "\n", "* @@ generic JSON conversions.\n", "\n", "A detailed description of the ideas behind this library is provided by\n", "the paper:\n", "\n", "* Edsko de Vries and Andres L\246h.\n", ".\n", "Workshop on Generic Programming (WGP) 2014.\n"], category = "Generics", customFieldsPD = [], buildTypeRaw = Just Custom, setupBuildInfo = Just SetupBuildInfo { setupDepends = [ Dependency (PackageName "base") (OrLaterVersion (mkVersion [0])) mainLibSet, Dependency (PackageName "Cabal") (OrLaterVersion (mkVersion [0])) mainLibSet, Dependency (PackageName "cabal-doctest") (IntersectVersionRanges (OrLaterVersion (mkVersion [1, 0, 2])) (EarlierVersion (mkVersion [1, 1]))) mainLibSet], defaultSetupDepends = False}, library = Nothing, subLibraries = [], executables = [], foreignLibs = [], testSuites = [], benchmarks = [], dataFiles = [], dataDir = ".", extraSrcFiles = [ "CHANGELOG.md"], extraTmpFiles = [], extraDocFiles = []}, gpdScannedVersion = Nothing, genPackageFlags = [], condLibrary = Just CondNode { condTreeData = Library { libName = LMainLibName, exposedModules = [ ModuleName "Generics.SOP", ModuleName "Generics.SOP.GGP", ModuleName "Generics.SOP.TH", ModuleName "Generics.SOP.Dict", ModuleName "Generics.SOP.Type.Metadata", ModuleName "Generics.SOP.BasicFunctors", ModuleName "Generics.SOP.Classes", ModuleName "Generics.SOP.Constraint", ModuleName "Generics.SOP.Instances", ModuleName "Generics.SOP.Metadata", ModuleName "Generics.SOP.NP", ModuleName "Generics.SOP.NS", ModuleName "Generics.SOP.Universe", ModuleName "Generics.SOP.Sing"], reexportedModules = [], signatures = [], libExposed = True, libVisibility = LibraryVisibilityPublic, libBuildInfo = BuildInfo { buildable = True, buildTools = [], buildToolDepends = [], cppOptions = [], asmOptions = [], cmmOptions = [], ccOptions = [], cxxOptions = [], ldOptions = [], hsc2hsOptions = [], pkgconfigDepends = [], frameworks = [], extraFrameworkDirs = [], asmSources = [], cmmSources = [], cSources = [], cxxSources = [], jsSources = [], hsSourceDirs = [ SymbolicPath "src"], otherModules = [], virtualModules = [], autogenModules = [], defaultLanguage = Just Haskell2010, otherLanguages = [], defaultExtensions = [ EnableExtension CPP, EnableExtension ScopedTypeVariables, EnableExtension TypeFamilies, EnableExtension RankNTypes, EnableExtension TypeOperators, EnableExtension GADTs, EnableExtension ConstraintKinds, EnableExtension MultiParamTypeClasses, EnableExtension TypeSynonymInstances, EnableExtension FlexibleInstances, EnableExtension FlexibleContexts, EnableExtension DeriveFunctor, EnableExtension DeriveFoldable, EnableExtension DeriveTraversable, EnableExtension DefaultSignatures, EnableExtension KindSignatures, EnableExtension DataKinds, EnableExtension FunctionalDependencies], otherExtensions = [ EnableExtension OverloadedStrings, EnableExtension PolyKinds, EnableExtension UndecidableInstances, EnableExtension TemplateHaskell, EnableExtension DeriveGeneric, EnableExtension StandaloneDeriving], oldExtensions = [], extraLibs = [], extraLibsStatic = [], extraGHCiLibs = [], extraBundledLibs = [], extraLibFlavours = [], extraDynLibFlavours = [], extraLibDirs = [], extraLibDirsStatic = [], includeDirs = [], includes = [], autogenIncludes = [], installIncludes = [], options = PerCompilerFlavor ["-Wall"] [], profOptions = PerCompilerFlavor [] [], sharedOptions = PerCompilerFlavor [] [], staticOptions = PerCompilerFlavor [] [], customFieldsBI = [], targetBuildDepends = [ Dependency (PackageName "base") (IntersectVersionRanges (OrLaterVersion (mkVersion [4, 7])) (EarlierVersion (mkVersion [5]))) mainLibSet, Dependency (PackageName "template-haskell") (IntersectVersionRanges (OrLaterVersion (mkVersion [2, 8])) (EarlierVersion (mkVersion [2, 13]))) mainLibSet, Dependency (PackageName "ghc-prim") (IntersectVersionRanges (OrLaterVersion (mkVersion [0, 3])) (EarlierVersion (mkVersion [0, 6]))) mainLibSet, Dependency (PackageName "deepseq") (IntersectVersionRanges (OrLaterVersion (mkVersion [1, 3])) (EarlierVersion (mkVersion [1, 5]))) mainLibSet], mixins = []}}, condTreeConstraints = [ Dependency (PackageName "base") (IntersectVersionRanges (OrLaterVersion (mkVersion [4, 7])) (EarlierVersion (mkVersion [5]))) mainLibSet, Dependency (PackageName "template-haskell") (IntersectVersionRanges (OrLaterVersion (mkVersion [2, 8])) (EarlierVersion (mkVersion [2, 13]))) mainLibSet, Dependency (PackageName "ghc-prim") (IntersectVersionRanges (OrLaterVersion (mkVersion [0, 3])) (EarlierVersion (mkVersion [0, 6]))) mainLibSet, Dependency (PackageName "deepseq") (IntersectVersionRanges (OrLaterVersion (mkVersion [1, 3])) (EarlierVersion (mkVersion [1, 5]))) mainLibSet], condTreeComponents = [ CondBranch { condBranchCondition = `CNot (Var (Impl GHC (OrLaterVersion (mkVersion [7,8]))))`, condBranchIfTrue = CondNode { condTreeData = Library { libName = LMainLibName, exposedModules = [], reexportedModules = [], signatures = [], libExposed = True, libVisibility = LibraryVisibilityPublic, libBuildInfo = BuildInfo { buildable = True, buildTools = [], buildToolDepends = [], cppOptions = [], asmOptions = [], cmmOptions = [], ccOptions = [], cxxOptions = [], ldOptions = [], hsc2hsOptions = [], pkgconfigDepends = [], frameworks = [], extraFrameworkDirs = [], asmSources = [], cmmSources = [], cSources = [], cxxSources = [], jsSources = [], hsSourceDirs = [], otherModules = [], virtualModules = [], autogenModules = [], defaultLanguage = Nothing, otherLanguages = [], defaultExtensions = [], otherExtensions = [], oldExtensions = [], extraLibs = [], extraLibsStatic = [], extraGHCiLibs = [], extraBundledLibs = [], extraLibFlavours = [], extraDynLibFlavours = [], extraLibDirs = [], extraLibDirsStatic = [], includeDirs = [], includes = [], autogenIncludes = [], installIncludes = [], options = PerCompilerFlavor [] [], profOptions = PerCompilerFlavor [] [], sharedOptions = PerCompilerFlavor [] [], staticOptions = PerCompilerFlavor [] [], customFieldsBI = [], targetBuildDepends = [ Dependency (PackageName "tagged") (IntersectVersionRanges (OrLaterVersion (mkVersion [0, 7])) (EarlierVersion (mkVersion [0, 9]))) mainLibSet], mixins = []}}, condTreeConstraints = [ Dependency (PackageName "tagged") (IntersectVersionRanges (OrLaterVersion (mkVersion [0, 7])) (EarlierVersion (mkVersion [0, 9]))) mainLibSet], condTreeComponents = []}, condBranchIfFalse = Nothing}, CondBranch { condBranchCondition = `CNot (Var (Impl GHC (OrLaterVersion (mkVersion [8,0]))))`, condBranchIfTrue = CondNode { condTreeData = Library { libName = LMainLibName, exposedModules = [], reexportedModules = [], signatures = [], libExposed = True, libVisibility = LibraryVisibilityPublic, libBuildInfo = BuildInfo { buildable = True, buildTools = [], buildToolDepends = [], cppOptions = [], asmOptions = [], cmmOptions = [], ccOptions = [], cxxOptions = [], ldOptions = [], hsc2hsOptions = [], pkgconfigDepends = [], frameworks = [], extraFrameworkDirs = [], asmSources = [], cmmSources = [], cSources = [], cxxSources = [], jsSources = [], hsSourceDirs = [], otherModules = [], virtualModules = [], autogenModules = [], defaultLanguage = Nothing, otherLanguages = [], defaultExtensions = [], otherExtensions = [], oldExtensions = [], extraLibs = [], extraLibsStatic = [], extraGHCiLibs = [], extraBundledLibs = [], extraLibFlavours = [], extraDynLibFlavours = [], extraLibDirs = [], extraLibDirsStatic = [], includeDirs = [], includes = [], autogenIncludes = [], installIncludes = [], options = PerCompilerFlavor [] [], profOptions = PerCompilerFlavor [] [], sharedOptions = PerCompilerFlavor [] [], staticOptions = PerCompilerFlavor [] [], customFieldsBI = [], targetBuildDepends = [ Dependency (PackageName "transformers-compat") (IntersectVersionRanges (OrLaterVersion (mkVersion [0, 3])) (EarlierVersion (mkVersion [0, 6]))) mainLibSet, Dependency (PackageName "transformers") (IntersectVersionRanges (OrLaterVersion (mkVersion [0, 3])) (EarlierVersion (mkVersion [0, 6]))) mainLibSet], mixins = []}}, condTreeConstraints = [ Dependency (PackageName "transformers-compat") (IntersectVersionRanges (OrLaterVersion (mkVersion [0, 3])) (EarlierVersion (mkVersion [0, 6]))) mainLibSet, Dependency (PackageName "transformers") (IntersectVersionRanges (OrLaterVersion (mkVersion [0, 3])) (EarlierVersion (mkVersion [0, 6]))) mainLibSet], condTreeComponents = []}, condBranchIfFalse = Nothing}, CondBranch { condBranchCondition = `Var (Impl GHC (OrLaterVersion (mkVersion [7,8])))`, condBranchIfTrue = CondNode { condTreeData = Library { libName = LMainLibName, exposedModules = [], reexportedModules = [], signatures = [], libExposed = True, libVisibility = LibraryVisibilityPublic, libBuildInfo = BuildInfo { buildable = True, buildTools = [], buildToolDepends = [], cppOptions = [], asmOptions = [], cmmOptions = [], ccOptions = [], cxxOptions = [], ldOptions = [], hsc2hsOptions = [], pkgconfigDepends = [], frameworks = [], extraFrameworkDirs = [], asmSources = [], cmmSources = [], cSources = [], cxxSources = [], jsSources = [], hsSourceDirs = [], otherModules = [], virtualModules = [], autogenModules = [], defaultLanguage = Nothing, otherLanguages = [], defaultExtensions = [ EnableExtension AutoDeriveTypeable], otherExtensions = [], oldExtensions = [], extraLibs = [], extraLibsStatic = [], extraGHCiLibs = [], extraBundledLibs = [], extraLibFlavours = [], extraDynLibFlavours = [], extraLibDirs = [], extraLibDirsStatic = [], includeDirs = [], includes = [], autogenIncludes = [], installIncludes = [], options = PerCompilerFlavor [] [], profOptions = PerCompilerFlavor [] [], sharedOptions = PerCompilerFlavor [] [], staticOptions = PerCompilerFlavor [] [], customFieldsBI = [], targetBuildDepends = [], mixins = []}}, condTreeConstraints = [], condTreeComponents = []}, condBranchIfFalse = Nothing}, CondBranch { condBranchCondition = `Var (Impl GHC (EarlierVersion (mkVersion [7,10])))`, condBranchIfTrue = CondNode { condTreeData = Library { libName = LMainLibName, exposedModules = [], reexportedModules = [], signatures = [], libExposed = True, libVisibility = LibraryVisibilityPublic, libBuildInfo = BuildInfo { buildable = True, buildTools = [], buildToolDepends = [], cppOptions = [], asmOptions = [], cmmOptions = [], ccOptions = [], cxxOptions = [], ldOptions = [], hsc2hsOptions = [], pkgconfigDepends = [], frameworks = [], extraFrameworkDirs = [], asmSources = [], cmmSources = [], cSources = [], cxxSources = [], jsSources = [], hsSourceDirs = [], otherModules = [], virtualModules = [], autogenModules = [], defaultLanguage = Nothing, otherLanguages = [], defaultExtensions = [], otherExtensions = [ EnableExtension OverlappingInstances], oldExtensions = [], extraLibs = [], extraLibsStatic = [], extraGHCiLibs = [], extraBundledLibs = [], extraLibFlavours = [], extraDynLibFlavours = [], extraLibDirs = [], extraLibDirsStatic = [], includeDirs = [], includes = [], autogenIncludes = [], installIncludes = [], options = PerCompilerFlavor [] [], profOptions = PerCompilerFlavor [] [], sharedOptions = PerCompilerFlavor [] [], staticOptions = PerCompilerFlavor [] [], customFieldsBI = [], targetBuildDepends = [], mixins = []}}, condTreeConstraints = [], condTreeComponents = []}, condBranchIfFalse = Nothing}]}, condSubLibraries = [], condForeignLibs = [], condExecutables = [], condTestSuites = [ _×_ (UnqualComponentName "doctests") CondNode { condTreeData = TestSuite { testName = UnqualComponentName "", testInterface = TestSuiteExeV10 (mkVersion [1, 0]) "doctests.hs", testBuildInfo = BuildInfo { buildable = True, buildTools = [], buildToolDepends = [], cppOptions = [], asmOptions = [], cmmOptions = [], ccOptions = [], cxxOptions = [], ldOptions = [], hsc2hsOptions = [], pkgconfigDepends = [], frameworks = [], extraFrameworkDirs = [], asmSources = [], cmmSources = [], cSources = [], cxxSources = [], jsSources = [], hsSourceDirs = [ SymbolicPath "test"], otherModules = [], virtualModules = [], autogenModules = [], defaultLanguage = Just Haskell2010, otherLanguages = [], defaultExtensions = [], otherExtensions = [], oldExtensions = [], extraLibs = [], extraLibsStatic = [], extraGHCiLibs = [], extraBundledLibs = [], extraLibFlavours = [], extraDynLibFlavours = [], extraLibDirs = [], extraLibDirsStatic = [], includeDirs = [], includes = [], autogenIncludes = [], installIncludes = [], options = PerCompilerFlavor ["-Wall", "-threaded"] [], profOptions = PerCompilerFlavor [] [], sharedOptions = PerCompilerFlavor [] [], staticOptions = PerCompilerFlavor [] [], customFieldsBI = [ _×_ "x-doctest-options" "--preserve-it"], targetBuildDepends = [ Dependency (PackageName "base") (OrLaterVersion (mkVersion [0])) mainLibSet, Dependency (PackageName "doctest") (IntersectVersionRanges (OrLaterVersion (mkVersion [0, 13])) (EarlierVersion (mkVersion [0, 14]))) mainLibSet], mixins = []}, testCodeGenerators = []}, condTreeConstraints = [ Dependency (PackageName "base") (OrLaterVersion (mkVersion [0])) mainLibSet, Dependency (PackageName "doctest") (IntersectVersionRanges (OrLaterVersion (mkVersion [0, 13])) (EarlierVersion (mkVersion [0, 14]))) mainLibSet], condTreeComponents = []}, _×_ (UnqualComponentName "generics-sop-examples") CondNode { condTreeData = TestSuite { testName = UnqualComponentName "", testInterface = TestSuiteExeV10 (mkVersion [1, 0]) "Example.hs", testBuildInfo = BuildInfo { buildable = True, buildTools = [], buildToolDepends = [], cppOptions = [], asmOptions = [], cmmOptions = [], ccOptions = [], cxxOptions = [], ldOptions = [], hsc2hsOptions = [], pkgconfigDepends = [], frameworks = [], extraFrameworkDirs = [], asmSources = [], cmmSources = [], cSources = [], cxxSources = [], jsSources = [], hsSourceDirs = [ SymbolicPath "test"], otherModules = [ ModuleName "HTransExample"], virtualModules = [], autogenModules = [], defaultLanguage = Just Haskell2010, otherLanguages = [], defaultExtensions = [], otherExtensions = [], oldExtensions = [], extraLibs = [], extraLibsStatic = [], extraGHCiLibs = [], extraBundledLibs = [], extraLibFlavours = [], extraDynLibFlavours = [], extraLibDirs = [], extraLibDirsStatic = [], includeDirs = [], includes = [], autogenIncludes = [], installIncludes = [], options = PerCompilerFlavor ["-Wall"] [], profOptions = PerCompilerFlavor [] [], sharedOptions = PerCompilerFlavor [] [], staticOptions = PerCompilerFlavor [] [], customFieldsBI = [], targetBuildDepends = [ Dependency (PackageName "base") (IntersectVersionRanges (OrLaterVersion (mkVersion [4, 6])) (EarlierVersion (mkVersion [5]))) mainLibSet, Dependency (PackageName "generics-sop") (OrLaterVersion (mkVersion [0])) mainLibSet], mixins = []}, testCodeGenerators = []}, condTreeConstraints = [ Dependency (PackageName "base") (IntersectVersionRanges (OrLaterVersion (mkVersion [4, 6])) (EarlierVersion (mkVersion [5]))) mainLibSet, Dependency (PackageName "generics-sop") (OrLaterVersion (mkVersion [0])) mainLibSet], condTreeComponents = []}], condBenchmarks = []}