module Cachix.Types.NixCacheInfo where

import Data.Aeson (FromJSON, ToJSON)
import Data.Swagger (ToSchema)
import Protolude

data NixCacheInfo
  = NixCacheInfo
      { NixCacheInfo -> Text
storeDir :: Text,
        NixCacheInfo -> Integer
wantMassQuery :: Integer,
        NixCacheInfo -> Integer
priority :: Integer
      }
  deriving ((forall x. NixCacheInfo -> Rep NixCacheInfo x)
-> (forall x. Rep NixCacheInfo x -> NixCacheInfo)
-> Generic NixCacheInfo
forall x. Rep NixCacheInfo x -> NixCacheInfo
forall x. NixCacheInfo -> Rep NixCacheInfo x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep NixCacheInfo x -> NixCacheInfo
$cfrom :: forall x. NixCacheInfo -> Rep NixCacheInfo x
Generic, Int -> NixCacheInfo -> ShowS
[NixCacheInfo] -> ShowS
NixCacheInfo -> String
(Int -> NixCacheInfo -> ShowS)
-> (NixCacheInfo -> String)
-> ([NixCacheInfo] -> ShowS)
-> Show NixCacheInfo
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [NixCacheInfo] -> ShowS
$cshowList :: [NixCacheInfo] -> ShowS
show :: NixCacheInfo -> String
$cshow :: NixCacheInfo -> String
showsPrec :: Int -> NixCacheInfo -> ShowS
$cshowsPrec :: Int -> NixCacheInfo -> ShowS
Show, Value -> Parser [NixCacheInfo]
Value -> Parser NixCacheInfo
(Value -> Parser NixCacheInfo)
-> (Value -> Parser [NixCacheInfo]) -> FromJSON NixCacheInfo
forall a.
(Value -> Parser a) -> (Value -> Parser [a]) -> FromJSON a
parseJSONList :: Value -> Parser [NixCacheInfo]
$cparseJSONList :: Value -> Parser [NixCacheInfo]
parseJSON :: Value -> Parser NixCacheInfo
$cparseJSON :: Value -> Parser NixCacheInfo
FromJSON, [NixCacheInfo] -> Value
[NixCacheInfo] -> Encoding
NixCacheInfo -> Value
NixCacheInfo -> Encoding
(NixCacheInfo -> Value)
-> (NixCacheInfo -> Encoding)
-> ([NixCacheInfo] -> Value)
-> ([NixCacheInfo] -> Encoding)
-> ToJSON NixCacheInfo
forall a.
(a -> Value)
-> (a -> Encoding)
-> ([a] -> Value)
-> ([a] -> Encoding)
-> ToJSON a
toEncodingList :: [NixCacheInfo] -> Encoding
$ctoEncodingList :: [NixCacheInfo] -> Encoding
toJSONList :: [NixCacheInfo] -> Value
$ctoJSONList :: [NixCacheInfo] -> Value
toEncoding :: NixCacheInfo -> Encoding
$ctoEncoding :: NixCacheInfo -> Encoding
toJSON :: NixCacheInfo -> Value
$ctoJSON :: NixCacheInfo -> Value
ToJSON, Proxy NixCacheInfo -> Declare (Definitions Schema) NamedSchema
(Proxy NixCacheInfo -> Declare (Definitions Schema) NamedSchema)
-> ToSchema NixCacheInfo
forall a.
(Proxy a -> Declare (Definitions Schema) NamedSchema) -> ToSchema a
declareNamedSchema :: Proxy NixCacheInfo -> Declare (Definitions Schema) NamedSchema
$cdeclareNamedSchema :: Proxy NixCacheInfo -> Declare (Definitions Schema) NamedSchema
ToSchema, NixCacheInfo -> ()
(NixCacheInfo -> ()) -> NFData NixCacheInfo
forall a. (a -> ()) -> NFData a
rnf :: NixCacheInfo -> ()
$crnf :: NixCacheInfo -> ()
NFData)