{-# LANGUAGE DeriveAnyClass #-}
{-# LANGUAGE DerivingStrategies #-}

module Hercules.API.Projects.JobHandlers.OnPushHandler
  ( OnPushHandler (..),
  )
where

import Data.OpenApi qualified as O3
import Hercules.API.Prelude

data OnPushHandler = OnPushHandler
  { OnPushHandler -> Text
name :: Text,
    OnPushHandler -> Bool
isFlake :: Bool
  }
  deriving ((forall x. OnPushHandler -> Rep OnPushHandler x)
-> (forall x. Rep OnPushHandler x -> OnPushHandler)
-> Generic OnPushHandler
forall x. Rep OnPushHandler x -> OnPushHandler
forall x. OnPushHandler -> Rep OnPushHandler x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cfrom :: forall x. OnPushHandler -> Rep OnPushHandler x
from :: forall x. OnPushHandler -> Rep OnPushHandler x
$cto :: forall x. Rep OnPushHandler x -> OnPushHandler
to :: forall x. Rep OnPushHandler x -> OnPushHandler
Generic, Int -> OnPushHandler -> ShowS
[OnPushHandler] -> ShowS
OnPushHandler -> String
(Int -> OnPushHandler -> ShowS)
-> (OnPushHandler -> String)
-> ([OnPushHandler] -> ShowS)
-> Show OnPushHandler
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
$cshowsPrec :: Int -> OnPushHandler -> ShowS
showsPrec :: Int -> OnPushHandler -> ShowS
$cshow :: OnPushHandler -> String
show :: OnPushHandler -> String
$cshowList :: [OnPushHandler] -> ShowS
showList :: [OnPushHandler] -> ShowS
Show, OnPushHandler -> OnPushHandler -> Bool
(OnPushHandler -> OnPushHandler -> Bool)
-> (OnPushHandler -> OnPushHandler -> Bool) -> Eq OnPushHandler
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: OnPushHandler -> OnPushHandler -> Bool
== :: OnPushHandler -> OnPushHandler -> Bool
$c/= :: OnPushHandler -> OnPushHandler -> Bool
/= :: OnPushHandler -> OnPushHandler -> Bool
Eq)
  deriving anyclass (OnPushHandler -> ()
(OnPushHandler -> ()) -> NFData OnPushHandler
forall a. (a -> ()) -> NFData a
$crnf :: OnPushHandler -> ()
rnf :: OnPushHandler -> ()
NFData, [OnPushHandler] -> Value
[OnPushHandler] -> Encoding
OnPushHandler -> Value
OnPushHandler -> Encoding
(OnPushHandler -> Value)
-> (OnPushHandler -> Encoding)
-> ([OnPushHandler] -> Value)
-> ([OnPushHandler] -> Encoding)
-> ToJSON OnPushHandler
forall a.
(a -> Value)
-> (a -> Encoding)
-> ([a] -> Value)
-> ([a] -> Encoding)
-> ToJSON a
$ctoJSON :: OnPushHandler -> Value
toJSON :: OnPushHandler -> Value
$ctoEncoding :: OnPushHandler -> Encoding
toEncoding :: OnPushHandler -> Encoding
$ctoJSONList :: [OnPushHandler] -> Value
toJSONList :: [OnPushHandler] -> Value
$ctoEncodingList :: [OnPushHandler] -> Encoding
toEncodingList :: [OnPushHandler] -> Encoding
ToJSON, Value -> Parser [OnPushHandler]
Value -> Parser OnPushHandler
(Value -> Parser OnPushHandler)
-> (Value -> Parser [OnPushHandler]) -> FromJSON OnPushHandler
forall a.
(Value -> Parser a) -> (Value -> Parser [a]) -> FromJSON a
$cparseJSON :: Value -> Parser OnPushHandler
parseJSON :: Value -> Parser OnPushHandler
$cparseJSONList :: Value -> Parser [OnPushHandler]
parseJSONList :: Value -> Parser [OnPushHandler]
FromJSON, Proxy OnPushHandler -> Declare (Definitions Schema) NamedSchema
(Proxy OnPushHandler -> Declare (Definitions Schema) NamedSchema)
-> ToSchema OnPushHandler
forall a.
(Proxy a -> Declare (Definitions Schema) NamedSchema) -> ToSchema a
$cdeclareNamedSchema :: Proxy OnPushHandler -> Declare (Definitions Schema) NamedSchema
declareNamedSchema :: Proxy OnPushHandler -> Declare (Definitions Schema) NamedSchema
ToSchema, Typeable OnPushHandler
Typeable OnPushHandler =>
(Proxy OnPushHandler -> Declare (Definitions Schema) NamedSchema)
-> ToSchema OnPushHandler
Proxy OnPushHandler -> Declare (Definitions Schema) NamedSchema
forall a.
Typeable a =>
(Proxy a -> Declare (Definitions Schema) NamedSchema) -> ToSchema a
$cdeclareNamedSchema :: Proxy OnPushHandler -> Declare (Definitions Schema) NamedSchema
declareNamedSchema :: Proxy OnPushHandler -> Declare (Definitions Schema) NamedSchema
O3.ToSchema)