module Hix.Data.PreprocConfig where

import Data.Aeson (FromJSON)

import Hix.Data.ComponentConfig (PackagesConfig)

data PreprocConfig =
  PreprocConfig {
    PreprocConfig -> PackagesConfig
packages :: PackagesConfig
  }
  deriving stock (PreprocConfig -> PreprocConfig -> Bool
(PreprocConfig -> PreprocConfig -> Bool)
-> (PreprocConfig -> PreprocConfig -> Bool) -> Eq PreprocConfig
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: PreprocConfig -> PreprocConfig -> Bool
== :: PreprocConfig -> PreprocConfig -> Bool
$c/= :: PreprocConfig -> PreprocConfig -> Bool
/= :: PreprocConfig -> PreprocConfig -> Bool
Eq, Int -> PreprocConfig -> ShowS
[PreprocConfig] -> ShowS
PreprocConfig -> String
(Int -> PreprocConfig -> ShowS)
-> (PreprocConfig -> String)
-> ([PreprocConfig] -> ShowS)
-> Show PreprocConfig
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
$cshowsPrec :: Int -> PreprocConfig -> ShowS
showsPrec :: Int -> PreprocConfig -> ShowS
$cshow :: PreprocConfig -> String
show :: PreprocConfig -> String
$cshowList :: [PreprocConfig] -> ShowS
showList :: [PreprocConfig] -> ShowS
Show, (forall x. PreprocConfig -> Rep PreprocConfig x)
-> (forall x. Rep PreprocConfig x -> PreprocConfig)
-> Generic PreprocConfig
forall x. Rep PreprocConfig x -> PreprocConfig
forall x. PreprocConfig -> Rep PreprocConfig x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cfrom :: forall x. PreprocConfig -> Rep PreprocConfig x
from :: forall x. PreprocConfig -> Rep PreprocConfig x
$cto :: forall x. Rep PreprocConfig x -> PreprocConfig
to :: forall x. Rep PreprocConfig x -> PreprocConfig
Generic)
  deriving anyclass (Value -> Parser [PreprocConfig]
Value -> Parser PreprocConfig
(Value -> Parser PreprocConfig)
-> (Value -> Parser [PreprocConfig]) -> FromJSON PreprocConfig
forall a.
(Value -> Parser a) -> (Value -> Parser [a]) -> FromJSON a
$cparseJSON :: Value -> Parser PreprocConfig
parseJSON :: Value -> Parser PreprocConfig
$cparseJSONList :: Value -> Parser [PreprocConfig]
parseJSONList :: Value -> Parser [PreprocConfig]
FromJSON)