module Horizon.Spec.Types.PackageList (PackageList(MkPackageList), fromPackageList) where import Data.Kind (Type) import Data.Map (Map) import Dhall (FromDhall, Generic, ToDhall) import Horizon.Spec.Types.HaskellPackage (HaskellPackage) import Horizon.Spec.Types.Name (Name) type PackageList :: Type newtype PackageList where MkPackageList :: { PackageList -> Map Name HaskellPackage fromPackageList :: Map Name HaskellPackage } -> PackageList deriving stock (Int -> PackageList -> ShowS [PackageList] -> ShowS PackageList -> String forall a. (Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a showList :: [PackageList] -> ShowS $cshowList :: [PackageList] -> ShowS show :: PackageList -> String $cshow :: PackageList -> String showsPrec :: Int -> PackageList -> ShowS $cshowsPrec :: Int -> PackageList -> ShowS Show, PackageList -> PackageList -> Bool forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a /= :: PackageList -> PackageList -> Bool $c/= :: PackageList -> PackageList -> Bool == :: PackageList -> PackageList -> Bool $c== :: PackageList -> PackageList -> Bool Eq, forall x. Rep PackageList x -> PackageList forall x. PackageList -> Rep PackageList x forall a. (forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a $cto :: forall x. Rep PackageList x -> PackageList $cfrom :: forall x. PackageList -> Rep PackageList x Generic) deriving newtype (InputNormalizer -> Decoder PackageList forall a. (InputNormalizer -> Decoder a) -> FromDhall a autoWith :: InputNormalizer -> Decoder PackageList $cautoWith :: InputNormalizer -> Decoder PackageList FromDhall, InputNormalizer -> Encoder PackageList forall a. (InputNormalizer -> Encoder a) -> ToDhall a injectWith :: InputNormalizer -> Encoder PackageList $cinjectWith :: InputNormalizer -> Encoder PackageList ToDhall)