{-# LANGUAGE Trustworthy #-}
module GitHub.Data.Webhooks.Events
( EventHasSender(..)
, EventHasRepo(..)
, CheckSuiteEventAction(..)
, CheckSuiteEvent(..)
, CheckRunEventAction(..)
, CheckRunEvent(..)
, CommitCommentEvent(..)
, CommitCommentEventAction(..)
, CreateEvent(..)
, DeleteEvent(..)
, DeploymentEvent(..)
, DeploymentStatusEvent(..)
, DownloadEvent(..)
, FollowEvent(..)
, ForkEvent(..)
, ForkApplyEvent(..)
, GistEvent(..)
, GollumEvent(..)
, InstallationEvent(..)
, InstallationEventAction(..)
, InstallationRepositoriesEvent(..)
, InstallationRepoEventAction(..)
, IssueCommentEvent(..)
, IssueCommentEventAction(..)
, IssuesEvent(..)
, IssuesEventAction(..)
, LabelEvent(..)
, LabelEventAction(..)
, MarketplacePurchaseEvent(..)
, MarketplacePurchaseEventAction(..)
, MemberEvent(..)
, MemberEventAction(..)
, MembershipEvent(..)
, MembershipEventAction(..)
, MilestoneEvent(..)
, MilestoneEventAction(..)
, OrganizationEvent(..)
, OrganizationEventAction(..)
, OrgBlockEvent(..)
, OrgBlockEventAction(..)
, PageBuildEvent(..)
, ProjectCardEvent(..)
, ProjectCardEventAction(..)
, ProjectColumnEvent(..)
, ProjectColumnEventAction(..)
, ProjectEvent(..)
, ProjectEventAction(..)
, PublicEvent(..)
, PullRequestEvent(..)
, PullRequestEventAction(..)
, PullRequestReviewEvent(..)
, PullRequestReviewEventAction(..)
, PullRequestReviewCommentEvent(..)
, PullRequestReviewCommentEventAction(..)
, PushEvent(..)
, ReleaseEvent(..)
, ReleaseEventAction(..)
, RepositoryEvent(..)
, RepositoryEventAction(..)
, StatusEvent(..)
, StatusEventState(..)
, TeamEvent(..)
, TeamEventAction(..)
, TeamAddEvent(..)
, WatchEvent(..)
, WatchEventAction(..)
) where
import Data.Aeson (FromJSON(..), withObject, withText, (.:), (.:?), (.!=))
import Control.Applicative ((<*>), pure)
import Control.DeepSeq (NFData(..))
import Control.DeepSeq.Generics (genericRnf)
import Data.Data (Data, Typeable)
import Data.Functor ((<$>))
import Data.Monoid (mempty)
import Data.Time (UTCTime)
import Data.Time.LocalTime (zonedTimeToUTC)
import Data.Text (Text)
import Data.Vector (Vector)
import GHC.Generics (Generic)
import GitHub.Data.Webhooks.Payload
class EventHasSender eventKind where
senderOfEvent :: eventKind -> HookUser
class EventHasRepo eventKind where
repoForEvent :: eventKind -> HookRepository
data CheckSuiteEventAction
= CheckSuiteEventActionCompleted
| CheckSuiteEventActionRequested
| CheckSuiteEventActionRerequested
| CheckSuiteEventActionOther !Text
deriving (CheckSuiteEventAction -> CheckSuiteEventAction -> Bool
(CheckSuiteEventAction -> CheckSuiteEventAction -> Bool)
-> (CheckSuiteEventAction -> CheckSuiteEventAction -> Bool)
-> Eq CheckSuiteEventAction
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: CheckSuiteEventAction -> CheckSuiteEventAction -> Bool
$c/= :: CheckSuiteEventAction -> CheckSuiteEventAction -> Bool
== :: CheckSuiteEventAction -> CheckSuiteEventAction -> Bool
$c== :: CheckSuiteEventAction -> CheckSuiteEventAction -> Bool
Eq, Eq CheckSuiteEventAction
Eq CheckSuiteEventAction
-> (CheckSuiteEventAction -> CheckSuiteEventAction -> Ordering)
-> (CheckSuiteEventAction -> CheckSuiteEventAction -> Bool)
-> (CheckSuiteEventAction -> CheckSuiteEventAction -> Bool)
-> (CheckSuiteEventAction -> CheckSuiteEventAction -> Bool)
-> (CheckSuiteEventAction -> CheckSuiteEventAction -> Bool)
-> (CheckSuiteEventAction
-> CheckSuiteEventAction -> CheckSuiteEventAction)
-> (CheckSuiteEventAction
-> CheckSuiteEventAction -> CheckSuiteEventAction)
-> Ord CheckSuiteEventAction
CheckSuiteEventAction -> CheckSuiteEventAction -> Bool
CheckSuiteEventAction -> CheckSuiteEventAction -> Ordering
CheckSuiteEventAction
-> CheckSuiteEventAction -> CheckSuiteEventAction
forall a.
Eq a
-> (a -> a -> Ordering)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> a)
-> (a -> a -> a)
-> Ord a
min :: CheckSuiteEventAction
-> CheckSuiteEventAction -> CheckSuiteEventAction
$cmin :: CheckSuiteEventAction
-> CheckSuiteEventAction -> CheckSuiteEventAction
max :: CheckSuiteEventAction
-> CheckSuiteEventAction -> CheckSuiteEventAction
$cmax :: CheckSuiteEventAction
-> CheckSuiteEventAction -> CheckSuiteEventAction
>= :: CheckSuiteEventAction -> CheckSuiteEventAction -> Bool
$c>= :: CheckSuiteEventAction -> CheckSuiteEventAction -> Bool
> :: CheckSuiteEventAction -> CheckSuiteEventAction -> Bool
$c> :: CheckSuiteEventAction -> CheckSuiteEventAction -> Bool
<= :: CheckSuiteEventAction -> CheckSuiteEventAction -> Bool
$c<= :: CheckSuiteEventAction -> CheckSuiteEventAction -> Bool
< :: CheckSuiteEventAction -> CheckSuiteEventAction -> Bool
$c< :: CheckSuiteEventAction -> CheckSuiteEventAction -> Bool
compare :: CheckSuiteEventAction -> CheckSuiteEventAction -> Ordering
$ccompare :: CheckSuiteEventAction -> CheckSuiteEventAction -> Ordering
$cp1Ord :: Eq CheckSuiteEventAction
Ord, Int -> CheckSuiteEventAction -> ShowS
[CheckSuiteEventAction] -> ShowS
CheckSuiteEventAction -> String
(Int -> CheckSuiteEventAction -> ShowS)
-> (CheckSuiteEventAction -> String)
-> ([CheckSuiteEventAction] -> ShowS)
-> Show CheckSuiteEventAction
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [CheckSuiteEventAction] -> ShowS
$cshowList :: [CheckSuiteEventAction] -> ShowS
show :: CheckSuiteEventAction -> String
$cshow :: CheckSuiteEventAction -> String
showsPrec :: Int -> CheckSuiteEventAction -> ShowS
$cshowsPrec :: Int -> CheckSuiteEventAction -> ShowS
Show, (forall x. CheckSuiteEventAction -> Rep CheckSuiteEventAction x)
-> (forall x. Rep CheckSuiteEventAction x -> CheckSuiteEventAction)
-> Generic CheckSuiteEventAction
forall x. Rep CheckSuiteEventAction x -> CheckSuiteEventAction
forall x. CheckSuiteEventAction -> Rep CheckSuiteEventAction x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep CheckSuiteEventAction x -> CheckSuiteEventAction
$cfrom :: forall x. CheckSuiteEventAction -> Rep CheckSuiteEventAction x
Generic, Typeable, Typeable CheckSuiteEventAction
DataType
Constr
Typeable CheckSuiteEventAction
-> (forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g)
-> CheckSuiteEventAction
-> c CheckSuiteEventAction)
-> (forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c CheckSuiteEventAction)
-> (CheckSuiteEventAction -> Constr)
-> (CheckSuiteEventAction -> DataType)
-> (forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c CheckSuiteEventAction))
-> (forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c CheckSuiteEventAction))
-> ((forall b. Data b => b -> b)
-> CheckSuiteEventAction -> CheckSuiteEventAction)
-> (forall r r'.
(r -> r' -> r)
-> r
-> (forall d. Data d => d -> r')
-> CheckSuiteEventAction
-> r)
-> (forall r r'.
(r' -> r -> r)
-> r
-> (forall d. Data d => d -> r')
-> CheckSuiteEventAction
-> r)
-> (forall u.
(forall d. Data d => d -> u) -> CheckSuiteEventAction -> [u])
-> (forall u.
Int -> (forall d. Data d => d -> u) -> CheckSuiteEventAction -> u)
-> (forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d)
-> CheckSuiteEventAction -> m CheckSuiteEventAction)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> CheckSuiteEventAction -> m CheckSuiteEventAction)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> CheckSuiteEventAction -> m CheckSuiteEventAction)
-> Data CheckSuiteEventAction
CheckSuiteEventAction -> DataType
CheckSuiteEventAction -> Constr
(forall b. Data b => b -> b)
-> CheckSuiteEventAction -> CheckSuiteEventAction
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g)
-> CheckSuiteEventAction
-> c CheckSuiteEventAction
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c CheckSuiteEventAction
forall a.
Typeable a
-> (forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> a -> c a)
-> (forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c a)
-> (a -> Constr)
-> (a -> DataType)
-> (forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c a))
-> (forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c a))
-> ((forall b. Data b => b -> b) -> a -> a)
-> (forall r r'.
(r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> a -> r)
-> (forall r r'.
(r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> a -> r)
-> (forall u. (forall d. Data d => d -> u) -> a -> [u])
-> (forall u. Int -> (forall d. Data d => d -> u) -> a -> u)
-> (forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d) -> a -> m a)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> a -> m a)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> a -> m a)
-> Data a
forall u.
Int -> (forall d. Data d => d -> u) -> CheckSuiteEventAction -> u
forall u.
(forall d. Data d => d -> u) -> CheckSuiteEventAction -> [u]
forall r r'.
(r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> CheckSuiteEventAction -> r
forall r r'.
(r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> CheckSuiteEventAction -> r
forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d)
-> CheckSuiteEventAction -> m CheckSuiteEventAction
forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> CheckSuiteEventAction -> m CheckSuiteEventAction
forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c CheckSuiteEventAction
forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g)
-> CheckSuiteEventAction
-> c CheckSuiteEventAction
forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c CheckSuiteEventAction)
forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c CheckSuiteEventAction)
$cCheckSuiteEventActionOther :: Constr
$cCheckSuiteEventActionRerequested :: Constr
$cCheckSuiteEventActionRequested :: Constr
$cCheckSuiteEventActionCompleted :: Constr
$tCheckSuiteEventAction :: DataType
gmapMo :: (forall d. Data d => d -> m d)
-> CheckSuiteEventAction -> m CheckSuiteEventAction
$cgmapMo :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> CheckSuiteEventAction -> m CheckSuiteEventAction
gmapMp :: (forall d. Data d => d -> m d)
-> CheckSuiteEventAction -> m CheckSuiteEventAction
$cgmapMp :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> CheckSuiteEventAction -> m CheckSuiteEventAction
gmapM :: (forall d. Data d => d -> m d)
-> CheckSuiteEventAction -> m CheckSuiteEventAction
$cgmapM :: forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d)
-> CheckSuiteEventAction -> m CheckSuiteEventAction
gmapQi :: Int -> (forall d. Data d => d -> u) -> CheckSuiteEventAction -> u
$cgmapQi :: forall u.
Int -> (forall d. Data d => d -> u) -> CheckSuiteEventAction -> u
gmapQ :: (forall d. Data d => d -> u) -> CheckSuiteEventAction -> [u]
$cgmapQ :: forall u.
(forall d. Data d => d -> u) -> CheckSuiteEventAction -> [u]
gmapQr :: (r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> CheckSuiteEventAction -> r
$cgmapQr :: forall r r'.
(r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> CheckSuiteEventAction -> r
gmapQl :: (r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> CheckSuiteEventAction -> r
$cgmapQl :: forall r r'.
(r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> CheckSuiteEventAction -> r
gmapT :: (forall b. Data b => b -> b)
-> CheckSuiteEventAction -> CheckSuiteEventAction
$cgmapT :: (forall b. Data b => b -> b)
-> CheckSuiteEventAction -> CheckSuiteEventAction
dataCast2 :: (forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c CheckSuiteEventAction)
$cdataCast2 :: forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c CheckSuiteEventAction)
dataCast1 :: (forall d. Data d => c (t d)) -> Maybe (c CheckSuiteEventAction)
$cdataCast1 :: forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c CheckSuiteEventAction)
dataTypeOf :: CheckSuiteEventAction -> DataType
$cdataTypeOf :: CheckSuiteEventAction -> DataType
toConstr :: CheckSuiteEventAction -> Constr
$ctoConstr :: CheckSuiteEventAction -> Constr
gunfold :: (forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c CheckSuiteEventAction
$cgunfold :: forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c CheckSuiteEventAction
gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g)
-> CheckSuiteEventAction
-> c CheckSuiteEventAction
$cgfoldl :: forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g)
-> CheckSuiteEventAction
-> c CheckSuiteEventAction
$cp1Data :: Typeable CheckSuiteEventAction
Data)
instance NFData CheckSuiteEventAction where rnf :: CheckSuiteEventAction -> ()
rnf = CheckSuiteEventAction -> ()
forall a. (Generic a, GNFData (Rep a)) => a -> ()
genericRnf
instance FromJSON CheckSuiteEventAction where
parseJSON :: Value -> Parser CheckSuiteEventAction
parseJSON = String
-> (Text -> Parser CheckSuiteEventAction)
-> Value
-> Parser CheckSuiteEventAction
forall a. String -> (Text -> Parser a) -> Value -> Parser a
withText String
"Check suite event action" ((Text -> Parser CheckSuiteEventAction)
-> Value -> Parser CheckSuiteEventAction)
-> (Text -> Parser CheckSuiteEventAction)
-> Value
-> Parser CheckSuiteEventAction
forall a b. (a -> b) -> a -> b
$ \Text
t ->
case Text
t of
Text
"completed" -> CheckSuiteEventAction -> Parser CheckSuiteEventAction
forall (f :: * -> *) a. Applicative f => a -> f a
pure CheckSuiteEventAction
CheckSuiteEventActionCompleted
Text
"requested" -> CheckSuiteEventAction -> Parser CheckSuiteEventAction
forall (f :: * -> *) a. Applicative f => a -> f a
pure CheckSuiteEventAction
CheckSuiteEventActionRequested
Text
"rerequested" -> CheckSuiteEventAction -> Parser CheckSuiteEventAction
forall (f :: * -> *) a. Applicative f => a -> f a
pure CheckSuiteEventAction
CheckSuiteEventActionRerequested
Text
_ -> CheckSuiteEventAction -> Parser CheckSuiteEventAction
forall (f :: * -> *) a. Applicative f => a -> f a
pure (Text -> CheckSuiteEventAction
CheckSuiteEventActionOther Text
t)
data CheckSuiteEvent = CheckSuiteEvent
{ CheckSuiteEvent -> CheckSuiteEventAction
evCheckSuiteAction :: !CheckSuiteEventAction
, CheckSuiteEvent -> HookCheckSuite
evCheckSuiteCheckSuite :: !HookCheckSuite
, CheckSuiteEvent -> HookRepository
evCheckSuiteRepository :: !HookRepository
, CheckSuiteEvent -> Maybe HookOrganization
evCheckSuiteOrganization :: !(Maybe HookOrganization)
, CheckSuiteEvent -> HookUser
evCheckSuiteSender :: !HookUser
, CheckSuiteEvent -> Maybe HookChecksInstallation
evCheckSuiteInstallation :: !(Maybe HookChecksInstallation)
}
deriving (CheckSuiteEvent -> CheckSuiteEvent -> Bool
(CheckSuiteEvent -> CheckSuiteEvent -> Bool)
-> (CheckSuiteEvent -> CheckSuiteEvent -> Bool)
-> Eq CheckSuiteEvent
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: CheckSuiteEvent -> CheckSuiteEvent -> Bool
$c/= :: CheckSuiteEvent -> CheckSuiteEvent -> Bool
== :: CheckSuiteEvent -> CheckSuiteEvent -> Bool
$c== :: CheckSuiteEvent -> CheckSuiteEvent -> Bool
Eq, Int -> CheckSuiteEvent -> ShowS
[CheckSuiteEvent] -> ShowS
CheckSuiteEvent -> String
(Int -> CheckSuiteEvent -> ShowS)
-> (CheckSuiteEvent -> String)
-> ([CheckSuiteEvent] -> ShowS)
-> Show CheckSuiteEvent
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [CheckSuiteEvent] -> ShowS
$cshowList :: [CheckSuiteEvent] -> ShowS
show :: CheckSuiteEvent -> String
$cshow :: CheckSuiteEvent -> String
showsPrec :: Int -> CheckSuiteEvent -> ShowS
$cshowsPrec :: Int -> CheckSuiteEvent -> ShowS
Show, Typeable, Typeable CheckSuiteEvent
DataType
Constr
Typeable CheckSuiteEvent
-> (forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> CheckSuiteEvent -> c CheckSuiteEvent)
-> (forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c CheckSuiteEvent)
-> (CheckSuiteEvent -> Constr)
-> (CheckSuiteEvent -> DataType)
-> (forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c CheckSuiteEvent))
-> (forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c CheckSuiteEvent))
-> ((forall b. Data b => b -> b)
-> CheckSuiteEvent -> CheckSuiteEvent)
-> (forall r r'.
(r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> CheckSuiteEvent -> r)
-> (forall r r'.
(r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> CheckSuiteEvent -> r)
-> (forall u.
(forall d. Data d => d -> u) -> CheckSuiteEvent -> [u])
-> (forall u.
Int -> (forall d. Data d => d -> u) -> CheckSuiteEvent -> u)
-> (forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d)
-> CheckSuiteEvent -> m CheckSuiteEvent)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> CheckSuiteEvent -> m CheckSuiteEvent)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> CheckSuiteEvent -> m CheckSuiteEvent)
-> Data CheckSuiteEvent
CheckSuiteEvent -> DataType
CheckSuiteEvent -> Constr
(forall b. Data b => b -> b) -> CheckSuiteEvent -> CheckSuiteEvent
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> CheckSuiteEvent -> c CheckSuiteEvent
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c CheckSuiteEvent
forall a.
Typeable a
-> (forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> a -> c a)
-> (forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c a)
-> (a -> Constr)
-> (a -> DataType)
-> (forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c a))
-> (forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c a))
-> ((forall b. Data b => b -> b) -> a -> a)
-> (forall r r'.
(r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> a -> r)
-> (forall r r'.
(r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> a -> r)
-> (forall u. (forall d. Data d => d -> u) -> a -> [u])
-> (forall u. Int -> (forall d. Data d => d -> u) -> a -> u)
-> (forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d) -> a -> m a)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> a -> m a)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> a -> m a)
-> Data a
forall u.
Int -> (forall d. Data d => d -> u) -> CheckSuiteEvent -> u
forall u. (forall d. Data d => d -> u) -> CheckSuiteEvent -> [u]
forall r r'.
(r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> CheckSuiteEvent -> r
forall r r'.
(r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> CheckSuiteEvent -> r
forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d)
-> CheckSuiteEvent -> m CheckSuiteEvent
forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> CheckSuiteEvent -> m CheckSuiteEvent
forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c CheckSuiteEvent
forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> CheckSuiteEvent -> c CheckSuiteEvent
forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c CheckSuiteEvent)
forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c CheckSuiteEvent)
$cCheckSuiteEvent :: Constr
$tCheckSuiteEvent :: DataType
gmapMo :: (forall d. Data d => d -> m d)
-> CheckSuiteEvent -> m CheckSuiteEvent
$cgmapMo :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> CheckSuiteEvent -> m CheckSuiteEvent
gmapMp :: (forall d. Data d => d -> m d)
-> CheckSuiteEvent -> m CheckSuiteEvent
$cgmapMp :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> CheckSuiteEvent -> m CheckSuiteEvent
gmapM :: (forall d. Data d => d -> m d)
-> CheckSuiteEvent -> m CheckSuiteEvent
$cgmapM :: forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d)
-> CheckSuiteEvent -> m CheckSuiteEvent
gmapQi :: Int -> (forall d. Data d => d -> u) -> CheckSuiteEvent -> u
$cgmapQi :: forall u.
Int -> (forall d. Data d => d -> u) -> CheckSuiteEvent -> u
gmapQ :: (forall d. Data d => d -> u) -> CheckSuiteEvent -> [u]
$cgmapQ :: forall u. (forall d. Data d => d -> u) -> CheckSuiteEvent -> [u]
gmapQr :: (r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> CheckSuiteEvent -> r
$cgmapQr :: forall r r'.
(r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> CheckSuiteEvent -> r
gmapQl :: (r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> CheckSuiteEvent -> r
$cgmapQl :: forall r r'.
(r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> CheckSuiteEvent -> r
gmapT :: (forall b. Data b => b -> b) -> CheckSuiteEvent -> CheckSuiteEvent
$cgmapT :: (forall b. Data b => b -> b) -> CheckSuiteEvent -> CheckSuiteEvent
dataCast2 :: (forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c CheckSuiteEvent)
$cdataCast2 :: forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c CheckSuiteEvent)
dataCast1 :: (forall d. Data d => c (t d)) -> Maybe (c CheckSuiteEvent)
$cdataCast1 :: forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c CheckSuiteEvent)
dataTypeOf :: CheckSuiteEvent -> DataType
$cdataTypeOf :: CheckSuiteEvent -> DataType
toConstr :: CheckSuiteEvent -> Constr
$ctoConstr :: CheckSuiteEvent -> Constr
gunfold :: (forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c CheckSuiteEvent
$cgunfold :: forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c CheckSuiteEvent
gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> CheckSuiteEvent -> c CheckSuiteEvent
$cgfoldl :: forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> CheckSuiteEvent -> c CheckSuiteEvent
$cp1Data :: Typeable CheckSuiteEvent
Data, (forall x. CheckSuiteEvent -> Rep CheckSuiteEvent x)
-> (forall x. Rep CheckSuiteEvent x -> CheckSuiteEvent)
-> Generic CheckSuiteEvent
forall x. Rep CheckSuiteEvent x -> CheckSuiteEvent
forall x. CheckSuiteEvent -> Rep CheckSuiteEvent x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep CheckSuiteEvent x -> CheckSuiteEvent
$cfrom :: forall x. CheckSuiteEvent -> Rep CheckSuiteEvent x
Generic)
instance EventHasSender CheckSuiteEvent where senderOfEvent :: CheckSuiteEvent -> HookUser
senderOfEvent = CheckSuiteEvent -> HookUser
evCheckSuiteSender
instance EventHasRepo CheckSuiteEvent where repoForEvent :: CheckSuiteEvent -> HookRepository
repoForEvent = CheckSuiteEvent -> HookRepository
evCheckSuiteRepository
instance NFData CheckSuiteEvent where rnf :: CheckSuiteEvent -> ()
rnf = CheckSuiteEvent -> ()
forall a. (Generic a, GNFData (Rep a)) => a -> ()
genericRnf
data CheckRunEventAction
= CheckRunEventActionCreated
| CheckRunEventActionCompleted
| CheckRunEventActionRerequested
| CheckRunEventActionRequestedAction
| CheckRunEventActionOther !Text
deriving (CheckRunEventAction -> CheckRunEventAction -> Bool
(CheckRunEventAction -> CheckRunEventAction -> Bool)
-> (CheckRunEventAction -> CheckRunEventAction -> Bool)
-> Eq CheckRunEventAction
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: CheckRunEventAction -> CheckRunEventAction -> Bool
$c/= :: CheckRunEventAction -> CheckRunEventAction -> Bool
== :: CheckRunEventAction -> CheckRunEventAction -> Bool
$c== :: CheckRunEventAction -> CheckRunEventAction -> Bool
Eq, Eq CheckRunEventAction
Eq CheckRunEventAction
-> (CheckRunEventAction -> CheckRunEventAction -> Ordering)
-> (CheckRunEventAction -> CheckRunEventAction -> Bool)
-> (CheckRunEventAction -> CheckRunEventAction -> Bool)
-> (CheckRunEventAction -> CheckRunEventAction -> Bool)
-> (CheckRunEventAction -> CheckRunEventAction -> Bool)
-> (CheckRunEventAction
-> CheckRunEventAction -> CheckRunEventAction)
-> (CheckRunEventAction
-> CheckRunEventAction -> CheckRunEventAction)
-> Ord CheckRunEventAction
CheckRunEventAction -> CheckRunEventAction -> Bool
CheckRunEventAction -> CheckRunEventAction -> Ordering
CheckRunEventAction -> CheckRunEventAction -> CheckRunEventAction
forall a.
Eq a
-> (a -> a -> Ordering)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> a)
-> (a -> a -> a)
-> Ord a
min :: CheckRunEventAction -> CheckRunEventAction -> CheckRunEventAction
$cmin :: CheckRunEventAction -> CheckRunEventAction -> CheckRunEventAction
max :: CheckRunEventAction -> CheckRunEventAction -> CheckRunEventAction
$cmax :: CheckRunEventAction -> CheckRunEventAction -> CheckRunEventAction
>= :: CheckRunEventAction -> CheckRunEventAction -> Bool
$c>= :: CheckRunEventAction -> CheckRunEventAction -> Bool
> :: CheckRunEventAction -> CheckRunEventAction -> Bool
$c> :: CheckRunEventAction -> CheckRunEventAction -> Bool
<= :: CheckRunEventAction -> CheckRunEventAction -> Bool
$c<= :: CheckRunEventAction -> CheckRunEventAction -> Bool
< :: CheckRunEventAction -> CheckRunEventAction -> Bool
$c< :: CheckRunEventAction -> CheckRunEventAction -> Bool
compare :: CheckRunEventAction -> CheckRunEventAction -> Ordering
$ccompare :: CheckRunEventAction -> CheckRunEventAction -> Ordering
$cp1Ord :: Eq CheckRunEventAction
Ord, Int -> CheckRunEventAction -> ShowS
[CheckRunEventAction] -> ShowS
CheckRunEventAction -> String
(Int -> CheckRunEventAction -> ShowS)
-> (CheckRunEventAction -> String)
-> ([CheckRunEventAction] -> ShowS)
-> Show CheckRunEventAction
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [CheckRunEventAction] -> ShowS
$cshowList :: [CheckRunEventAction] -> ShowS
show :: CheckRunEventAction -> String
$cshow :: CheckRunEventAction -> String
showsPrec :: Int -> CheckRunEventAction -> ShowS
$cshowsPrec :: Int -> CheckRunEventAction -> ShowS
Show, (forall x. CheckRunEventAction -> Rep CheckRunEventAction x)
-> (forall x. Rep CheckRunEventAction x -> CheckRunEventAction)
-> Generic CheckRunEventAction
forall x. Rep CheckRunEventAction x -> CheckRunEventAction
forall x. CheckRunEventAction -> Rep CheckRunEventAction x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep CheckRunEventAction x -> CheckRunEventAction
$cfrom :: forall x. CheckRunEventAction -> Rep CheckRunEventAction x
Generic, Typeable, Typeable CheckRunEventAction
DataType
Constr
Typeable CheckRunEventAction
-> (forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g)
-> CheckRunEventAction
-> c CheckRunEventAction)
-> (forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c CheckRunEventAction)
-> (CheckRunEventAction -> Constr)
-> (CheckRunEventAction -> DataType)
-> (forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c CheckRunEventAction))
-> (forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c CheckRunEventAction))
-> ((forall b. Data b => b -> b)
-> CheckRunEventAction -> CheckRunEventAction)
-> (forall r r'.
(r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> CheckRunEventAction -> r)
-> (forall r r'.
(r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> CheckRunEventAction -> r)
-> (forall u.
(forall d. Data d => d -> u) -> CheckRunEventAction -> [u])
-> (forall u.
Int -> (forall d. Data d => d -> u) -> CheckRunEventAction -> u)
-> (forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d)
-> CheckRunEventAction -> m CheckRunEventAction)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> CheckRunEventAction -> m CheckRunEventAction)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> CheckRunEventAction -> m CheckRunEventAction)
-> Data CheckRunEventAction
CheckRunEventAction -> DataType
CheckRunEventAction -> Constr
(forall b. Data b => b -> b)
-> CheckRunEventAction -> CheckRunEventAction
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g)
-> CheckRunEventAction
-> c CheckRunEventAction
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c CheckRunEventAction
forall a.
Typeable a
-> (forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> a -> c a)
-> (forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c a)
-> (a -> Constr)
-> (a -> DataType)
-> (forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c a))
-> (forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c a))
-> ((forall b. Data b => b -> b) -> a -> a)
-> (forall r r'.
(r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> a -> r)
-> (forall r r'.
(r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> a -> r)
-> (forall u. (forall d. Data d => d -> u) -> a -> [u])
-> (forall u. Int -> (forall d. Data d => d -> u) -> a -> u)
-> (forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d) -> a -> m a)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> a -> m a)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> a -> m a)
-> Data a
forall u.
Int -> (forall d. Data d => d -> u) -> CheckRunEventAction -> u
forall u.
(forall d. Data d => d -> u) -> CheckRunEventAction -> [u]
forall r r'.
(r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> CheckRunEventAction -> r
forall r r'.
(r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> CheckRunEventAction -> r
forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d)
-> CheckRunEventAction -> m CheckRunEventAction
forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> CheckRunEventAction -> m CheckRunEventAction
forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c CheckRunEventAction
forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g)
-> CheckRunEventAction
-> c CheckRunEventAction
forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c CheckRunEventAction)
forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c CheckRunEventAction)
$cCheckRunEventActionOther :: Constr
$cCheckRunEventActionRequestedAction :: Constr
$cCheckRunEventActionRerequested :: Constr
$cCheckRunEventActionCompleted :: Constr
$cCheckRunEventActionCreated :: Constr
$tCheckRunEventAction :: DataType
gmapMo :: (forall d. Data d => d -> m d)
-> CheckRunEventAction -> m CheckRunEventAction
$cgmapMo :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> CheckRunEventAction -> m CheckRunEventAction
gmapMp :: (forall d. Data d => d -> m d)
-> CheckRunEventAction -> m CheckRunEventAction
$cgmapMp :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> CheckRunEventAction -> m CheckRunEventAction
gmapM :: (forall d. Data d => d -> m d)
-> CheckRunEventAction -> m CheckRunEventAction
$cgmapM :: forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d)
-> CheckRunEventAction -> m CheckRunEventAction
gmapQi :: Int -> (forall d. Data d => d -> u) -> CheckRunEventAction -> u
$cgmapQi :: forall u.
Int -> (forall d. Data d => d -> u) -> CheckRunEventAction -> u
gmapQ :: (forall d. Data d => d -> u) -> CheckRunEventAction -> [u]
$cgmapQ :: forall u.
(forall d. Data d => d -> u) -> CheckRunEventAction -> [u]
gmapQr :: (r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> CheckRunEventAction -> r
$cgmapQr :: forall r r'.
(r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> CheckRunEventAction -> r
gmapQl :: (r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> CheckRunEventAction -> r
$cgmapQl :: forall r r'.
(r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> CheckRunEventAction -> r
gmapT :: (forall b. Data b => b -> b)
-> CheckRunEventAction -> CheckRunEventAction
$cgmapT :: (forall b. Data b => b -> b)
-> CheckRunEventAction -> CheckRunEventAction
dataCast2 :: (forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c CheckRunEventAction)
$cdataCast2 :: forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c CheckRunEventAction)
dataCast1 :: (forall d. Data d => c (t d)) -> Maybe (c CheckRunEventAction)
$cdataCast1 :: forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c CheckRunEventAction)
dataTypeOf :: CheckRunEventAction -> DataType
$cdataTypeOf :: CheckRunEventAction -> DataType
toConstr :: CheckRunEventAction -> Constr
$ctoConstr :: CheckRunEventAction -> Constr
gunfold :: (forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c CheckRunEventAction
$cgunfold :: forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c CheckRunEventAction
gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g)
-> CheckRunEventAction
-> c CheckRunEventAction
$cgfoldl :: forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g)
-> CheckRunEventAction
-> c CheckRunEventAction
$cp1Data :: Typeable CheckRunEventAction
Data)
instance NFData CheckRunEventAction where rnf :: CheckRunEventAction -> ()
rnf = CheckRunEventAction -> ()
forall a. (Generic a, GNFData (Rep a)) => a -> ()
genericRnf
instance FromJSON CheckRunEventAction where
parseJSON :: Value -> Parser CheckRunEventAction
parseJSON = String
-> (Text -> Parser CheckRunEventAction)
-> Value
-> Parser CheckRunEventAction
forall a. String -> (Text -> Parser a) -> Value -> Parser a
withText String
"Check run event action" ((Text -> Parser CheckRunEventAction)
-> Value -> Parser CheckRunEventAction)
-> (Text -> Parser CheckRunEventAction)
-> Value
-> Parser CheckRunEventAction
forall a b. (a -> b) -> a -> b
$ \Text
t ->
case Text
t of
Text
"created" -> CheckRunEventAction -> Parser CheckRunEventAction
forall (f :: * -> *) a. Applicative f => a -> f a
pure CheckRunEventAction
CheckRunEventActionCreated
Text
"completed" -> CheckRunEventAction -> Parser CheckRunEventAction
forall (f :: * -> *) a. Applicative f => a -> f a
pure CheckRunEventAction
CheckRunEventActionCompleted
Text
"rerequested" -> CheckRunEventAction -> Parser CheckRunEventAction
forall (f :: * -> *) a. Applicative f => a -> f a
pure CheckRunEventAction
CheckRunEventActionRerequested
Text
"requested_action" -> CheckRunEventAction -> Parser CheckRunEventAction
forall (f :: * -> *) a. Applicative f => a -> f a
pure CheckRunEventAction
CheckRunEventActionRequestedAction
Text
_ -> CheckRunEventAction -> Parser CheckRunEventAction
forall (f :: * -> *) a. Applicative f => a -> f a
pure (Text -> CheckRunEventAction
CheckRunEventActionOther Text
t)
data CheckRunEvent = CheckRunEvent
{ CheckRunEvent -> CheckRunEventAction
evCheckRunAction :: !CheckRunEventAction
, CheckRunEvent -> HookCheckRun
evCheckRunCheckRun :: !HookCheckRun
, CheckRunEvent -> Maybe HookCheckRunRequestedAction
evCheckRunRequestedAction :: !(Maybe HookCheckRunRequestedAction)
, CheckRunEvent -> HookRepository
evCheckRunRepository :: !HookRepository
, CheckRunEvent -> Maybe HookOrganization
evCheckRunOrganization :: !(Maybe HookOrganization)
, CheckRunEvent -> HookUser
evCheckRunSender :: !HookUser
, CheckRunEvent -> Maybe HookChecksInstallation
evCheckRunInstallation :: !(Maybe HookChecksInstallation)
}
deriving (CheckRunEvent -> CheckRunEvent -> Bool
(CheckRunEvent -> CheckRunEvent -> Bool)
-> (CheckRunEvent -> CheckRunEvent -> Bool) -> Eq CheckRunEvent
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: CheckRunEvent -> CheckRunEvent -> Bool
$c/= :: CheckRunEvent -> CheckRunEvent -> Bool
== :: CheckRunEvent -> CheckRunEvent -> Bool
$c== :: CheckRunEvent -> CheckRunEvent -> Bool
Eq, Int -> CheckRunEvent -> ShowS
[CheckRunEvent] -> ShowS
CheckRunEvent -> String
(Int -> CheckRunEvent -> ShowS)
-> (CheckRunEvent -> String)
-> ([CheckRunEvent] -> ShowS)
-> Show CheckRunEvent
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [CheckRunEvent] -> ShowS
$cshowList :: [CheckRunEvent] -> ShowS
show :: CheckRunEvent -> String
$cshow :: CheckRunEvent -> String
showsPrec :: Int -> CheckRunEvent -> ShowS
$cshowsPrec :: Int -> CheckRunEvent -> ShowS
Show, Typeable, Typeable CheckRunEvent
DataType
Constr
Typeable CheckRunEvent
-> (forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> CheckRunEvent -> c CheckRunEvent)
-> (forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c CheckRunEvent)
-> (CheckRunEvent -> Constr)
-> (CheckRunEvent -> DataType)
-> (forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c CheckRunEvent))
-> (forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c CheckRunEvent))
-> ((forall b. Data b => b -> b) -> CheckRunEvent -> CheckRunEvent)
-> (forall r r'.
(r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> CheckRunEvent -> r)
-> (forall r r'.
(r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> CheckRunEvent -> r)
-> (forall u. (forall d. Data d => d -> u) -> CheckRunEvent -> [u])
-> (forall u.
Int -> (forall d. Data d => d -> u) -> CheckRunEvent -> u)
-> (forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d) -> CheckRunEvent -> m CheckRunEvent)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> CheckRunEvent -> m CheckRunEvent)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> CheckRunEvent -> m CheckRunEvent)
-> Data CheckRunEvent
CheckRunEvent -> DataType
CheckRunEvent -> Constr
(forall b. Data b => b -> b) -> CheckRunEvent -> CheckRunEvent
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> CheckRunEvent -> c CheckRunEvent
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c CheckRunEvent
forall a.
Typeable a
-> (forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> a -> c a)
-> (forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c a)
-> (a -> Constr)
-> (a -> DataType)
-> (forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c a))
-> (forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c a))
-> ((forall b. Data b => b -> b) -> a -> a)
-> (forall r r'.
(r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> a -> r)
-> (forall r r'.
(r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> a -> r)
-> (forall u. (forall d. Data d => d -> u) -> a -> [u])
-> (forall u. Int -> (forall d. Data d => d -> u) -> a -> u)
-> (forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d) -> a -> m a)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> a -> m a)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> a -> m a)
-> Data a
forall u. Int -> (forall d. Data d => d -> u) -> CheckRunEvent -> u
forall u. (forall d. Data d => d -> u) -> CheckRunEvent -> [u]
forall r r'.
(r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> CheckRunEvent -> r
forall r r'.
(r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> CheckRunEvent -> r
forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d) -> CheckRunEvent -> m CheckRunEvent
forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> CheckRunEvent -> m CheckRunEvent
forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c CheckRunEvent
forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> CheckRunEvent -> c CheckRunEvent
forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c CheckRunEvent)
forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c CheckRunEvent)
$cCheckRunEvent :: Constr
$tCheckRunEvent :: DataType
gmapMo :: (forall d. Data d => d -> m d) -> CheckRunEvent -> m CheckRunEvent
$cgmapMo :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> CheckRunEvent -> m CheckRunEvent
gmapMp :: (forall d. Data d => d -> m d) -> CheckRunEvent -> m CheckRunEvent
$cgmapMp :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> CheckRunEvent -> m CheckRunEvent
gmapM :: (forall d. Data d => d -> m d) -> CheckRunEvent -> m CheckRunEvent
$cgmapM :: forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d) -> CheckRunEvent -> m CheckRunEvent
gmapQi :: Int -> (forall d. Data d => d -> u) -> CheckRunEvent -> u
$cgmapQi :: forall u. Int -> (forall d. Data d => d -> u) -> CheckRunEvent -> u
gmapQ :: (forall d. Data d => d -> u) -> CheckRunEvent -> [u]
$cgmapQ :: forall u. (forall d. Data d => d -> u) -> CheckRunEvent -> [u]
gmapQr :: (r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> CheckRunEvent -> r
$cgmapQr :: forall r r'.
(r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> CheckRunEvent -> r
gmapQl :: (r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> CheckRunEvent -> r
$cgmapQl :: forall r r'.
(r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> CheckRunEvent -> r
gmapT :: (forall b. Data b => b -> b) -> CheckRunEvent -> CheckRunEvent
$cgmapT :: (forall b. Data b => b -> b) -> CheckRunEvent -> CheckRunEvent
dataCast2 :: (forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c CheckRunEvent)
$cdataCast2 :: forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c CheckRunEvent)
dataCast1 :: (forall d. Data d => c (t d)) -> Maybe (c CheckRunEvent)
$cdataCast1 :: forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c CheckRunEvent)
dataTypeOf :: CheckRunEvent -> DataType
$cdataTypeOf :: CheckRunEvent -> DataType
toConstr :: CheckRunEvent -> Constr
$ctoConstr :: CheckRunEvent -> Constr
gunfold :: (forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c CheckRunEvent
$cgunfold :: forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c CheckRunEvent
gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> CheckRunEvent -> c CheckRunEvent
$cgfoldl :: forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> CheckRunEvent -> c CheckRunEvent
$cp1Data :: Typeable CheckRunEvent
Data, (forall x. CheckRunEvent -> Rep CheckRunEvent x)
-> (forall x. Rep CheckRunEvent x -> CheckRunEvent)
-> Generic CheckRunEvent
forall x. Rep CheckRunEvent x -> CheckRunEvent
forall x. CheckRunEvent -> Rep CheckRunEvent x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep CheckRunEvent x -> CheckRunEvent
$cfrom :: forall x. CheckRunEvent -> Rep CheckRunEvent x
Generic)
instance EventHasSender CheckRunEvent where senderOfEvent :: CheckRunEvent -> HookUser
senderOfEvent = CheckRunEvent -> HookUser
evCheckRunSender
instance EventHasRepo CheckRunEvent where repoForEvent :: CheckRunEvent -> HookRepository
repoForEvent = CheckRunEvent -> HookRepository
evCheckRunRepository
instance NFData CheckRunEvent where rnf :: CheckRunEvent -> ()
rnf = CheckRunEvent -> ()
forall a. (Generic a, GNFData (Rep a)) => a -> ()
genericRnf
data
=
| !Text
deriving (CommitCommentEventAction -> CommitCommentEventAction -> Bool
(CommitCommentEventAction -> CommitCommentEventAction -> Bool)
-> (CommitCommentEventAction -> CommitCommentEventAction -> Bool)
-> Eq CommitCommentEventAction
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: CommitCommentEventAction -> CommitCommentEventAction -> Bool
$c/= :: CommitCommentEventAction -> CommitCommentEventAction -> Bool
== :: CommitCommentEventAction -> CommitCommentEventAction -> Bool
$c== :: CommitCommentEventAction -> CommitCommentEventAction -> Bool
Eq, Eq CommitCommentEventAction
Eq CommitCommentEventAction
-> (CommitCommentEventAction
-> CommitCommentEventAction -> Ordering)
-> (CommitCommentEventAction -> CommitCommentEventAction -> Bool)
-> (CommitCommentEventAction -> CommitCommentEventAction -> Bool)
-> (CommitCommentEventAction -> CommitCommentEventAction -> Bool)
-> (CommitCommentEventAction -> CommitCommentEventAction -> Bool)
-> (CommitCommentEventAction
-> CommitCommentEventAction -> CommitCommentEventAction)
-> (CommitCommentEventAction
-> CommitCommentEventAction -> CommitCommentEventAction)
-> Ord CommitCommentEventAction
CommitCommentEventAction -> CommitCommentEventAction -> Bool
CommitCommentEventAction -> CommitCommentEventAction -> Ordering
CommitCommentEventAction
-> CommitCommentEventAction -> CommitCommentEventAction
forall a.
Eq a
-> (a -> a -> Ordering)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> a)
-> (a -> a -> a)
-> Ord a
min :: CommitCommentEventAction
-> CommitCommentEventAction -> CommitCommentEventAction
$cmin :: CommitCommentEventAction
-> CommitCommentEventAction -> CommitCommentEventAction
max :: CommitCommentEventAction
-> CommitCommentEventAction -> CommitCommentEventAction
$cmax :: CommitCommentEventAction
-> CommitCommentEventAction -> CommitCommentEventAction
>= :: CommitCommentEventAction -> CommitCommentEventAction -> Bool
$c>= :: CommitCommentEventAction -> CommitCommentEventAction -> Bool
> :: CommitCommentEventAction -> CommitCommentEventAction -> Bool
$c> :: CommitCommentEventAction -> CommitCommentEventAction -> Bool
<= :: CommitCommentEventAction -> CommitCommentEventAction -> Bool
$c<= :: CommitCommentEventAction -> CommitCommentEventAction -> Bool
< :: CommitCommentEventAction -> CommitCommentEventAction -> Bool
$c< :: CommitCommentEventAction -> CommitCommentEventAction -> Bool
compare :: CommitCommentEventAction -> CommitCommentEventAction -> Ordering
$ccompare :: CommitCommentEventAction -> CommitCommentEventAction -> Ordering
$cp1Ord :: Eq CommitCommentEventAction
Ord, Int -> CommitCommentEventAction -> ShowS
[CommitCommentEventAction] -> ShowS
CommitCommentEventAction -> String
(Int -> CommitCommentEventAction -> ShowS)
-> (CommitCommentEventAction -> String)
-> ([CommitCommentEventAction] -> ShowS)
-> Show CommitCommentEventAction
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [CommitCommentEventAction] -> ShowS
$cshowList :: [CommitCommentEventAction] -> ShowS
show :: CommitCommentEventAction -> String
$cshow :: CommitCommentEventAction -> String
showsPrec :: Int -> CommitCommentEventAction -> ShowS
$cshowsPrec :: Int -> CommitCommentEventAction -> ShowS
Show, (forall x.
CommitCommentEventAction -> Rep CommitCommentEventAction x)
-> (forall x.
Rep CommitCommentEventAction x -> CommitCommentEventAction)
-> Generic CommitCommentEventAction
forall x.
Rep CommitCommentEventAction x -> CommitCommentEventAction
forall x.
CommitCommentEventAction -> Rep CommitCommentEventAction x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x.
Rep CommitCommentEventAction x -> CommitCommentEventAction
$cfrom :: forall x.
CommitCommentEventAction -> Rep CommitCommentEventAction x
Generic, Typeable, )
instance NFData CommitCommentEventAction where rnf :: CommitCommentEventAction -> ()
rnf = CommitCommentEventAction -> ()
forall a. (Generic a, GNFData (Rep a)) => a -> ()
genericRnf
instance FromJSON CommitCommentEventAction where
parseJSON :: Value -> Parser CommitCommentEventAction
parseJSON = String
-> (Text -> Parser CommitCommentEventAction)
-> Value
-> Parser CommitCommentEventAction
forall a. String -> (Text -> Parser a) -> Value -> Parser a
withText String
"Commit comment event action" ((Text -> Parser CommitCommentEventAction)
-> Value -> Parser CommitCommentEventAction)
-> (Text -> Parser CommitCommentEventAction)
-> Value
-> Parser CommitCommentEventAction
forall a b. (a -> b) -> a -> b
$ \Text
t ->
case Text
t of
Text
"created" -> CommitCommentEventAction -> Parser CommitCommentEventAction
forall (f :: * -> *) a. Applicative f => a -> f a
pure CommitCommentEventAction
CommitCommentActionCreated
Text
_ -> CommitCommentEventAction -> Parser CommitCommentEventAction
forall (f :: * -> *) a. Applicative f => a -> f a
pure (Text -> CommitCommentEventAction
CommitCommentActionOther Text
t)
data =
{ :: !CommitCommentEventAction
, :: !HookCommitComment
, :: !HookRepository
, :: !HookUser
}
deriving (CommitCommentEvent -> CommitCommentEvent -> Bool
(CommitCommentEvent -> CommitCommentEvent -> Bool)
-> (CommitCommentEvent -> CommitCommentEvent -> Bool)
-> Eq CommitCommentEvent
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: CommitCommentEvent -> CommitCommentEvent -> Bool
$c/= :: CommitCommentEvent -> CommitCommentEvent -> Bool
== :: CommitCommentEvent -> CommitCommentEvent -> Bool
$c== :: CommitCommentEvent -> CommitCommentEvent -> Bool
Eq, Int -> CommitCommentEvent -> ShowS
[CommitCommentEvent] -> ShowS
CommitCommentEvent -> String
(Int -> CommitCommentEvent -> ShowS)
-> (CommitCommentEvent -> String)
-> ([CommitCommentEvent] -> ShowS)
-> Show CommitCommentEvent
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [CommitCommentEvent] -> ShowS
$cshowList :: [CommitCommentEvent] -> ShowS
show :: CommitCommentEvent -> String
$cshow :: CommitCommentEvent -> String
showsPrec :: Int -> CommitCommentEvent -> ShowS
$cshowsPrec :: Int -> CommitCommentEvent -> ShowS
Show, Typeable, , (forall x. CommitCommentEvent -> Rep CommitCommentEvent x)
-> (forall x. Rep CommitCommentEvent x -> CommitCommentEvent)
-> Generic CommitCommentEvent
forall x. Rep CommitCommentEvent x -> CommitCommentEvent
forall x. CommitCommentEvent -> Rep CommitCommentEvent x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep CommitCommentEvent x -> CommitCommentEvent
$cfrom :: forall x. CommitCommentEvent -> Rep CommitCommentEvent x
Generic)
instance EventHasSender CommitCommentEvent where senderOfEvent :: CommitCommentEvent -> HookUser
senderOfEvent = CommitCommentEvent -> HookUser
evCommitCommentSender
instance EventHasRepo CommitCommentEvent where repoForEvent :: CommitCommentEvent -> HookRepository
repoForEvent = CommitCommentEvent -> HookRepository
evCommitCommentRepo
instance NFData CommitCommentEvent where rnf :: CommitCommentEvent -> ()
rnf = CommitCommentEvent -> ()
forall a. (Generic a, GNFData (Rep a)) => a -> ()
genericRnf
data CreateEvent = CreateEvent
{ CreateEvent -> Text
evCreateRef :: !Text
, CreateEvent -> Text
evCreateRefType :: !Text
, CreateEvent -> Text
evCreateMasterBranch :: !Text
, CreateEvent -> Text
evCreateDescription :: !Text
, CreateEvent -> OwnerType
evCreatePusherType :: !OwnerType
, CreateEvent -> HookRepository
evCreateRepo :: !HookRepository
, CreateEvent -> HookUser
evCreateSender :: !HookUser
}
deriving (CreateEvent -> CreateEvent -> Bool
(CreateEvent -> CreateEvent -> Bool)
-> (CreateEvent -> CreateEvent -> Bool) -> Eq CreateEvent
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: CreateEvent -> CreateEvent -> Bool
$c/= :: CreateEvent -> CreateEvent -> Bool
== :: CreateEvent -> CreateEvent -> Bool
$c== :: CreateEvent -> CreateEvent -> Bool
Eq, Int -> CreateEvent -> ShowS
[CreateEvent] -> ShowS
CreateEvent -> String
(Int -> CreateEvent -> ShowS)
-> (CreateEvent -> String)
-> ([CreateEvent] -> ShowS)
-> Show CreateEvent
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [CreateEvent] -> ShowS
$cshowList :: [CreateEvent] -> ShowS
show :: CreateEvent -> String
$cshow :: CreateEvent -> String
showsPrec :: Int -> CreateEvent -> ShowS
$cshowsPrec :: Int -> CreateEvent -> ShowS
Show, Typeable, Typeable CreateEvent
DataType
Constr
Typeable CreateEvent
-> (forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> CreateEvent -> c CreateEvent)
-> (forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c CreateEvent)
-> (CreateEvent -> Constr)
-> (CreateEvent -> DataType)
-> (forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c CreateEvent))
-> (forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c CreateEvent))
-> ((forall b. Data b => b -> b) -> CreateEvent -> CreateEvent)
-> (forall r r'.
(r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> CreateEvent -> r)
-> (forall r r'.
(r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> CreateEvent -> r)
-> (forall u. (forall d. Data d => d -> u) -> CreateEvent -> [u])
-> (forall u.
Int -> (forall d. Data d => d -> u) -> CreateEvent -> u)
-> (forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d) -> CreateEvent -> m CreateEvent)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> CreateEvent -> m CreateEvent)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> CreateEvent -> m CreateEvent)
-> Data CreateEvent
CreateEvent -> DataType
CreateEvent -> Constr
(forall b. Data b => b -> b) -> CreateEvent -> CreateEvent
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> CreateEvent -> c CreateEvent
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c CreateEvent
forall a.
Typeable a
-> (forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> a -> c a)
-> (forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c a)
-> (a -> Constr)
-> (a -> DataType)
-> (forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c a))
-> (forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c a))
-> ((forall b. Data b => b -> b) -> a -> a)
-> (forall r r'.
(r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> a -> r)
-> (forall r r'.
(r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> a -> r)
-> (forall u. (forall d. Data d => d -> u) -> a -> [u])
-> (forall u. Int -> (forall d. Data d => d -> u) -> a -> u)
-> (forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d) -> a -> m a)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> a -> m a)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> a -> m a)
-> Data a
forall u. Int -> (forall d. Data d => d -> u) -> CreateEvent -> u
forall u. (forall d. Data d => d -> u) -> CreateEvent -> [u]
forall r r'.
(r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> CreateEvent -> r
forall r r'.
(r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> CreateEvent -> r
forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d) -> CreateEvent -> m CreateEvent
forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> CreateEvent -> m CreateEvent
forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c CreateEvent
forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> CreateEvent -> c CreateEvent
forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c CreateEvent)
forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c CreateEvent)
$cCreateEvent :: Constr
$tCreateEvent :: DataType
gmapMo :: (forall d. Data d => d -> m d) -> CreateEvent -> m CreateEvent
$cgmapMo :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> CreateEvent -> m CreateEvent
gmapMp :: (forall d. Data d => d -> m d) -> CreateEvent -> m CreateEvent
$cgmapMp :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> CreateEvent -> m CreateEvent
gmapM :: (forall d. Data d => d -> m d) -> CreateEvent -> m CreateEvent
$cgmapM :: forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d) -> CreateEvent -> m CreateEvent
gmapQi :: Int -> (forall d. Data d => d -> u) -> CreateEvent -> u
$cgmapQi :: forall u. Int -> (forall d. Data d => d -> u) -> CreateEvent -> u
gmapQ :: (forall d. Data d => d -> u) -> CreateEvent -> [u]
$cgmapQ :: forall u. (forall d. Data d => d -> u) -> CreateEvent -> [u]
gmapQr :: (r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> CreateEvent -> r
$cgmapQr :: forall r r'.
(r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> CreateEvent -> r
gmapQl :: (r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> CreateEvent -> r
$cgmapQl :: forall r r'.
(r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> CreateEvent -> r
gmapT :: (forall b. Data b => b -> b) -> CreateEvent -> CreateEvent
$cgmapT :: (forall b. Data b => b -> b) -> CreateEvent -> CreateEvent
dataCast2 :: (forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c CreateEvent)
$cdataCast2 :: forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c CreateEvent)
dataCast1 :: (forall d. Data d => c (t d)) -> Maybe (c CreateEvent)
$cdataCast1 :: forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c CreateEvent)
dataTypeOf :: CreateEvent -> DataType
$cdataTypeOf :: CreateEvent -> DataType
toConstr :: CreateEvent -> Constr
$ctoConstr :: CreateEvent -> Constr
gunfold :: (forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c CreateEvent
$cgunfold :: forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c CreateEvent
gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> CreateEvent -> c CreateEvent
$cgfoldl :: forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> CreateEvent -> c CreateEvent
$cp1Data :: Typeable CreateEvent
Data, (forall x. CreateEvent -> Rep CreateEvent x)
-> (forall x. Rep CreateEvent x -> CreateEvent)
-> Generic CreateEvent
forall x. Rep CreateEvent x -> CreateEvent
forall x. CreateEvent -> Rep CreateEvent x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep CreateEvent x -> CreateEvent
$cfrom :: forall x. CreateEvent -> Rep CreateEvent x
Generic)
instance EventHasSender CreateEvent where senderOfEvent :: CreateEvent -> HookUser
senderOfEvent = CreateEvent -> HookUser
evCreateSender
instance EventHasRepo CreateEvent where repoForEvent :: CreateEvent -> HookRepository
repoForEvent = CreateEvent -> HookRepository
evCreateRepo
instance NFData CreateEvent where rnf :: CreateEvent -> ()
rnf = CreateEvent -> ()
forall a. (Generic a, GNFData (Rep a)) => a -> ()
genericRnf
data DeleteEvent = DeleteEvent
{ DeleteEvent -> Text
evDeleteRef :: !Text
, DeleteEvent -> Text
evDeleteRefType :: !Text
, DeleteEvent -> OwnerType
evDeletePusherType :: !OwnerType
, DeleteEvent -> HookRepository
evDeleteRepo :: !HookRepository
, DeleteEvent -> HookUser
evDeleteSender :: !HookUser
}
deriving (DeleteEvent -> DeleteEvent -> Bool
(DeleteEvent -> DeleteEvent -> Bool)
-> (DeleteEvent -> DeleteEvent -> Bool) -> Eq DeleteEvent
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: DeleteEvent -> DeleteEvent -> Bool
$c/= :: DeleteEvent -> DeleteEvent -> Bool
== :: DeleteEvent -> DeleteEvent -> Bool
$c== :: DeleteEvent -> DeleteEvent -> Bool
Eq, Int -> DeleteEvent -> ShowS
[DeleteEvent] -> ShowS
DeleteEvent -> String
(Int -> DeleteEvent -> ShowS)
-> (DeleteEvent -> String)
-> ([DeleteEvent] -> ShowS)
-> Show DeleteEvent
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [DeleteEvent] -> ShowS
$cshowList :: [DeleteEvent] -> ShowS
show :: DeleteEvent -> String
$cshow :: DeleteEvent -> String
showsPrec :: Int -> DeleteEvent -> ShowS
$cshowsPrec :: Int -> DeleteEvent -> ShowS
Show, Typeable, Typeable DeleteEvent
DataType
Constr
Typeable DeleteEvent
-> (forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> DeleteEvent -> c DeleteEvent)
-> (forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c DeleteEvent)
-> (DeleteEvent -> Constr)
-> (DeleteEvent -> DataType)
-> (forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c DeleteEvent))
-> (forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c DeleteEvent))
-> ((forall b. Data b => b -> b) -> DeleteEvent -> DeleteEvent)
-> (forall r r'.
(r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> DeleteEvent -> r)
-> (forall r r'.
(r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> DeleteEvent -> r)
-> (forall u. (forall d. Data d => d -> u) -> DeleteEvent -> [u])
-> (forall u.
Int -> (forall d. Data d => d -> u) -> DeleteEvent -> u)
-> (forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d) -> DeleteEvent -> m DeleteEvent)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> DeleteEvent -> m DeleteEvent)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> DeleteEvent -> m DeleteEvent)
-> Data DeleteEvent
DeleteEvent -> DataType
DeleteEvent -> Constr
(forall b. Data b => b -> b) -> DeleteEvent -> DeleteEvent
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> DeleteEvent -> c DeleteEvent
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c DeleteEvent
forall a.
Typeable a
-> (forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> a -> c a)
-> (forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c a)
-> (a -> Constr)
-> (a -> DataType)
-> (forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c a))
-> (forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c a))
-> ((forall b. Data b => b -> b) -> a -> a)
-> (forall r r'.
(r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> a -> r)
-> (forall r r'.
(r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> a -> r)
-> (forall u. (forall d. Data d => d -> u) -> a -> [u])
-> (forall u. Int -> (forall d. Data d => d -> u) -> a -> u)
-> (forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d) -> a -> m a)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> a -> m a)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> a -> m a)
-> Data a
forall u. Int -> (forall d. Data d => d -> u) -> DeleteEvent -> u
forall u. (forall d. Data d => d -> u) -> DeleteEvent -> [u]
forall r r'.
(r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> DeleteEvent -> r
forall r r'.
(r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> DeleteEvent -> r
forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d) -> DeleteEvent -> m DeleteEvent
forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> DeleteEvent -> m DeleteEvent
forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c DeleteEvent
forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> DeleteEvent -> c DeleteEvent
forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c DeleteEvent)
forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c DeleteEvent)
$cDeleteEvent :: Constr
$tDeleteEvent :: DataType
gmapMo :: (forall d. Data d => d -> m d) -> DeleteEvent -> m DeleteEvent
$cgmapMo :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> DeleteEvent -> m DeleteEvent
gmapMp :: (forall d. Data d => d -> m d) -> DeleteEvent -> m DeleteEvent
$cgmapMp :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> DeleteEvent -> m DeleteEvent
gmapM :: (forall d. Data d => d -> m d) -> DeleteEvent -> m DeleteEvent
$cgmapM :: forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d) -> DeleteEvent -> m DeleteEvent
gmapQi :: Int -> (forall d. Data d => d -> u) -> DeleteEvent -> u
$cgmapQi :: forall u. Int -> (forall d. Data d => d -> u) -> DeleteEvent -> u
gmapQ :: (forall d. Data d => d -> u) -> DeleteEvent -> [u]
$cgmapQ :: forall u. (forall d. Data d => d -> u) -> DeleteEvent -> [u]
gmapQr :: (r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> DeleteEvent -> r
$cgmapQr :: forall r r'.
(r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> DeleteEvent -> r
gmapQl :: (r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> DeleteEvent -> r
$cgmapQl :: forall r r'.
(r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> DeleteEvent -> r
gmapT :: (forall b. Data b => b -> b) -> DeleteEvent -> DeleteEvent
$cgmapT :: (forall b. Data b => b -> b) -> DeleteEvent -> DeleteEvent
dataCast2 :: (forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c DeleteEvent)
$cdataCast2 :: forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c DeleteEvent)
dataCast1 :: (forall d. Data d => c (t d)) -> Maybe (c DeleteEvent)
$cdataCast1 :: forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c DeleteEvent)
dataTypeOf :: DeleteEvent -> DataType
$cdataTypeOf :: DeleteEvent -> DataType
toConstr :: DeleteEvent -> Constr
$ctoConstr :: DeleteEvent -> Constr
gunfold :: (forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c DeleteEvent
$cgunfold :: forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c DeleteEvent
gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> DeleteEvent -> c DeleteEvent
$cgfoldl :: forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> DeleteEvent -> c DeleteEvent
$cp1Data :: Typeable DeleteEvent
Data, (forall x. DeleteEvent -> Rep DeleteEvent x)
-> (forall x. Rep DeleteEvent x -> DeleteEvent)
-> Generic DeleteEvent
forall x. Rep DeleteEvent x -> DeleteEvent
forall x. DeleteEvent -> Rep DeleteEvent x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep DeleteEvent x -> DeleteEvent
$cfrom :: forall x. DeleteEvent -> Rep DeleteEvent x
Generic)
instance EventHasSender DeleteEvent where senderOfEvent :: DeleteEvent -> HookUser
senderOfEvent = DeleteEvent -> HookUser
evDeleteSender
instance EventHasRepo DeleteEvent where repoForEvent :: DeleteEvent -> HookRepository
repoForEvent = DeleteEvent -> HookRepository
evDeleteRepo
instance NFData DeleteEvent where rnf :: DeleteEvent -> ()
rnf = DeleteEvent -> ()
forall a. (Generic a, GNFData (Rep a)) => a -> ()
genericRnf
data DeploymentEvent = DeploymentEvent
{ DeploymentEvent -> HookDeployment
evDeploymentInfo :: !HookDeployment
, DeploymentEvent -> HookRepository
evDeploymentRepo :: !HookRepository
, DeploymentEvent -> HookUser
evDeploymentSender :: !HookUser
}
deriving (DeploymentEvent -> DeploymentEvent -> Bool
(DeploymentEvent -> DeploymentEvent -> Bool)
-> (DeploymentEvent -> DeploymentEvent -> Bool)
-> Eq DeploymentEvent
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: DeploymentEvent -> DeploymentEvent -> Bool
$c/= :: DeploymentEvent -> DeploymentEvent -> Bool
== :: DeploymentEvent -> DeploymentEvent -> Bool
$c== :: DeploymentEvent -> DeploymentEvent -> Bool
Eq, Int -> DeploymentEvent -> ShowS
[DeploymentEvent] -> ShowS
DeploymentEvent -> String
(Int -> DeploymentEvent -> ShowS)
-> (DeploymentEvent -> String)
-> ([DeploymentEvent] -> ShowS)
-> Show DeploymentEvent
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [DeploymentEvent] -> ShowS
$cshowList :: [DeploymentEvent] -> ShowS
show :: DeploymentEvent -> String
$cshow :: DeploymentEvent -> String
showsPrec :: Int -> DeploymentEvent -> ShowS
$cshowsPrec :: Int -> DeploymentEvent -> ShowS
Show, Typeable, Typeable DeploymentEvent
DataType
Constr
Typeable DeploymentEvent
-> (forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> DeploymentEvent -> c DeploymentEvent)
-> (forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c DeploymentEvent)
-> (DeploymentEvent -> Constr)
-> (DeploymentEvent -> DataType)
-> (forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c DeploymentEvent))
-> (forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c DeploymentEvent))
-> ((forall b. Data b => b -> b)
-> DeploymentEvent -> DeploymentEvent)
-> (forall r r'.
(r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> DeploymentEvent -> r)
-> (forall r r'.
(r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> DeploymentEvent -> r)
-> (forall u.
(forall d. Data d => d -> u) -> DeploymentEvent -> [u])
-> (forall u.
Int -> (forall d. Data d => d -> u) -> DeploymentEvent -> u)
-> (forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d)
-> DeploymentEvent -> m DeploymentEvent)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> DeploymentEvent -> m DeploymentEvent)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> DeploymentEvent -> m DeploymentEvent)
-> Data DeploymentEvent
DeploymentEvent -> DataType
DeploymentEvent -> Constr
(forall b. Data b => b -> b) -> DeploymentEvent -> DeploymentEvent
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> DeploymentEvent -> c DeploymentEvent
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c DeploymentEvent
forall a.
Typeable a
-> (forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> a -> c a)
-> (forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c a)
-> (a -> Constr)
-> (a -> DataType)
-> (forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c a))
-> (forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c a))
-> ((forall b. Data b => b -> b) -> a -> a)
-> (forall r r'.
(r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> a -> r)
-> (forall r r'.
(r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> a -> r)
-> (forall u. (forall d. Data d => d -> u) -> a -> [u])
-> (forall u. Int -> (forall d. Data d => d -> u) -> a -> u)
-> (forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d) -> a -> m a)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> a -> m a)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> a -> m a)
-> Data a
forall u.
Int -> (forall d. Data d => d -> u) -> DeploymentEvent -> u
forall u. (forall d. Data d => d -> u) -> DeploymentEvent -> [u]
forall r r'.
(r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> DeploymentEvent -> r
forall r r'.
(r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> DeploymentEvent -> r
forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d)
-> DeploymentEvent -> m DeploymentEvent
forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> DeploymentEvent -> m DeploymentEvent
forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c DeploymentEvent
forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> DeploymentEvent -> c DeploymentEvent
forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c DeploymentEvent)
forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c DeploymentEvent)
$cDeploymentEvent :: Constr
$tDeploymentEvent :: DataType
gmapMo :: (forall d. Data d => d -> m d)
-> DeploymentEvent -> m DeploymentEvent
$cgmapMo :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> DeploymentEvent -> m DeploymentEvent
gmapMp :: (forall d. Data d => d -> m d)
-> DeploymentEvent -> m DeploymentEvent
$cgmapMp :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> DeploymentEvent -> m DeploymentEvent
gmapM :: (forall d. Data d => d -> m d)
-> DeploymentEvent -> m DeploymentEvent
$cgmapM :: forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d)
-> DeploymentEvent -> m DeploymentEvent
gmapQi :: Int -> (forall d. Data d => d -> u) -> DeploymentEvent -> u
$cgmapQi :: forall u.
Int -> (forall d. Data d => d -> u) -> DeploymentEvent -> u
gmapQ :: (forall d. Data d => d -> u) -> DeploymentEvent -> [u]
$cgmapQ :: forall u. (forall d. Data d => d -> u) -> DeploymentEvent -> [u]
gmapQr :: (r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> DeploymentEvent -> r
$cgmapQr :: forall r r'.
(r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> DeploymentEvent -> r
gmapQl :: (r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> DeploymentEvent -> r
$cgmapQl :: forall r r'.
(r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> DeploymentEvent -> r
gmapT :: (forall b. Data b => b -> b) -> DeploymentEvent -> DeploymentEvent
$cgmapT :: (forall b. Data b => b -> b) -> DeploymentEvent -> DeploymentEvent
dataCast2 :: (forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c DeploymentEvent)
$cdataCast2 :: forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c DeploymentEvent)
dataCast1 :: (forall d. Data d => c (t d)) -> Maybe (c DeploymentEvent)
$cdataCast1 :: forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c DeploymentEvent)
dataTypeOf :: DeploymentEvent -> DataType
$cdataTypeOf :: DeploymentEvent -> DataType
toConstr :: DeploymentEvent -> Constr
$ctoConstr :: DeploymentEvent -> Constr
gunfold :: (forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c DeploymentEvent
$cgunfold :: forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c DeploymentEvent
gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> DeploymentEvent -> c DeploymentEvent
$cgfoldl :: forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> DeploymentEvent -> c DeploymentEvent
$cp1Data :: Typeable DeploymentEvent
Data, (forall x. DeploymentEvent -> Rep DeploymentEvent x)
-> (forall x. Rep DeploymentEvent x -> DeploymentEvent)
-> Generic DeploymentEvent
forall x. Rep DeploymentEvent x -> DeploymentEvent
forall x. DeploymentEvent -> Rep DeploymentEvent x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep DeploymentEvent x -> DeploymentEvent
$cfrom :: forall x. DeploymentEvent -> Rep DeploymentEvent x
Generic)
instance EventHasSender DeploymentEvent where senderOfEvent :: DeploymentEvent -> HookUser
senderOfEvent = DeploymentEvent -> HookUser
evDeploymentSender
instance EventHasRepo DeploymentEvent where repoForEvent :: DeploymentEvent -> HookRepository
repoForEvent = DeploymentEvent -> HookRepository
evDeploymentRepo
instance NFData DeploymentEvent where rnf :: DeploymentEvent -> ()
rnf = DeploymentEvent -> ()
forall a. (Generic a, GNFData (Rep a)) => a -> ()
genericRnf
data DeploymentStatusEvent = DeploymentStatusEvent
{ DeploymentStatusEvent -> HookDeploymentStatus
evDeplStatusInfo :: !HookDeploymentStatus
, DeploymentStatusEvent -> HookDeployment
evDeplStatusDeployment :: !HookDeployment
, DeploymentStatusEvent -> HookRepository
evDeplStatusRepo :: !HookRepository
, DeploymentStatusEvent -> HookUser
evDeplStatusSender :: !HookUser
}
deriving (DeploymentStatusEvent -> DeploymentStatusEvent -> Bool
(DeploymentStatusEvent -> DeploymentStatusEvent -> Bool)
-> (DeploymentStatusEvent -> DeploymentStatusEvent -> Bool)
-> Eq DeploymentStatusEvent
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: DeploymentStatusEvent -> DeploymentStatusEvent -> Bool
$c/= :: DeploymentStatusEvent -> DeploymentStatusEvent -> Bool
== :: DeploymentStatusEvent -> DeploymentStatusEvent -> Bool
$c== :: DeploymentStatusEvent -> DeploymentStatusEvent -> Bool
Eq, Int -> DeploymentStatusEvent -> ShowS
[DeploymentStatusEvent] -> ShowS
DeploymentStatusEvent -> String
(Int -> DeploymentStatusEvent -> ShowS)
-> (DeploymentStatusEvent -> String)
-> ([DeploymentStatusEvent] -> ShowS)
-> Show DeploymentStatusEvent
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [DeploymentStatusEvent] -> ShowS
$cshowList :: [DeploymentStatusEvent] -> ShowS
show :: DeploymentStatusEvent -> String
$cshow :: DeploymentStatusEvent -> String
showsPrec :: Int -> DeploymentStatusEvent -> ShowS
$cshowsPrec :: Int -> DeploymentStatusEvent -> ShowS
Show, Typeable, Typeable DeploymentStatusEvent
DataType
Constr
Typeable DeploymentStatusEvent
-> (forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g)
-> DeploymentStatusEvent
-> c DeploymentStatusEvent)
-> (forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c DeploymentStatusEvent)
-> (DeploymentStatusEvent -> Constr)
-> (DeploymentStatusEvent -> DataType)
-> (forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c DeploymentStatusEvent))
-> (forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c DeploymentStatusEvent))
-> ((forall b. Data b => b -> b)
-> DeploymentStatusEvent -> DeploymentStatusEvent)
-> (forall r r'.
(r -> r' -> r)
-> r
-> (forall d. Data d => d -> r')
-> DeploymentStatusEvent
-> r)
-> (forall r r'.
(r' -> r -> r)
-> r
-> (forall d. Data d => d -> r')
-> DeploymentStatusEvent
-> r)
-> (forall u.
(forall d. Data d => d -> u) -> DeploymentStatusEvent -> [u])
-> (forall u.
Int -> (forall d. Data d => d -> u) -> DeploymentStatusEvent -> u)
-> (forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d)
-> DeploymentStatusEvent -> m DeploymentStatusEvent)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> DeploymentStatusEvent -> m DeploymentStatusEvent)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> DeploymentStatusEvent -> m DeploymentStatusEvent)
-> Data DeploymentStatusEvent
DeploymentStatusEvent -> DataType
DeploymentStatusEvent -> Constr
(forall b. Data b => b -> b)
-> DeploymentStatusEvent -> DeploymentStatusEvent
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g)
-> DeploymentStatusEvent
-> c DeploymentStatusEvent
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c DeploymentStatusEvent
forall a.
Typeable a
-> (forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> a -> c a)
-> (forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c a)
-> (a -> Constr)
-> (a -> DataType)
-> (forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c a))
-> (forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c a))
-> ((forall b. Data b => b -> b) -> a -> a)
-> (forall r r'.
(r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> a -> r)
-> (forall r r'.
(r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> a -> r)
-> (forall u. (forall d. Data d => d -> u) -> a -> [u])
-> (forall u. Int -> (forall d. Data d => d -> u) -> a -> u)
-> (forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d) -> a -> m a)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> a -> m a)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> a -> m a)
-> Data a
forall u.
Int -> (forall d. Data d => d -> u) -> DeploymentStatusEvent -> u
forall u.
(forall d. Data d => d -> u) -> DeploymentStatusEvent -> [u]
forall r r'.
(r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> DeploymentStatusEvent -> r
forall r r'.
(r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> DeploymentStatusEvent -> r
forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d)
-> DeploymentStatusEvent -> m DeploymentStatusEvent
forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> DeploymentStatusEvent -> m DeploymentStatusEvent
forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c DeploymentStatusEvent
forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g)
-> DeploymentStatusEvent
-> c DeploymentStatusEvent
forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c DeploymentStatusEvent)
forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c DeploymentStatusEvent)
$cDeploymentStatusEvent :: Constr
$tDeploymentStatusEvent :: DataType
gmapMo :: (forall d. Data d => d -> m d)
-> DeploymentStatusEvent -> m DeploymentStatusEvent
$cgmapMo :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> DeploymentStatusEvent -> m DeploymentStatusEvent
gmapMp :: (forall d. Data d => d -> m d)
-> DeploymentStatusEvent -> m DeploymentStatusEvent
$cgmapMp :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> DeploymentStatusEvent -> m DeploymentStatusEvent
gmapM :: (forall d. Data d => d -> m d)
-> DeploymentStatusEvent -> m DeploymentStatusEvent
$cgmapM :: forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d)
-> DeploymentStatusEvent -> m DeploymentStatusEvent
gmapQi :: Int -> (forall d. Data d => d -> u) -> DeploymentStatusEvent -> u
$cgmapQi :: forall u.
Int -> (forall d. Data d => d -> u) -> DeploymentStatusEvent -> u
gmapQ :: (forall d. Data d => d -> u) -> DeploymentStatusEvent -> [u]
$cgmapQ :: forall u.
(forall d. Data d => d -> u) -> DeploymentStatusEvent -> [u]
gmapQr :: (r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> DeploymentStatusEvent -> r
$cgmapQr :: forall r r'.
(r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> DeploymentStatusEvent -> r
gmapQl :: (r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> DeploymentStatusEvent -> r
$cgmapQl :: forall r r'.
(r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> DeploymentStatusEvent -> r
gmapT :: (forall b. Data b => b -> b)
-> DeploymentStatusEvent -> DeploymentStatusEvent
$cgmapT :: (forall b. Data b => b -> b)
-> DeploymentStatusEvent -> DeploymentStatusEvent
dataCast2 :: (forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c DeploymentStatusEvent)
$cdataCast2 :: forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c DeploymentStatusEvent)
dataCast1 :: (forall d. Data d => c (t d)) -> Maybe (c DeploymentStatusEvent)
$cdataCast1 :: forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c DeploymentStatusEvent)
dataTypeOf :: DeploymentStatusEvent -> DataType
$cdataTypeOf :: DeploymentStatusEvent -> DataType
toConstr :: DeploymentStatusEvent -> Constr
$ctoConstr :: DeploymentStatusEvent -> Constr
gunfold :: (forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c DeploymentStatusEvent
$cgunfold :: forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c DeploymentStatusEvent
gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g)
-> DeploymentStatusEvent
-> c DeploymentStatusEvent
$cgfoldl :: forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g)
-> DeploymentStatusEvent
-> c DeploymentStatusEvent
$cp1Data :: Typeable DeploymentStatusEvent
Data, (forall x. DeploymentStatusEvent -> Rep DeploymentStatusEvent x)
-> (forall x. Rep DeploymentStatusEvent x -> DeploymentStatusEvent)
-> Generic DeploymentStatusEvent
forall x. Rep DeploymentStatusEvent x -> DeploymentStatusEvent
forall x. DeploymentStatusEvent -> Rep DeploymentStatusEvent x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep DeploymentStatusEvent x -> DeploymentStatusEvent
$cfrom :: forall x. DeploymentStatusEvent -> Rep DeploymentStatusEvent x
Generic)
instance EventHasSender DeploymentStatusEvent where senderOfEvent :: DeploymentStatusEvent -> HookUser
senderOfEvent = DeploymentStatusEvent -> HookUser
evDeplStatusSender
instance EventHasRepo DeploymentStatusEvent where repoForEvent :: DeploymentStatusEvent -> HookRepository
repoForEvent = DeploymentStatusEvent -> HookRepository
evDeplStatusRepo
instance NFData DeploymentStatusEvent where rnf :: DeploymentStatusEvent -> ()
rnf = DeploymentStatusEvent -> ()
forall a. (Generic a, GNFData (Rep a)) => a -> ()
genericRnf
data DownloadEvent = DownloadEvent
data FollowEvent = FollowEvent
data ForkEvent = ForkEvent
{ ForkEvent -> HookRepository
evForkDestination :: !HookRepository
, ForkEvent -> HookRepository
evForkSource :: !HookRepository
, ForkEvent -> HookUser
evForkSender :: !HookUser
}
deriving (ForkEvent -> ForkEvent -> Bool
(ForkEvent -> ForkEvent -> Bool)
-> (ForkEvent -> ForkEvent -> Bool) -> Eq ForkEvent
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: ForkEvent -> ForkEvent -> Bool
$c/= :: ForkEvent -> ForkEvent -> Bool
== :: ForkEvent -> ForkEvent -> Bool
$c== :: ForkEvent -> ForkEvent -> Bool
Eq, Int -> ForkEvent -> ShowS
[ForkEvent] -> ShowS
ForkEvent -> String
(Int -> ForkEvent -> ShowS)
-> (ForkEvent -> String)
-> ([ForkEvent] -> ShowS)
-> Show ForkEvent
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [ForkEvent] -> ShowS
$cshowList :: [ForkEvent] -> ShowS
show :: ForkEvent -> String
$cshow :: ForkEvent -> String
showsPrec :: Int -> ForkEvent -> ShowS
$cshowsPrec :: Int -> ForkEvent -> ShowS
Show, Typeable, Typeable ForkEvent
DataType
Constr
Typeable ForkEvent
-> (forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> ForkEvent -> c ForkEvent)
-> (forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c ForkEvent)
-> (ForkEvent -> Constr)
-> (ForkEvent -> DataType)
-> (forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c ForkEvent))
-> (forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c ForkEvent))
-> ((forall b. Data b => b -> b) -> ForkEvent -> ForkEvent)
-> (forall r r'.
(r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> ForkEvent -> r)
-> (forall r r'.
(r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> ForkEvent -> r)
-> (forall u. (forall d. Data d => d -> u) -> ForkEvent -> [u])
-> (forall u.
Int -> (forall d. Data d => d -> u) -> ForkEvent -> u)
-> (forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d) -> ForkEvent -> m ForkEvent)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> ForkEvent -> m ForkEvent)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> ForkEvent -> m ForkEvent)
-> Data ForkEvent
ForkEvent -> DataType
ForkEvent -> Constr
(forall b. Data b => b -> b) -> ForkEvent -> ForkEvent
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> ForkEvent -> c ForkEvent
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c ForkEvent
forall a.
Typeable a
-> (forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> a -> c a)
-> (forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c a)
-> (a -> Constr)
-> (a -> DataType)
-> (forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c a))
-> (forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c a))
-> ((forall b. Data b => b -> b) -> a -> a)
-> (forall r r'.
(r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> a -> r)
-> (forall r r'.
(r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> a -> r)
-> (forall u. (forall d. Data d => d -> u) -> a -> [u])
-> (forall u. Int -> (forall d. Data d => d -> u) -> a -> u)
-> (forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d) -> a -> m a)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> a -> m a)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> a -> m a)
-> Data a
forall u. Int -> (forall d. Data d => d -> u) -> ForkEvent -> u
forall u. (forall d. Data d => d -> u) -> ForkEvent -> [u]
forall r r'.
(r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> ForkEvent -> r
forall r r'.
(r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> ForkEvent -> r
forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d) -> ForkEvent -> m ForkEvent
forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> ForkEvent -> m ForkEvent
forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c ForkEvent
forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> ForkEvent -> c ForkEvent
forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c ForkEvent)
forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c ForkEvent)
$cForkEvent :: Constr
$tForkEvent :: DataType
gmapMo :: (forall d. Data d => d -> m d) -> ForkEvent -> m ForkEvent
$cgmapMo :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> ForkEvent -> m ForkEvent
gmapMp :: (forall d. Data d => d -> m d) -> ForkEvent -> m ForkEvent
$cgmapMp :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> ForkEvent -> m ForkEvent
gmapM :: (forall d. Data d => d -> m d) -> ForkEvent -> m ForkEvent
$cgmapM :: forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d) -> ForkEvent -> m ForkEvent
gmapQi :: Int -> (forall d. Data d => d -> u) -> ForkEvent -> u
$cgmapQi :: forall u. Int -> (forall d. Data d => d -> u) -> ForkEvent -> u
gmapQ :: (forall d. Data d => d -> u) -> ForkEvent -> [u]
$cgmapQ :: forall u. (forall d. Data d => d -> u) -> ForkEvent -> [u]
gmapQr :: (r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> ForkEvent -> r
$cgmapQr :: forall r r'.
(r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> ForkEvent -> r
gmapQl :: (r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> ForkEvent -> r
$cgmapQl :: forall r r'.
(r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> ForkEvent -> r
gmapT :: (forall b. Data b => b -> b) -> ForkEvent -> ForkEvent
$cgmapT :: (forall b. Data b => b -> b) -> ForkEvent -> ForkEvent
dataCast2 :: (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c ForkEvent)
$cdataCast2 :: forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c ForkEvent)
dataCast1 :: (forall d. Data d => c (t d)) -> Maybe (c ForkEvent)
$cdataCast1 :: forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c ForkEvent)
dataTypeOf :: ForkEvent -> DataType
$cdataTypeOf :: ForkEvent -> DataType
toConstr :: ForkEvent -> Constr
$ctoConstr :: ForkEvent -> Constr
gunfold :: (forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c ForkEvent
$cgunfold :: forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c ForkEvent
gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> ForkEvent -> c ForkEvent
$cgfoldl :: forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> ForkEvent -> c ForkEvent
$cp1Data :: Typeable ForkEvent
Data, (forall x. ForkEvent -> Rep ForkEvent x)
-> (forall x. Rep ForkEvent x -> ForkEvent) -> Generic ForkEvent
forall x. Rep ForkEvent x -> ForkEvent
forall x. ForkEvent -> Rep ForkEvent x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep ForkEvent x -> ForkEvent
$cfrom :: forall x. ForkEvent -> Rep ForkEvent x
Generic)
instance EventHasSender ForkEvent where senderOfEvent :: ForkEvent -> HookUser
senderOfEvent = ForkEvent -> HookUser
evForkSender
instance EventHasRepo ForkEvent where repoForEvent :: ForkEvent -> HookRepository
repoForEvent = ForkEvent -> HookRepository
evForkSource
instance NFData ForkEvent where rnf :: ForkEvent -> ()
rnf = ForkEvent -> ()
forall a. (Generic a, GNFData (Rep a)) => a -> ()
genericRnf
data ForkApplyEvent = ForkApplyEvent
data GistEvent = GistEvent
data GollumEvent = GollumEvent
{ GollumEvent -> Vector HookWikiPage
evGollumPages :: !(Vector HookWikiPage)
, GollumEvent -> HookRepository
evGollumRepo :: !HookRepository
, GollumEvent -> HookUser
evGollumSender :: !HookUser
}
deriving (GollumEvent -> GollumEvent -> Bool
(GollumEvent -> GollumEvent -> Bool)
-> (GollumEvent -> GollumEvent -> Bool) -> Eq GollumEvent
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: GollumEvent -> GollumEvent -> Bool
$c/= :: GollumEvent -> GollumEvent -> Bool
== :: GollumEvent -> GollumEvent -> Bool
$c== :: GollumEvent -> GollumEvent -> Bool
Eq, Int -> GollumEvent -> ShowS
[GollumEvent] -> ShowS
GollumEvent -> String
(Int -> GollumEvent -> ShowS)
-> (GollumEvent -> String)
-> ([GollumEvent] -> ShowS)
-> Show GollumEvent
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [GollumEvent] -> ShowS
$cshowList :: [GollumEvent] -> ShowS
show :: GollumEvent -> String
$cshow :: GollumEvent -> String
showsPrec :: Int -> GollumEvent -> ShowS
$cshowsPrec :: Int -> GollumEvent -> ShowS
Show, Typeable, Typeable GollumEvent
DataType
Constr
Typeable GollumEvent
-> (forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> GollumEvent -> c GollumEvent)
-> (forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c GollumEvent)
-> (GollumEvent -> Constr)
-> (GollumEvent -> DataType)
-> (forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c GollumEvent))
-> (forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c GollumEvent))
-> ((forall b. Data b => b -> b) -> GollumEvent -> GollumEvent)
-> (forall r r'.
(r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> GollumEvent -> r)
-> (forall r r'.
(r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> GollumEvent -> r)
-> (forall u. (forall d. Data d => d -> u) -> GollumEvent -> [u])
-> (forall u.
Int -> (forall d. Data d => d -> u) -> GollumEvent -> u)
-> (forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d) -> GollumEvent -> m GollumEvent)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> GollumEvent -> m GollumEvent)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> GollumEvent -> m GollumEvent)
-> Data GollumEvent
GollumEvent -> DataType
GollumEvent -> Constr
(forall b. Data b => b -> b) -> GollumEvent -> GollumEvent
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> GollumEvent -> c GollumEvent
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c GollumEvent
forall a.
Typeable a
-> (forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> a -> c a)
-> (forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c a)
-> (a -> Constr)
-> (a -> DataType)
-> (forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c a))
-> (forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c a))
-> ((forall b. Data b => b -> b) -> a -> a)
-> (forall r r'.
(r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> a -> r)
-> (forall r r'.
(r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> a -> r)
-> (forall u. (forall d. Data d => d -> u) -> a -> [u])
-> (forall u. Int -> (forall d. Data d => d -> u) -> a -> u)
-> (forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d) -> a -> m a)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> a -> m a)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> a -> m a)
-> Data a
forall u. Int -> (forall d. Data d => d -> u) -> GollumEvent -> u
forall u. (forall d. Data d => d -> u) -> GollumEvent -> [u]
forall r r'.
(r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> GollumEvent -> r
forall r r'.
(r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> GollumEvent -> r
forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d) -> GollumEvent -> m GollumEvent
forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> GollumEvent -> m GollumEvent
forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c GollumEvent
forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> GollumEvent -> c GollumEvent
forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c GollumEvent)
forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c GollumEvent)
$cGollumEvent :: Constr
$tGollumEvent :: DataType
gmapMo :: (forall d. Data d => d -> m d) -> GollumEvent -> m GollumEvent
$cgmapMo :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> GollumEvent -> m GollumEvent
gmapMp :: (forall d. Data d => d -> m d) -> GollumEvent -> m GollumEvent
$cgmapMp :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> GollumEvent -> m GollumEvent
gmapM :: (forall d. Data d => d -> m d) -> GollumEvent -> m GollumEvent
$cgmapM :: forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d) -> GollumEvent -> m GollumEvent
gmapQi :: Int -> (forall d. Data d => d -> u) -> GollumEvent -> u
$cgmapQi :: forall u. Int -> (forall d. Data d => d -> u) -> GollumEvent -> u
gmapQ :: (forall d. Data d => d -> u) -> GollumEvent -> [u]
$cgmapQ :: forall u. (forall d. Data d => d -> u) -> GollumEvent -> [u]
gmapQr :: (r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> GollumEvent -> r
$cgmapQr :: forall r r'.
(r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> GollumEvent -> r
gmapQl :: (r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> GollumEvent -> r
$cgmapQl :: forall r r'.
(r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> GollumEvent -> r
gmapT :: (forall b. Data b => b -> b) -> GollumEvent -> GollumEvent
$cgmapT :: (forall b. Data b => b -> b) -> GollumEvent -> GollumEvent
dataCast2 :: (forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c GollumEvent)
$cdataCast2 :: forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c GollumEvent)
dataCast1 :: (forall d. Data d => c (t d)) -> Maybe (c GollumEvent)
$cdataCast1 :: forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c GollumEvent)
dataTypeOf :: GollumEvent -> DataType
$cdataTypeOf :: GollumEvent -> DataType
toConstr :: GollumEvent -> Constr
$ctoConstr :: GollumEvent -> Constr
gunfold :: (forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c GollumEvent
$cgunfold :: forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c GollumEvent
gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> GollumEvent -> c GollumEvent
$cgfoldl :: forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> GollumEvent -> c GollumEvent
$cp1Data :: Typeable GollumEvent
Data, (forall x. GollumEvent -> Rep GollumEvent x)
-> (forall x. Rep GollumEvent x -> GollumEvent)
-> Generic GollumEvent
forall x. Rep GollumEvent x -> GollumEvent
forall x. GollumEvent -> Rep GollumEvent x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep GollumEvent x -> GollumEvent
$cfrom :: forall x. GollumEvent -> Rep GollumEvent x
Generic)
instance EventHasSender GollumEvent where senderOfEvent :: GollumEvent -> HookUser
senderOfEvent = GollumEvent -> HookUser
evGollumSender
instance EventHasRepo GollumEvent where repoForEvent :: GollumEvent -> HookRepository
repoForEvent = GollumEvent -> HookRepository
evGollumRepo
instance NFData GollumEvent where rnf :: GollumEvent -> ()
rnf = GollumEvent -> ()
forall a. (Generic a, GNFData (Rep a)) => a -> ()
genericRnf
data InstallationEventAction
= InstallationCreatedAction
| InstallationDeletedAction
| InstallationSuspendAction
| InstallationUnsuspendAction
| InstallationNewPermissionsAcceptedAction
| InstallationActionOther !Text
deriving (InstallationEventAction -> InstallationEventAction -> Bool
(InstallationEventAction -> InstallationEventAction -> Bool)
-> (InstallationEventAction -> InstallationEventAction -> Bool)
-> Eq InstallationEventAction
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: InstallationEventAction -> InstallationEventAction -> Bool
$c/= :: InstallationEventAction -> InstallationEventAction -> Bool
== :: InstallationEventAction -> InstallationEventAction -> Bool
$c== :: InstallationEventAction -> InstallationEventAction -> Bool
Eq, Eq InstallationEventAction
Eq InstallationEventAction
-> (InstallationEventAction -> InstallationEventAction -> Ordering)
-> (InstallationEventAction -> InstallationEventAction -> Bool)
-> (InstallationEventAction -> InstallationEventAction -> Bool)
-> (InstallationEventAction -> InstallationEventAction -> Bool)
-> (InstallationEventAction -> InstallationEventAction -> Bool)
-> (InstallationEventAction
-> InstallationEventAction -> InstallationEventAction)
-> (InstallationEventAction
-> InstallationEventAction -> InstallationEventAction)
-> Ord InstallationEventAction
InstallationEventAction -> InstallationEventAction -> Bool
InstallationEventAction -> InstallationEventAction -> Ordering
InstallationEventAction
-> InstallationEventAction -> InstallationEventAction
forall a.
Eq a
-> (a -> a -> Ordering)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> a)
-> (a -> a -> a)
-> Ord a
min :: InstallationEventAction
-> InstallationEventAction -> InstallationEventAction
$cmin :: InstallationEventAction
-> InstallationEventAction -> InstallationEventAction
max :: InstallationEventAction
-> InstallationEventAction -> InstallationEventAction
$cmax :: InstallationEventAction
-> InstallationEventAction -> InstallationEventAction
>= :: InstallationEventAction -> InstallationEventAction -> Bool
$c>= :: InstallationEventAction -> InstallationEventAction -> Bool
> :: InstallationEventAction -> InstallationEventAction -> Bool
$c> :: InstallationEventAction -> InstallationEventAction -> Bool
<= :: InstallationEventAction -> InstallationEventAction -> Bool
$c<= :: InstallationEventAction -> InstallationEventAction -> Bool
< :: InstallationEventAction -> InstallationEventAction -> Bool
$c< :: InstallationEventAction -> InstallationEventAction -> Bool
compare :: InstallationEventAction -> InstallationEventAction -> Ordering
$ccompare :: InstallationEventAction -> InstallationEventAction -> Ordering
$cp1Ord :: Eq InstallationEventAction
Ord, Int -> InstallationEventAction -> ShowS
[InstallationEventAction] -> ShowS
InstallationEventAction -> String
(Int -> InstallationEventAction -> ShowS)
-> (InstallationEventAction -> String)
-> ([InstallationEventAction] -> ShowS)
-> Show InstallationEventAction
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [InstallationEventAction] -> ShowS
$cshowList :: [InstallationEventAction] -> ShowS
show :: InstallationEventAction -> String
$cshow :: InstallationEventAction -> String
showsPrec :: Int -> InstallationEventAction -> ShowS
$cshowsPrec :: Int -> InstallationEventAction -> ShowS
Show, (forall x.
InstallationEventAction -> Rep InstallationEventAction x)
-> (forall x.
Rep InstallationEventAction x -> InstallationEventAction)
-> Generic InstallationEventAction
forall x. Rep InstallationEventAction x -> InstallationEventAction
forall x. InstallationEventAction -> Rep InstallationEventAction x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep InstallationEventAction x -> InstallationEventAction
$cfrom :: forall x. InstallationEventAction -> Rep InstallationEventAction x
Generic, Typeable, Typeable InstallationEventAction
DataType
Constr
Typeable InstallationEventAction
-> (forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g)
-> InstallationEventAction
-> c InstallationEventAction)
-> (forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c InstallationEventAction)
-> (InstallationEventAction -> Constr)
-> (InstallationEventAction -> DataType)
-> (forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c InstallationEventAction))
-> (forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c InstallationEventAction))
-> ((forall b. Data b => b -> b)
-> InstallationEventAction -> InstallationEventAction)
-> (forall r r'.
(r -> r' -> r)
-> r
-> (forall d. Data d => d -> r')
-> InstallationEventAction
-> r)
-> (forall r r'.
(r' -> r -> r)
-> r
-> (forall d. Data d => d -> r')
-> InstallationEventAction
-> r)
-> (forall u.
(forall d. Data d => d -> u) -> InstallationEventAction -> [u])
-> (forall u.
Int
-> (forall d. Data d => d -> u) -> InstallationEventAction -> u)
-> (forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d)
-> InstallationEventAction -> m InstallationEventAction)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> InstallationEventAction -> m InstallationEventAction)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> InstallationEventAction -> m InstallationEventAction)
-> Data InstallationEventAction
InstallationEventAction -> DataType
InstallationEventAction -> Constr
(forall b. Data b => b -> b)
-> InstallationEventAction -> InstallationEventAction
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g)
-> InstallationEventAction
-> c InstallationEventAction
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c InstallationEventAction
forall a.
Typeable a
-> (forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> a -> c a)
-> (forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c a)
-> (a -> Constr)
-> (a -> DataType)
-> (forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c a))
-> (forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c a))
-> ((forall b. Data b => b -> b) -> a -> a)
-> (forall r r'.
(r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> a -> r)
-> (forall r r'.
(r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> a -> r)
-> (forall u. (forall d. Data d => d -> u) -> a -> [u])
-> (forall u. Int -> (forall d. Data d => d -> u) -> a -> u)
-> (forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d) -> a -> m a)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> a -> m a)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> a -> m a)
-> Data a
forall u.
Int -> (forall d. Data d => d -> u) -> InstallationEventAction -> u
forall u.
(forall d. Data d => d -> u) -> InstallationEventAction -> [u]
forall r r'.
(r -> r' -> r)
-> r
-> (forall d. Data d => d -> r')
-> InstallationEventAction
-> r
forall r r'.
(r' -> r -> r)
-> r
-> (forall d. Data d => d -> r')
-> InstallationEventAction
-> r
forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d)
-> InstallationEventAction -> m InstallationEventAction
forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> InstallationEventAction -> m InstallationEventAction
forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c InstallationEventAction
forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g)
-> InstallationEventAction
-> c InstallationEventAction
forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c InstallationEventAction)
forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c InstallationEventAction)
$cInstallationActionOther :: Constr
$cInstallationNewPermissionsAcceptedAction :: Constr
$cInstallationUnsuspendAction :: Constr
$cInstallationSuspendAction :: Constr
$cInstallationDeletedAction :: Constr
$cInstallationCreatedAction :: Constr
$tInstallationEventAction :: DataType
gmapMo :: (forall d. Data d => d -> m d)
-> InstallationEventAction -> m InstallationEventAction
$cgmapMo :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> InstallationEventAction -> m InstallationEventAction
gmapMp :: (forall d. Data d => d -> m d)
-> InstallationEventAction -> m InstallationEventAction
$cgmapMp :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> InstallationEventAction -> m InstallationEventAction
gmapM :: (forall d. Data d => d -> m d)
-> InstallationEventAction -> m InstallationEventAction
$cgmapM :: forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d)
-> InstallationEventAction -> m InstallationEventAction
gmapQi :: Int -> (forall d. Data d => d -> u) -> InstallationEventAction -> u
$cgmapQi :: forall u.
Int -> (forall d. Data d => d -> u) -> InstallationEventAction -> u
gmapQ :: (forall d. Data d => d -> u) -> InstallationEventAction -> [u]
$cgmapQ :: forall u.
(forall d. Data d => d -> u) -> InstallationEventAction -> [u]
gmapQr :: (r' -> r -> r)
-> r
-> (forall d. Data d => d -> r')
-> InstallationEventAction
-> r
$cgmapQr :: forall r r'.
(r' -> r -> r)
-> r
-> (forall d. Data d => d -> r')
-> InstallationEventAction
-> r
gmapQl :: (r -> r' -> r)
-> r
-> (forall d. Data d => d -> r')
-> InstallationEventAction
-> r
$cgmapQl :: forall r r'.
(r -> r' -> r)
-> r
-> (forall d. Data d => d -> r')
-> InstallationEventAction
-> r
gmapT :: (forall b. Data b => b -> b)
-> InstallationEventAction -> InstallationEventAction
$cgmapT :: (forall b. Data b => b -> b)
-> InstallationEventAction -> InstallationEventAction
dataCast2 :: (forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c InstallationEventAction)
$cdataCast2 :: forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c InstallationEventAction)
dataCast1 :: (forall d. Data d => c (t d)) -> Maybe (c InstallationEventAction)
$cdataCast1 :: forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c InstallationEventAction)
dataTypeOf :: InstallationEventAction -> DataType
$cdataTypeOf :: InstallationEventAction -> DataType
toConstr :: InstallationEventAction -> Constr
$ctoConstr :: InstallationEventAction -> Constr
gunfold :: (forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c InstallationEventAction
$cgunfold :: forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c InstallationEventAction
gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g)
-> InstallationEventAction
-> c InstallationEventAction
$cgfoldl :: forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g)
-> InstallationEventAction
-> c InstallationEventAction
$cp1Data :: Typeable InstallationEventAction
Data)
instance NFData InstallationEventAction where rnf :: InstallationEventAction -> ()
rnf = InstallationEventAction -> ()
forall a. (Generic a, GNFData (Rep a)) => a -> ()
genericRnf
instance FromJSON InstallationEventAction where
parseJSON :: Value -> Parser InstallationEventAction
parseJSON = String
-> (Text -> Parser InstallationEventAction)
-> Value
-> Parser InstallationEventAction
forall a. String -> (Text -> Parser a) -> Value -> Parser a
withText String
"Installation event action" ((Text -> Parser InstallationEventAction)
-> Value -> Parser InstallationEventAction)
-> (Text -> Parser InstallationEventAction)
-> Value
-> Parser InstallationEventAction
forall a b. (a -> b) -> a -> b
$ \Text
t ->
case Text
t of
Text
"created" -> InstallationEventAction -> Parser InstallationEventAction
forall (f :: * -> *) a. Applicative f => a -> f a
pure InstallationEventAction
InstallationCreatedAction
Text
"deleted" -> InstallationEventAction -> Parser InstallationEventAction
forall (f :: * -> *) a. Applicative f => a -> f a
pure InstallationEventAction
InstallationDeletedAction
Text
"suspend" -> InstallationEventAction -> Parser InstallationEventAction
forall (f :: * -> *) a. Applicative f => a -> f a
pure InstallationEventAction
InstallationSuspendAction
Text
"unsuspend" -> InstallationEventAction -> Parser InstallationEventAction
forall (f :: * -> *) a. Applicative f => a -> f a
pure InstallationEventAction
InstallationUnsuspendAction
Text
"new_permissions_accepted" -> InstallationEventAction -> Parser InstallationEventAction
forall (f :: * -> *) a. Applicative f => a -> f a
pure InstallationEventAction
InstallationNewPermissionsAcceptedAction
Text
_ -> InstallationEventAction -> Parser InstallationEventAction
forall (f :: * -> *) a. Applicative f => a -> f a
pure (Text -> InstallationEventAction
InstallationActionOther Text
t)
data InstallationEvent = InstallationEvent
{ InstallationEvent -> InstallationEventAction
evInstallationAction :: !InstallationEventAction
, InstallationEvent -> HookInstallation
evInstallationInfo :: !HookInstallation
, InstallationEvent -> Vector HookRepositorySimple
evInstallationRepos :: !(Vector HookRepositorySimple)
, InstallationEvent -> HookUser
evInstallationSender :: !HookUser
}
deriving (InstallationEvent -> InstallationEvent -> Bool
(InstallationEvent -> InstallationEvent -> Bool)
-> (InstallationEvent -> InstallationEvent -> Bool)
-> Eq InstallationEvent
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: InstallationEvent -> InstallationEvent -> Bool
$c/= :: InstallationEvent -> InstallationEvent -> Bool
== :: InstallationEvent -> InstallationEvent -> Bool
$c== :: InstallationEvent -> InstallationEvent -> Bool
Eq, Int -> InstallationEvent -> ShowS
[InstallationEvent] -> ShowS
InstallationEvent -> String
(Int -> InstallationEvent -> ShowS)
-> (InstallationEvent -> String)
-> ([InstallationEvent] -> ShowS)
-> Show InstallationEvent
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [InstallationEvent] -> ShowS
$cshowList :: [InstallationEvent] -> ShowS
show :: InstallationEvent -> String
$cshow :: InstallationEvent -> String
showsPrec :: Int -> InstallationEvent -> ShowS
$cshowsPrec :: Int -> InstallationEvent -> ShowS
Show, Typeable, Typeable InstallationEvent
DataType
Constr
Typeable InstallationEvent
-> (forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g)
-> InstallationEvent
-> c InstallationEvent)
-> (forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c InstallationEvent)
-> (InstallationEvent -> Constr)
-> (InstallationEvent -> DataType)
-> (forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c InstallationEvent))
-> (forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c InstallationEvent))
-> ((forall b. Data b => b -> b)
-> InstallationEvent -> InstallationEvent)
-> (forall r r'.
(r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> InstallationEvent -> r)
-> (forall r r'.
(r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> InstallationEvent -> r)
-> (forall u.
(forall d. Data d => d -> u) -> InstallationEvent -> [u])
-> (forall u.
Int -> (forall d. Data d => d -> u) -> InstallationEvent -> u)
-> (forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d)
-> InstallationEvent -> m InstallationEvent)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> InstallationEvent -> m InstallationEvent)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> InstallationEvent -> m InstallationEvent)
-> Data InstallationEvent
InstallationEvent -> DataType
InstallationEvent -> Constr
(forall b. Data b => b -> b)
-> InstallationEvent -> InstallationEvent
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> InstallationEvent -> c InstallationEvent
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c InstallationEvent
forall a.
Typeable a
-> (forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> a -> c a)
-> (forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c a)
-> (a -> Constr)
-> (a -> DataType)
-> (forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c a))
-> (forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c a))
-> ((forall b. Data b => b -> b) -> a -> a)
-> (forall r r'.
(r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> a -> r)
-> (forall r r'.
(r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> a -> r)
-> (forall u. (forall d. Data d => d -> u) -> a -> [u])
-> (forall u. Int -> (forall d. Data d => d -> u) -> a -> u)
-> (forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d) -> a -> m a)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> a -> m a)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> a -> m a)
-> Data a
forall u.
Int -> (forall d. Data d => d -> u) -> InstallationEvent -> u
forall u. (forall d. Data d => d -> u) -> InstallationEvent -> [u]
forall r r'.
(r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> InstallationEvent -> r
forall r r'.
(r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> InstallationEvent -> r
forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d)
-> InstallationEvent -> m InstallationEvent
forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> InstallationEvent -> m InstallationEvent
forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c InstallationEvent
forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> InstallationEvent -> c InstallationEvent
forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c InstallationEvent)
forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c InstallationEvent)
$cInstallationEvent :: Constr
$tInstallationEvent :: DataType
gmapMo :: (forall d. Data d => d -> m d)
-> InstallationEvent -> m InstallationEvent
$cgmapMo :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> InstallationEvent -> m InstallationEvent
gmapMp :: (forall d. Data d => d -> m d)
-> InstallationEvent -> m InstallationEvent
$cgmapMp :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> InstallationEvent -> m InstallationEvent
gmapM :: (forall d. Data d => d -> m d)
-> InstallationEvent -> m InstallationEvent
$cgmapM :: forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d)
-> InstallationEvent -> m InstallationEvent
gmapQi :: Int -> (forall d. Data d => d -> u) -> InstallationEvent -> u
$cgmapQi :: forall u.
Int -> (forall d. Data d => d -> u) -> InstallationEvent -> u
gmapQ :: (forall d. Data d => d -> u) -> InstallationEvent -> [u]
$cgmapQ :: forall u. (forall d. Data d => d -> u) -> InstallationEvent -> [u]
gmapQr :: (r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> InstallationEvent -> r
$cgmapQr :: forall r r'.
(r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> InstallationEvent -> r
gmapQl :: (r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> InstallationEvent -> r
$cgmapQl :: forall r r'.
(r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> InstallationEvent -> r
gmapT :: (forall b. Data b => b -> b)
-> InstallationEvent -> InstallationEvent
$cgmapT :: (forall b. Data b => b -> b)
-> InstallationEvent -> InstallationEvent
dataCast2 :: (forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c InstallationEvent)
$cdataCast2 :: forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c InstallationEvent)
dataCast1 :: (forall d. Data d => c (t d)) -> Maybe (c InstallationEvent)
$cdataCast1 :: forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c InstallationEvent)
dataTypeOf :: InstallationEvent -> DataType
$cdataTypeOf :: InstallationEvent -> DataType
toConstr :: InstallationEvent -> Constr
$ctoConstr :: InstallationEvent -> Constr
gunfold :: (forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c InstallationEvent
$cgunfold :: forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c InstallationEvent
gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> InstallationEvent -> c InstallationEvent
$cgfoldl :: forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> InstallationEvent -> c InstallationEvent
$cp1Data :: Typeable InstallationEvent
Data, (forall x. InstallationEvent -> Rep InstallationEvent x)
-> (forall x. Rep InstallationEvent x -> InstallationEvent)
-> Generic InstallationEvent
forall x. Rep InstallationEvent x -> InstallationEvent
forall x. InstallationEvent -> Rep InstallationEvent x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep InstallationEvent x -> InstallationEvent
$cfrom :: forall x. InstallationEvent -> Rep InstallationEvent x
Generic)
instance EventHasSender InstallationEvent where senderOfEvent :: InstallationEvent -> HookUser
senderOfEvent = InstallationEvent -> HookUser
evInstallationSender
instance NFData InstallationEvent where rnf :: InstallationEvent -> ()
rnf = InstallationEvent -> ()
forall a. (Generic a, GNFData (Rep a)) => a -> ()
genericRnf
data InstallationRepoEventAction
= InstallationRepoAddedAction
| InstallationRepoRemovedAction
| InstallationRepoActionOther !Text
deriving (InstallationRepoEventAction -> InstallationRepoEventAction -> Bool
(InstallationRepoEventAction
-> InstallationRepoEventAction -> Bool)
-> (InstallationRepoEventAction
-> InstallationRepoEventAction -> Bool)
-> Eq InstallationRepoEventAction
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: InstallationRepoEventAction -> InstallationRepoEventAction -> Bool
$c/= :: InstallationRepoEventAction -> InstallationRepoEventAction -> Bool
== :: InstallationRepoEventAction -> InstallationRepoEventAction -> Bool
$c== :: InstallationRepoEventAction -> InstallationRepoEventAction -> Bool
Eq, Eq InstallationRepoEventAction
Eq InstallationRepoEventAction
-> (InstallationRepoEventAction
-> InstallationRepoEventAction -> Ordering)
-> (InstallationRepoEventAction
-> InstallationRepoEventAction -> Bool)
-> (InstallationRepoEventAction
-> InstallationRepoEventAction -> Bool)
-> (InstallationRepoEventAction
-> InstallationRepoEventAction -> Bool)
-> (InstallationRepoEventAction
-> InstallationRepoEventAction -> Bool)
-> (InstallationRepoEventAction
-> InstallationRepoEventAction -> InstallationRepoEventAction)
-> (InstallationRepoEventAction
-> InstallationRepoEventAction -> InstallationRepoEventAction)
-> Ord InstallationRepoEventAction
InstallationRepoEventAction -> InstallationRepoEventAction -> Bool
InstallationRepoEventAction
-> InstallationRepoEventAction -> Ordering
InstallationRepoEventAction
-> InstallationRepoEventAction -> InstallationRepoEventAction
forall a.
Eq a
-> (a -> a -> Ordering)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> a)
-> (a -> a -> a)
-> Ord a
min :: InstallationRepoEventAction
-> InstallationRepoEventAction -> InstallationRepoEventAction
$cmin :: InstallationRepoEventAction
-> InstallationRepoEventAction -> InstallationRepoEventAction
max :: InstallationRepoEventAction
-> InstallationRepoEventAction -> InstallationRepoEventAction
$cmax :: InstallationRepoEventAction
-> InstallationRepoEventAction -> InstallationRepoEventAction
>= :: InstallationRepoEventAction -> InstallationRepoEventAction -> Bool
$c>= :: InstallationRepoEventAction -> InstallationRepoEventAction -> Bool
> :: InstallationRepoEventAction -> InstallationRepoEventAction -> Bool
$c> :: InstallationRepoEventAction -> InstallationRepoEventAction -> Bool
<= :: InstallationRepoEventAction -> InstallationRepoEventAction -> Bool
$c<= :: InstallationRepoEventAction -> InstallationRepoEventAction -> Bool
< :: InstallationRepoEventAction -> InstallationRepoEventAction -> Bool
$c< :: InstallationRepoEventAction -> InstallationRepoEventAction -> Bool
compare :: InstallationRepoEventAction
-> InstallationRepoEventAction -> Ordering
$ccompare :: InstallationRepoEventAction
-> InstallationRepoEventAction -> Ordering
$cp1Ord :: Eq InstallationRepoEventAction
Ord, Int -> InstallationRepoEventAction -> ShowS
[InstallationRepoEventAction] -> ShowS
InstallationRepoEventAction -> String
(Int -> InstallationRepoEventAction -> ShowS)
-> (InstallationRepoEventAction -> String)
-> ([InstallationRepoEventAction] -> ShowS)
-> Show InstallationRepoEventAction
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [InstallationRepoEventAction] -> ShowS
$cshowList :: [InstallationRepoEventAction] -> ShowS
show :: InstallationRepoEventAction -> String
$cshow :: InstallationRepoEventAction -> String
showsPrec :: Int -> InstallationRepoEventAction -> ShowS
$cshowsPrec :: Int -> InstallationRepoEventAction -> ShowS
Show, (forall x.
InstallationRepoEventAction -> Rep InstallationRepoEventAction x)
-> (forall x.
Rep InstallationRepoEventAction x -> InstallationRepoEventAction)
-> Generic InstallationRepoEventAction
forall x.
Rep InstallationRepoEventAction x -> InstallationRepoEventAction
forall x.
InstallationRepoEventAction -> Rep InstallationRepoEventAction x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x.
Rep InstallationRepoEventAction x -> InstallationRepoEventAction
$cfrom :: forall x.
InstallationRepoEventAction -> Rep InstallationRepoEventAction x
Generic, Typeable, Typeable InstallationRepoEventAction
DataType
Constr
Typeable InstallationRepoEventAction
-> (forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g)
-> InstallationRepoEventAction
-> c InstallationRepoEventAction)
-> (forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c InstallationRepoEventAction)
-> (InstallationRepoEventAction -> Constr)
-> (InstallationRepoEventAction -> DataType)
-> (forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d))
-> Maybe (c InstallationRepoEventAction))
-> (forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c InstallationRepoEventAction))
-> ((forall b. Data b => b -> b)
-> InstallationRepoEventAction -> InstallationRepoEventAction)
-> (forall r r'.
(r -> r' -> r)
-> r
-> (forall d. Data d => d -> r')
-> InstallationRepoEventAction
-> r)
-> (forall r r'.
(r' -> r -> r)
-> r
-> (forall d. Data d => d -> r')
-> InstallationRepoEventAction
-> r)
-> (forall u.
(forall d. Data d => d -> u) -> InstallationRepoEventAction -> [u])
-> (forall u.
Int
-> (forall d. Data d => d -> u)
-> InstallationRepoEventAction
-> u)
-> (forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d)
-> InstallationRepoEventAction -> m InstallationRepoEventAction)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> InstallationRepoEventAction -> m InstallationRepoEventAction)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> InstallationRepoEventAction -> m InstallationRepoEventAction)
-> Data InstallationRepoEventAction
InstallationRepoEventAction -> DataType
InstallationRepoEventAction -> Constr
(forall b. Data b => b -> b)
-> InstallationRepoEventAction -> InstallationRepoEventAction
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g)
-> InstallationRepoEventAction
-> c InstallationRepoEventAction
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c InstallationRepoEventAction
forall a.
Typeable a
-> (forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> a -> c a)
-> (forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c a)
-> (a -> Constr)
-> (a -> DataType)
-> (forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c a))
-> (forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c a))
-> ((forall b. Data b => b -> b) -> a -> a)
-> (forall r r'.
(r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> a -> r)
-> (forall r r'.
(r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> a -> r)
-> (forall u. (forall d. Data d => d -> u) -> a -> [u])
-> (forall u. Int -> (forall d. Data d => d -> u) -> a -> u)
-> (forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d) -> a -> m a)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> a -> m a)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> a -> m a)
-> Data a
forall u.
Int
-> (forall d. Data d => d -> u) -> InstallationRepoEventAction -> u
forall u.
(forall d. Data d => d -> u) -> InstallationRepoEventAction -> [u]
forall r r'.
(r -> r' -> r)
-> r
-> (forall d. Data d => d -> r')
-> InstallationRepoEventAction
-> r
forall r r'.
(r' -> r -> r)
-> r
-> (forall d. Data d => d -> r')
-> InstallationRepoEventAction
-> r
forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d)
-> InstallationRepoEventAction -> m InstallationRepoEventAction
forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> InstallationRepoEventAction -> m InstallationRepoEventAction
forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c InstallationRepoEventAction
forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g)
-> InstallationRepoEventAction
-> c InstallationRepoEventAction
forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d))
-> Maybe (c InstallationRepoEventAction)
forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c InstallationRepoEventAction)
$cInstallationRepoActionOther :: Constr
$cInstallationRepoRemovedAction :: Constr
$cInstallationRepoAddedAction :: Constr
$tInstallationRepoEventAction :: DataType
gmapMo :: (forall d. Data d => d -> m d)
-> InstallationRepoEventAction -> m InstallationRepoEventAction
$cgmapMo :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> InstallationRepoEventAction -> m InstallationRepoEventAction
gmapMp :: (forall d. Data d => d -> m d)
-> InstallationRepoEventAction -> m InstallationRepoEventAction
$cgmapMp :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> InstallationRepoEventAction -> m InstallationRepoEventAction
gmapM :: (forall d. Data d => d -> m d)
-> InstallationRepoEventAction -> m InstallationRepoEventAction
$cgmapM :: forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d)
-> InstallationRepoEventAction -> m InstallationRepoEventAction
gmapQi :: Int
-> (forall d. Data d => d -> u) -> InstallationRepoEventAction -> u
$cgmapQi :: forall u.
Int
-> (forall d. Data d => d -> u) -> InstallationRepoEventAction -> u
gmapQ :: (forall d. Data d => d -> u) -> InstallationRepoEventAction -> [u]
$cgmapQ :: forall u.
(forall d. Data d => d -> u) -> InstallationRepoEventAction -> [u]
gmapQr :: (r' -> r -> r)
-> r
-> (forall d. Data d => d -> r')
-> InstallationRepoEventAction
-> r
$cgmapQr :: forall r r'.
(r' -> r -> r)
-> r
-> (forall d. Data d => d -> r')
-> InstallationRepoEventAction
-> r
gmapQl :: (r -> r' -> r)
-> r
-> (forall d. Data d => d -> r')
-> InstallationRepoEventAction
-> r
$cgmapQl :: forall r r'.
(r -> r' -> r)
-> r
-> (forall d. Data d => d -> r')
-> InstallationRepoEventAction
-> r
gmapT :: (forall b. Data b => b -> b)
-> InstallationRepoEventAction -> InstallationRepoEventAction
$cgmapT :: (forall b. Data b => b -> b)
-> InstallationRepoEventAction -> InstallationRepoEventAction
dataCast2 :: (forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c InstallationRepoEventAction)
$cdataCast2 :: forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c InstallationRepoEventAction)
dataCast1 :: (forall d. Data d => c (t d))
-> Maybe (c InstallationRepoEventAction)
$cdataCast1 :: forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d))
-> Maybe (c InstallationRepoEventAction)
dataTypeOf :: InstallationRepoEventAction -> DataType
$cdataTypeOf :: InstallationRepoEventAction -> DataType
toConstr :: InstallationRepoEventAction -> Constr
$ctoConstr :: InstallationRepoEventAction -> Constr
gunfold :: (forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c InstallationRepoEventAction
$cgunfold :: forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c InstallationRepoEventAction
gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g)
-> InstallationRepoEventAction
-> c InstallationRepoEventAction
$cgfoldl :: forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g)
-> InstallationRepoEventAction
-> c InstallationRepoEventAction
$cp1Data :: Typeable InstallationRepoEventAction
Data)
instance NFData InstallationRepoEventAction where rnf :: InstallationRepoEventAction -> ()
rnf = InstallationRepoEventAction -> ()
forall a. (Generic a, GNFData (Rep a)) => a -> ()
genericRnf
instance FromJSON InstallationRepoEventAction where
parseJSON :: Value -> Parser InstallationRepoEventAction
parseJSON = String
-> (Text -> Parser InstallationRepoEventAction)
-> Value
-> Parser InstallationRepoEventAction
forall a. String -> (Text -> Parser a) -> Value -> Parser a
withText String
"Installation repo event action" ((Text -> Parser InstallationRepoEventAction)
-> Value -> Parser InstallationRepoEventAction)
-> (Text -> Parser InstallationRepoEventAction)
-> Value
-> Parser InstallationRepoEventAction
forall a b. (a -> b) -> a -> b
$ \Text
t ->
case Text
t of
Text
"added" -> InstallationRepoEventAction -> Parser InstallationRepoEventAction
forall (f :: * -> *) a. Applicative f => a -> f a
pure InstallationRepoEventAction
InstallationRepoAddedAction
Text
"removed" -> InstallationRepoEventAction -> Parser InstallationRepoEventAction
forall (f :: * -> *) a. Applicative f => a -> f a
pure InstallationRepoEventAction
InstallationRepoRemovedAction
Text
_ -> InstallationRepoEventAction -> Parser InstallationRepoEventAction
forall (f :: * -> *) a. Applicative f => a -> f a
pure (Text -> InstallationRepoEventAction
InstallationRepoActionOther Text
t)
data InstallationRepositoriesEvent = InstallationRepositoriesEvent
{ InstallationRepositoriesEvent -> InstallationRepoEventAction
evInstallationRepoAction :: !InstallationRepoEventAction
, InstallationRepositoriesEvent -> HookInstallation
evInstallationRepoInfo :: !HookInstallation
, InstallationRepositoriesEvent -> Text
evInstallationRepoSel :: !Text
, InstallationRepositoriesEvent -> Vector HookRepositorySimple
evInstallationReposAdd :: !(Vector HookRepositorySimple)
, InstallationRepositoriesEvent -> Vector HookRepositorySimple
evInstallationReposRemove :: !(Vector HookRepositorySimple)
, InstallationRepositoriesEvent -> HookUser
evInstallationReposSender :: !HookUser
}
deriving (InstallationRepositoriesEvent
-> InstallationRepositoriesEvent -> Bool
(InstallationRepositoriesEvent
-> InstallationRepositoriesEvent -> Bool)
-> (InstallationRepositoriesEvent
-> InstallationRepositoriesEvent -> Bool)
-> Eq InstallationRepositoriesEvent
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: InstallationRepositoriesEvent
-> InstallationRepositoriesEvent -> Bool
$c/= :: InstallationRepositoriesEvent
-> InstallationRepositoriesEvent -> Bool
== :: InstallationRepositoriesEvent
-> InstallationRepositoriesEvent -> Bool
$c== :: InstallationRepositoriesEvent
-> InstallationRepositoriesEvent -> Bool
Eq, Int -> InstallationRepositoriesEvent -> ShowS
[InstallationRepositoriesEvent] -> ShowS
InstallationRepositoriesEvent -> String
(Int -> InstallationRepositoriesEvent -> ShowS)
-> (InstallationRepositoriesEvent -> String)
-> ([InstallationRepositoriesEvent] -> ShowS)
-> Show InstallationRepositoriesEvent
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [InstallationRepositoriesEvent] -> ShowS
$cshowList :: [InstallationRepositoriesEvent] -> ShowS
show :: InstallationRepositoriesEvent -> String
$cshow :: InstallationRepositoriesEvent -> String
showsPrec :: Int -> InstallationRepositoriesEvent -> ShowS
$cshowsPrec :: Int -> InstallationRepositoriesEvent -> ShowS
Show, Typeable, Typeable InstallationRepositoriesEvent
DataType
Constr
Typeable InstallationRepositoriesEvent
-> (forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g)
-> InstallationRepositoriesEvent
-> c InstallationRepositoriesEvent)
-> (forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r)
-> Constr
-> c InstallationRepositoriesEvent)
-> (InstallationRepositoriesEvent -> Constr)
-> (InstallationRepositoriesEvent -> DataType)
-> (forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d))
-> Maybe (c InstallationRepositoriesEvent))
-> (forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c InstallationRepositoriesEvent))
-> ((forall b. Data b => b -> b)
-> InstallationRepositoriesEvent -> InstallationRepositoriesEvent)
-> (forall r r'.
(r -> r' -> r)
-> r
-> (forall d. Data d => d -> r')
-> InstallationRepositoriesEvent
-> r)
-> (forall r r'.
(r' -> r -> r)
-> r
-> (forall d. Data d => d -> r')
-> InstallationRepositoriesEvent
-> r)
-> (forall u.
(forall d. Data d => d -> u)
-> InstallationRepositoriesEvent -> [u])
-> (forall u.
Int
-> (forall d. Data d => d -> u)
-> InstallationRepositoriesEvent
-> u)
-> (forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d)
-> InstallationRepositoriesEvent
-> m InstallationRepositoriesEvent)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> InstallationRepositoriesEvent
-> m InstallationRepositoriesEvent)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> InstallationRepositoriesEvent
-> m InstallationRepositoriesEvent)
-> Data InstallationRepositoriesEvent
InstallationRepositoriesEvent -> DataType
InstallationRepositoriesEvent -> Constr
(forall b. Data b => b -> b)
-> InstallationRepositoriesEvent -> InstallationRepositoriesEvent
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g)
-> InstallationRepositoriesEvent
-> c InstallationRepositoriesEvent
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r)
-> Constr
-> c InstallationRepositoriesEvent
forall a.
Typeable a
-> (forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> a -> c a)
-> (forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c a)
-> (a -> Constr)
-> (a -> DataType)
-> (forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c a))
-> (forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c a))
-> ((forall b. Data b => b -> b) -> a -> a)
-> (forall r r'.
(r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> a -> r)
-> (forall r r'.
(r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> a -> r)
-> (forall u. (forall d. Data d => d -> u) -> a -> [u])
-> (forall u. Int -> (forall d. Data d => d -> u) -> a -> u)
-> (forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d) -> a -> m a)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> a -> m a)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> a -> m a)
-> Data a
forall u.
Int
-> (forall d. Data d => d -> u)
-> InstallationRepositoriesEvent
-> u
forall u.
(forall d. Data d => d -> u)
-> InstallationRepositoriesEvent -> [u]
forall r r'.
(r -> r' -> r)
-> r
-> (forall d. Data d => d -> r')
-> InstallationRepositoriesEvent
-> r
forall r r'.
(r' -> r -> r)
-> r
-> (forall d. Data d => d -> r')
-> InstallationRepositoriesEvent
-> r
forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d)
-> InstallationRepositoriesEvent -> m InstallationRepositoriesEvent
forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> InstallationRepositoriesEvent -> m InstallationRepositoriesEvent
forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r)
-> Constr
-> c InstallationRepositoriesEvent
forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g)
-> InstallationRepositoriesEvent
-> c InstallationRepositoriesEvent
forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d))
-> Maybe (c InstallationRepositoriesEvent)
forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c InstallationRepositoriesEvent)
$cInstallationRepositoriesEvent :: Constr
$tInstallationRepositoriesEvent :: DataType
gmapMo :: (forall d. Data d => d -> m d)
-> InstallationRepositoriesEvent -> m InstallationRepositoriesEvent
$cgmapMo :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> InstallationRepositoriesEvent -> m InstallationRepositoriesEvent
gmapMp :: (forall d. Data d => d -> m d)
-> InstallationRepositoriesEvent -> m InstallationRepositoriesEvent
$cgmapMp :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> InstallationRepositoriesEvent -> m InstallationRepositoriesEvent
gmapM :: (forall d. Data d => d -> m d)
-> InstallationRepositoriesEvent -> m InstallationRepositoriesEvent
$cgmapM :: forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d)
-> InstallationRepositoriesEvent -> m InstallationRepositoriesEvent
gmapQi :: Int
-> (forall d. Data d => d -> u)
-> InstallationRepositoriesEvent
-> u
$cgmapQi :: forall u.
Int
-> (forall d. Data d => d -> u)
-> InstallationRepositoriesEvent
-> u
gmapQ :: (forall d. Data d => d -> u)
-> InstallationRepositoriesEvent -> [u]
$cgmapQ :: forall u.
(forall d. Data d => d -> u)
-> InstallationRepositoriesEvent -> [u]
gmapQr :: (r' -> r -> r)
-> r
-> (forall d. Data d => d -> r')
-> InstallationRepositoriesEvent
-> r
$cgmapQr :: forall r r'.
(r' -> r -> r)
-> r
-> (forall d. Data d => d -> r')
-> InstallationRepositoriesEvent
-> r
gmapQl :: (r -> r' -> r)
-> r
-> (forall d. Data d => d -> r')
-> InstallationRepositoriesEvent
-> r
$cgmapQl :: forall r r'.
(r -> r' -> r)
-> r
-> (forall d. Data d => d -> r')
-> InstallationRepositoriesEvent
-> r
gmapT :: (forall b. Data b => b -> b)
-> InstallationRepositoriesEvent -> InstallationRepositoriesEvent
$cgmapT :: (forall b. Data b => b -> b)
-> InstallationRepositoriesEvent -> InstallationRepositoriesEvent
dataCast2 :: (forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c InstallationRepositoriesEvent)
$cdataCast2 :: forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c InstallationRepositoriesEvent)
dataCast1 :: (forall d. Data d => c (t d))
-> Maybe (c InstallationRepositoriesEvent)
$cdataCast1 :: forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d))
-> Maybe (c InstallationRepositoriesEvent)
dataTypeOf :: InstallationRepositoriesEvent -> DataType
$cdataTypeOf :: InstallationRepositoriesEvent -> DataType
toConstr :: InstallationRepositoriesEvent -> Constr
$ctoConstr :: InstallationRepositoriesEvent -> Constr
gunfold :: (forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r)
-> Constr
-> c InstallationRepositoriesEvent
$cgunfold :: forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r)
-> Constr
-> c InstallationRepositoriesEvent
gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g)
-> InstallationRepositoriesEvent
-> c InstallationRepositoriesEvent
$cgfoldl :: forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g)
-> InstallationRepositoriesEvent
-> c InstallationRepositoriesEvent
$cp1Data :: Typeable InstallationRepositoriesEvent
Data, (forall x.
InstallationRepositoriesEvent
-> Rep InstallationRepositoriesEvent x)
-> (forall x.
Rep InstallationRepositoriesEvent x
-> InstallationRepositoriesEvent)
-> Generic InstallationRepositoriesEvent
forall x.
Rep InstallationRepositoriesEvent x
-> InstallationRepositoriesEvent
forall x.
InstallationRepositoriesEvent
-> Rep InstallationRepositoriesEvent x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x.
Rep InstallationRepositoriesEvent x
-> InstallationRepositoriesEvent
$cfrom :: forall x.
InstallationRepositoriesEvent
-> Rep InstallationRepositoriesEvent x
Generic)
instance EventHasSender InstallationRepositoriesEvent where senderOfEvent :: InstallationRepositoriesEvent -> HookUser
senderOfEvent = InstallationRepositoriesEvent -> HookUser
evInstallationReposSender
instance NFData InstallationRepositoriesEvent where rnf :: InstallationRepositoriesEvent -> ()
rnf = InstallationRepositoriesEvent -> ()
forall a. (Generic a, GNFData (Rep a)) => a -> ()
genericRnf
data
=
|
|
| !Text
deriving (IssueCommentEventAction -> IssueCommentEventAction -> Bool
(IssueCommentEventAction -> IssueCommentEventAction -> Bool)
-> (IssueCommentEventAction -> IssueCommentEventAction -> Bool)
-> Eq IssueCommentEventAction
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: IssueCommentEventAction -> IssueCommentEventAction -> Bool
$c/= :: IssueCommentEventAction -> IssueCommentEventAction -> Bool
== :: IssueCommentEventAction -> IssueCommentEventAction -> Bool
$c== :: IssueCommentEventAction -> IssueCommentEventAction -> Bool
Eq, Eq IssueCommentEventAction
Eq IssueCommentEventAction
-> (IssueCommentEventAction -> IssueCommentEventAction -> Ordering)
-> (IssueCommentEventAction -> IssueCommentEventAction -> Bool)
-> (IssueCommentEventAction -> IssueCommentEventAction -> Bool)
-> (IssueCommentEventAction -> IssueCommentEventAction -> Bool)
-> (IssueCommentEventAction -> IssueCommentEventAction -> Bool)
-> (IssueCommentEventAction
-> IssueCommentEventAction -> IssueCommentEventAction)
-> (IssueCommentEventAction
-> IssueCommentEventAction -> IssueCommentEventAction)
-> Ord IssueCommentEventAction
IssueCommentEventAction -> IssueCommentEventAction -> Bool
IssueCommentEventAction -> IssueCommentEventAction -> Ordering
IssueCommentEventAction
-> IssueCommentEventAction -> IssueCommentEventAction
forall a.
Eq a
-> (a -> a -> Ordering)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> a)
-> (a -> a -> a)
-> Ord a
min :: IssueCommentEventAction
-> IssueCommentEventAction -> IssueCommentEventAction
$cmin :: IssueCommentEventAction
-> IssueCommentEventAction -> IssueCommentEventAction
max :: IssueCommentEventAction
-> IssueCommentEventAction -> IssueCommentEventAction
$cmax :: IssueCommentEventAction
-> IssueCommentEventAction -> IssueCommentEventAction
>= :: IssueCommentEventAction -> IssueCommentEventAction -> Bool
$c>= :: IssueCommentEventAction -> IssueCommentEventAction -> Bool
> :: IssueCommentEventAction -> IssueCommentEventAction -> Bool
$c> :: IssueCommentEventAction -> IssueCommentEventAction -> Bool
<= :: IssueCommentEventAction -> IssueCommentEventAction -> Bool
$c<= :: IssueCommentEventAction -> IssueCommentEventAction -> Bool
< :: IssueCommentEventAction -> IssueCommentEventAction -> Bool
$c< :: IssueCommentEventAction -> IssueCommentEventAction -> Bool
compare :: IssueCommentEventAction -> IssueCommentEventAction -> Ordering
$ccompare :: IssueCommentEventAction -> IssueCommentEventAction -> Ordering
$cp1Ord :: Eq IssueCommentEventAction
Ord, Int -> IssueCommentEventAction -> ShowS
[IssueCommentEventAction] -> ShowS
IssueCommentEventAction -> String
(Int -> IssueCommentEventAction -> ShowS)
-> (IssueCommentEventAction -> String)
-> ([IssueCommentEventAction] -> ShowS)
-> Show IssueCommentEventAction
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [IssueCommentEventAction] -> ShowS
$cshowList :: [IssueCommentEventAction] -> ShowS
show :: IssueCommentEventAction -> String
$cshow :: IssueCommentEventAction -> String
showsPrec :: Int -> IssueCommentEventAction -> ShowS
$cshowsPrec :: Int -> IssueCommentEventAction -> ShowS
Show, (forall x.
IssueCommentEventAction -> Rep IssueCommentEventAction x)
-> (forall x.
Rep IssueCommentEventAction x -> IssueCommentEventAction)
-> Generic IssueCommentEventAction
forall x. Rep IssueCommentEventAction x -> IssueCommentEventAction
forall x. IssueCommentEventAction -> Rep IssueCommentEventAction x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep IssueCommentEventAction x -> IssueCommentEventAction
$cfrom :: forall x. IssueCommentEventAction -> Rep IssueCommentEventAction x
Generic, Typeable, )
instance NFData IssueCommentEventAction where rnf :: IssueCommentEventAction -> ()
rnf = IssueCommentEventAction -> ()
forall a. (Generic a, GNFData (Rep a)) => a -> ()
genericRnf
instance FromJSON IssueCommentEventAction where
parseJSON :: Value -> Parser IssueCommentEventAction
parseJSON = String
-> (Text -> Parser IssueCommentEventAction)
-> Value
-> Parser IssueCommentEventAction
forall a. String -> (Text -> Parser a) -> Value -> Parser a
withText String
"Issue comment event action" ((Text -> Parser IssueCommentEventAction)
-> Value -> Parser IssueCommentEventAction)
-> (Text -> Parser IssueCommentEventAction)
-> Value
-> Parser IssueCommentEventAction
forall a b. (a -> b) -> a -> b
$ \Text
t ->
case Text
t of
Text
"created" -> IssueCommentEventAction -> Parser IssueCommentEventAction
forall (f :: * -> *) a. Applicative f => a -> f a
pure IssueCommentEventAction
IssueCommentCreatedAction
Text
"edited" -> IssueCommentEventAction -> Parser IssueCommentEventAction
forall (f :: * -> *) a. Applicative f => a -> f a
pure IssueCommentEventAction
IssueCommentEditedAction
Text
"deleted" -> IssueCommentEventAction -> Parser IssueCommentEventAction
forall (f :: * -> *) a. Applicative f => a -> f a
pure IssueCommentEventAction
IssueCommentDeletedAction
Text
_ -> IssueCommentEventAction -> Parser IssueCommentEventAction
forall (f :: * -> *) a. Applicative f => a -> f a
pure (Text -> IssueCommentEventAction
IssueCommentActionOther Text
t)
data =
{ :: !IssueCommentEventAction
, :: !HookIssue
, :: !HookIssueComment
, :: !HookRepository
, :: !HookUser
}
deriving (IssueCommentEvent -> IssueCommentEvent -> Bool
(IssueCommentEvent -> IssueCommentEvent -> Bool)
-> (IssueCommentEvent -> IssueCommentEvent -> Bool)
-> Eq IssueCommentEvent
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: IssueCommentEvent -> IssueCommentEvent -> Bool
$c/= :: IssueCommentEvent -> IssueCommentEvent -> Bool
== :: IssueCommentEvent -> IssueCommentEvent -> Bool
$c== :: IssueCommentEvent -> IssueCommentEvent -> Bool
Eq, Int -> IssueCommentEvent -> ShowS
[IssueCommentEvent] -> ShowS
IssueCommentEvent -> String
(Int -> IssueCommentEvent -> ShowS)
-> (IssueCommentEvent -> String)
-> ([IssueCommentEvent] -> ShowS)
-> Show IssueCommentEvent
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [IssueCommentEvent] -> ShowS
$cshowList :: [IssueCommentEvent] -> ShowS
show :: IssueCommentEvent -> String
$cshow :: IssueCommentEvent -> String
showsPrec :: Int -> IssueCommentEvent -> ShowS
$cshowsPrec :: Int -> IssueCommentEvent -> ShowS
Show, Typeable, , (forall x. IssueCommentEvent -> Rep IssueCommentEvent x)
-> (forall x. Rep IssueCommentEvent x -> IssueCommentEvent)
-> Generic IssueCommentEvent
forall x. Rep IssueCommentEvent x -> IssueCommentEvent
forall x. IssueCommentEvent -> Rep IssueCommentEvent x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep IssueCommentEvent x -> IssueCommentEvent
$cfrom :: forall x. IssueCommentEvent -> Rep IssueCommentEvent x
Generic)
instance EventHasSender IssueCommentEvent where senderOfEvent :: IssueCommentEvent -> HookUser
senderOfEvent = IssueCommentEvent -> HookUser
evIssueCommentSender
instance EventHasRepo IssueCommentEvent where repoForEvent :: IssueCommentEvent -> HookRepository
repoForEvent = IssueCommentEvent -> HookRepository
evIssueCommentRepo
instance NFData IssueCommentEvent where rnf :: IssueCommentEvent -> ()
rnf = IssueCommentEvent -> ()
forall a. (Generic a, GNFData (Rep a)) => a -> ()
genericRnf
data IssuesEventAction
= IssuesAssignedAction
| IssuesUnassignedAction
| IssuesLabeledAction
| IssuesUnlabeledAction
| IssuesOpenedAction
| IssuesEditedAction
| IssuesMilestonedAction
| IssuesDemilestonedAction
| IssuesClosedAction
| IssuesReopenedAction
| IssuesActionOther !Text
deriving (IssuesEventAction -> IssuesEventAction -> Bool
(IssuesEventAction -> IssuesEventAction -> Bool)
-> (IssuesEventAction -> IssuesEventAction -> Bool)
-> Eq IssuesEventAction
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: IssuesEventAction -> IssuesEventAction -> Bool
$c/= :: IssuesEventAction -> IssuesEventAction -> Bool
== :: IssuesEventAction -> IssuesEventAction -> Bool
$c== :: IssuesEventAction -> IssuesEventAction -> Bool
Eq, Eq IssuesEventAction
Eq IssuesEventAction
-> (IssuesEventAction -> IssuesEventAction -> Ordering)
-> (IssuesEventAction -> IssuesEventAction -> Bool)
-> (IssuesEventAction -> IssuesEventAction -> Bool)
-> (IssuesEventAction -> IssuesEventAction -> Bool)
-> (IssuesEventAction -> IssuesEventAction -> Bool)
-> (IssuesEventAction -> IssuesEventAction -> IssuesEventAction)
-> (IssuesEventAction -> IssuesEventAction -> IssuesEventAction)
-> Ord IssuesEventAction
IssuesEventAction -> IssuesEventAction -> Bool
IssuesEventAction -> IssuesEventAction -> Ordering
IssuesEventAction -> IssuesEventAction -> IssuesEventAction
forall a.
Eq a
-> (a -> a -> Ordering)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> a)
-> (a -> a -> a)
-> Ord a
min :: IssuesEventAction -> IssuesEventAction -> IssuesEventAction
$cmin :: IssuesEventAction -> IssuesEventAction -> IssuesEventAction
max :: IssuesEventAction -> IssuesEventAction -> IssuesEventAction
$cmax :: IssuesEventAction -> IssuesEventAction -> IssuesEventAction
>= :: IssuesEventAction -> IssuesEventAction -> Bool
$c>= :: IssuesEventAction -> IssuesEventAction -> Bool
> :: IssuesEventAction -> IssuesEventAction -> Bool
$c> :: IssuesEventAction -> IssuesEventAction -> Bool
<= :: IssuesEventAction -> IssuesEventAction -> Bool
$c<= :: IssuesEventAction -> IssuesEventAction -> Bool
< :: IssuesEventAction -> IssuesEventAction -> Bool
$c< :: IssuesEventAction -> IssuesEventAction -> Bool
compare :: IssuesEventAction -> IssuesEventAction -> Ordering
$ccompare :: IssuesEventAction -> IssuesEventAction -> Ordering
$cp1Ord :: Eq IssuesEventAction
Ord, Int -> IssuesEventAction -> ShowS
[IssuesEventAction] -> ShowS
IssuesEventAction -> String
(Int -> IssuesEventAction -> ShowS)
-> (IssuesEventAction -> String)
-> ([IssuesEventAction] -> ShowS)
-> Show IssuesEventAction
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [IssuesEventAction] -> ShowS
$cshowList :: [IssuesEventAction] -> ShowS
show :: IssuesEventAction -> String
$cshow :: IssuesEventAction -> String
showsPrec :: Int -> IssuesEventAction -> ShowS
$cshowsPrec :: Int -> IssuesEventAction -> ShowS
Show, (forall x. IssuesEventAction -> Rep IssuesEventAction x)
-> (forall x. Rep IssuesEventAction x -> IssuesEventAction)
-> Generic IssuesEventAction
forall x. Rep IssuesEventAction x -> IssuesEventAction
forall x. IssuesEventAction -> Rep IssuesEventAction x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep IssuesEventAction x -> IssuesEventAction
$cfrom :: forall x. IssuesEventAction -> Rep IssuesEventAction x
Generic, Typeable, Typeable IssuesEventAction
DataType
Constr
Typeable IssuesEventAction
-> (forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g)
-> IssuesEventAction
-> c IssuesEventAction)
-> (forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c IssuesEventAction)
-> (IssuesEventAction -> Constr)
-> (IssuesEventAction -> DataType)
-> (forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c IssuesEventAction))
-> (forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c IssuesEventAction))
-> ((forall b. Data b => b -> b)
-> IssuesEventAction -> IssuesEventAction)
-> (forall r r'.
(r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> IssuesEventAction -> r)
-> (forall r r'.
(r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> IssuesEventAction -> r)
-> (forall u.
(forall d. Data d => d -> u) -> IssuesEventAction -> [u])
-> (forall u.
Int -> (forall d. Data d => d -> u) -> IssuesEventAction -> u)
-> (forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d)
-> IssuesEventAction -> m IssuesEventAction)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> IssuesEventAction -> m IssuesEventAction)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> IssuesEventAction -> m IssuesEventAction)
-> Data IssuesEventAction
IssuesEventAction -> DataType
IssuesEventAction -> Constr
(forall b. Data b => b -> b)
-> IssuesEventAction -> IssuesEventAction
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> IssuesEventAction -> c IssuesEventAction
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c IssuesEventAction
forall a.
Typeable a
-> (forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> a -> c a)
-> (forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c a)
-> (a -> Constr)
-> (a -> DataType)
-> (forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c a))
-> (forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c a))
-> ((forall b. Data b => b -> b) -> a -> a)
-> (forall r r'.
(r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> a -> r)
-> (forall r r'.
(r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> a -> r)
-> (forall u. (forall d. Data d => d -> u) -> a -> [u])
-> (forall u. Int -> (forall d. Data d => d -> u) -> a -> u)
-> (forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d) -> a -> m a)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> a -> m a)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> a -> m a)
-> Data a
forall u.
Int -> (forall d. Data d => d -> u) -> IssuesEventAction -> u
forall u. (forall d. Data d => d -> u) -> IssuesEventAction -> [u]
forall r r'.
(r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> IssuesEventAction -> r
forall r r'.
(r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> IssuesEventAction -> r
forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d)
-> IssuesEventAction -> m IssuesEventAction
forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> IssuesEventAction -> m IssuesEventAction
forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c IssuesEventAction
forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> IssuesEventAction -> c IssuesEventAction
forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c IssuesEventAction)
forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c IssuesEventAction)
$cIssuesActionOther :: Constr
$cIssuesReopenedAction :: Constr
$cIssuesClosedAction :: Constr
$cIssuesDemilestonedAction :: Constr
$cIssuesMilestonedAction :: Constr
$cIssuesEditedAction :: Constr
$cIssuesOpenedAction :: Constr
$cIssuesUnlabeledAction :: Constr
$cIssuesLabeledAction :: Constr
$cIssuesUnassignedAction :: Constr
$cIssuesAssignedAction :: Constr
$tIssuesEventAction :: DataType
gmapMo :: (forall d. Data d => d -> m d)
-> IssuesEventAction -> m IssuesEventAction
$cgmapMo :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> IssuesEventAction -> m IssuesEventAction
gmapMp :: (forall d. Data d => d -> m d)
-> IssuesEventAction -> m IssuesEventAction
$cgmapMp :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> IssuesEventAction -> m IssuesEventAction
gmapM :: (forall d. Data d => d -> m d)
-> IssuesEventAction -> m IssuesEventAction
$cgmapM :: forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d)
-> IssuesEventAction -> m IssuesEventAction
gmapQi :: Int -> (forall d. Data d => d -> u) -> IssuesEventAction -> u
$cgmapQi :: forall u.
Int -> (forall d. Data d => d -> u) -> IssuesEventAction -> u
gmapQ :: (forall d. Data d => d -> u) -> IssuesEventAction -> [u]
$cgmapQ :: forall u. (forall d. Data d => d -> u) -> IssuesEventAction -> [u]
gmapQr :: (r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> IssuesEventAction -> r
$cgmapQr :: forall r r'.
(r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> IssuesEventAction -> r
gmapQl :: (r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> IssuesEventAction -> r
$cgmapQl :: forall r r'.
(r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> IssuesEventAction -> r
gmapT :: (forall b. Data b => b -> b)
-> IssuesEventAction -> IssuesEventAction
$cgmapT :: (forall b. Data b => b -> b)
-> IssuesEventAction -> IssuesEventAction
dataCast2 :: (forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c IssuesEventAction)
$cdataCast2 :: forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c IssuesEventAction)
dataCast1 :: (forall d. Data d => c (t d)) -> Maybe (c IssuesEventAction)
$cdataCast1 :: forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c IssuesEventAction)
dataTypeOf :: IssuesEventAction -> DataType
$cdataTypeOf :: IssuesEventAction -> DataType
toConstr :: IssuesEventAction -> Constr
$ctoConstr :: IssuesEventAction -> Constr
gunfold :: (forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c IssuesEventAction
$cgunfold :: forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c IssuesEventAction
gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> IssuesEventAction -> c IssuesEventAction
$cgfoldl :: forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> IssuesEventAction -> c IssuesEventAction
$cp1Data :: Typeable IssuesEventAction
Data)
instance NFData IssuesEventAction where rnf :: IssuesEventAction -> ()
rnf = IssuesEventAction -> ()
forall a. (Generic a, GNFData (Rep a)) => a -> ()
genericRnf
instance FromJSON IssuesEventAction where
parseJSON :: Value -> Parser IssuesEventAction
parseJSON = String
-> (Text -> Parser IssuesEventAction)
-> Value
-> Parser IssuesEventAction
forall a. String -> (Text -> Parser a) -> Value -> Parser a
withText String
"Issue comment event action" ((Text -> Parser IssuesEventAction)
-> Value -> Parser IssuesEventAction)
-> (Text -> Parser IssuesEventAction)
-> Value
-> Parser IssuesEventAction
forall a b. (a -> b) -> a -> b
$ \Text
t ->
case Text
t of
Text
"assigned" -> IssuesEventAction -> Parser IssuesEventAction
forall (f :: * -> *) a. Applicative f => a -> f a
pure IssuesEventAction
IssuesAssignedAction
Text
"unassigned" -> IssuesEventAction -> Parser IssuesEventAction
forall (f :: * -> *) a. Applicative f => a -> f a
pure IssuesEventAction
IssuesUnassignedAction
Text
"labeled" -> IssuesEventAction -> Parser IssuesEventAction
forall (f :: * -> *) a. Applicative f => a -> f a
pure IssuesEventAction
IssuesLabeledAction
Text
"unlabeled" -> IssuesEventAction -> Parser IssuesEventAction
forall (f :: * -> *) a. Applicative f => a -> f a
pure IssuesEventAction
IssuesUnlabeledAction
Text
"opened" -> IssuesEventAction -> Parser IssuesEventAction
forall (f :: * -> *) a. Applicative f => a -> f a
pure IssuesEventAction
IssuesOpenedAction
Text
"edited" -> IssuesEventAction -> Parser IssuesEventAction
forall (f :: * -> *) a. Applicative f => a -> f a
pure IssuesEventAction
IssuesEditedAction
Text
"milestoned" -> IssuesEventAction -> Parser IssuesEventAction
forall (f :: * -> *) a. Applicative f => a -> f a
pure IssuesEventAction
IssuesMilestonedAction
Text
"demilestoned" -> IssuesEventAction -> Parser IssuesEventAction
forall (f :: * -> *) a. Applicative f => a -> f a
pure IssuesEventAction
IssuesDemilestonedAction
Text
"closed" -> IssuesEventAction -> Parser IssuesEventAction
forall (f :: * -> *) a. Applicative f => a -> f a
pure IssuesEventAction
IssuesClosedAction
Text
"reopened" -> IssuesEventAction -> Parser IssuesEventAction
forall (f :: * -> *) a. Applicative f => a -> f a
pure IssuesEventAction
IssuesReopenedAction
Text
_ -> IssuesEventAction -> Parser IssuesEventAction
forall (f :: * -> *) a. Applicative f => a -> f a
pure (Text -> IssuesEventAction
IssuesActionOther Text
t)
data IssuesEvent = IssuesEvent
{ IssuesEvent -> IssuesEventAction
evIssuesEventAction :: !IssuesEventAction
, IssuesEvent -> HookIssue
evIssuesEventIssue :: !HookIssue
, IssuesEvent -> HookRepository
evIssuesEventRepo :: !HookRepository
, IssuesEvent -> HookUser
evIssuesEventSender :: !HookUser
}
deriving (IssuesEvent -> IssuesEvent -> Bool
(IssuesEvent -> IssuesEvent -> Bool)
-> (IssuesEvent -> IssuesEvent -> Bool) -> Eq IssuesEvent
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: IssuesEvent -> IssuesEvent -> Bool
$c/= :: IssuesEvent -> IssuesEvent -> Bool
== :: IssuesEvent -> IssuesEvent -> Bool
$c== :: IssuesEvent -> IssuesEvent -> Bool
Eq, Int -> IssuesEvent -> ShowS
[IssuesEvent] -> ShowS
IssuesEvent -> String
(Int -> IssuesEvent -> ShowS)
-> (IssuesEvent -> String)
-> ([IssuesEvent] -> ShowS)
-> Show IssuesEvent
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [IssuesEvent] -> ShowS
$cshowList :: [IssuesEvent] -> ShowS
show :: IssuesEvent -> String
$cshow :: IssuesEvent -> String
showsPrec :: Int -> IssuesEvent -> ShowS
$cshowsPrec :: Int -> IssuesEvent -> ShowS
Show, Typeable, Typeable IssuesEvent
DataType
Constr
Typeable IssuesEvent
-> (forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> IssuesEvent -> c IssuesEvent)
-> (forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c IssuesEvent)
-> (IssuesEvent -> Constr)
-> (IssuesEvent -> DataType)
-> (forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c IssuesEvent))
-> (forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c IssuesEvent))
-> ((forall b. Data b => b -> b) -> IssuesEvent -> IssuesEvent)
-> (forall r r'.
(r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> IssuesEvent -> r)
-> (forall r r'.
(r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> IssuesEvent -> r)
-> (forall u. (forall d. Data d => d -> u) -> IssuesEvent -> [u])
-> (forall u.
Int -> (forall d. Data d => d -> u) -> IssuesEvent -> u)
-> (forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d) -> IssuesEvent -> m IssuesEvent)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> IssuesEvent -> m IssuesEvent)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> IssuesEvent -> m IssuesEvent)
-> Data IssuesEvent
IssuesEvent -> DataType
IssuesEvent -> Constr
(forall b. Data b => b -> b) -> IssuesEvent -> IssuesEvent
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> IssuesEvent -> c IssuesEvent
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c IssuesEvent
forall a.
Typeable a
-> (forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> a -> c a)
-> (forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c a)
-> (a -> Constr)
-> (a -> DataType)
-> (forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c a))
-> (forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c a))
-> ((forall b. Data b => b -> b) -> a -> a)
-> (forall r r'.
(r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> a -> r)
-> (forall r r'.
(r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> a -> r)
-> (forall u. (forall d. Data d => d -> u) -> a -> [u])
-> (forall u. Int -> (forall d. Data d => d -> u) -> a -> u)
-> (forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d) -> a -> m a)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> a -> m a)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> a -> m a)
-> Data a
forall u. Int -> (forall d. Data d => d -> u) -> IssuesEvent -> u
forall u. (forall d. Data d => d -> u) -> IssuesEvent -> [u]
forall r r'.
(r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> IssuesEvent -> r
forall r r'.
(r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> IssuesEvent -> r
forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d) -> IssuesEvent -> m IssuesEvent
forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> IssuesEvent -> m IssuesEvent
forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c IssuesEvent
forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> IssuesEvent -> c IssuesEvent
forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c IssuesEvent)
forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c IssuesEvent)
$cIssuesEvent :: Constr
$tIssuesEvent :: DataType
gmapMo :: (forall d. Data d => d -> m d) -> IssuesEvent -> m IssuesEvent
$cgmapMo :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> IssuesEvent -> m IssuesEvent
gmapMp :: (forall d. Data d => d -> m d) -> IssuesEvent -> m IssuesEvent
$cgmapMp :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> IssuesEvent -> m IssuesEvent
gmapM :: (forall d. Data d => d -> m d) -> IssuesEvent -> m IssuesEvent
$cgmapM :: forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d) -> IssuesEvent -> m IssuesEvent
gmapQi :: Int -> (forall d. Data d => d -> u) -> IssuesEvent -> u
$cgmapQi :: forall u. Int -> (forall d. Data d => d -> u) -> IssuesEvent -> u
gmapQ :: (forall d. Data d => d -> u) -> IssuesEvent -> [u]
$cgmapQ :: forall u. (forall d. Data d => d -> u) -> IssuesEvent -> [u]
gmapQr :: (r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> IssuesEvent -> r
$cgmapQr :: forall r r'.
(r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> IssuesEvent -> r
gmapQl :: (r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> IssuesEvent -> r
$cgmapQl :: forall r r'.
(r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> IssuesEvent -> r
gmapT :: (forall b. Data b => b -> b) -> IssuesEvent -> IssuesEvent
$cgmapT :: (forall b. Data b => b -> b) -> IssuesEvent -> IssuesEvent
dataCast2 :: (forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c IssuesEvent)
$cdataCast2 :: forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c IssuesEvent)
dataCast1 :: (forall d. Data d => c (t d)) -> Maybe (c IssuesEvent)
$cdataCast1 :: forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c IssuesEvent)
dataTypeOf :: IssuesEvent -> DataType
$cdataTypeOf :: IssuesEvent -> DataType
toConstr :: IssuesEvent -> Constr
$ctoConstr :: IssuesEvent -> Constr
gunfold :: (forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c IssuesEvent
$cgunfold :: forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c IssuesEvent
gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> IssuesEvent -> c IssuesEvent
$cgfoldl :: forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> IssuesEvent -> c IssuesEvent
$cp1Data :: Typeable IssuesEvent
Data, (forall x. IssuesEvent -> Rep IssuesEvent x)
-> (forall x. Rep IssuesEvent x -> IssuesEvent)
-> Generic IssuesEvent
forall x. Rep IssuesEvent x -> IssuesEvent
forall x. IssuesEvent -> Rep IssuesEvent x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep IssuesEvent x -> IssuesEvent
$cfrom :: forall x. IssuesEvent -> Rep IssuesEvent x
Generic)
instance EventHasSender IssuesEvent where senderOfEvent :: IssuesEvent -> HookUser
senderOfEvent = IssuesEvent -> HookUser
evIssuesEventSender
instance EventHasRepo IssuesEvent where repoForEvent :: IssuesEvent -> HookRepository
repoForEvent = IssuesEvent -> HookRepository
evIssuesEventRepo
instance NFData IssuesEvent where rnf :: IssuesEvent -> ()
rnf = IssuesEvent -> ()
forall a. (Generic a, GNFData (Rep a)) => a -> ()
genericRnf
data LabelEventAction
= LabelCreatedAction
| LabelEditedAction
| LabelDeletedAction
| LabelActionOther !Text
deriving (LabelEventAction -> LabelEventAction -> Bool
(LabelEventAction -> LabelEventAction -> Bool)
-> (LabelEventAction -> LabelEventAction -> Bool)
-> Eq LabelEventAction
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: LabelEventAction -> LabelEventAction -> Bool
$c/= :: LabelEventAction -> LabelEventAction -> Bool
== :: LabelEventAction -> LabelEventAction -> Bool
$c== :: LabelEventAction -> LabelEventAction -> Bool
Eq, Eq LabelEventAction
Eq LabelEventAction
-> (LabelEventAction -> LabelEventAction -> Ordering)
-> (LabelEventAction -> LabelEventAction -> Bool)
-> (LabelEventAction -> LabelEventAction -> Bool)
-> (LabelEventAction -> LabelEventAction -> Bool)
-> (LabelEventAction -> LabelEventAction -> Bool)
-> (LabelEventAction -> LabelEventAction -> LabelEventAction)
-> (LabelEventAction -> LabelEventAction -> LabelEventAction)
-> Ord LabelEventAction
LabelEventAction -> LabelEventAction -> Bool
LabelEventAction -> LabelEventAction -> Ordering
LabelEventAction -> LabelEventAction -> LabelEventAction
forall a.
Eq a
-> (a -> a -> Ordering)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> a)
-> (a -> a -> a)
-> Ord a
min :: LabelEventAction -> LabelEventAction -> LabelEventAction
$cmin :: LabelEventAction -> LabelEventAction -> LabelEventAction
max :: LabelEventAction -> LabelEventAction -> LabelEventAction
$cmax :: LabelEventAction -> LabelEventAction -> LabelEventAction
>= :: LabelEventAction -> LabelEventAction -> Bool
$c>= :: LabelEventAction -> LabelEventAction -> Bool
> :: LabelEventAction -> LabelEventAction -> Bool
$c> :: LabelEventAction -> LabelEventAction -> Bool
<= :: LabelEventAction -> LabelEventAction -> Bool
$c<= :: LabelEventAction -> LabelEventAction -> Bool
< :: LabelEventAction -> LabelEventAction -> Bool
$c< :: LabelEventAction -> LabelEventAction -> Bool
compare :: LabelEventAction -> LabelEventAction -> Ordering
$ccompare :: LabelEventAction -> LabelEventAction -> Ordering
$cp1Ord :: Eq LabelEventAction
Ord, Int -> LabelEventAction -> ShowS
[LabelEventAction] -> ShowS
LabelEventAction -> String
(Int -> LabelEventAction -> ShowS)
-> (LabelEventAction -> String)
-> ([LabelEventAction] -> ShowS)
-> Show LabelEventAction
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [LabelEventAction] -> ShowS
$cshowList :: [LabelEventAction] -> ShowS
show :: LabelEventAction -> String
$cshow :: LabelEventAction -> String
showsPrec :: Int -> LabelEventAction -> ShowS
$cshowsPrec :: Int -> LabelEventAction -> ShowS
Show, (forall x. LabelEventAction -> Rep LabelEventAction x)
-> (forall x. Rep LabelEventAction x -> LabelEventAction)
-> Generic LabelEventAction
forall x. Rep LabelEventAction x -> LabelEventAction
forall x. LabelEventAction -> Rep LabelEventAction x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep LabelEventAction x -> LabelEventAction
$cfrom :: forall x. LabelEventAction -> Rep LabelEventAction x
Generic, Typeable, Typeable LabelEventAction
DataType
Constr
Typeable LabelEventAction
-> (forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> LabelEventAction -> c LabelEventAction)
-> (forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c LabelEventAction)
-> (LabelEventAction -> Constr)
-> (LabelEventAction -> DataType)
-> (forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c LabelEventAction))
-> (forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c LabelEventAction))
-> ((forall b. Data b => b -> b)
-> LabelEventAction -> LabelEventAction)
-> (forall r r'.
(r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> LabelEventAction -> r)
-> (forall r r'.
(r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> LabelEventAction -> r)
-> (forall u.
(forall d. Data d => d -> u) -> LabelEventAction -> [u])
-> (forall u.
Int -> (forall d. Data d => d -> u) -> LabelEventAction -> u)
-> (forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d)
-> LabelEventAction -> m LabelEventAction)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> LabelEventAction -> m LabelEventAction)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> LabelEventAction -> m LabelEventAction)
-> Data LabelEventAction
LabelEventAction -> DataType
LabelEventAction -> Constr
(forall b. Data b => b -> b)
-> LabelEventAction -> LabelEventAction
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> LabelEventAction -> c LabelEventAction
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c LabelEventAction
forall a.
Typeable a
-> (forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> a -> c a)
-> (forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c a)
-> (a -> Constr)
-> (a -> DataType)
-> (forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c a))
-> (forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c a))
-> ((forall b. Data b => b -> b) -> a -> a)
-> (forall r r'.
(r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> a -> r)
-> (forall r r'.
(r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> a -> r)
-> (forall u. (forall d. Data d => d -> u) -> a -> [u])
-> (forall u. Int -> (forall d. Data d => d -> u) -> a -> u)
-> (forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d) -> a -> m a)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> a -> m a)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> a -> m a)
-> Data a
forall u.
Int -> (forall d. Data d => d -> u) -> LabelEventAction -> u
forall u. (forall d. Data d => d -> u) -> LabelEventAction -> [u]
forall r r'.
(r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> LabelEventAction -> r
forall r r'.
(r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> LabelEventAction -> r
forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d)
-> LabelEventAction -> m LabelEventAction
forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> LabelEventAction -> m LabelEventAction
forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c LabelEventAction
forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> LabelEventAction -> c LabelEventAction
forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c LabelEventAction)
forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c LabelEventAction)
$cLabelActionOther :: Constr
$cLabelDeletedAction :: Constr
$cLabelEditedAction :: Constr
$cLabelCreatedAction :: Constr
$tLabelEventAction :: DataType
gmapMo :: (forall d. Data d => d -> m d)
-> LabelEventAction -> m LabelEventAction
$cgmapMo :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> LabelEventAction -> m LabelEventAction
gmapMp :: (forall d. Data d => d -> m d)
-> LabelEventAction -> m LabelEventAction
$cgmapMp :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> LabelEventAction -> m LabelEventAction
gmapM :: (forall d. Data d => d -> m d)
-> LabelEventAction -> m LabelEventAction
$cgmapM :: forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d)
-> LabelEventAction -> m LabelEventAction
gmapQi :: Int -> (forall d. Data d => d -> u) -> LabelEventAction -> u
$cgmapQi :: forall u.
Int -> (forall d. Data d => d -> u) -> LabelEventAction -> u
gmapQ :: (forall d. Data d => d -> u) -> LabelEventAction -> [u]
$cgmapQ :: forall u. (forall d. Data d => d -> u) -> LabelEventAction -> [u]
gmapQr :: (r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> LabelEventAction -> r
$cgmapQr :: forall r r'.
(r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> LabelEventAction -> r
gmapQl :: (r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> LabelEventAction -> r
$cgmapQl :: forall r r'.
(r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> LabelEventAction -> r
gmapT :: (forall b. Data b => b -> b)
-> LabelEventAction -> LabelEventAction
$cgmapT :: (forall b. Data b => b -> b)
-> LabelEventAction -> LabelEventAction
dataCast2 :: (forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c LabelEventAction)
$cdataCast2 :: forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c LabelEventAction)
dataCast1 :: (forall d. Data d => c (t d)) -> Maybe (c LabelEventAction)
$cdataCast1 :: forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c LabelEventAction)
dataTypeOf :: LabelEventAction -> DataType
$cdataTypeOf :: LabelEventAction -> DataType
toConstr :: LabelEventAction -> Constr
$ctoConstr :: LabelEventAction -> Constr
gunfold :: (forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c LabelEventAction
$cgunfold :: forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c LabelEventAction
gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> LabelEventAction -> c LabelEventAction
$cgfoldl :: forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> LabelEventAction -> c LabelEventAction
$cp1Data :: Typeable LabelEventAction
Data)
instance NFData LabelEventAction where rnf :: LabelEventAction -> ()
rnf = LabelEventAction -> ()
forall a. (Generic a, GNFData (Rep a)) => a -> ()
genericRnf
instance FromJSON LabelEventAction where
parseJSON :: Value -> Parser LabelEventAction
parseJSON = String
-> (Text -> Parser LabelEventAction)
-> Value
-> Parser LabelEventAction
forall a. String -> (Text -> Parser a) -> Value -> Parser a
withText String
"Label event action" ((Text -> Parser LabelEventAction)
-> Value -> Parser LabelEventAction)
-> (Text -> Parser LabelEventAction)
-> Value
-> Parser LabelEventAction
forall a b. (a -> b) -> a -> b
$ \Text
t ->
case Text
t of
Text
"created" -> LabelEventAction -> Parser LabelEventAction
forall (f :: * -> *) a. Applicative f => a -> f a
pure LabelEventAction
LabelCreatedAction
Text
"edited" -> LabelEventAction -> Parser LabelEventAction
forall (f :: * -> *) a. Applicative f => a -> f a
pure LabelEventAction
LabelEditedAction
Text
"deleted" -> LabelEventAction -> Parser LabelEventAction
forall (f :: * -> *) a. Applicative f => a -> f a
pure LabelEventAction
LabelDeletedAction
Text
_ -> LabelEventAction -> Parser LabelEventAction
forall (f :: * -> *) a. Applicative f => a -> f a
pure (Text -> LabelEventAction
LabelActionOther Text
t)
data LabelEvent = LabelEvent
{ LabelEvent -> LabelEventAction
evLabelEventAction :: !LabelEventAction
, LabelEvent -> HookRepositoryLabel
evLabelEventPayload :: !HookRepositoryLabel
, LabelEvent -> HookRepository
evLabelEventRepo :: !HookRepository
, LabelEvent -> Maybe HookOrganization
evLabelEventOrganization :: !(Maybe HookOrganization)
, LabelEvent -> HookUser
evLabelEventSender :: !HookUser
}
deriving (LabelEvent -> LabelEvent -> Bool
(LabelEvent -> LabelEvent -> Bool)
-> (LabelEvent -> LabelEvent -> Bool) -> Eq LabelEvent
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: LabelEvent -> LabelEvent -> Bool
$c/= :: LabelEvent -> LabelEvent -> Bool
== :: LabelEvent -> LabelEvent -> Bool
$c== :: LabelEvent -> LabelEvent -> Bool
Eq, Int -> LabelEvent -> ShowS
[LabelEvent] -> ShowS
LabelEvent -> String
(Int -> LabelEvent -> ShowS)
-> (LabelEvent -> String)
-> ([LabelEvent] -> ShowS)
-> Show LabelEvent
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [LabelEvent] -> ShowS
$cshowList :: [LabelEvent] -> ShowS
show :: LabelEvent -> String
$cshow :: LabelEvent -> String
showsPrec :: Int -> LabelEvent -> ShowS
$cshowsPrec :: Int -> LabelEvent -> ShowS
Show, Typeable, Typeable LabelEvent
DataType
Constr
Typeable LabelEvent
-> (forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> LabelEvent -> c LabelEvent)
-> (forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c LabelEvent)
-> (LabelEvent -> Constr)
-> (LabelEvent -> DataType)
-> (forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c LabelEvent))
-> (forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c LabelEvent))
-> ((forall b. Data b => b -> b) -> LabelEvent -> LabelEvent)
-> (forall r r'.
(r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> LabelEvent -> r)
-> (forall r r'.
(r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> LabelEvent -> r)
-> (forall u. (forall d. Data d => d -> u) -> LabelEvent -> [u])
-> (forall u.
Int -> (forall d. Data d => d -> u) -> LabelEvent -> u)
-> (forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d) -> LabelEvent -> m LabelEvent)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> LabelEvent -> m LabelEvent)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> LabelEvent -> m LabelEvent)
-> Data LabelEvent
LabelEvent -> DataType
LabelEvent -> Constr
(forall b. Data b => b -> b) -> LabelEvent -> LabelEvent
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> LabelEvent -> c LabelEvent
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c LabelEvent
forall a.
Typeable a
-> (forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> a -> c a)
-> (forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c a)
-> (a -> Constr)
-> (a -> DataType)
-> (forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c a))
-> (forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c a))
-> ((forall b. Data b => b -> b) -> a -> a)
-> (forall r r'.
(r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> a -> r)
-> (forall r r'.
(r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> a -> r)
-> (forall u. (forall d. Data d => d -> u) -> a -> [u])
-> (forall u. Int -> (forall d. Data d => d -> u) -> a -> u)
-> (forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d) -> a -> m a)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> a -> m a)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> a -> m a)
-> Data a
forall u. Int -> (forall d. Data d => d -> u) -> LabelEvent -> u
forall u. (forall d. Data d => d -> u) -> LabelEvent -> [u]
forall r r'.
(r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> LabelEvent -> r
forall r r'.
(r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> LabelEvent -> r
forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d) -> LabelEvent -> m LabelEvent
forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> LabelEvent -> m LabelEvent
forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c LabelEvent
forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> LabelEvent -> c LabelEvent
forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c LabelEvent)
forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c LabelEvent)
$cLabelEvent :: Constr
$tLabelEvent :: DataType
gmapMo :: (forall d. Data d => d -> m d) -> LabelEvent -> m LabelEvent
$cgmapMo :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> LabelEvent -> m LabelEvent
gmapMp :: (forall d. Data d => d -> m d) -> LabelEvent -> m LabelEvent
$cgmapMp :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> LabelEvent -> m LabelEvent
gmapM :: (forall d. Data d => d -> m d) -> LabelEvent -> m LabelEvent
$cgmapM :: forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d) -> LabelEvent -> m LabelEvent
gmapQi :: Int -> (forall d. Data d => d -> u) -> LabelEvent -> u
$cgmapQi :: forall u. Int -> (forall d. Data d => d -> u) -> LabelEvent -> u
gmapQ :: (forall d. Data d => d -> u) -> LabelEvent -> [u]
$cgmapQ :: forall u. (forall d. Data d => d -> u) -> LabelEvent -> [u]
gmapQr :: (r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> LabelEvent -> r
$cgmapQr :: forall r r'.
(r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> LabelEvent -> r
gmapQl :: (r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> LabelEvent -> r
$cgmapQl :: forall r r'.
(r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> LabelEvent -> r
gmapT :: (forall b. Data b => b -> b) -> LabelEvent -> LabelEvent
$cgmapT :: (forall b. Data b => b -> b) -> LabelEvent -> LabelEvent
dataCast2 :: (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c LabelEvent)
$cdataCast2 :: forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c LabelEvent)
dataCast1 :: (forall d. Data d => c (t d)) -> Maybe (c LabelEvent)
$cdataCast1 :: forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c LabelEvent)
dataTypeOf :: LabelEvent -> DataType
$cdataTypeOf :: LabelEvent -> DataType
toConstr :: LabelEvent -> Constr
$ctoConstr :: LabelEvent -> Constr
gunfold :: (forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c LabelEvent
$cgunfold :: forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c LabelEvent
gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> LabelEvent -> c LabelEvent
$cgfoldl :: forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> LabelEvent -> c LabelEvent
$cp1Data :: Typeable LabelEvent
Data, (forall x. LabelEvent -> Rep LabelEvent x)
-> (forall x. Rep LabelEvent x -> LabelEvent) -> Generic LabelEvent
forall x. Rep LabelEvent x -> LabelEvent
forall x. LabelEvent -> Rep LabelEvent x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep LabelEvent x -> LabelEvent
$cfrom :: forall x. LabelEvent -> Rep LabelEvent x
Generic)
instance EventHasSender LabelEvent where senderOfEvent :: LabelEvent -> HookUser
senderOfEvent = LabelEvent -> HookUser
evLabelEventSender
instance EventHasRepo LabelEvent where repoForEvent :: LabelEvent -> HookRepository
repoForEvent = LabelEvent -> HookRepository
evLabelEventRepo
instance NFData LabelEvent where rnf :: LabelEvent -> ()
rnf = LabelEvent -> ()
forall a. (Generic a, GNFData (Rep a)) => a -> ()
genericRnf
data MarketplacePurchaseEventAction
= MarketplacePurchasePurchasedAction
| MarketplacePurchaseCancelledAction
| MarketplacePurchasePendingChangeAction
| MarketplacePurchasePendingChangeCancelledAction
| MarketplacePurchaseChangedAction
| MarketplacePurchaseActionOther !Text
deriving (MarketplacePurchaseEventAction
-> MarketplacePurchaseEventAction -> Bool
(MarketplacePurchaseEventAction
-> MarketplacePurchaseEventAction -> Bool)
-> (MarketplacePurchaseEventAction
-> MarketplacePurchaseEventAction -> Bool)
-> Eq MarketplacePurchaseEventAction
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: MarketplacePurchaseEventAction
-> MarketplacePurchaseEventAction -> Bool
$c/= :: MarketplacePurchaseEventAction
-> MarketplacePurchaseEventAction -> Bool
== :: MarketplacePurchaseEventAction
-> MarketplacePurchaseEventAction -> Bool
$c== :: MarketplacePurchaseEventAction
-> MarketplacePurchaseEventAction -> Bool
Eq, Eq MarketplacePurchaseEventAction
Eq MarketplacePurchaseEventAction
-> (MarketplacePurchaseEventAction
-> MarketplacePurchaseEventAction -> Ordering)
-> (MarketplacePurchaseEventAction
-> MarketplacePurchaseEventAction -> Bool)
-> (MarketplacePurchaseEventAction
-> MarketplacePurchaseEventAction -> Bool)
-> (MarketplacePurchaseEventAction
-> MarketplacePurchaseEventAction -> Bool)
-> (MarketplacePurchaseEventAction
-> MarketplacePurchaseEventAction -> Bool)
-> (MarketplacePurchaseEventAction
-> MarketplacePurchaseEventAction
-> MarketplacePurchaseEventAction)
-> (MarketplacePurchaseEventAction
-> MarketplacePurchaseEventAction
-> MarketplacePurchaseEventAction)
-> Ord MarketplacePurchaseEventAction
MarketplacePurchaseEventAction
-> MarketplacePurchaseEventAction -> Bool
MarketplacePurchaseEventAction
-> MarketplacePurchaseEventAction -> Ordering
MarketplacePurchaseEventAction
-> MarketplacePurchaseEventAction -> MarketplacePurchaseEventAction
forall a.
Eq a
-> (a -> a -> Ordering)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> a)
-> (a -> a -> a)
-> Ord a
min :: MarketplacePurchaseEventAction
-> MarketplacePurchaseEventAction -> MarketplacePurchaseEventAction
$cmin :: MarketplacePurchaseEventAction
-> MarketplacePurchaseEventAction -> MarketplacePurchaseEventAction
max :: MarketplacePurchaseEventAction
-> MarketplacePurchaseEventAction -> MarketplacePurchaseEventAction
$cmax :: MarketplacePurchaseEventAction
-> MarketplacePurchaseEventAction -> MarketplacePurchaseEventAction
>= :: MarketplacePurchaseEventAction
-> MarketplacePurchaseEventAction -> Bool
$c>= :: MarketplacePurchaseEventAction
-> MarketplacePurchaseEventAction -> Bool
> :: MarketplacePurchaseEventAction
-> MarketplacePurchaseEventAction -> Bool
$c> :: MarketplacePurchaseEventAction
-> MarketplacePurchaseEventAction -> Bool
<= :: MarketplacePurchaseEventAction
-> MarketplacePurchaseEventAction -> Bool
$c<= :: MarketplacePurchaseEventAction
-> MarketplacePurchaseEventAction -> Bool
< :: MarketplacePurchaseEventAction
-> MarketplacePurchaseEventAction -> Bool
$c< :: MarketplacePurchaseEventAction
-> MarketplacePurchaseEventAction -> Bool
compare :: MarketplacePurchaseEventAction
-> MarketplacePurchaseEventAction -> Ordering
$ccompare :: MarketplacePurchaseEventAction
-> MarketplacePurchaseEventAction -> Ordering
$cp1Ord :: Eq MarketplacePurchaseEventAction
Ord, Int -> MarketplacePurchaseEventAction -> ShowS
[MarketplacePurchaseEventAction] -> ShowS
MarketplacePurchaseEventAction -> String
(Int -> MarketplacePurchaseEventAction -> ShowS)
-> (MarketplacePurchaseEventAction -> String)
-> ([MarketplacePurchaseEventAction] -> ShowS)
-> Show MarketplacePurchaseEventAction
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [MarketplacePurchaseEventAction] -> ShowS
$cshowList :: [MarketplacePurchaseEventAction] -> ShowS
show :: MarketplacePurchaseEventAction -> String
$cshow :: MarketplacePurchaseEventAction -> String
showsPrec :: Int -> MarketplacePurchaseEventAction -> ShowS
$cshowsPrec :: Int -> MarketplacePurchaseEventAction -> ShowS
Show, (forall x.
MarketplacePurchaseEventAction
-> Rep MarketplacePurchaseEventAction x)
-> (forall x.
Rep MarketplacePurchaseEventAction x
-> MarketplacePurchaseEventAction)
-> Generic MarketplacePurchaseEventAction
forall x.
Rep MarketplacePurchaseEventAction x
-> MarketplacePurchaseEventAction
forall x.
MarketplacePurchaseEventAction
-> Rep MarketplacePurchaseEventAction x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x.
Rep MarketplacePurchaseEventAction x
-> MarketplacePurchaseEventAction
$cfrom :: forall x.
MarketplacePurchaseEventAction
-> Rep MarketplacePurchaseEventAction x
Generic, Typeable, Typeable MarketplacePurchaseEventAction
DataType
Constr
Typeable MarketplacePurchaseEventAction
-> (forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g)
-> MarketplacePurchaseEventAction
-> c MarketplacePurchaseEventAction)
-> (forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r)
-> Constr
-> c MarketplacePurchaseEventAction)
-> (MarketplacePurchaseEventAction -> Constr)
-> (MarketplacePurchaseEventAction -> DataType)
-> (forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d))
-> Maybe (c MarketplacePurchaseEventAction))
-> (forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c MarketplacePurchaseEventAction))
-> ((forall b. Data b => b -> b)
-> MarketplacePurchaseEventAction
-> MarketplacePurchaseEventAction)
-> (forall r r'.
(r -> r' -> r)
-> r
-> (forall d. Data d => d -> r')
-> MarketplacePurchaseEventAction
-> r)
-> (forall r r'.
(r' -> r -> r)
-> r
-> (forall d. Data d => d -> r')
-> MarketplacePurchaseEventAction
-> r)
-> (forall u.
(forall d. Data d => d -> u)
-> MarketplacePurchaseEventAction -> [u])
-> (forall u.
Int
-> (forall d. Data d => d -> u)
-> MarketplacePurchaseEventAction
-> u)
-> (forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d)
-> MarketplacePurchaseEventAction
-> m MarketplacePurchaseEventAction)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> MarketplacePurchaseEventAction
-> m MarketplacePurchaseEventAction)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> MarketplacePurchaseEventAction
-> m MarketplacePurchaseEventAction)
-> Data MarketplacePurchaseEventAction
MarketplacePurchaseEventAction -> DataType
MarketplacePurchaseEventAction -> Constr
(forall b. Data b => b -> b)
-> MarketplacePurchaseEventAction -> MarketplacePurchaseEventAction
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g)
-> MarketplacePurchaseEventAction
-> c MarketplacePurchaseEventAction
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r)
-> Constr
-> c MarketplacePurchaseEventAction
forall a.
Typeable a
-> (forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> a -> c a)
-> (forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c a)
-> (a -> Constr)
-> (a -> DataType)
-> (forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c a))
-> (forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c a))
-> ((forall b. Data b => b -> b) -> a -> a)
-> (forall r r'.
(r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> a -> r)
-> (forall r r'.
(r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> a -> r)
-> (forall u. (forall d. Data d => d -> u) -> a -> [u])
-> (forall u. Int -> (forall d. Data d => d -> u) -> a -> u)
-> (forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d) -> a -> m a)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> a -> m a)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> a -> m a)
-> Data a
forall u.
Int
-> (forall d. Data d => d -> u)
-> MarketplacePurchaseEventAction
-> u
forall u.
(forall d. Data d => d -> u)
-> MarketplacePurchaseEventAction -> [u]
forall r r'.
(r -> r' -> r)
-> r
-> (forall d. Data d => d -> r')
-> MarketplacePurchaseEventAction
-> r
forall r r'.
(r' -> r -> r)
-> r
-> (forall d. Data d => d -> r')
-> MarketplacePurchaseEventAction
-> r
forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d)
-> MarketplacePurchaseEventAction
-> m MarketplacePurchaseEventAction
forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> MarketplacePurchaseEventAction
-> m MarketplacePurchaseEventAction
forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r)
-> Constr
-> c MarketplacePurchaseEventAction
forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g)
-> MarketplacePurchaseEventAction
-> c MarketplacePurchaseEventAction
forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d))
-> Maybe (c MarketplacePurchaseEventAction)
forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c MarketplacePurchaseEventAction)
$cMarketplacePurchaseActionOther :: Constr
$cMarketplacePurchaseChangedAction :: Constr
$cMarketplacePurchasePendingChangeCancelledAction :: Constr
$cMarketplacePurchasePendingChangeAction :: Constr
$cMarketplacePurchaseCancelledAction :: Constr
$cMarketplacePurchasePurchasedAction :: Constr
$tMarketplacePurchaseEventAction :: DataType
gmapMo :: (forall d. Data d => d -> m d)
-> MarketplacePurchaseEventAction
-> m MarketplacePurchaseEventAction
$cgmapMo :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> MarketplacePurchaseEventAction
-> m MarketplacePurchaseEventAction
gmapMp :: (forall d. Data d => d -> m d)
-> MarketplacePurchaseEventAction
-> m MarketplacePurchaseEventAction
$cgmapMp :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> MarketplacePurchaseEventAction
-> m MarketplacePurchaseEventAction
gmapM :: (forall d. Data d => d -> m d)
-> MarketplacePurchaseEventAction
-> m MarketplacePurchaseEventAction
$cgmapM :: forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d)
-> MarketplacePurchaseEventAction
-> m MarketplacePurchaseEventAction
gmapQi :: Int
-> (forall d. Data d => d -> u)
-> MarketplacePurchaseEventAction
-> u
$cgmapQi :: forall u.
Int
-> (forall d. Data d => d -> u)
-> MarketplacePurchaseEventAction
-> u
gmapQ :: (forall d. Data d => d -> u)
-> MarketplacePurchaseEventAction -> [u]
$cgmapQ :: forall u.
(forall d. Data d => d -> u)
-> MarketplacePurchaseEventAction -> [u]
gmapQr :: (r' -> r -> r)
-> r
-> (forall d. Data d => d -> r')
-> MarketplacePurchaseEventAction
-> r
$cgmapQr :: forall r r'.
(r' -> r -> r)
-> r
-> (forall d. Data d => d -> r')
-> MarketplacePurchaseEventAction
-> r
gmapQl :: (r -> r' -> r)
-> r
-> (forall d. Data d => d -> r')
-> MarketplacePurchaseEventAction
-> r
$cgmapQl :: forall r r'.
(r -> r' -> r)
-> r
-> (forall d. Data d => d -> r')
-> MarketplacePurchaseEventAction
-> r
gmapT :: (forall b. Data b => b -> b)
-> MarketplacePurchaseEventAction -> MarketplacePurchaseEventAction
$cgmapT :: (forall b. Data b => b -> b)
-> MarketplacePurchaseEventAction -> MarketplacePurchaseEventAction
dataCast2 :: (forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c MarketplacePurchaseEventAction)
$cdataCast2 :: forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c MarketplacePurchaseEventAction)
dataCast1 :: (forall d. Data d => c (t d))
-> Maybe (c MarketplacePurchaseEventAction)
$cdataCast1 :: forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d))
-> Maybe (c MarketplacePurchaseEventAction)
dataTypeOf :: MarketplacePurchaseEventAction -> DataType
$cdataTypeOf :: MarketplacePurchaseEventAction -> DataType
toConstr :: MarketplacePurchaseEventAction -> Constr
$ctoConstr :: MarketplacePurchaseEventAction -> Constr
gunfold :: (forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r)
-> Constr
-> c MarketplacePurchaseEventAction
$cgunfold :: forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r)
-> Constr
-> c MarketplacePurchaseEventAction
gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g)
-> MarketplacePurchaseEventAction
-> c MarketplacePurchaseEventAction
$cgfoldl :: forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g)
-> MarketplacePurchaseEventAction
-> c MarketplacePurchaseEventAction
$cp1Data :: Typeable MarketplacePurchaseEventAction
Data)
instance NFData MarketplacePurchaseEventAction where rnf :: MarketplacePurchaseEventAction -> ()
rnf = MarketplacePurchaseEventAction -> ()
forall a. (Generic a, GNFData (Rep a)) => a -> ()
genericRnf
instance FromJSON MarketplacePurchaseEventAction where
parseJSON :: Value -> Parser MarketplacePurchaseEventAction
parseJSON = String
-> (Text -> Parser MarketplacePurchaseEventAction)
-> Value
-> Parser MarketplacePurchaseEventAction
forall a. String -> (Text -> Parser a) -> Value -> Parser a
withText String
"Marketplace purchase event action" ((Text -> Parser MarketplacePurchaseEventAction)
-> Value -> Parser MarketplacePurchaseEventAction)
-> (Text -> Parser MarketplacePurchaseEventAction)
-> Value
-> Parser MarketplacePurchaseEventAction
forall a b. (a -> b) -> a -> b
$ \Text
t ->
case Text
t of
Text
"purchased" -> MarketplacePurchaseEventAction
-> Parser MarketplacePurchaseEventAction
forall (f :: * -> *) a. Applicative f => a -> f a
pure MarketplacePurchaseEventAction
MarketplacePurchasePurchasedAction
Text
"cancelled" -> MarketplacePurchaseEventAction
-> Parser MarketplacePurchaseEventAction
forall (f :: * -> *) a. Applicative f => a -> f a
pure MarketplacePurchaseEventAction
MarketplacePurchaseCancelledAction
Text
"pending_change" -> MarketplacePurchaseEventAction
-> Parser MarketplacePurchaseEventAction
forall (f :: * -> *) a. Applicative f => a -> f a
pure MarketplacePurchaseEventAction
MarketplacePurchasePendingChangeAction
Text
"pending_change_cancelled" -> MarketplacePurchaseEventAction
-> Parser MarketplacePurchaseEventAction
forall (f :: * -> *) a. Applicative f => a -> f a
pure MarketplacePurchaseEventAction
MarketplacePurchasePendingChangeCancelledAction
Text
"changed" -> MarketplacePurchaseEventAction
-> Parser MarketplacePurchaseEventAction
forall (f :: * -> *) a. Applicative f => a -> f a
pure MarketplacePurchaseEventAction
MarketplacePurchaseChangedAction
Text
_ -> MarketplacePurchaseEventAction
-> Parser MarketplacePurchaseEventAction
forall (f :: * -> *) a. Applicative f => a -> f a
pure (Text -> MarketplacePurchaseEventAction
MarketplacePurchaseActionOther Text
t)
data MarketplacePurchaseEvent = MarketplacePurchaseEvent
{ MarketplacePurchaseEvent -> MarketplacePurchaseEventAction
evMarketplacePurchaseAction :: !MarketplacePurchaseEventAction
, MarketplacePurchaseEvent -> UTCTime
evMarketplacePurchaseEffectiveDate :: !UTCTime
, MarketplacePurchaseEvent -> HookUser
evMarketplacePurchaseSender :: !HookUser
, MarketplacePurchaseEvent -> HookMarketplacePurchase
evMarketplacePurchaseNew :: !HookMarketplacePurchase
, MarketplacePurchaseEvent -> Maybe HookMarketplacePurchase
evMarketplacePurchasePrevious :: !(Maybe HookMarketplacePurchase)
}
deriving (MarketplacePurchaseEvent -> MarketplacePurchaseEvent -> Bool
(MarketplacePurchaseEvent -> MarketplacePurchaseEvent -> Bool)
-> (MarketplacePurchaseEvent -> MarketplacePurchaseEvent -> Bool)
-> Eq MarketplacePurchaseEvent
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: MarketplacePurchaseEvent -> MarketplacePurchaseEvent -> Bool
$c/= :: MarketplacePurchaseEvent -> MarketplacePurchaseEvent -> Bool
== :: MarketplacePurchaseEvent -> MarketplacePurchaseEvent -> Bool
$c== :: MarketplacePurchaseEvent -> MarketplacePurchaseEvent -> Bool
Eq, Int -> MarketplacePurchaseEvent -> ShowS
[MarketplacePurchaseEvent] -> ShowS
MarketplacePurchaseEvent -> String
(Int -> MarketplacePurchaseEvent -> ShowS)
-> (MarketplacePurchaseEvent -> String)
-> ([MarketplacePurchaseEvent] -> ShowS)
-> Show MarketplacePurchaseEvent
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [MarketplacePurchaseEvent] -> ShowS
$cshowList :: [MarketplacePurchaseEvent] -> ShowS
show :: MarketplacePurchaseEvent -> String
$cshow :: MarketplacePurchaseEvent -> String
showsPrec :: Int -> MarketplacePurchaseEvent -> ShowS
$cshowsPrec :: Int -> MarketplacePurchaseEvent -> ShowS
Show, Typeable, Typeable MarketplacePurchaseEvent
DataType
Constr
Typeable MarketplacePurchaseEvent
-> (forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g)
-> MarketplacePurchaseEvent
-> c MarketplacePurchaseEvent)
-> (forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c MarketplacePurchaseEvent)
-> (MarketplacePurchaseEvent -> Constr)
-> (MarketplacePurchaseEvent -> DataType)
-> (forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d))
-> Maybe (c MarketplacePurchaseEvent))
-> (forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c MarketplacePurchaseEvent))
-> ((forall b. Data b => b -> b)
-> MarketplacePurchaseEvent -> MarketplacePurchaseEvent)
-> (forall r r'.
(r -> r' -> r)
-> r
-> (forall d. Data d => d -> r')
-> MarketplacePurchaseEvent
-> r)
-> (forall r r'.
(r' -> r -> r)
-> r
-> (forall d. Data d => d -> r')
-> MarketplacePurchaseEvent
-> r)
-> (forall u.
(forall d. Data d => d -> u) -> MarketplacePurchaseEvent -> [u])
-> (forall u.
Int
-> (forall d. Data d => d -> u) -> MarketplacePurchaseEvent -> u)
-> (forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d)
-> MarketplacePurchaseEvent -> m MarketplacePurchaseEvent)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> MarketplacePurchaseEvent -> m MarketplacePurchaseEvent)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> MarketplacePurchaseEvent -> m MarketplacePurchaseEvent)
-> Data MarketplacePurchaseEvent
MarketplacePurchaseEvent -> DataType
MarketplacePurchaseEvent -> Constr
(forall b. Data b => b -> b)
-> MarketplacePurchaseEvent -> MarketplacePurchaseEvent
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g)
-> MarketplacePurchaseEvent
-> c MarketplacePurchaseEvent
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c MarketplacePurchaseEvent
forall a.
Typeable a
-> (forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> a -> c a)
-> (forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c a)
-> (a -> Constr)
-> (a -> DataType)
-> (forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c a))
-> (forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c a))
-> ((forall b. Data b => b -> b) -> a -> a)
-> (forall r r'.
(r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> a -> r)
-> (forall r r'.
(r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> a -> r)
-> (forall u. (forall d. Data d => d -> u) -> a -> [u])
-> (forall u. Int -> (forall d. Data d => d -> u) -> a -> u)
-> (forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d) -> a -> m a)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> a -> m a)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> a -> m a)
-> Data a
forall u.
Int
-> (forall d. Data d => d -> u) -> MarketplacePurchaseEvent -> u
forall u.
(forall d. Data d => d -> u) -> MarketplacePurchaseEvent -> [u]
forall r r'.
(r -> r' -> r)
-> r
-> (forall d. Data d => d -> r')
-> MarketplacePurchaseEvent
-> r
forall r r'.
(r' -> r -> r)
-> r
-> (forall d. Data d => d -> r')
-> MarketplacePurchaseEvent
-> r
forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d)
-> MarketplacePurchaseEvent -> m MarketplacePurchaseEvent
forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> MarketplacePurchaseEvent -> m MarketplacePurchaseEvent
forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c MarketplacePurchaseEvent
forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g)
-> MarketplacePurchaseEvent
-> c MarketplacePurchaseEvent
forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c MarketplacePurchaseEvent)
forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c MarketplacePurchaseEvent)
$cMarketplacePurchaseEvent :: Constr
$tMarketplacePurchaseEvent :: DataType
gmapMo :: (forall d. Data d => d -> m d)
-> MarketplacePurchaseEvent -> m MarketplacePurchaseEvent
$cgmapMo :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> MarketplacePurchaseEvent -> m MarketplacePurchaseEvent
gmapMp :: (forall d. Data d => d -> m d)
-> MarketplacePurchaseEvent -> m MarketplacePurchaseEvent
$cgmapMp :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> MarketplacePurchaseEvent -> m MarketplacePurchaseEvent
gmapM :: (forall d. Data d => d -> m d)
-> MarketplacePurchaseEvent -> m MarketplacePurchaseEvent
$cgmapM :: forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d)
-> MarketplacePurchaseEvent -> m MarketplacePurchaseEvent
gmapQi :: Int
-> (forall d. Data d => d -> u) -> MarketplacePurchaseEvent -> u
$cgmapQi :: forall u.
Int
-> (forall d. Data d => d -> u) -> MarketplacePurchaseEvent -> u
gmapQ :: (forall d. Data d => d -> u) -> MarketplacePurchaseEvent -> [u]
$cgmapQ :: forall u.
(forall d. Data d => d -> u) -> MarketplacePurchaseEvent -> [u]
gmapQr :: (r' -> r -> r)
-> r
-> (forall d. Data d => d -> r')
-> MarketplacePurchaseEvent
-> r
$cgmapQr :: forall r r'.
(r' -> r -> r)
-> r
-> (forall d. Data d => d -> r')
-> MarketplacePurchaseEvent
-> r
gmapQl :: (r -> r' -> r)
-> r
-> (forall d. Data d => d -> r')
-> MarketplacePurchaseEvent
-> r
$cgmapQl :: forall r r'.
(r -> r' -> r)
-> r
-> (forall d. Data d => d -> r')
-> MarketplacePurchaseEvent
-> r
gmapT :: (forall b. Data b => b -> b)
-> MarketplacePurchaseEvent -> MarketplacePurchaseEvent
$cgmapT :: (forall b. Data b => b -> b)
-> MarketplacePurchaseEvent -> MarketplacePurchaseEvent
dataCast2 :: (forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c MarketplacePurchaseEvent)
$cdataCast2 :: forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c MarketplacePurchaseEvent)
dataCast1 :: (forall d. Data d => c (t d)) -> Maybe (c MarketplacePurchaseEvent)
$cdataCast1 :: forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c MarketplacePurchaseEvent)
dataTypeOf :: MarketplacePurchaseEvent -> DataType
$cdataTypeOf :: MarketplacePurchaseEvent -> DataType
toConstr :: MarketplacePurchaseEvent -> Constr
$ctoConstr :: MarketplacePurchaseEvent -> Constr
gunfold :: (forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c MarketplacePurchaseEvent
$cgunfold :: forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c MarketplacePurchaseEvent
gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g)
-> MarketplacePurchaseEvent
-> c MarketplacePurchaseEvent
$cgfoldl :: forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g)
-> MarketplacePurchaseEvent
-> c MarketplacePurchaseEvent
$cp1Data :: Typeable MarketplacePurchaseEvent
Data, (forall x.
MarketplacePurchaseEvent -> Rep MarketplacePurchaseEvent x)
-> (forall x.
Rep MarketplacePurchaseEvent x -> MarketplacePurchaseEvent)
-> Generic MarketplacePurchaseEvent
forall x.
Rep MarketplacePurchaseEvent x -> MarketplacePurchaseEvent
forall x.
MarketplacePurchaseEvent -> Rep MarketplacePurchaseEvent x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x.
Rep MarketplacePurchaseEvent x -> MarketplacePurchaseEvent
$cfrom :: forall x.
MarketplacePurchaseEvent -> Rep MarketplacePurchaseEvent x
Generic)
instance EventHasSender MarketplacePurchaseEvent where senderOfEvent :: MarketplacePurchaseEvent -> HookUser
senderOfEvent = MarketplacePurchaseEvent -> HookUser
evMarketplacePurchaseSender
instance NFData MarketplacePurchaseEvent where rnf :: MarketplacePurchaseEvent -> ()
rnf = MarketplacePurchaseEvent -> ()
forall a. (Generic a, GNFData (Rep a)) => a -> ()
genericRnf
data MemberEventAction
= MemberAddedAction
| MemberEditedAction
| MemberDeletedAction
| MemberActionOther !Text
deriving (MemberEventAction -> MemberEventAction -> Bool
(MemberEventAction -> MemberEventAction -> Bool)
-> (MemberEventAction -> MemberEventAction -> Bool)
-> Eq MemberEventAction
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: MemberEventAction -> MemberEventAction -> Bool
$c/= :: MemberEventAction -> MemberEventAction -> Bool
== :: MemberEventAction -> MemberEventAction -> Bool
$c== :: MemberEventAction -> MemberEventAction -> Bool
Eq, Eq MemberEventAction
Eq MemberEventAction
-> (MemberEventAction -> MemberEventAction -> Ordering)
-> (MemberEventAction -> MemberEventAction -> Bool)
-> (MemberEventAction -> MemberEventAction -> Bool)
-> (MemberEventAction -> MemberEventAction -> Bool)
-> (MemberEventAction -> MemberEventAction -> Bool)
-> (MemberEventAction -> MemberEventAction -> MemberEventAction)
-> (MemberEventAction -> MemberEventAction -> MemberEventAction)
-> Ord MemberEventAction
MemberEventAction -> MemberEventAction -> Bool
MemberEventAction -> MemberEventAction -> Ordering
MemberEventAction -> MemberEventAction -> MemberEventAction
forall a.
Eq a
-> (a -> a -> Ordering)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> a)
-> (a -> a -> a)
-> Ord a
min :: MemberEventAction -> MemberEventAction -> MemberEventAction
$cmin :: MemberEventAction -> MemberEventAction -> MemberEventAction
max :: MemberEventAction -> MemberEventAction -> MemberEventAction
$cmax :: MemberEventAction -> MemberEventAction -> MemberEventAction
>= :: MemberEventAction -> MemberEventAction -> Bool
$c>= :: MemberEventAction -> MemberEventAction -> Bool
> :: MemberEventAction -> MemberEventAction -> Bool
$c> :: MemberEventAction -> MemberEventAction -> Bool
<= :: MemberEventAction -> MemberEventAction -> Bool
$c<= :: MemberEventAction -> MemberEventAction -> Bool
< :: MemberEventAction -> MemberEventAction -> Bool
$c< :: MemberEventAction -> MemberEventAction -> Bool
compare :: MemberEventAction -> MemberEventAction -> Ordering
$ccompare :: MemberEventAction -> MemberEventAction -> Ordering
$cp1Ord :: Eq MemberEventAction
Ord, Int -> MemberEventAction -> ShowS
[MemberEventAction] -> ShowS
MemberEventAction -> String
(Int -> MemberEventAction -> ShowS)
-> (MemberEventAction -> String)
-> ([MemberEventAction] -> ShowS)
-> Show MemberEventAction
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [MemberEventAction] -> ShowS
$cshowList :: [MemberEventAction] -> ShowS
show :: MemberEventAction -> String
$cshow :: MemberEventAction -> String
showsPrec :: Int -> MemberEventAction -> ShowS
$cshowsPrec :: Int -> MemberEventAction -> ShowS
Show, (forall x. MemberEventAction -> Rep MemberEventAction x)
-> (forall x. Rep MemberEventAction x -> MemberEventAction)
-> Generic MemberEventAction
forall x. Rep MemberEventAction x -> MemberEventAction
forall x. MemberEventAction -> Rep MemberEventAction x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep MemberEventAction x -> MemberEventAction
$cfrom :: forall x. MemberEventAction -> Rep MemberEventAction x
Generic, Typeable, Typeable MemberEventAction
DataType
Constr
Typeable MemberEventAction
-> (forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g)
-> MemberEventAction
-> c MemberEventAction)
-> (forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c MemberEventAction)
-> (MemberEventAction -> Constr)
-> (MemberEventAction -> DataType)
-> (forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c MemberEventAction))
-> (forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c MemberEventAction))
-> ((forall b. Data b => b -> b)
-> MemberEventAction -> MemberEventAction)
-> (forall r r'.
(r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> MemberEventAction -> r)
-> (forall r r'.
(r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> MemberEventAction -> r)
-> (forall u.
(forall d. Data d => d -> u) -> MemberEventAction -> [u])
-> (forall u.
Int -> (forall d. Data d => d -> u) -> MemberEventAction -> u)
-> (forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d)
-> MemberEventAction -> m MemberEventAction)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> MemberEventAction -> m MemberEventAction)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> MemberEventAction -> m MemberEventAction)
-> Data MemberEventAction
MemberEventAction -> DataType
MemberEventAction -> Constr
(forall b. Data b => b -> b)
-> MemberEventAction -> MemberEventAction
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> MemberEventAction -> c MemberEventAction
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c MemberEventAction
forall a.
Typeable a
-> (forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> a -> c a)
-> (forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c a)
-> (a -> Constr)
-> (a -> DataType)
-> (forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c a))
-> (forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c a))
-> ((forall b. Data b => b -> b) -> a -> a)
-> (forall r r'.
(r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> a -> r)
-> (forall r r'.
(r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> a -> r)
-> (forall u. (forall d. Data d => d -> u) -> a -> [u])
-> (forall u. Int -> (forall d. Data d => d -> u) -> a -> u)
-> (forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d) -> a -> m a)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> a -> m a)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> a -> m a)
-> Data a
forall u.
Int -> (forall d. Data d => d -> u) -> MemberEventAction -> u
forall u. (forall d. Data d => d -> u) -> MemberEventAction -> [u]
forall r r'.
(r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> MemberEventAction -> r
forall r r'.
(r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> MemberEventAction -> r
forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d)
-> MemberEventAction -> m MemberEventAction
forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> MemberEventAction -> m MemberEventAction
forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c MemberEventAction
forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> MemberEventAction -> c MemberEventAction
forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c MemberEventAction)
forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c MemberEventAction)
$cMemberActionOther :: Constr
$cMemberDeletedAction :: Constr
$cMemberEditedAction :: Constr
$cMemberAddedAction :: Constr
$tMemberEventAction :: DataType
gmapMo :: (forall d. Data d => d -> m d)
-> MemberEventAction -> m MemberEventAction
$cgmapMo :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> MemberEventAction -> m MemberEventAction
gmapMp :: (forall d. Data d => d -> m d)
-> MemberEventAction -> m MemberEventAction
$cgmapMp :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> MemberEventAction -> m MemberEventAction
gmapM :: (forall d. Data d => d -> m d)
-> MemberEventAction -> m MemberEventAction
$cgmapM :: forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d)
-> MemberEventAction -> m MemberEventAction
gmapQi :: Int -> (forall d. Data d => d -> u) -> MemberEventAction -> u
$cgmapQi :: forall u.
Int -> (forall d. Data d => d -> u) -> MemberEventAction -> u
gmapQ :: (forall d. Data d => d -> u) -> MemberEventAction -> [u]
$cgmapQ :: forall u. (forall d. Data d => d -> u) -> MemberEventAction -> [u]
gmapQr :: (r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> MemberEventAction -> r
$cgmapQr :: forall r r'.
(r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> MemberEventAction -> r
gmapQl :: (r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> MemberEventAction -> r
$cgmapQl :: forall r r'.
(r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> MemberEventAction -> r
gmapT :: (forall b. Data b => b -> b)
-> MemberEventAction -> MemberEventAction
$cgmapT :: (forall b. Data b => b -> b)
-> MemberEventAction -> MemberEventAction
dataCast2 :: (forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c MemberEventAction)
$cdataCast2 :: forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c MemberEventAction)
dataCast1 :: (forall d. Data d => c (t d)) -> Maybe (c MemberEventAction)
$cdataCast1 :: forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c MemberEventAction)
dataTypeOf :: MemberEventAction -> DataType
$cdataTypeOf :: MemberEventAction -> DataType
toConstr :: MemberEventAction -> Constr
$ctoConstr :: MemberEventAction -> Constr
gunfold :: (forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c MemberEventAction
$cgunfold :: forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c MemberEventAction
gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> MemberEventAction -> c MemberEventAction
$cgfoldl :: forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> MemberEventAction -> c MemberEventAction
$cp1Data :: Typeable MemberEventAction
Data)
instance NFData MemberEventAction where rnf :: MemberEventAction -> ()
rnf = MemberEventAction -> ()
forall a. (Generic a, GNFData (Rep a)) => a -> ()
genericRnf
instance FromJSON MemberEventAction where
parseJSON :: Value -> Parser MemberEventAction
parseJSON = String
-> (Text -> Parser MemberEventAction)
-> Value
-> Parser MemberEventAction
forall a. String -> (Text -> Parser a) -> Value -> Parser a
withText String
"Member event action" ((Text -> Parser MemberEventAction)
-> Value -> Parser MemberEventAction)
-> (Text -> Parser MemberEventAction)
-> Value
-> Parser MemberEventAction
forall a b. (a -> b) -> a -> b
$ \Text
t ->
case Text
t of
Text
"added" -> MemberEventAction -> Parser MemberEventAction
forall (f :: * -> *) a. Applicative f => a -> f a
pure MemberEventAction
MemberAddedAction
Text
"edited" -> MemberEventAction -> Parser MemberEventAction
forall (f :: * -> *) a. Applicative f => a -> f a
pure MemberEventAction
MemberEditedAction
Text
"deleted" -> MemberEventAction -> Parser MemberEventAction
forall (f :: * -> *) a. Applicative f => a -> f a
pure MemberEventAction
MemberDeletedAction
Text
_ -> MemberEventAction -> Parser MemberEventAction
forall (f :: * -> *) a. Applicative f => a -> f a
pure (Text -> MemberEventAction
MemberActionOther Text
t)
data MemberEvent = MemberEvent
{ MemberEvent -> MemberEventAction
evMemberAction :: !MemberEventAction
, MemberEvent -> HookUser
evMemberUser :: !HookUser
, MemberEvent -> HookRepository
evMemberRepo :: !HookRepository
, MemberEvent -> HookUser
evMemberSender :: !HookUser
}
deriving (MemberEvent -> MemberEvent -> Bool
(MemberEvent -> MemberEvent -> Bool)
-> (MemberEvent -> MemberEvent -> Bool) -> Eq MemberEvent
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: MemberEvent -> MemberEvent -> Bool
$c/= :: MemberEvent -> MemberEvent -> Bool
== :: MemberEvent -> MemberEvent -> Bool
$c== :: MemberEvent -> MemberEvent -> Bool
Eq, Int -> MemberEvent -> ShowS
[MemberEvent] -> ShowS
MemberEvent -> String
(Int -> MemberEvent -> ShowS)
-> (MemberEvent -> String)
-> ([MemberEvent] -> ShowS)
-> Show MemberEvent
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [MemberEvent] -> ShowS
$cshowList :: [MemberEvent] -> ShowS
show :: MemberEvent -> String
$cshow :: MemberEvent -> String
showsPrec :: Int -> MemberEvent -> ShowS
$cshowsPrec :: Int -> MemberEvent -> ShowS
Show, Typeable, Typeable MemberEvent
DataType
Constr
Typeable MemberEvent
-> (forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> MemberEvent -> c MemberEvent)
-> (forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c MemberEvent)
-> (MemberEvent -> Constr)
-> (MemberEvent -> DataType)
-> (forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c MemberEvent))
-> (forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c MemberEvent))
-> ((forall b. Data b => b -> b) -> MemberEvent -> MemberEvent)
-> (forall r r'.
(r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> MemberEvent -> r)
-> (forall r r'.
(r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> MemberEvent -> r)
-> (forall u. (forall d. Data d => d -> u) -> MemberEvent -> [u])
-> (forall u.
Int -> (forall d. Data d => d -> u) -> MemberEvent -> u)
-> (forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d) -> MemberEvent -> m MemberEvent)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> MemberEvent -> m MemberEvent)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> MemberEvent -> m MemberEvent)
-> Data MemberEvent
MemberEvent -> DataType
MemberEvent -> Constr
(forall b. Data b => b -> b) -> MemberEvent -> MemberEvent
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> MemberEvent -> c MemberEvent
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c MemberEvent
forall a.
Typeable a
-> (forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> a -> c a)
-> (forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c a)
-> (a -> Constr)
-> (a -> DataType)
-> (forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c a))
-> (forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c a))
-> ((forall b. Data b => b -> b) -> a -> a)
-> (forall r r'.
(r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> a -> r)
-> (forall r r'.
(r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> a -> r)
-> (forall u. (forall d. Data d => d -> u) -> a -> [u])
-> (forall u. Int -> (forall d. Data d => d -> u) -> a -> u)
-> (forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d) -> a -> m a)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> a -> m a)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> a -> m a)
-> Data a
forall u. Int -> (forall d. Data d => d -> u) -> MemberEvent -> u
forall u. (forall d. Data d => d -> u) -> MemberEvent -> [u]
forall r r'.
(r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> MemberEvent -> r
forall r r'.
(r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> MemberEvent -> r
forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d) -> MemberEvent -> m MemberEvent
forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> MemberEvent -> m MemberEvent
forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c MemberEvent
forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> MemberEvent -> c MemberEvent
forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c MemberEvent)
forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c MemberEvent)
$cMemberEvent :: Constr
$tMemberEvent :: DataType
gmapMo :: (forall d. Data d => d -> m d) -> MemberEvent -> m MemberEvent
$cgmapMo :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> MemberEvent -> m MemberEvent
gmapMp :: (forall d. Data d => d -> m d) -> MemberEvent -> m MemberEvent
$cgmapMp :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> MemberEvent -> m MemberEvent
gmapM :: (forall d. Data d => d -> m d) -> MemberEvent -> m MemberEvent
$cgmapM :: forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d) -> MemberEvent -> m MemberEvent
gmapQi :: Int -> (forall d. Data d => d -> u) -> MemberEvent -> u
$cgmapQi :: forall u. Int -> (forall d. Data d => d -> u) -> MemberEvent -> u
gmapQ :: (forall d. Data d => d -> u) -> MemberEvent -> [u]
$cgmapQ :: forall u. (forall d. Data d => d -> u) -> MemberEvent -> [u]
gmapQr :: (r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> MemberEvent -> r
$cgmapQr :: forall r r'.
(r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> MemberEvent -> r
gmapQl :: (r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> MemberEvent -> r
$cgmapQl :: forall r r'.
(r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> MemberEvent -> r
gmapT :: (forall b. Data b => b -> b) -> MemberEvent -> MemberEvent
$cgmapT :: (forall b. Data b => b -> b) -> MemberEvent -> MemberEvent
dataCast2 :: (forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c MemberEvent)
$cdataCast2 :: forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c MemberEvent)
dataCast1 :: (forall d. Data d => c (t d)) -> Maybe (c MemberEvent)
$cdataCast1 :: forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c MemberEvent)
dataTypeOf :: MemberEvent -> DataType
$cdataTypeOf :: MemberEvent -> DataType
toConstr :: MemberEvent -> Constr
$ctoConstr :: MemberEvent -> Constr
gunfold :: (forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c MemberEvent
$cgunfold :: forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c MemberEvent
gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> MemberEvent -> c MemberEvent
$cgfoldl :: forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> MemberEvent -> c MemberEvent
$cp1Data :: Typeable MemberEvent
Data, (forall x. MemberEvent -> Rep MemberEvent x)
-> (forall x. Rep MemberEvent x -> MemberEvent)
-> Generic MemberEvent
forall x. Rep MemberEvent x -> MemberEvent
forall x. MemberEvent -> Rep MemberEvent x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep MemberEvent x -> MemberEvent
$cfrom :: forall x. MemberEvent -> Rep MemberEvent x
Generic)
instance EventHasSender MemberEvent where senderOfEvent :: MemberEvent -> HookUser
senderOfEvent = MemberEvent -> HookUser
evMemberSender
instance EventHasRepo MemberEvent where repoForEvent :: MemberEvent -> HookRepository
repoForEvent = MemberEvent -> HookRepository
evMemberRepo
instance NFData MemberEvent where rnf :: MemberEvent -> ()
rnf = MemberEvent -> ()
forall a. (Generic a, GNFData (Rep a)) => a -> ()
genericRnf
data MembershipEventAction
= MembershipAddedAction
| MembershipRemovedAction
| MembershipActionOther !Text
deriving (MembershipEventAction -> MembershipEventAction -> Bool
(MembershipEventAction -> MembershipEventAction -> Bool)
-> (MembershipEventAction -> MembershipEventAction -> Bool)
-> Eq MembershipEventAction
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: MembershipEventAction -> MembershipEventAction -> Bool
$c/= :: MembershipEventAction -> MembershipEventAction -> Bool
== :: MembershipEventAction -> MembershipEventAction -> Bool
$c== :: MembershipEventAction -> MembershipEventAction -> Bool
Eq, Eq MembershipEventAction
Eq MembershipEventAction
-> (MembershipEventAction -> MembershipEventAction -> Ordering)
-> (MembershipEventAction -> MembershipEventAction -> Bool)
-> (MembershipEventAction -> MembershipEventAction -> Bool)
-> (MembershipEventAction -> MembershipEventAction -> Bool)
-> (MembershipEventAction -> MembershipEventAction -> Bool)
-> (MembershipEventAction
-> MembershipEventAction -> MembershipEventAction)
-> (MembershipEventAction
-> MembershipEventAction -> MembershipEventAction)
-> Ord MembershipEventAction
MembershipEventAction -> MembershipEventAction -> Bool
MembershipEventAction -> MembershipEventAction -> Ordering
MembershipEventAction
-> MembershipEventAction -> MembershipEventAction
forall a.
Eq a
-> (a -> a -> Ordering)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> a)
-> (a -> a -> a)
-> Ord a
min :: MembershipEventAction
-> MembershipEventAction -> MembershipEventAction
$cmin :: MembershipEventAction
-> MembershipEventAction -> MembershipEventAction
max :: MembershipEventAction
-> MembershipEventAction -> MembershipEventAction
$cmax :: MembershipEventAction
-> MembershipEventAction -> MembershipEventAction
>= :: MembershipEventAction -> MembershipEventAction -> Bool
$c>= :: MembershipEventAction -> MembershipEventAction -> Bool
> :: MembershipEventAction -> MembershipEventAction -> Bool
$c> :: MembershipEventAction -> MembershipEventAction -> Bool
<= :: MembershipEventAction -> MembershipEventAction -> Bool
$c<= :: MembershipEventAction -> MembershipEventAction -> Bool
< :: MembershipEventAction -> MembershipEventAction -> Bool
$c< :: MembershipEventAction -> MembershipEventAction -> Bool
compare :: MembershipEventAction -> MembershipEventAction -> Ordering
$ccompare :: MembershipEventAction -> MembershipEventAction -> Ordering
$cp1Ord :: Eq MembershipEventAction
Ord, Int -> MembershipEventAction -> ShowS
[MembershipEventAction] -> ShowS
MembershipEventAction -> String
(Int -> MembershipEventAction -> ShowS)
-> (MembershipEventAction -> String)
-> ([MembershipEventAction] -> ShowS)
-> Show MembershipEventAction
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [MembershipEventAction] -> ShowS
$cshowList :: [MembershipEventAction] -> ShowS
show :: MembershipEventAction -> String
$cshow :: MembershipEventAction -> String
showsPrec :: Int -> MembershipEventAction -> ShowS
$cshowsPrec :: Int -> MembershipEventAction -> ShowS
Show, (forall x. MembershipEventAction -> Rep MembershipEventAction x)
-> (forall x. Rep MembershipEventAction x -> MembershipEventAction)
-> Generic MembershipEventAction
forall x. Rep MembershipEventAction x -> MembershipEventAction
forall x. MembershipEventAction -> Rep MembershipEventAction x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep MembershipEventAction x -> MembershipEventAction
$cfrom :: forall x. MembershipEventAction -> Rep MembershipEventAction x
Generic, Typeable, Typeable MembershipEventAction
DataType
Constr
Typeable MembershipEventAction
-> (forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g)
-> MembershipEventAction
-> c MembershipEventAction)
-> (forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c MembershipEventAction)
-> (MembershipEventAction -> Constr)
-> (MembershipEventAction -> DataType)
-> (forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c MembershipEventAction))
-> (forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c MembershipEventAction))
-> ((forall b. Data b => b -> b)
-> MembershipEventAction -> MembershipEventAction)
-> (forall r r'.
(r -> r' -> r)
-> r
-> (forall d. Data d => d -> r')
-> MembershipEventAction
-> r)
-> (forall r r'.
(r' -> r -> r)
-> r
-> (forall d. Data d => d -> r')
-> MembershipEventAction
-> r)
-> (forall u.
(forall d. Data d => d -> u) -> MembershipEventAction -> [u])
-> (forall u.
Int -> (forall d. Data d => d -> u) -> MembershipEventAction -> u)
-> (forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d)
-> MembershipEventAction -> m MembershipEventAction)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> MembershipEventAction -> m MembershipEventAction)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> MembershipEventAction -> m MembershipEventAction)
-> Data MembershipEventAction
MembershipEventAction -> DataType
MembershipEventAction -> Constr
(forall b. Data b => b -> b)
-> MembershipEventAction -> MembershipEventAction
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g)
-> MembershipEventAction
-> c MembershipEventAction
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c MembershipEventAction
forall a.
Typeable a
-> (forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> a -> c a)
-> (forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c a)
-> (a -> Constr)
-> (a -> DataType)
-> (forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c a))
-> (forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c a))
-> ((forall b. Data b => b -> b) -> a -> a)
-> (forall r r'.
(r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> a -> r)
-> (forall r r'.
(r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> a -> r)
-> (forall u. (forall d. Data d => d -> u) -> a -> [u])
-> (forall u. Int -> (forall d. Data d => d -> u) -> a -> u)
-> (forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d) -> a -> m a)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> a -> m a)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> a -> m a)
-> Data a
forall u.
Int -> (forall d. Data d => d -> u) -> MembershipEventAction -> u
forall u.
(forall d. Data d => d -> u) -> MembershipEventAction -> [u]
forall r r'.
(r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> MembershipEventAction -> r
forall r r'.
(r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> MembershipEventAction -> r
forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d)
-> MembershipEventAction -> m MembershipEventAction
forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> MembershipEventAction -> m MembershipEventAction
forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c MembershipEventAction
forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g)
-> MembershipEventAction
-> c MembershipEventAction
forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c MembershipEventAction)
forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c MembershipEventAction)
$cMembershipActionOther :: Constr
$cMembershipRemovedAction :: Constr
$cMembershipAddedAction :: Constr
$tMembershipEventAction :: DataType
gmapMo :: (forall d. Data d => d -> m d)
-> MembershipEventAction -> m MembershipEventAction
$cgmapMo :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> MembershipEventAction -> m MembershipEventAction
gmapMp :: (forall d. Data d => d -> m d)
-> MembershipEventAction -> m MembershipEventAction
$cgmapMp :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> MembershipEventAction -> m MembershipEventAction
gmapM :: (forall d. Data d => d -> m d)
-> MembershipEventAction -> m MembershipEventAction
$cgmapM :: forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d)
-> MembershipEventAction -> m MembershipEventAction
gmapQi :: Int -> (forall d. Data d => d -> u) -> MembershipEventAction -> u
$cgmapQi :: forall u.
Int -> (forall d. Data d => d -> u) -> MembershipEventAction -> u
gmapQ :: (forall d. Data d => d -> u) -> MembershipEventAction -> [u]
$cgmapQ :: forall u.
(forall d. Data d => d -> u) -> MembershipEventAction -> [u]
gmapQr :: (r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> MembershipEventAction -> r
$cgmapQr :: forall r r'.
(r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> MembershipEventAction -> r
gmapQl :: (r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> MembershipEventAction -> r
$cgmapQl :: forall r r'.
(r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> MembershipEventAction -> r
gmapT :: (forall b. Data b => b -> b)
-> MembershipEventAction -> MembershipEventAction
$cgmapT :: (forall b. Data b => b -> b)
-> MembershipEventAction -> MembershipEventAction
dataCast2 :: (forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c MembershipEventAction)
$cdataCast2 :: forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c MembershipEventAction)
dataCast1 :: (forall d. Data d => c (t d)) -> Maybe (c MembershipEventAction)
$cdataCast1 :: forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c MembershipEventAction)
dataTypeOf :: MembershipEventAction -> DataType
$cdataTypeOf :: MembershipEventAction -> DataType
toConstr :: MembershipEventAction -> Constr
$ctoConstr :: MembershipEventAction -> Constr
gunfold :: (forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c MembershipEventAction
$cgunfold :: forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c MembershipEventAction
gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g)
-> MembershipEventAction
-> c MembershipEventAction
$cgfoldl :: forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g)
-> MembershipEventAction
-> c MembershipEventAction
$cp1Data :: Typeable MembershipEventAction
Data)
instance NFData MembershipEventAction where rnf :: MembershipEventAction -> ()
rnf = MembershipEventAction -> ()
forall a. (Generic a, GNFData (Rep a)) => a -> ()
genericRnf
instance FromJSON MembershipEventAction where
parseJSON :: Value -> Parser MembershipEventAction
parseJSON = String
-> (Text -> Parser MembershipEventAction)
-> Value
-> Parser MembershipEventAction
forall a. String -> (Text -> Parser a) -> Value -> Parser a
withText String
"Membership event action" ((Text -> Parser MembershipEventAction)
-> Value -> Parser MembershipEventAction)
-> (Text -> Parser MembershipEventAction)
-> Value
-> Parser MembershipEventAction
forall a b. (a -> b) -> a -> b
$ \Text
t ->
case Text
t of
Text
"added" -> MembershipEventAction -> Parser MembershipEventAction
forall (f :: * -> *) a. Applicative f => a -> f a
pure MembershipEventAction
MembershipAddedAction
Text
"removed" -> MembershipEventAction -> Parser MembershipEventAction
forall (f :: * -> *) a. Applicative f => a -> f a
pure MembershipEventAction
MembershipRemovedAction
Text
_ -> MembershipEventAction -> Parser MembershipEventAction
forall (f :: * -> *) a. Applicative f => a -> f a
pure (Text -> MembershipEventAction
MembershipActionOther Text
t)
data MembershipEvent = MembershipEvent
{ MembershipEvent -> MembershipEventAction
evMembershipAction :: !MembershipEventAction
, MembershipEvent -> Text
evMembershipScope :: !Text
, MembershipEvent -> HookUser
evMembershipUser :: !HookUser
, MembershipEvent -> HookTeam
evMembershipTeam :: !HookTeam
, MembershipEvent -> HookOrganization
evMembershipOrg :: !HookOrganization
, MembershipEvent -> HookUser
evMembershipSender :: !HookUser
}
deriving (MembershipEvent -> MembershipEvent -> Bool
(MembershipEvent -> MembershipEvent -> Bool)
-> (MembershipEvent -> MembershipEvent -> Bool)
-> Eq MembershipEvent
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: MembershipEvent -> MembershipEvent -> Bool
$c/= :: MembershipEvent -> MembershipEvent -> Bool
== :: MembershipEvent -> MembershipEvent -> Bool
$c== :: MembershipEvent -> MembershipEvent -> Bool
Eq, Int -> MembershipEvent -> ShowS
[MembershipEvent] -> ShowS
MembershipEvent -> String
(Int -> MembershipEvent -> ShowS)
-> (MembershipEvent -> String)
-> ([MembershipEvent] -> ShowS)
-> Show MembershipEvent
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [MembershipEvent] -> ShowS
$cshowList :: [MembershipEvent] -> ShowS
show :: MembershipEvent -> String
$cshow :: MembershipEvent -> String
showsPrec :: Int -> MembershipEvent -> ShowS
$cshowsPrec :: Int -> MembershipEvent -> ShowS
Show, Typeable, Typeable MembershipEvent
DataType
Constr
Typeable MembershipEvent
-> (forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> MembershipEvent -> c MembershipEvent)
-> (forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c MembershipEvent)
-> (MembershipEvent -> Constr)
-> (MembershipEvent -> DataType)
-> (forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c MembershipEvent))
-> (forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c MembershipEvent))
-> ((forall b. Data b => b -> b)
-> MembershipEvent -> MembershipEvent)
-> (forall r r'.
(r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> MembershipEvent -> r)
-> (forall r r'.
(r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> MembershipEvent -> r)
-> (forall u.
(forall d. Data d => d -> u) -> MembershipEvent -> [u])
-> (forall u.
Int -> (forall d. Data d => d -> u) -> MembershipEvent -> u)
-> (forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d)
-> MembershipEvent -> m MembershipEvent)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> MembershipEvent -> m MembershipEvent)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> MembershipEvent -> m MembershipEvent)
-> Data MembershipEvent
MembershipEvent -> DataType
MembershipEvent -> Constr
(forall b. Data b => b -> b) -> MembershipEvent -> MembershipEvent
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> MembershipEvent -> c MembershipEvent
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c MembershipEvent
forall a.
Typeable a
-> (forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> a -> c a)
-> (forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c a)
-> (a -> Constr)
-> (a -> DataType)
-> (forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c a))
-> (forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c a))
-> ((forall b. Data b => b -> b) -> a -> a)
-> (forall r r'.
(r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> a -> r)
-> (forall r r'.
(r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> a -> r)
-> (forall u. (forall d. Data d => d -> u) -> a -> [u])
-> (forall u. Int -> (forall d. Data d => d -> u) -> a -> u)
-> (forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d) -> a -> m a)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> a -> m a)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> a -> m a)
-> Data a
forall u.
Int -> (forall d. Data d => d -> u) -> MembershipEvent -> u
forall u. (forall d. Data d => d -> u) -> MembershipEvent -> [u]
forall r r'.
(r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> MembershipEvent -> r
forall r r'.
(r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> MembershipEvent -> r
forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d)
-> MembershipEvent -> m MembershipEvent
forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> MembershipEvent -> m MembershipEvent
forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c MembershipEvent
forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> MembershipEvent -> c MembershipEvent
forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c MembershipEvent)
forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c MembershipEvent)
$cMembershipEvent :: Constr
$tMembershipEvent :: DataType
gmapMo :: (forall d. Data d => d -> m d)
-> MembershipEvent -> m MembershipEvent
$cgmapMo :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> MembershipEvent -> m MembershipEvent
gmapMp :: (forall d. Data d => d -> m d)
-> MembershipEvent -> m MembershipEvent
$cgmapMp :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> MembershipEvent -> m MembershipEvent
gmapM :: (forall d. Data d => d -> m d)
-> MembershipEvent -> m MembershipEvent
$cgmapM :: forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d)
-> MembershipEvent -> m MembershipEvent
gmapQi :: Int -> (forall d. Data d => d -> u) -> MembershipEvent -> u
$cgmapQi :: forall u.
Int -> (forall d. Data d => d -> u) -> MembershipEvent -> u
gmapQ :: (forall d. Data d => d -> u) -> MembershipEvent -> [u]
$cgmapQ :: forall u. (forall d. Data d => d -> u) -> MembershipEvent -> [u]
gmapQr :: (r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> MembershipEvent -> r
$cgmapQr :: forall r r'.
(r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> MembershipEvent -> r
gmapQl :: (r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> MembershipEvent -> r
$cgmapQl :: forall r r'.
(r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> MembershipEvent -> r
gmapT :: (forall b. Data b => b -> b) -> MembershipEvent -> MembershipEvent
$cgmapT :: (forall b. Data b => b -> b) -> MembershipEvent -> MembershipEvent
dataCast2 :: (forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c MembershipEvent)
$cdataCast2 :: forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c MembershipEvent)
dataCast1 :: (forall d. Data d => c (t d)) -> Maybe (c MembershipEvent)
$cdataCast1 :: forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c MembershipEvent)
dataTypeOf :: MembershipEvent -> DataType
$cdataTypeOf :: MembershipEvent -> DataType
toConstr :: MembershipEvent -> Constr
$ctoConstr :: MembershipEvent -> Constr
gunfold :: (forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c MembershipEvent
$cgunfold :: forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c MembershipEvent
gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> MembershipEvent -> c MembershipEvent
$cgfoldl :: forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> MembershipEvent -> c MembershipEvent
$cp1Data :: Typeable MembershipEvent
Data, (forall x. MembershipEvent -> Rep MembershipEvent x)
-> (forall x. Rep MembershipEvent x -> MembershipEvent)
-> Generic MembershipEvent
forall x. Rep MembershipEvent x -> MembershipEvent
forall x. MembershipEvent -> Rep MembershipEvent x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep MembershipEvent x -> MembershipEvent
$cfrom :: forall x. MembershipEvent -> Rep MembershipEvent x
Generic)
instance EventHasSender MembershipEvent where senderOfEvent :: MembershipEvent -> HookUser
senderOfEvent = MembershipEvent -> HookUser
evMembershipSender
instance NFData MembershipEvent where rnf :: MembershipEvent -> ()
rnf = MembershipEvent -> ()
forall a. (Generic a, GNFData (Rep a)) => a -> ()
genericRnf
data MilestoneEventAction
= MilestoneCreatedAction
| MilestoneClosedAction
| MilestoneOpenedAction
| MilestoneEditedAction
| MilestoneDeletedAction
| MilestoneActionOther !Text
deriving (MilestoneEventAction -> MilestoneEventAction -> Bool
(MilestoneEventAction -> MilestoneEventAction -> Bool)
-> (MilestoneEventAction -> MilestoneEventAction -> Bool)
-> Eq MilestoneEventAction
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: MilestoneEventAction -> MilestoneEventAction -> Bool
$c/= :: MilestoneEventAction -> MilestoneEventAction -> Bool
== :: MilestoneEventAction -> MilestoneEventAction -> Bool
$c== :: MilestoneEventAction -> MilestoneEventAction -> Bool
Eq, Eq MilestoneEventAction
Eq MilestoneEventAction
-> (MilestoneEventAction -> MilestoneEventAction -> Ordering)
-> (MilestoneEventAction -> MilestoneEventAction -> Bool)
-> (MilestoneEventAction -> MilestoneEventAction -> Bool)
-> (MilestoneEventAction -> MilestoneEventAction -> Bool)
-> (MilestoneEventAction -> MilestoneEventAction -> Bool)
-> (MilestoneEventAction
-> MilestoneEventAction -> MilestoneEventAction)
-> (MilestoneEventAction
-> MilestoneEventAction -> MilestoneEventAction)
-> Ord MilestoneEventAction
MilestoneEventAction -> MilestoneEventAction -> Bool
MilestoneEventAction -> MilestoneEventAction -> Ordering
MilestoneEventAction
-> MilestoneEventAction -> MilestoneEventAction
forall a.
Eq a
-> (a -> a -> Ordering)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> a)
-> (a -> a -> a)
-> Ord a
min :: MilestoneEventAction
-> MilestoneEventAction -> MilestoneEventAction
$cmin :: MilestoneEventAction
-> MilestoneEventAction -> MilestoneEventAction
max :: MilestoneEventAction
-> MilestoneEventAction -> MilestoneEventAction
$cmax :: MilestoneEventAction
-> MilestoneEventAction -> MilestoneEventAction
>= :: MilestoneEventAction -> MilestoneEventAction -> Bool
$c>= :: MilestoneEventAction -> MilestoneEventAction -> Bool
> :: MilestoneEventAction -> MilestoneEventAction -> Bool
$c> :: MilestoneEventAction -> MilestoneEventAction -> Bool
<= :: MilestoneEventAction -> MilestoneEventAction -> Bool
$c<= :: MilestoneEventAction -> MilestoneEventAction -> Bool
< :: MilestoneEventAction -> MilestoneEventAction -> Bool
$c< :: MilestoneEventAction -> MilestoneEventAction -> Bool
compare :: MilestoneEventAction -> MilestoneEventAction -> Ordering
$ccompare :: MilestoneEventAction -> MilestoneEventAction -> Ordering
$cp1Ord :: Eq MilestoneEventAction
Ord, Int -> MilestoneEventAction -> ShowS
[MilestoneEventAction] -> ShowS
MilestoneEventAction -> String
(Int -> MilestoneEventAction -> ShowS)
-> (MilestoneEventAction -> String)
-> ([MilestoneEventAction] -> ShowS)
-> Show MilestoneEventAction
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [MilestoneEventAction] -> ShowS
$cshowList :: [MilestoneEventAction] -> ShowS
show :: MilestoneEventAction -> String
$cshow :: MilestoneEventAction -> String
showsPrec :: Int -> MilestoneEventAction -> ShowS
$cshowsPrec :: Int -> MilestoneEventAction -> ShowS
Show, (forall x. MilestoneEventAction -> Rep MilestoneEventAction x)
-> (forall x. Rep MilestoneEventAction x -> MilestoneEventAction)
-> Generic MilestoneEventAction
forall x. Rep MilestoneEventAction x -> MilestoneEventAction
forall x. MilestoneEventAction -> Rep MilestoneEventAction x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep MilestoneEventAction x -> MilestoneEventAction
$cfrom :: forall x. MilestoneEventAction -> Rep MilestoneEventAction x
Generic, Typeable, Typeable MilestoneEventAction
DataType
Constr
Typeable MilestoneEventAction
-> (forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g)
-> MilestoneEventAction
-> c MilestoneEventAction)
-> (forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c MilestoneEventAction)
-> (MilestoneEventAction -> Constr)
-> (MilestoneEventAction -> DataType)
-> (forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c MilestoneEventAction))
-> (forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c MilestoneEventAction))
-> ((forall b. Data b => b -> b)
-> MilestoneEventAction -> MilestoneEventAction)
-> (forall r r'.
(r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> MilestoneEventAction -> r)
-> (forall r r'.
(r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> MilestoneEventAction -> r)
-> (forall u.
(forall d. Data d => d -> u) -> MilestoneEventAction -> [u])
-> (forall u.
Int -> (forall d. Data d => d -> u) -> MilestoneEventAction -> u)
-> (forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d)
-> MilestoneEventAction -> m MilestoneEventAction)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> MilestoneEventAction -> m MilestoneEventAction)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> MilestoneEventAction -> m MilestoneEventAction)
-> Data MilestoneEventAction
MilestoneEventAction -> DataType
MilestoneEventAction -> Constr
(forall b. Data b => b -> b)
-> MilestoneEventAction -> MilestoneEventAction
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g)
-> MilestoneEventAction
-> c MilestoneEventAction
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c MilestoneEventAction
forall a.
Typeable a
-> (forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> a -> c a)
-> (forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c a)
-> (a -> Constr)
-> (a -> DataType)
-> (forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c a))
-> (forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c a))
-> ((forall b. Data b => b -> b) -> a -> a)
-> (forall r r'.
(r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> a -> r)
-> (forall r r'.
(r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> a -> r)
-> (forall u. (forall d. Data d => d -> u) -> a -> [u])
-> (forall u. Int -> (forall d. Data d => d -> u) -> a -> u)
-> (forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d) -> a -> m a)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> a -> m a)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> a -> m a)
-> Data a
forall u.
Int -> (forall d. Data d => d -> u) -> MilestoneEventAction -> u
forall u.
(forall d. Data d => d -> u) -> MilestoneEventAction -> [u]
forall r r'.
(r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> MilestoneEventAction -> r
forall r r'.
(r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> MilestoneEventAction -> r
forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d)
-> MilestoneEventAction -> m MilestoneEventAction
forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> MilestoneEventAction -> m MilestoneEventAction
forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c MilestoneEventAction
forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g)
-> MilestoneEventAction
-> c MilestoneEventAction
forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c MilestoneEventAction)
forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c MilestoneEventAction)
$cMilestoneActionOther :: Constr
$cMilestoneDeletedAction :: Constr
$cMilestoneEditedAction :: Constr
$cMilestoneOpenedAction :: Constr
$cMilestoneClosedAction :: Constr
$cMilestoneCreatedAction :: Constr
$tMilestoneEventAction :: DataType
gmapMo :: (forall d. Data d => d -> m d)
-> MilestoneEventAction -> m MilestoneEventAction
$cgmapMo :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> MilestoneEventAction -> m MilestoneEventAction
gmapMp :: (forall d. Data d => d -> m d)
-> MilestoneEventAction -> m MilestoneEventAction
$cgmapMp :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> MilestoneEventAction -> m MilestoneEventAction
gmapM :: (forall d. Data d => d -> m d)
-> MilestoneEventAction -> m MilestoneEventAction
$cgmapM :: forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d)
-> MilestoneEventAction -> m MilestoneEventAction
gmapQi :: Int -> (forall d. Data d => d -> u) -> MilestoneEventAction -> u
$cgmapQi :: forall u.
Int -> (forall d. Data d => d -> u) -> MilestoneEventAction -> u
gmapQ :: (forall d. Data d => d -> u) -> MilestoneEventAction -> [u]
$cgmapQ :: forall u.
(forall d. Data d => d -> u) -> MilestoneEventAction -> [u]
gmapQr :: (r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> MilestoneEventAction -> r
$cgmapQr :: forall r r'.
(r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> MilestoneEventAction -> r
gmapQl :: (r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> MilestoneEventAction -> r
$cgmapQl :: forall r r'.
(r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> MilestoneEventAction -> r
gmapT :: (forall b. Data b => b -> b)
-> MilestoneEventAction -> MilestoneEventAction
$cgmapT :: (forall b. Data b => b -> b)
-> MilestoneEventAction -> MilestoneEventAction
dataCast2 :: (forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c MilestoneEventAction)
$cdataCast2 :: forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c MilestoneEventAction)
dataCast1 :: (forall d. Data d => c (t d)) -> Maybe (c MilestoneEventAction)
$cdataCast1 :: forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c MilestoneEventAction)
dataTypeOf :: MilestoneEventAction -> DataType
$cdataTypeOf :: MilestoneEventAction -> DataType
toConstr :: MilestoneEventAction -> Constr
$ctoConstr :: MilestoneEventAction -> Constr
gunfold :: (forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c MilestoneEventAction
$cgunfold :: forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c MilestoneEventAction
gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g)
-> MilestoneEventAction
-> c MilestoneEventAction
$cgfoldl :: forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g)
-> MilestoneEventAction
-> c MilestoneEventAction
$cp1Data :: Typeable MilestoneEventAction
Data)
instance NFData MilestoneEventAction where rnf :: MilestoneEventAction -> ()
rnf = MilestoneEventAction -> ()
forall a. (Generic a, GNFData (Rep a)) => a -> ()
genericRnf
instance FromJSON MilestoneEventAction where
parseJSON :: Value -> Parser MilestoneEventAction
parseJSON = String
-> (Text -> Parser MilestoneEventAction)
-> Value
-> Parser MilestoneEventAction
forall a. String -> (Text -> Parser a) -> Value -> Parser a
withText String
"Milestone event action" ((Text -> Parser MilestoneEventAction)
-> Value -> Parser MilestoneEventAction)
-> (Text -> Parser MilestoneEventAction)
-> Value
-> Parser MilestoneEventAction
forall a b. (a -> b) -> a -> b
$ \Text
t ->
case Text
t of
Text
"created" -> MilestoneEventAction -> Parser MilestoneEventAction
forall (f :: * -> *) a. Applicative f => a -> f a
pure MilestoneEventAction
MilestoneCreatedAction
Text
"closed" -> MilestoneEventAction -> Parser MilestoneEventAction
forall (f :: * -> *) a. Applicative f => a -> f a
pure MilestoneEventAction
MilestoneClosedAction
Text
"opened" -> MilestoneEventAction -> Parser MilestoneEventAction
forall (f :: * -> *) a. Applicative f => a -> f a
pure MilestoneEventAction
MilestoneOpenedAction
Text
"edited" -> MilestoneEventAction -> Parser MilestoneEventAction
forall (f :: * -> *) a. Applicative f => a -> f a
pure MilestoneEventAction
MilestoneEditedAction
Text
"deleted" -> MilestoneEventAction -> Parser MilestoneEventAction
forall (f :: * -> *) a. Applicative f => a -> f a
pure MilestoneEventAction
MilestoneDeletedAction
Text
_ -> MilestoneEventAction -> Parser MilestoneEventAction
forall (f :: * -> *) a. Applicative f => a -> f a
pure (Text -> MilestoneEventAction
MilestoneActionOther Text
t)
data MilestoneEvent = MilestoneEvent
{ MilestoneEvent -> MilestoneEventAction
evMilestoneAction :: !MilestoneEventAction
, MilestoneEvent -> HookMilestone
evMilestoenPayload :: !HookMilestone
, MilestoneEvent -> HookRepository
evMilestoneRepo :: !HookRepository
, MilestoneEvent -> HookOrganization
evMilestoneOrg :: !HookOrganization
, MilestoneEvent -> HookUser
evMilestoneSender :: !HookUser
}
deriving (MilestoneEvent -> MilestoneEvent -> Bool
(MilestoneEvent -> MilestoneEvent -> Bool)
-> (MilestoneEvent -> MilestoneEvent -> Bool) -> Eq MilestoneEvent
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: MilestoneEvent -> MilestoneEvent -> Bool
$c/= :: MilestoneEvent -> MilestoneEvent -> Bool
== :: MilestoneEvent -> MilestoneEvent -> Bool
$c== :: MilestoneEvent -> MilestoneEvent -> Bool
Eq, Int -> MilestoneEvent -> ShowS
[MilestoneEvent] -> ShowS
MilestoneEvent -> String
(Int -> MilestoneEvent -> ShowS)
-> (MilestoneEvent -> String)
-> ([MilestoneEvent] -> ShowS)
-> Show MilestoneEvent
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [MilestoneEvent] -> ShowS
$cshowList :: [MilestoneEvent] -> ShowS
show :: MilestoneEvent -> String
$cshow :: MilestoneEvent -> String
showsPrec :: Int -> MilestoneEvent -> ShowS
$cshowsPrec :: Int -> MilestoneEvent -> ShowS
Show, Typeable, Typeable MilestoneEvent
DataType
Constr
Typeable MilestoneEvent
-> (forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> MilestoneEvent -> c MilestoneEvent)
-> (forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c MilestoneEvent)
-> (MilestoneEvent -> Constr)
-> (MilestoneEvent -> DataType)
-> (forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c MilestoneEvent))
-> (forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c MilestoneEvent))
-> ((forall b. Data b => b -> b)
-> MilestoneEvent -> MilestoneEvent)
-> (forall r r'.
(r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> MilestoneEvent -> r)
-> (forall r r'.
(r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> MilestoneEvent -> r)
-> (forall u.
(forall d. Data d => d -> u) -> MilestoneEvent -> [u])
-> (forall u.
Int -> (forall d. Data d => d -> u) -> MilestoneEvent -> u)
-> (forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d)
-> MilestoneEvent -> m MilestoneEvent)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> MilestoneEvent -> m MilestoneEvent)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> MilestoneEvent -> m MilestoneEvent)
-> Data MilestoneEvent
MilestoneEvent -> DataType
MilestoneEvent -> Constr
(forall b. Data b => b -> b) -> MilestoneEvent -> MilestoneEvent
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> MilestoneEvent -> c MilestoneEvent
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c MilestoneEvent
forall a.
Typeable a
-> (forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> a -> c a)
-> (forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c a)
-> (a -> Constr)
-> (a -> DataType)
-> (forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c a))
-> (forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c a))
-> ((forall b. Data b => b -> b) -> a -> a)
-> (forall r r'.
(r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> a -> r)
-> (forall r r'.
(r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> a -> r)
-> (forall u. (forall d. Data d => d -> u) -> a -> [u])
-> (forall u. Int -> (forall d. Data d => d -> u) -> a -> u)
-> (forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d) -> a -> m a)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> a -> m a)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> a -> m a)
-> Data a
forall u.
Int -> (forall d. Data d => d -> u) -> MilestoneEvent -> u
forall u. (forall d. Data d => d -> u) -> MilestoneEvent -> [u]
forall r r'.
(r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> MilestoneEvent -> r
forall r r'.
(r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> MilestoneEvent -> r
forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d)
-> MilestoneEvent -> m MilestoneEvent
forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> MilestoneEvent -> m MilestoneEvent
forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c MilestoneEvent
forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> MilestoneEvent -> c MilestoneEvent
forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c MilestoneEvent)
forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c MilestoneEvent)
$cMilestoneEvent :: Constr
$tMilestoneEvent :: DataType
gmapMo :: (forall d. Data d => d -> m d)
-> MilestoneEvent -> m MilestoneEvent
$cgmapMo :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> MilestoneEvent -> m MilestoneEvent
gmapMp :: (forall d. Data d => d -> m d)
-> MilestoneEvent -> m MilestoneEvent
$cgmapMp :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> MilestoneEvent -> m MilestoneEvent
gmapM :: (forall d. Data d => d -> m d)
-> MilestoneEvent -> m MilestoneEvent
$cgmapM :: forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d)
-> MilestoneEvent -> m MilestoneEvent
gmapQi :: Int -> (forall d. Data d => d -> u) -> MilestoneEvent -> u
$cgmapQi :: forall u.
Int -> (forall d. Data d => d -> u) -> MilestoneEvent -> u
gmapQ :: (forall d. Data d => d -> u) -> MilestoneEvent -> [u]
$cgmapQ :: forall u. (forall d. Data d => d -> u) -> MilestoneEvent -> [u]
gmapQr :: (r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> MilestoneEvent -> r
$cgmapQr :: forall r r'.
(r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> MilestoneEvent -> r
gmapQl :: (r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> MilestoneEvent -> r
$cgmapQl :: forall r r'.
(r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> MilestoneEvent -> r
gmapT :: (forall b. Data b => b -> b) -> MilestoneEvent -> MilestoneEvent
$cgmapT :: (forall b. Data b => b -> b) -> MilestoneEvent -> MilestoneEvent
dataCast2 :: (forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c MilestoneEvent)
$cdataCast2 :: forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c MilestoneEvent)
dataCast1 :: (forall d. Data d => c (t d)) -> Maybe (c MilestoneEvent)
$cdataCast1 :: forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c MilestoneEvent)
dataTypeOf :: MilestoneEvent -> DataType
$cdataTypeOf :: MilestoneEvent -> DataType
toConstr :: MilestoneEvent -> Constr
$ctoConstr :: MilestoneEvent -> Constr
gunfold :: (forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c MilestoneEvent
$cgunfold :: forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c MilestoneEvent
gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> MilestoneEvent -> c MilestoneEvent
$cgfoldl :: forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> MilestoneEvent -> c MilestoneEvent
$cp1Data :: Typeable MilestoneEvent
Data, (forall x. MilestoneEvent -> Rep MilestoneEvent x)
-> (forall x. Rep MilestoneEvent x -> MilestoneEvent)
-> Generic MilestoneEvent
forall x. Rep MilestoneEvent x -> MilestoneEvent
forall x. MilestoneEvent -> Rep MilestoneEvent x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep MilestoneEvent x -> MilestoneEvent
$cfrom :: forall x. MilestoneEvent -> Rep MilestoneEvent x
Generic)
instance EventHasSender MilestoneEvent where senderOfEvent :: MilestoneEvent -> HookUser
senderOfEvent = MilestoneEvent -> HookUser
evMilestoneSender
instance EventHasRepo MilestoneEvent where repoForEvent :: MilestoneEvent -> HookRepository
repoForEvent = MilestoneEvent -> HookRepository
evMilestoneRepo
instance NFData MilestoneEvent where rnf :: MilestoneEvent -> ()
rnf = MilestoneEvent -> ()
forall a. (Generic a, GNFData (Rep a)) => a -> ()
genericRnf
data OrganizationEventAction
= OrgMemberAddedAction
| OrgMemberRemovedAction
| OrgMemberInvitedAction
| OrgActionOther !Text
deriving (OrganizationEventAction -> OrganizationEventAction -> Bool
(OrganizationEventAction -> OrganizationEventAction -> Bool)
-> (OrganizationEventAction -> OrganizationEventAction -> Bool)
-> Eq OrganizationEventAction
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: OrganizationEventAction -> OrganizationEventAction -> Bool
$c/= :: OrganizationEventAction -> OrganizationEventAction -> Bool
== :: OrganizationEventAction -> OrganizationEventAction -> Bool
$c== :: OrganizationEventAction -> OrganizationEventAction -> Bool
Eq, Eq OrganizationEventAction
Eq OrganizationEventAction
-> (OrganizationEventAction -> OrganizationEventAction -> Ordering)
-> (OrganizationEventAction -> OrganizationEventAction -> Bool)
-> (OrganizationEventAction -> OrganizationEventAction -> Bool)
-> (OrganizationEventAction -> OrganizationEventAction -> Bool)
-> (OrganizationEventAction -> OrganizationEventAction -> Bool)
-> (OrganizationEventAction
-> OrganizationEventAction -> OrganizationEventAction)
-> (OrganizationEventAction
-> OrganizationEventAction -> OrganizationEventAction)
-> Ord OrganizationEventAction
OrganizationEventAction -> OrganizationEventAction -> Bool
OrganizationEventAction -> OrganizationEventAction -> Ordering
OrganizationEventAction
-> OrganizationEventAction -> OrganizationEventAction
forall a.
Eq a
-> (a -> a -> Ordering)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> a)
-> (a -> a -> a)
-> Ord a
min :: OrganizationEventAction
-> OrganizationEventAction -> OrganizationEventAction
$cmin :: OrganizationEventAction
-> OrganizationEventAction -> OrganizationEventAction
max :: OrganizationEventAction
-> OrganizationEventAction -> OrganizationEventAction
$cmax :: OrganizationEventAction
-> OrganizationEventAction -> OrganizationEventAction
>= :: OrganizationEventAction -> OrganizationEventAction -> Bool
$c>= :: OrganizationEventAction -> OrganizationEventAction -> Bool
> :: OrganizationEventAction -> OrganizationEventAction -> Bool
$c> :: OrganizationEventAction -> OrganizationEventAction -> Bool
<= :: OrganizationEventAction -> OrganizationEventAction -> Bool
$c<= :: OrganizationEventAction -> OrganizationEventAction -> Bool
< :: OrganizationEventAction -> OrganizationEventAction -> Bool
$c< :: OrganizationEventAction -> OrganizationEventAction -> Bool
compare :: OrganizationEventAction -> OrganizationEventAction -> Ordering
$ccompare :: OrganizationEventAction -> OrganizationEventAction -> Ordering
$cp1Ord :: Eq OrganizationEventAction
Ord, Int -> OrganizationEventAction -> ShowS
[OrganizationEventAction] -> ShowS
OrganizationEventAction -> String
(Int -> OrganizationEventAction -> ShowS)
-> (OrganizationEventAction -> String)
-> ([OrganizationEventAction] -> ShowS)
-> Show OrganizationEventAction
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [OrganizationEventAction] -> ShowS
$cshowList :: [OrganizationEventAction] -> ShowS
show :: OrganizationEventAction -> String
$cshow :: OrganizationEventAction -> String
showsPrec :: Int -> OrganizationEventAction -> ShowS
$cshowsPrec :: Int -> OrganizationEventAction -> ShowS
Show, (forall x.
OrganizationEventAction -> Rep OrganizationEventAction x)
-> (forall x.
Rep OrganizationEventAction x -> OrganizationEventAction)
-> Generic OrganizationEventAction
forall x. Rep OrganizationEventAction x -> OrganizationEventAction
forall x. OrganizationEventAction -> Rep OrganizationEventAction x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep OrganizationEventAction x -> OrganizationEventAction
$cfrom :: forall x. OrganizationEventAction -> Rep OrganizationEventAction x
Generic, Typeable, Typeable OrganizationEventAction
DataType
Constr
Typeable OrganizationEventAction
-> (forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g)
-> OrganizationEventAction
-> c OrganizationEventAction)
-> (forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c OrganizationEventAction)
-> (OrganizationEventAction -> Constr)
-> (OrganizationEventAction -> DataType)
-> (forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c OrganizationEventAction))
-> (forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c OrganizationEventAction))
-> ((forall b. Data b => b -> b)
-> OrganizationEventAction -> OrganizationEventAction)
-> (forall r r'.
(r -> r' -> r)
-> r
-> (forall d. Data d => d -> r')
-> OrganizationEventAction
-> r)
-> (forall r r'.
(r' -> r -> r)
-> r
-> (forall d. Data d => d -> r')
-> OrganizationEventAction
-> r)
-> (forall u.
(forall d. Data d => d -> u) -> OrganizationEventAction -> [u])
-> (forall u.
Int
-> (forall d. Data d => d -> u) -> OrganizationEventAction -> u)
-> (forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d)
-> OrganizationEventAction -> m OrganizationEventAction)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> OrganizationEventAction -> m OrganizationEventAction)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> OrganizationEventAction -> m OrganizationEventAction)
-> Data OrganizationEventAction
OrganizationEventAction -> DataType
OrganizationEventAction -> Constr
(forall b. Data b => b -> b)
-> OrganizationEventAction -> OrganizationEventAction
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g)
-> OrganizationEventAction
-> c OrganizationEventAction
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c OrganizationEventAction
forall a.
Typeable a
-> (forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> a -> c a)
-> (forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c a)
-> (a -> Constr)
-> (a -> DataType)
-> (forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c a))
-> (forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c a))
-> ((forall b. Data b => b -> b) -> a -> a)
-> (forall r r'.
(r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> a -> r)
-> (forall r r'.
(r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> a -> r)
-> (forall u. (forall d. Data d => d -> u) -> a -> [u])
-> (forall u. Int -> (forall d. Data d => d -> u) -> a -> u)
-> (forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d) -> a -> m a)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> a -> m a)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> a -> m a)
-> Data a
forall u.
Int -> (forall d. Data d => d -> u) -> OrganizationEventAction -> u
forall u.
(forall d. Data d => d -> u) -> OrganizationEventAction -> [u]
forall r r'.
(r -> r' -> r)
-> r
-> (forall d. Data d => d -> r')
-> OrganizationEventAction
-> r
forall r r'.
(r' -> r -> r)
-> r
-> (forall d. Data d => d -> r')
-> OrganizationEventAction
-> r
forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d)
-> OrganizationEventAction -> m OrganizationEventAction
forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> OrganizationEventAction -> m OrganizationEventAction
forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c OrganizationEventAction
forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g)
-> OrganizationEventAction
-> c OrganizationEventAction
forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c OrganizationEventAction)
forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c OrganizationEventAction)
$cOrgActionOther :: Constr
$cOrgMemberInvitedAction :: Constr
$cOrgMemberRemovedAction :: Constr
$cOrgMemberAddedAction :: Constr
$tOrganizationEventAction :: DataType
gmapMo :: (forall d. Data d => d -> m d)
-> OrganizationEventAction -> m OrganizationEventAction
$cgmapMo :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> OrganizationEventAction -> m OrganizationEventAction
gmapMp :: (forall d. Data d => d -> m d)
-> OrganizationEventAction -> m OrganizationEventAction
$cgmapMp :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> OrganizationEventAction -> m OrganizationEventAction
gmapM :: (forall d. Data d => d -> m d)
-> OrganizationEventAction -> m OrganizationEventAction
$cgmapM :: forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d)
-> OrganizationEventAction -> m OrganizationEventAction
gmapQi :: Int -> (forall d. Data d => d -> u) -> OrganizationEventAction -> u
$cgmapQi :: forall u.
Int -> (forall d. Data d => d -> u) -> OrganizationEventAction -> u
gmapQ :: (forall d. Data d => d -> u) -> OrganizationEventAction -> [u]
$cgmapQ :: forall u.
(forall d. Data d => d -> u) -> OrganizationEventAction -> [u]
gmapQr :: (r' -> r -> r)
-> r
-> (forall d. Data d => d -> r')
-> OrganizationEventAction
-> r
$cgmapQr :: forall r r'.
(r' -> r -> r)
-> r
-> (forall d. Data d => d -> r')
-> OrganizationEventAction
-> r
gmapQl :: (r -> r' -> r)
-> r
-> (forall d. Data d => d -> r')
-> OrganizationEventAction
-> r
$cgmapQl :: forall r r'.
(r -> r' -> r)
-> r
-> (forall d. Data d => d -> r')
-> OrganizationEventAction
-> r
gmapT :: (forall b. Data b => b -> b)
-> OrganizationEventAction -> OrganizationEventAction
$cgmapT :: (forall b. Data b => b -> b)
-> OrganizationEventAction -> OrganizationEventAction
dataCast2 :: (forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c OrganizationEventAction)
$cdataCast2 :: forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c OrganizationEventAction)
dataCast1 :: (forall d. Data d => c (t d)) -> Maybe (c OrganizationEventAction)
$cdataCast1 :: forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c OrganizationEventAction)
dataTypeOf :: OrganizationEventAction -> DataType
$cdataTypeOf :: OrganizationEventAction -> DataType
toConstr :: OrganizationEventAction -> Constr
$ctoConstr :: OrganizationEventAction -> Constr
gunfold :: (forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c OrganizationEventAction
$cgunfold :: forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c OrganizationEventAction
gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g)
-> OrganizationEventAction
-> c OrganizationEventAction
$cgfoldl :: forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g)
-> OrganizationEventAction
-> c OrganizationEventAction
$cp1Data :: Typeable OrganizationEventAction
Data)
instance NFData OrganizationEventAction where rnf :: OrganizationEventAction -> ()
rnf = OrganizationEventAction -> ()
forall a. (Generic a, GNFData (Rep a)) => a -> ()
genericRnf
instance FromJSON OrganizationEventAction where
parseJSON :: Value -> Parser OrganizationEventAction
parseJSON = String
-> (Text -> Parser OrganizationEventAction)
-> Value
-> Parser OrganizationEventAction
forall a. String -> (Text -> Parser a) -> Value -> Parser a
withText String
"Organization event action" ((Text -> Parser OrganizationEventAction)
-> Value -> Parser OrganizationEventAction)
-> (Text -> Parser OrganizationEventAction)
-> Value
-> Parser OrganizationEventAction
forall a b. (a -> b) -> a -> b
$ \Text
t ->
case Text
t of
Text
"member_added" -> OrganizationEventAction -> Parser OrganizationEventAction
forall (f :: * -> *) a. Applicative f => a -> f a
pure OrganizationEventAction
OrgMemberAddedAction
Text
"member_removed" -> OrganizationEventAction -> Parser OrganizationEventAction
forall (f :: * -> *) a. Applicative f => a -> f a
pure OrganizationEventAction
OrgMemberRemovedAction
Text
"member_invited" -> OrganizationEventAction -> Parser OrganizationEventAction
forall (f :: * -> *) a. Applicative f => a -> f a
pure OrganizationEventAction
OrgMemberInvitedAction
Text
_ -> OrganizationEventAction -> Parser OrganizationEventAction
forall (f :: * -> *) a. Applicative f => a -> f a
pure (Text -> OrganizationEventAction
OrgActionOther Text
t)
data OrganizationEvent = OrganizationEvent
{ OrganizationEvent -> OrganizationEventAction
evOrganizationAction :: !OrganizationEventAction
, OrganizationEvent -> Maybe HookOrganizationInvitation
evOrganizationInvitation :: !(Maybe HookOrganizationInvitation)
, OrganizationEvent -> Maybe HookOrganizationMembership
evOrganizationMembership :: !(Maybe HookOrganizationMembership)
, OrganizationEvent -> HookOrganization
evOrganizationOrg :: !HookOrganization
, OrganizationEvent -> HookUser
evOrganizationSender :: !HookUser
}
deriving (OrganizationEvent -> OrganizationEvent -> Bool
(OrganizationEvent -> OrganizationEvent -> Bool)
-> (OrganizationEvent -> OrganizationEvent -> Bool)
-> Eq OrganizationEvent
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: OrganizationEvent -> OrganizationEvent -> Bool
$c/= :: OrganizationEvent -> OrganizationEvent -> Bool
== :: OrganizationEvent -> OrganizationEvent -> Bool
$c== :: OrganizationEvent -> OrganizationEvent -> Bool
Eq, Int -> OrganizationEvent -> ShowS
[OrganizationEvent] -> ShowS
OrganizationEvent -> String
(Int -> OrganizationEvent -> ShowS)
-> (OrganizationEvent -> String)
-> ([OrganizationEvent] -> ShowS)
-> Show OrganizationEvent
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [OrganizationEvent] -> ShowS
$cshowList :: [OrganizationEvent] -> ShowS
show :: OrganizationEvent -> String
$cshow :: OrganizationEvent -> String
showsPrec :: Int -> OrganizationEvent -> ShowS
$cshowsPrec :: Int -> OrganizationEvent -> ShowS
Show, Typeable, Typeable OrganizationEvent
DataType
Constr
Typeable OrganizationEvent
-> (forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g)
-> OrganizationEvent
-> c OrganizationEvent)
-> (forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c OrganizationEvent)
-> (OrganizationEvent -> Constr)
-> (OrganizationEvent -> DataType)
-> (forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c OrganizationEvent))
-> (forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c OrganizationEvent))
-> ((forall b. Data b => b -> b)
-> OrganizationEvent -> OrganizationEvent)
-> (forall r r'.
(r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> OrganizationEvent -> r)
-> (forall r r'.
(r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> OrganizationEvent -> r)
-> (forall u.
(forall d. Data d => d -> u) -> OrganizationEvent -> [u])
-> (forall u.
Int -> (forall d. Data d => d -> u) -> OrganizationEvent -> u)
-> (forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d)
-> OrganizationEvent -> m OrganizationEvent)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> OrganizationEvent -> m OrganizationEvent)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> OrganizationEvent -> m OrganizationEvent)
-> Data OrganizationEvent
OrganizationEvent -> DataType
OrganizationEvent -> Constr
(forall b. Data b => b -> b)
-> OrganizationEvent -> OrganizationEvent
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> OrganizationEvent -> c OrganizationEvent
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c OrganizationEvent
forall a.
Typeable a
-> (forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> a -> c a)
-> (forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c a)
-> (a -> Constr)
-> (a -> DataType)
-> (forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c a))
-> (forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c a))
-> ((forall b. Data b => b -> b) -> a -> a)
-> (forall r r'.
(r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> a -> r)
-> (forall r r'.
(r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> a -> r)
-> (forall u. (forall d. Data d => d -> u) -> a -> [u])
-> (forall u. Int -> (forall d. Data d => d -> u) -> a -> u)
-> (forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d) -> a -> m a)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> a -> m a)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> a -> m a)
-> Data a
forall u.
Int -> (forall d. Data d => d -> u) -> OrganizationEvent -> u
forall u. (forall d. Data d => d -> u) -> OrganizationEvent -> [u]
forall r r'.
(r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> OrganizationEvent -> r
forall r r'.
(r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> OrganizationEvent -> r
forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d)
-> OrganizationEvent -> m OrganizationEvent
forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> OrganizationEvent -> m OrganizationEvent
forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c OrganizationEvent
forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> OrganizationEvent -> c OrganizationEvent
forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c OrganizationEvent)
forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c OrganizationEvent)
$cOrganizationEvent :: Constr
$tOrganizationEvent :: DataType
gmapMo :: (forall d. Data d => d -> m d)
-> OrganizationEvent -> m OrganizationEvent
$cgmapMo :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> OrganizationEvent -> m OrganizationEvent
gmapMp :: (forall d. Data d => d -> m d)
-> OrganizationEvent -> m OrganizationEvent
$cgmapMp :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> OrganizationEvent -> m OrganizationEvent
gmapM :: (forall d. Data d => d -> m d)
-> OrganizationEvent -> m OrganizationEvent
$cgmapM :: forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d)
-> OrganizationEvent -> m OrganizationEvent
gmapQi :: Int -> (forall d. Data d => d -> u) -> OrganizationEvent -> u
$cgmapQi :: forall u.
Int -> (forall d. Data d => d -> u) -> OrganizationEvent -> u
gmapQ :: (forall d. Data d => d -> u) -> OrganizationEvent -> [u]
$cgmapQ :: forall u. (forall d. Data d => d -> u) -> OrganizationEvent -> [u]
gmapQr :: (r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> OrganizationEvent -> r
$cgmapQr :: forall r r'.
(r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> OrganizationEvent -> r
gmapQl :: (r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> OrganizationEvent -> r
$cgmapQl :: forall r r'.
(r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> OrganizationEvent -> r
gmapT :: (forall b. Data b => b -> b)
-> OrganizationEvent -> OrganizationEvent
$cgmapT :: (forall b. Data b => b -> b)
-> OrganizationEvent -> OrganizationEvent
dataCast2 :: (forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c OrganizationEvent)
$cdataCast2 :: forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c OrganizationEvent)
dataCast1 :: (forall d. Data d => c (t d)) -> Maybe (c OrganizationEvent)
$cdataCast1 :: forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c OrganizationEvent)
dataTypeOf :: OrganizationEvent -> DataType
$cdataTypeOf :: OrganizationEvent -> DataType
toConstr :: OrganizationEvent -> Constr
$ctoConstr :: OrganizationEvent -> Constr
gunfold :: (forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c OrganizationEvent
$cgunfold :: forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c OrganizationEvent
gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> OrganizationEvent -> c OrganizationEvent
$cgfoldl :: forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> OrganizationEvent -> c OrganizationEvent
$cp1Data :: Typeable OrganizationEvent
Data, (forall x. OrganizationEvent -> Rep OrganizationEvent x)
-> (forall x. Rep OrganizationEvent x -> OrganizationEvent)
-> Generic OrganizationEvent
forall x. Rep OrganizationEvent x -> OrganizationEvent
forall x. OrganizationEvent -> Rep OrganizationEvent x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep OrganizationEvent x -> OrganizationEvent
$cfrom :: forall x. OrganizationEvent -> Rep OrganizationEvent x
Generic)
instance EventHasSender OrganizationEvent where senderOfEvent :: OrganizationEvent -> HookUser
senderOfEvent = OrganizationEvent -> HookUser
evOrganizationSender
instance NFData OrganizationEvent where rnf :: OrganizationEvent -> ()
rnf = OrganizationEvent -> ()
forall a. (Generic a, GNFData (Rep a)) => a -> ()
genericRnf
data OrgBlockEventAction
= OrgBlockBlockedAction
| OrgBlockUnblockedAction
| OrgBlockActionOther !Text
deriving (OrgBlockEventAction -> OrgBlockEventAction -> Bool
(OrgBlockEventAction -> OrgBlockEventAction -> Bool)
-> (OrgBlockEventAction -> OrgBlockEventAction -> Bool)
-> Eq OrgBlockEventAction
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: OrgBlockEventAction -> OrgBlockEventAction -> Bool
$c/= :: OrgBlockEventAction -> OrgBlockEventAction -> Bool
== :: OrgBlockEventAction -> OrgBlockEventAction -> Bool
$c== :: OrgBlockEventAction -> OrgBlockEventAction -> Bool
Eq, Eq OrgBlockEventAction
Eq OrgBlockEventAction
-> (OrgBlockEventAction -> OrgBlockEventAction -> Ordering)
-> (OrgBlockEventAction -> OrgBlockEventAction -> Bool)
-> (OrgBlockEventAction -> OrgBlockEventAction -> Bool)
-> (OrgBlockEventAction -> OrgBlockEventAction -> Bool)
-> (OrgBlockEventAction -> OrgBlockEventAction -> Bool)
-> (OrgBlockEventAction
-> OrgBlockEventAction -> OrgBlockEventAction)
-> (OrgBlockEventAction
-> OrgBlockEventAction -> OrgBlockEventAction)
-> Ord OrgBlockEventAction
OrgBlockEventAction -> OrgBlockEventAction -> Bool
OrgBlockEventAction -> OrgBlockEventAction -> Ordering
OrgBlockEventAction -> OrgBlockEventAction -> OrgBlockEventAction
forall a.
Eq a
-> (a -> a -> Ordering)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> a)
-> (a -> a -> a)
-> Ord a
min :: OrgBlockEventAction -> OrgBlockEventAction -> OrgBlockEventAction
$cmin :: OrgBlockEventAction -> OrgBlockEventAction -> OrgBlockEventAction
max :: OrgBlockEventAction -> OrgBlockEventAction -> OrgBlockEventAction
$cmax :: OrgBlockEventAction -> OrgBlockEventAction -> OrgBlockEventAction
>= :: OrgBlockEventAction -> OrgBlockEventAction -> Bool
$c>= :: OrgBlockEventAction -> OrgBlockEventAction -> Bool
> :: OrgBlockEventAction -> OrgBlockEventAction -> Bool
$c> :: OrgBlockEventAction -> OrgBlockEventAction -> Bool
<= :: OrgBlockEventAction -> OrgBlockEventAction -> Bool
$c<= :: OrgBlockEventAction -> OrgBlockEventAction -> Bool
< :: OrgBlockEventAction -> OrgBlockEventAction -> Bool
$c< :: OrgBlockEventAction -> OrgBlockEventAction -> Bool
compare :: OrgBlockEventAction -> OrgBlockEventAction -> Ordering
$ccompare :: OrgBlockEventAction -> OrgBlockEventAction -> Ordering
$cp1Ord :: Eq OrgBlockEventAction
Ord, Int -> OrgBlockEventAction -> ShowS
[OrgBlockEventAction] -> ShowS
OrgBlockEventAction -> String
(Int -> OrgBlockEventAction -> ShowS)
-> (OrgBlockEventAction -> String)
-> ([OrgBlockEventAction] -> ShowS)
-> Show OrgBlockEventAction
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [OrgBlockEventAction] -> ShowS
$cshowList :: [OrgBlockEventAction] -> ShowS
show :: OrgBlockEventAction -> String
$cshow :: OrgBlockEventAction -> String
showsPrec :: Int -> OrgBlockEventAction -> ShowS
$cshowsPrec :: Int -> OrgBlockEventAction -> ShowS
Show, (forall x. OrgBlockEventAction -> Rep OrgBlockEventAction x)
-> (forall x. Rep OrgBlockEventAction x -> OrgBlockEventAction)
-> Generic OrgBlockEventAction
forall x. Rep OrgBlockEventAction x -> OrgBlockEventAction
forall x. OrgBlockEventAction -> Rep OrgBlockEventAction x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep OrgBlockEventAction x -> OrgBlockEventAction
$cfrom :: forall x. OrgBlockEventAction -> Rep OrgBlockEventAction x
Generic, Typeable, Typeable OrgBlockEventAction
DataType
Constr
Typeable OrgBlockEventAction
-> (forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g)
-> OrgBlockEventAction
-> c OrgBlockEventAction)
-> (forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c OrgBlockEventAction)
-> (OrgBlockEventAction -> Constr)
-> (OrgBlockEventAction -> DataType)
-> (forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c OrgBlockEventAction))
-> (forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c OrgBlockEventAction))
-> ((forall b. Data b => b -> b)
-> OrgBlockEventAction -> OrgBlockEventAction)
-> (forall r r'.
(r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> OrgBlockEventAction -> r)
-> (forall r r'.
(r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> OrgBlockEventAction -> r)
-> (forall u.
(forall d. Data d => d -> u) -> OrgBlockEventAction -> [u])
-> (forall u.
Int -> (forall d. Data d => d -> u) -> OrgBlockEventAction -> u)
-> (forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d)
-> OrgBlockEventAction -> m OrgBlockEventAction)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> OrgBlockEventAction -> m OrgBlockEventAction)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> OrgBlockEventAction -> m OrgBlockEventAction)
-> Data OrgBlockEventAction
OrgBlockEventAction -> DataType
OrgBlockEventAction -> Constr
(forall b. Data b => b -> b)
-> OrgBlockEventAction -> OrgBlockEventAction
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g)
-> OrgBlockEventAction
-> c OrgBlockEventAction
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c OrgBlockEventAction
forall a.
Typeable a
-> (forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> a -> c a)
-> (forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c a)
-> (a -> Constr)
-> (a -> DataType)
-> (forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c a))
-> (forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c a))
-> ((forall b. Data b => b -> b) -> a -> a)
-> (forall r r'.
(r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> a -> r)
-> (forall r r'.
(r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> a -> r)
-> (forall u. (forall d. Data d => d -> u) -> a -> [u])
-> (forall u. Int -> (forall d. Data d => d -> u) -> a -> u)
-> (forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d) -> a -> m a)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> a -> m a)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> a -> m a)
-> Data a
forall u.
Int -> (forall d. Data d => d -> u) -> OrgBlockEventAction -> u
forall u.
(forall d. Data d => d -> u) -> OrgBlockEventAction -> [u]
forall r r'.
(r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> OrgBlockEventAction -> r
forall r r'.
(r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> OrgBlockEventAction -> r
forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d)
-> OrgBlockEventAction -> m OrgBlockEventAction
forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> OrgBlockEventAction -> m OrgBlockEventAction
forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c OrgBlockEventAction
forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g)
-> OrgBlockEventAction
-> c OrgBlockEventAction
forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c OrgBlockEventAction)
forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c OrgBlockEventAction)
$cOrgBlockActionOther :: Constr
$cOrgBlockUnblockedAction :: Constr
$cOrgBlockBlockedAction :: Constr
$tOrgBlockEventAction :: DataType
gmapMo :: (forall d. Data d => d -> m d)
-> OrgBlockEventAction -> m OrgBlockEventAction
$cgmapMo :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> OrgBlockEventAction -> m OrgBlockEventAction
gmapMp :: (forall d. Data d => d -> m d)
-> OrgBlockEventAction -> m OrgBlockEventAction
$cgmapMp :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> OrgBlockEventAction -> m OrgBlockEventAction
gmapM :: (forall d. Data d => d -> m d)
-> OrgBlockEventAction -> m OrgBlockEventAction
$cgmapM :: forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d)
-> OrgBlockEventAction -> m OrgBlockEventAction
gmapQi :: Int -> (forall d. Data d => d -> u) -> OrgBlockEventAction -> u
$cgmapQi :: forall u.
Int -> (forall d. Data d => d -> u) -> OrgBlockEventAction -> u
gmapQ :: (forall d. Data d => d -> u) -> OrgBlockEventAction -> [u]
$cgmapQ :: forall u.
(forall d. Data d => d -> u) -> OrgBlockEventAction -> [u]
gmapQr :: (r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> OrgBlockEventAction -> r
$cgmapQr :: forall r r'.
(r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> OrgBlockEventAction -> r
gmapQl :: (r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> OrgBlockEventAction -> r
$cgmapQl :: forall r r'.
(r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> OrgBlockEventAction -> r
gmapT :: (forall b. Data b => b -> b)
-> OrgBlockEventAction -> OrgBlockEventAction
$cgmapT :: (forall b. Data b => b -> b)
-> OrgBlockEventAction -> OrgBlockEventAction
dataCast2 :: (forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c OrgBlockEventAction)
$cdataCast2 :: forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c OrgBlockEventAction)
dataCast1 :: (forall d. Data d => c (t d)) -> Maybe (c OrgBlockEventAction)
$cdataCast1 :: forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c OrgBlockEventAction)
dataTypeOf :: OrgBlockEventAction -> DataType
$cdataTypeOf :: OrgBlockEventAction -> DataType
toConstr :: OrgBlockEventAction -> Constr
$ctoConstr :: OrgBlockEventAction -> Constr
gunfold :: (forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c OrgBlockEventAction
$cgunfold :: forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c OrgBlockEventAction
gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g)
-> OrgBlockEventAction
-> c OrgBlockEventAction
$cgfoldl :: forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g)
-> OrgBlockEventAction
-> c OrgBlockEventAction
$cp1Data :: Typeable OrgBlockEventAction
Data)
instance NFData OrgBlockEventAction where rnf :: OrgBlockEventAction -> ()
rnf = OrgBlockEventAction -> ()
forall a. (Generic a, GNFData (Rep a)) => a -> ()
genericRnf
instance FromJSON OrgBlockEventAction where
parseJSON :: Value -> Parser OrgBlockEventAction
parseJSON = String
-> (Text -> Parser OrgBlockEventAction)
-> Value
-> Parser OrgBlockEventAction
forall a. String -> (Text -> Parser a) -> Value -> Parser a
withText String
"Organization event action" ((Text -> Parser OrgBlockEventAction)
-> Value -> Parser OrgBlockEventAction)
-> (Text -> Parser OrgBlockEventAction)
-> Value
-> Parser OrgBlockEventAction
forall a b. (a -> b) -> a -> b
$ \Text
t ->
case Text
t of
Text
"blocked" -> OrgBlockEventAction -> Parser OrgBlockEventAction
forall (f :: * -> *) a. Applicative f => a -> f a
pure OrgBlockEventAction
OrgBlockBlockedAction
Text
"unblocked" -> OrgBlockEventAction -> Parser OrgBlockEventAction
forall (f :: * -> *) a. Applicative f => a -> f a
pure OrgBlockEventAction
OrgBlockUnblockedAction
Text
_ -> OrgBlockEventAction -> Parser OrgBlockEventAction
forall (f :: * -> *) a. Applicative f => a -> f a
pure (Text -> OrgBlockEventAction
OrgBlockActionOther Text
t)
data OrgBlockEvent = OrgBlockEvent
{ OrgBlockEvent -> OrgBlockEventAction
evOrgBlockAction :: !OrgBlockEventAction
, OrgBlockEvent -> HookUser
evOrgBlockUser :: !HookUser
, OrgBlockEvent -> HookOrganization
evOrgBlockOrg :: !HookOrganization
, OrgBlockEvent -> HookUser
evOrgBlockSender :: !HookUser
}
deriving (OrgBlockEvent -> OrgBlockEvent -> Bool
(OrgBlockEvent -> OrgBlockEvent -> Bool)
-> (OrgBlockEvent -> OrgBlockEvent -> Bool) -> Eq OrgBlockEvent
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: OrgBlockEvent -> OrgBlockEvent -> Bool
$c/= :: OrgBlockEvent -> OrgBlockEvent -> Bool
== :: OrgBlockEvent -> OrgBlockEvent -> Bool
$c== :: OrgBlockEvent -> OrgBlockEvent -> Bool
Eq, Int -> OrgBlockEvent -> ShowS
[OrgBlockEvent] -> ShowS
OrgBlockEvent -> String
(Int -> OrgBlockEvent -> ShowS)
-> (OrgBlockEvent -> String)
-> ([OrgBlockEvent] -> ShowS)
-> Show OrgBlockEvent
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [OrgBlockEvent] -> ShowS
$cshowList :: [OrgBlockEvent] -> ShowS
show :: OrgBlockEvent -> String
$cshow :: OrgBlockEvent -> String
showsPrec :: Int -> OrgBlockEvent -> ShowS
$cshowsPrec :: Int -> OrgBlockEvent -> ShowS
Show, Typeable, Typeable OrgBlockEvent
DataType
Constr
Typeable OrgBlockEvent
-> (forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> OrgBlockEvent -> c OrgBlockEvent)
-> (forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c OrgBlockEvent)
-> (OrgBlockEvent -> Constr)
-> (OrgBlockEvent -> DataType)
-> (forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c OrgBlockEvent))
-> (forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c OrgBlockEvent))
-> ((forall b. Data b => b -> b) -> OrgBlockEvent -> OrgBlockEvent)
-> (forall r r'.
(r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> OrgBlockEvent -> r)
-> (forall r r'.
(r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> OrgBlockEvent -> r)
-> (forall u. (forall d. Data d => d -> u) -> OrgBlockEvent -> [u])
-> (forall u.
Int -> (forall d. Data d => d -> u) -> OrgBlockEvent -> u)
-> (forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d) -> OrgBlockEvent -> m OrgBlockEvent)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> OrgBlockEvent -> m OrgBlockEvent)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> OrgBlockEvent -> m OrgBlockEvent)
-> Data OrgBlockEvent
OrgBlockEvent -> DataType
OrgBlockEvent -> Constr
(forall b. Data b => b -> b) -> OrgBlockEvent -> OrgBlockEvent
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> OrgBlockEvent -> c OrgBlockEvent
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c OrgBlockEvent
forall a.
Typeable a
-> (forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> a -> c a)
-> (forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c a)
-> (a -> Constr)
-> (a -> DataType)
-> (forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c a))
-> (forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c a))
-> ((forall b. Data b => b -> b) -> a -> a)
-> (forall r r'.
(r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> a -> r)
-> (forall r r'.
(r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> a -> r)
-> (forall u. (forall d. Data d => d -> u) -> a -> [u])
-> (forall u. Int -> (forall d. Data d => d -> u) -> a -> u)
-> (forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d) -> a -> m a)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> a -> m a)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> a -> m a)
-> Data a
forall u. Int -> (forall d. Data d => d -> u) -> OrgBlockEvent -> u
forall u. (forall d. Data d => d -> u) -> OrgBlockEvent -> [u]
forall r r'.
(r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> OrgBlockEvent -> r
forall r r'.
(r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> OrgBlockEvent -> r
forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d) -> OrgBlockEvent -> m OrgBlockEvent
forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> OrgBlockEvent -> m OrgBlockEvent
forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c OrgBlockEvent
forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> OrgBlockEvent -> c OrgBlockEvent
forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c OrgBlockEvent)
forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c OrgBlockEvent)
$cOrgBlockEvent :: Constr
$tOrgBlockEvent :: DataType
gmapMo :: (forall d. Data d => d -> m d) -> OrgBlockEvent -> m OrgBlockEvent
$cgmapMo :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> OrgBlockEvent -> m OrgBlockEvent
gmapMp :: (forall d. Data d => d -> m d) -> OrgBlockEvent -> m OrgBlockEvent
$cgmapMp :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> OrgBlockEvent -> m OrgBlockEvent
gmapM :: (forall d. Data d => d -> m d) -> OrgBlockEvent -> m OrgBlockEvent
$cgmapM :: forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d) -> OrgBlockEvent -> m OrgBlockEvent
gmapQi :: Int -> (forall d. Data d => d -> u) -> OrgBlockEvent -> u
$cgmapQi :: forall u. Int -> (forall d. Data d => d -> u) -> OrgBlockEvent -> u
gmapQ :: (forall d. Data d => d -> u) -> OrgBlockEvent -> [u]
$cgmapQ :: forall u. (forall d. Data d => d -> u) -> OrgBlockEvent -> [u]
gmapQr :: (r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> OrgBlockEvent -> r
$cgmapQr :: forall r r'.
(r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> OrgBlockEvent -> r
gmapQl :: (r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> OrgBlockEvent -> r
$cgmapQl :: forall r r'.
(r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> OrgBlockEvent -> r
gmapT :: (forall b. Data b => b -> b) -> OrgBlockEvent -> OrgBlockEvent
$cgmapT :: (forall b. Data b => b -> b) -> OrgBlockEvent -> OrgBlockEvent
dataCast2 :: (forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c OrgBlockEvent)
$cdataCast2 :: forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c OrgBlockEvent)
dataCast1 :: (forall d. Data d => c (t d)) -> Maybe (c OrgBlockEvent)
$cdataCast1 :: forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c OrgBlockEvent)
dataTypeOf :: OrgBlockEvent -> DataType
$cdataTypeOf :: OrgBlockEvent -> DataType
toConstr :: OrgBlockEvent -> Constr
$ctoConstr :: OrgBlockEvent -> Constr
gunfold :: (forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c OrgBlockEvent
$cgunfold :: forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c OrgBlockEvent
gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> OrgBlockEvent -> c OrgBlockEvent
$cgfoldl :: forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> OrgBlockEvent -> c OrgBlockEvent
$cp1Data :: Typeable OrgBlockEvent
Data, (forall x. OrgBlockEvent -> Rep OrgBlockEvent x)
-> (forall x. Rep OrgBlockEvent x -> OrgBlockEvent)
-> Generic OrgBlockEvent
forall x. Rep OrgBlockEvent x -> OrgBlockEvent
forall x. OrgBlockEvent -> Rep OrgBlockEvent x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep OrgBlockEvent x -> OrgBlockEvent
$cfrom :: forall x. OrgBlockEvent -> Rep OrgBlockEvent x
Generic)
instance EventHasSender OrgBlockEvent where senderOfEvent :: OrgBlockEvent -> HookUser
senderOfEvent = OrgBlockEvent -> HookUser
evOrgBlockSender
instance NFData OrgBlockEvent where rnf :: OrgBlockEvent -> ()
rnf = OrgBlockEvent -> ()
forall a. (Generic a, GNFData (Rep a)) => a -> ()
genericRnf
data PageBuildEvent = PageBuildEvent
{ PageBuildEvent -> Int
evPageBuildId :: !Int
, PageBuildEvent -> HookPageBuildResult
evPageBuildResult :: !HookPageBuildResult
, PageBuildEvent -> HookRepository
evPageBuildRepo :: !HookRepository
, PageBuildEvent -> HookUser
evPageBuildSender :: !HookUser
}
deriving (PageBuildEvent -> PageBuildEvent -> Bool
(PageBuildEvent -> PageBuildEvent -> Bool)
-> (PageBuildEvent -> PageBuildEvent -> Bool) -> Eq PageBuildEvent
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PageBuildEvent -> PageBuildEvent -> Bool
$c/= :: PageBuildEvent -> PageBuildEvent -> Bool
== :: PageBuildEvent -> PageBuildEvent -> Bool
$c== :: PageBuildEvent -> PageBuildEvent -> Bool
Eq, Int -> PageBuildEvent -> ShowS
[PageBuildEvent] -> ShowS
PageBuildEvent -> String
(Int -> PageBuildEvent -> ShowS)
-> (PageBuildEvent -> String)
-> ([PageBuildEvent] -> ShowS)
-> Show PageBuildEvent
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PageBuildEvent] -> ShowS
$cshowList :: [PageBuildEvent] -> ShowS
show :: PageBuildEvent -> String
$cshow :: PageBuildEvent -> String
showsPrec :: Int -> PageBuildEvent -> ShowS
$cshowsPrec :: Int -> PageBuildEvent -> ShowS
Show, Typeable, Typeable PageBuildEvent
DataType
Constr
Typeable PageBuildEvent
-> (forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> PageBuildEvent -> c PageBuildEvent)
-> (forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c PageBuildEvent)
-> (PageBuildEvent -> Constr)
-> (PageBuildEvent -> DataType)
-> (forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c PageBuildEvent))
-> (forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c PageBuildEvent))
-> ((forall b. Data b => b -> b)
-> PageBuildEvent -> PageBuildEvent)
-> (forall r r'.
(r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> PageBuildEvent -> r)
-> (forall r r'.
(r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> PageBuildEvent -> r)
-> (forall u.
(forall d. Data d => d -> u) -> PageBuildEvent -> [u])
-> (forall u.
Int -> (forall d. Data d => d -> u) -> PageBuildEvent -> u)
-> (forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d)
-> PageBuildEvent -> m PageBuildEvent)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> PageBuildEvent -> m PageBuildEvent)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> PageBuildEvent -> m PageBuildEvent)
-> Data PageBuildEvent
PageBuildEvent -> DataType
PageBuildEvent -> Constr
(forall b. Data b => b -> b) -> PageBuildEvent -> PageBuildEvent
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> PageBuildEvent -> c PageBuildEvent
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c PageBuildEvent
forall a.
Typeable a
-> (forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> a -> c a)
-> (forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c a)
-> (a -> Constr)
-> (a -> DataType)
-> (forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c a))
-> (forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c a))
-> ((forall b. Data b => b -> b) -> a -> a)
-> (forall r r'.
(r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> a -> r)
-> (forall r r'.
(r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> a -> r)
-> (forall u. (forall d. Data d => d -> u) -> a -> [u])
-> (forall u. Int -> (forall d. Data d => d -> u) -> a -> u)
-> (forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d) -> a -> m a)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> a -> m a)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> a -> m a)
-> Data a
forall u.
Int -> (forall d. Data d => d -> u) -> PageBuildEvent -> u
forall u. (forall d. Data d => d -> u) -> PageBuildEvent -> [u]
forall r r'.
(r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> PageBuildEvent -> r
forall r r'.
(r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> PageBuildEvent -> r
forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d)
-> PageBuildEvent -> m PageBuildEvent
forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> PageBuildEvent -> m PageBuildEvent
forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c PageBuildEvent
forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> PageBuildEvent -> c PageBuildEvent
forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c PageBuildEvent)
forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c PageBuildEvent)
$cPageBuildEvent :: Constr
$tPageBuildEvent :: DataType
gmapMo :: (forall d. Data d => d -> m d)
-> PageBuildEvent -> m PageBuildEvent
$cgmapMo :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> PageBuildEvent -> m PageBuildEvent
gmapMp :: (forall d. Data d => d -> m d)
-> PageBuildEvent -> m PageBuildEvent
$cgmapMp :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> PageBuildEvent -> m PageBuildEvent
gmapM :: (forall d. Data d => d -> m d)
-> PageBuildEvent -> m PageBuildEvent
$cgmapM :: forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d)
-> PageBuildEvent -> m PageBuildEvent
gmapQi :: Int -> (forall d. Data d => d -> u) -> PageBuildEvent -> u
$cgmapQi :: forall u.
Int -> (forall d. Data d => d -> u) -> PageBuildEvent -> u
gmapQ :: (forall d. Data d => d -> u) -> PageBuildEvent -> [u]
$cgmapQ :: forall u. (forall d. Data d => d -> u) -> PageBuildEvent -> [u]
gmapQr :: (r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> PageBuildEvent -> r
$cgmapQr :: forall r r'.
(r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> PageBuildEvent -> r
gmapQl :: (r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> PageBuildEvent -> r
$cgmapQl :: forall r r'.
(r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> PageBuildEvent -> r
gmapT :: (forall b. Data b => b -> b) -> PageBuildEvent -> PageBuildEvent
$cgmapT :: (forall b. Data b => b -> b) -> PageBuildEvent -> PageBuildEvent
dataCast2 :: (forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c PageBuildEvent)
$cdataCast2 :: forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c PageBuildEvent)
dataCast1 :: (forall d. Data d => c (t d)) -> Maybe (c PageBuildEvent)
$cdataCast1 :: forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c PageBuildEvent)
dataTypeOf :: PageBuildEvent -> DataType
$cdataTypeOf :: PageBuildEvent -> DataType
toConstr :: PageBuildEvent -> Constr
$ctoConstr :: PageBuildEvent -> Constr
gunfold :: (forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c PageBuildEvent
$cgunfold :: forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c PageBuildEvent
gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> PageBuildEvent -> c PageBuildEvent
$cgfoldl :: forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> PageBuildEvent -> c PageBuildEvent
$cp1Data :: Typeable PageBuildEvent
Data, (forall x. PageBuildEvent -> Rep PageBuildEvent x)
-> (forall x. Rep PageBuildEvent x -> PageBuildEvent)
-> Generic PageBuildEvent
forall x. Rep PageBuildEvent x -> PageBuildEvent
forall x. PageBuildEvent -> Rep PageBuildEvent x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep PageBuildEvent x -> PageBuildEvent
$cfrom :: forall x. PageBuildEvent -> Rep PageBuildEvent x
Generic)
instance EventHasSender PageBuildEvent where senderOfEvent :: PageBuildEvent -> HookUser
senderOfEvent = PageBuildEvent -> HookUser
evPageBuildSender
instance EventHasRepo PageBuildEvent where repoForEvent :: PageBuildEvent -> HookRepository
repoForEvent = PageBuildEvent -> HookRepository
evPageBuildRepo
instance NFData PageBuildEvent where rnf :: PageBuildEvent -> ()
rnf = PageBuildEvent -> ()
forall a. (Generic a, GNFData (Rep a)) => a -> ()
genericRnf
data ProjectCardEventAction
= ProjectCardCreatedAction
| ProjectCardEditedAction
| ProjectCardConvertedAction
| ProjectCardMovedAction
| ProjectCardDeletedAction
| ProjectCardActionOther !Text
deriving (ProjectCardEventAction -> ProjectCardEventAction -> Bool
(ProjectCardEventAction -> ProjectCardEventAction -> Bool)
-> (ProjectCardEventAction -> ProjectCardEventAction -> Bool)
-> Eq ProjectCardEventAction
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: ProjectCardEventAction -> ProjectCardEventAction -> Bool
$c/= :: ProjectCardEventAction -> ProjectCardEventAction -> Bool
== :: ProjectCardEventAction -> ProjectCardEventAction -> Bool
$c== :: ProjectCardEventAction -> ProjectCardEventAction -> Bool
Eq, Eq ProjectCardEventAction
Eq ProjectCardEventAction
-> (ProjectCardEventAction -> ProjectCardEventAction -> Ordering)
-> (ProjectCardEventAction -> ProjectCardEventAction -> Bool)
-> (ProjectCardEventAction -> ProjectCardEventAction -> Bool)
-> (ProjectCardEventAction -> ProjectCardEventAction -> Bool)
-> (ProjectCardEventAction -> ProjectCardEventAction -> Bool)
-> (ProjectCardEventAction
-> ProjectCardEventAction -> ProjectCardEventAction)
-> (ProjectCardEventAction
-> ProjectCardEventAction -> ProjectCardEventAction)
-> Ord ProjectCardEventAction
ProjectCardEventAction -> ProjectCardEventAction -> Bool
ProjectCardEventAction -> ProjectCardEventAction -> Ordering
ProjectCardEventAction
-> ProjectCardEventAction -> ProjectCardEventAction
forall a.
Eq a
-> (a -> a -> Ordering)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> a)
-> (a -> a -> a)
-> Ord a
min :: ProjectCardEventAction
-> ProjectCardEventAction -> ProjectCardEventAction
$cmin :: ProjectCardEventAction
-> ProjectCardEventAction -> ProjectCardEventAction
max :: ProjectCardEventAction
-> ProjectCardEventAction -> ProjectCardEventAction
$cmax :: ProjectCardEventAction
-> ProjectCardEventAction -> ProjectCardEventAction
>= :: ProjectCardEventAction -> ProjectCardEventAction -> Bool
$c>= :: ProjectCardEventAction -> ProjectCardEventAction -> Bool
> :: ProjectCardEventAction -> ProjectCardEventAction -> Bool
$c> :: ProjectCardEventAction -> ProjectCardEventAction -> Bool
<= :: ProjectCardEventAction -> ProjectCardEventAction -> Bool
$c<= :: ProjectCardEventAction -> ProjectCardEventAction -> Bool
< :: ProjectCardEventAction -> ProjectCardEventAction -> Bool
$c< :: ProjectCardEventAction -> ProjectCardEventAction -> Bool
compare :: ProjectCardEventAction -> ProjectCardEventAction -> Ordering
$ccompare :: ProjectCardEventAction -> ProjectCardEventAction -> Ordering
$cp1Ord :: Eq ProjectCardEventAction
Ord, Int -> ProjectCardEventAction -> ShowS
[ProjectCardEventAction] -> ShowS
ProjectCardEventAction -> String
(Int -> ProjectCardEventAction -> ShowS)
-> (ProjectCardEventAction -> String)
-> ([ProjectCardEventAction] -> ShowS)
-> Show ProjectCardEventAction
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [ProjectCardEventAction] -> ShowS
$cshowList :: [ProjectCardEventAction] -> ShowS
show :: ProjectCardEventAction -> String
$cshow :: ProjectCardEventAction -> String
showsPrec :: Int -> ProjectCardEventAction -> ShowS
$cshowsPrec :: Int -> ProjectCardEventAction -> ShowS
Show, (forall x. ProjectCardEventAction -> Rep ProjectCardEventAction x)
-> (forall x.
Rep ProjectCardEventAction x -> ProjectCardEventAction)
-> Generic ProjectCardEventAction
forall x. Rep ProjectCardEventAction x -> ProjectCardEventAction
forall x. ProjectCardEventAction -> Rep ProjectCardEventAction x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep ProjectCardEventAction x -> ProjectCardEventAction
$cfrom :: forall x. ProjectCardEventAction -> Rep ProjectCardEventAction x
Generic, Typeable, Typeable ProjectCardEventAction
DataType
Constr
Typeable ProjectCardEventAction
-> (forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g)
-> ProjectCardEventAction
-> c ProjectCardEventAction)
-> (forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c ProjectCardEventAction)
-> (ProjectCardEventAction -> Constr)
-> (ProjectCardEventAction -> DataType)
-> (forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c ProjectCardEventAction))
-> (forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c ProjectCardEventAction))
-> ((forall b. Data b => b -> b)
-> ProjectCardEventAction -> ProjectCardEventAction)
-> (forall r r'.
(r -> r' -> r)
-> r
-> (forall d. Data d => d -> r')
-> ProjectCardEventAction
-> r)
-> (forall r r'.
(r' -> r -> r)
-> r
-> (forall d. Data d => d -> r')
-> ProjectCardEventAction
-> r)
-> (forall u.
(forall d. Data d => d -> u) -> ProjectCardEventAction -> [u])
-> (forall u.
Int -> (forall d. Data d => d -> u) -> ProjectCardEventAction -> u)
-> (forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d)
-> ProjectCardEventAction -> m ProjectCardEventAction)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> ProjectCardEventAction -> m ProjectCardEventAction)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> ProjectCardEventAction -> m ProjectCardEventAction)
-> Data ProjectCardEventAction
ProjectCardEventAction -> DataType
ProjectCardEventAction -> Constr
(forall b. Data b => b -> b)
-> ProjectCardEventAction -> ProjectCardEventAction
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g)
-> ProjectCardEventAction
-> c ProjectCardEventAction
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c ProjectCardEventAction
forall a.
Typeable a
-> (forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> a -> c a)
-> (forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c a)
-> (a -> Constr)
-> (a -> DataType)
-> (forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c a))
-> (forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c a))
-> ((forall b. Data b => b -> b) -> a -> a)
-> (forall r r'.
(r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> a -> r)
-> (forall r r'.
(r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> a -> r)
-> (forall u. (forall d. Data d => d -> u) -> a -> [u])
-> (forall u. Int -> (forall d. Data d => d -> u) -> a -> u)
-> (forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d) -> a -> m a)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> a -> m a)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> a -> m a)
-> Data a
forall u.
Int -> (forall d. Data d => d -> u) -> ProjectCardEventAction -> u
forall u.
(forall d. Data d => d -> u) -> ProjectCardEventAction -> [u]
forall r r'.
(r -> r' -> r)
-> r
-> (forall d. Data d => d -> r')
-> ProjectCardEventAction
-> r
forall r r'.
(r' -> r -> r)
-> r
-> (forall d. Data d => d -> r')
-> ProjectCardEventAction
-> r
forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d)
-> ProjectCardEventAction -> m ProjectCardEventAction
forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> ProjectCardEventAction -> m ProjectCardEventAction
forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c ProjectCardEventAction
forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g)
-> ProjectCardEventAction
-> c ProjectCardEventAction
forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c ProjectCardEventAction)
forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c ProjectCardEventAction)
$cProjectCardActionOther :: Constr
$cProjectCardDeletedAction :: Constr
$cProjectCardMovedAction :: Constr
$cProjectCardConvertedAction :: Constr
$cProjectCardEditedAction :: Constr
$cProjectCardCreatedAction :: Constr
$tProjectCardEventAction :: DataType
gmapMo :: (forall d. Data d => d -> m d)
-> ProjectCardEventAction -> m ProjectCardEventAction
$cgmapMo :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> ProjectCardEventAction -> m ProjectCardEventAction
gmapMp :: (forall d. Data d => d -> m d)
-> ProjectCardEventAction -> m ProjectCardEventAction
$cgmapMp :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> ProjectCardEventAction -> m ProjectCardEventAction
gmapM :: (forall d. Data d => d -> m d)
-> ProjectCardEventAction -> m ProjectCardEventAction
$cgmapM :: forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d)
-> ProjectCardEventAction -> m ProjectCardEventAction
gmapQi :: Int -> (forall d. Data d => d -> u) -> ProjectCardEventAction -> u
$cgmapQi :: forall u.
Int -> (forall d. Data d => d -> u) -> ProjectCardEventAction -> u
gmapQ :: (forall d. Data d => d -> u) -> ProjectCardEventAction -> [u]
$cgmapQ :: forall u.
(forall d. Data d => d -> u) -> ProjectCardEventAction -> [u]
gmapQr :: (r' -> r -> r)
-> r
-> (forall d. Data d => d -> r')
-> ProjectCardEventAction
-> r
$cgmapQr :: forall r r'.
(r' -> r -> r)
-> r
-> (forall d. Data d => d -> r')
-> ProjectCardEventAction
-> r
gmapQl :: (r -> r' -> r)
-> r
-> (forall d. Data d => d -> r')
-> ProjectCardEventAction
-> r
$cgmapQl :: forall r r'.
(r -> r' -> r)
-> r
-> (forall d. Data d => d -> r')
-> ProjectCardEventAction
-> r
gmapT :: (forall b. Data b => b -> b)
-> ProjectCardEventAction -> ProjectCardEventAction
$cgmapT :: (forall b. Data b => b -> b)
-> ProjectCardEventAction -> ProjectCardEventAction
dataCast2 :: (forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c ProjectCardEventAction)
$cdataCast2 :: forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c ProjectCardEventAction)
dataCast1 :: (forall d. Data d => c (t d)) -> Maybe (c ProjectCardEventAction)
$cdataCast1 :: forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c ProjectCardEventAction)
dataTypeOf :: ProjectCardEventAction -> DataType
$cdataTypeOf :: ProjectCardEventAction -> DataType
toConstr :: ProjectCardEventAction -> Constr
$ctoConstr :: ProjectCardEventAction -> Constr
gunfold :: (forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c ProjectCardEventAction
$cgunfold :: forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c ProjectCardEventAction
gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g)
-> ProjectCardEventAction
-> c ProjectCardEventAction
$cgfoldl :: forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g)
-> ProjectCardEventAction
-> c ProjectCardEventAction
$cp1Data :: Typeable ProjectCardEventAction
Data)
instance NFData ProjectCardEventAction where rnf :: ProjectCardEventAction -> ()
rnf = ProjectCardEventAction -> ()
forall a. (Generic a, GNFData (Rep a)) => a -> ()
genericRnf
instance FromJSON ProjectCardEventAction where
parseJSON :: Value -> Parser ProjectCardEventAction
parseJSON = String
-> (Text -> Parser ProjectCardEventAction)
-> Value
-> Parser ProjectCardEventAction
forall a. String -> (Text -> Parser a) -> Value -> Parser a
withText String
"Project card event action" ((Text -> Parser ProjectCardEventAction)
-> Value -> Parser ProjectCardEventAction)
-> (Text -> Parser ProjectCardEventAction)
-> Value
-> Parser ProjectCardEventAction
forall a b. (a -> b) -> a -> b
$ \Text
t ->
case Text
t of
Text
"created" -> ProjectCardEventAction -> Parser ProjectCardEventAction
forall (f :: * -> *) a. Applicative f => a -> f a
pure ProjectCardEventAction
ProjectCardCreatedAction
Text
"edited" -> ProjectCardEventAction -> Parser ProjectCardEventAction
forall (f :: * -> *) a. Applicative f => a -> f a
pure ProjectCardEventAction
ProjectCardEditedAction
Text
"converted" -> ProjectCardEventAction -> Parser ProjectCardEventAction
forall (f :: * -> *) a. Applicative f => a -> f a
pure ProjectCardEventAction
ProjectCardConvertedAction
Text
"moved" -> ProjectCardEventAction -> Parser ProjectCardEventAction
forall (f :: * -> *) a. Applicative f => a -> f a
pure ProjectCardEventAction
ProjectCardMovedAction
Text
"deleted" -> ProjectCardEventAction -> Parser ProjectCardEventAction
forall (f :: * -> *) a. Applicative f => a -> f a
pure ProjectCardEventAction
ProjectCardDeletedAction
Text
_ -> ProjectCardEventAction -> Parser ProjectCardEventAction
forall (f :: * -> *) a. Applicative f => a -> f a
pure (Text -> ProjectCardEventAction
ProjectCardActionOther Text
t)
data ProjectCardEvent = ProjectCardEvent
{ ProjectCardEvent -> ProjectCardEventAction
evProjectCardAction :: !ProjectCardEventAction
, ProjectCardEvent -> HookProjectCard
evProjectCardPayload :: !HookProjectCard
, ProjectCardEvent -> HookRepository
evProjectCardRepo :: !HookRepository
, ProjectCardEvent -> HookOrganization
evProjectCardOrg :: !HookOrganization
, ProjectCardEvent -> HookUser
evProjectCardSender :: !HookUser
}
deriving (ProjectCardEvent -> ProjectCardEvent -> Bool
(ProjectCardEvent -> ProjectCardEvent -> Bool)
-> (ProjectCardEvent -> ProjectCardEvent -> Bool)
-> Eq ProjectCardEvent
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: ProjectCardEvent -> ProjectCardEvent -> Bool
$c/= :: ProjectCardEvent -> ProjectCardEvent -> Bool
== :: ProjectCardEvent -> ProjectCardEvent -> Bool
$c== :: ProjectCardEvent -> ProjectCardEvent -> Bool
Eq, Int -> ProjectCardEvent -> ShowS
[ProjectCardEvent] -> ShowS
ProjectCardEvent -> String
(Int -> ProjectCardEvent -> ShowS)
-> (ProjectCardEvent -> String)
-> ([ProjectCardEvent] -> ShowS)
-> Show ProjectCardEvent
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [ProjectCardEvent] -> ShowS
$cshowList :: [ProjectCardEvent] -> ShowS
show :: ProjectCardEvent -> String
$cshow :: ProjectCardEvent -> String
showsPrec :: Int -> ProjectCardEvent -> ShowS
$cshowsPrec :: Int -> ProjectCardEvent -> ShowS
Show, Typeable, Typeable ProjectCardEvent
DataType
Constr
Typeable ProjectCardEvent
-> (forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> ProjectCardEvent -> c ProjectCardEvent)
-> (forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c ProjectCardEvent)
-> (ProjectCardEvent -> Constr)
-> (ProjectCardEvent -> DataType)
-> (forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c ProjectCardEvent))
-> (forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c ProjectCardEvent))
-> ((forall b. Data b => b -> b)
-> ProjectCardEvent -> ProjectCardEvent)
-> (forall r r'.
(r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> ProjectCardEvent -> r)
-> (forall r r'.
(r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> ProjectCardEvent -> r)
-> (forall u.
(forall d. Data d => d -> u) -> ProjectCardEvent -> [u])
-> (forall u.
Int -> (forall d. Data d => d -> u) -> ProjectCardEvent -> u)
-> (forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d)
-> ProjectCardEvent -> m ProjectCardEvent)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> ProjectCardEvent -> m ProjectCardEvent)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> ProjectCardEvent -> m ProjectCardEvent)
-> Data ProjectCardEvent
ProjectCardEvent -> DataType
ProjectCardEvent -> Constr
(forall b. Data b => b -> b)
-> ProjectCardEvent -> ProjectCardEvent
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> ProjectCardEvent -> c ProjectCardEvent
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c ProjectCardEvent
forall a.
Typeable a
-> (forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> a -> c a)
-> (forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c a)
-> (a -> Constr)
-> (a -> DataType)
-> (forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c a))
-> (forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c a))
-> ((forall b. Data b => b -> b) -> a -> a)
-> (forall r r'.
(r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> a -> r)
-> (forall r r'.
(r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> a -> r)
-> (forall u. (forall d. Data d => d -> u) -> a -> [u])
-> (forall u. Int -> (forall d. Data d => d -> u) -> a -> u)
-> (forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d) -> a -> m a)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> a -> m a)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> a -> m a)
-> Data a
forall u.
Int -> (forall d. Data d => d -> u) -> ProjectCardEvent -> u
forall u. (forall d. Data d => d -> u) -> ProjectCardEvent -> [u]
forall r r'.
(r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> ProjectCardEvent -> r
forall r r'.
(r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> ProjectCardEvent -> r
forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d)
-> ProjectCardEvent -> m ProjectCardEvent
forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> ProjectCardEvent -> m ProjectCardEvent
forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c ProjectCardEvent
forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> ProjectCardEvent -> c ProjectCardEvent
forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c ProjectCardEvent)
forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c ProjectCardEvent)
$cProjectCardEvent :: Constr
$tProjectCardEvent :: DataType
gmapMo :: (forall d. Data d => d -> m d)
-> ProjectCardEvent -> m ProjectCardEvent
$cgmapMo :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> ProjectCardEvent -> m ProjectCardEvent
gmapMp :: (forall d. Data d => d -> m d)
-> ProjectCardEvent -> m ProjectCardEvent
$cgmapMp :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> ProjectCardEvent -> m ProjectCardEvent
gmapM :: (forall d. Data d => d -> m d)
-> ProjectCardEvent -> m ProjectCardEvent
$cgmapM :: forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d)
-> ProjectCardEvent -> m ProjectCardEvent
gmapQi :: Int -> (forall d. Data d => d -> u) -> ProjectCardEvent -> u
$cgmapQi :: forall u.
Int -> (forall d. Data d => d -> u) -> ProjectCardEvent -> u
gmapQ :: (forall d. Data d => d -> u) -> ProjectCardEvent -> [u]
$cgmapQ :: forall u. (forall d. Data d => d -> u) -> ProjectCardEvent -> [u]
gmapQr :: (r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> ProjectCardEvent -> r
$cgmapQr :: forall r r'.
(r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> ProjectCardEvent -> r
gmapQl :: (r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> ProjectCardEvent -> r
$cgmapQl :: forall r r'.
(r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> ProjectCardEvent -> r
gmapT :: (forall b. Data b => b -> b)
-> ProjectCardEvent -> ProjectCardEvent
$cgmapT :: (forall b. Data b => b -> b)
-> ProjectCardEvent -> ProjectCardEvent
dataCast2 :: (forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c ProjectCardEvent)
$cdataCast2 :: forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c ProjectCardEvent)
dataCast1 :: (forall d. Data d => c (t d)) -> Maybe (c ProjectCardEvent)
$cdataCast1 :: forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c ProjectCardEvent)
dataTypeOf :: ProjectCardEvent -> DataType
$cdataTypeOf :: ProjectCardEvent -> DataType
toConstr :: ProjectCardEvent -> Constr
$ctoConstr :: ProjectCardEvent -> Constr
gunfold :: (forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c ProjectCardEvent
$cgunfold :: forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c ProjectCardEvent
gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> ProjectCardEvent -> c ProjectCardEvent
$cgfoldl :: forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> ProjectCardEvent -> c ProjectCardEvent
$cp1Data :: Typeable ProjectCardEvent
Data, (forall x. ProjectCardEvent -> Rep ProjectCardEvent x)
-> (forall x. Rep ProjectCardEvent x -> ProjectCardEvent)
-> Generic ProjectCardEvent
forall x. Rep ProjectCardEvent x -> ProjectCardEvent
forall x. ProjectCardEvent -> Rep ProjectCardEvent x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep ProjectCardEvent x -> ProjectCardEvent
$cfrom :: forall x. ProjectCardEvent -> Rep ProjectCardEvent x
Generic)
instance EventHasSender ProjectCardEvent where senderOfEvent :: ProjectCardEvent -> HookUser
senderOfEvent = ProjectCardEvent -> HookUser
evProjectCardSender
instance EventHasRepo ProjectCardEvent where repoForEvent :: ProjectCardEvent -> HookRepository
repoForEvent = ProjectCardEvent -> HookRepository
evProjectCardRepo
instance NFData ProjectCardEvent where rnf :: ProjectCardEvent -> ()
rnf = ProjectCardEvent -> ()
forall a. (Generic a, GNFData (Rep a)) => a -> ()
genericRnf
data ProjectColumnEventAction
= ProjectColumnCreatedAction
| ProjectColumnEditedAction
| ProjectColumnMovedAction
| ProjectColumnDeletedAction
| ProjectColumnActionOther !Text
deriving (ProjectColumnEventAction -> ProjectColumnEventAction -> Bool
(ProjectColumnEventAction -> ProjectColumnEventAction -> Bool)
-> (ProjectColumnEventAction -> ProjectColumnEventAction -> Bool)
-> Eq ProjectColumnEventAction
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: ProjectColumnEventAction -> ProjectColumnEventAction -> Bool
$c/= :: ProjectColumnEventAction -> ProjectColumnEventAction -> Bool
== :: ProjectColumnEventAction -> ProjectColumnEventAction -> Bool
$c== :: ProjectColumnEventAction -> ProjectColumnEventAction -> Bool
Eq, Eq ProjectColumnEventAction
Eq ProjectColumnEventAction
-> (ProjectColumnEventAction
-> ProjectColumnEventAction -> Ordering)
-> (ProjectColumnEventAction -> ProjectColumnEventAction -> Bool)
-> (ProjectColumnEventAction -> ProjectColumnEventAction -> Bool)
-> (ProjectColumnEventAction -> ProjectColumnEventAction -> Bool)
-> (ProjectColumnEventAction -> ProjectColumnEventAction -> Bool)
-> (ProjectColumnEventAction
-> ProjectColumnEventAction -> ProjectColumnEventAction)
-> (ProjectColumnEventAction
-> ProjectColumnEventAction -> ProjectColumnEventAction)
-> Ord ProjectColumnEventAction
ProjectColumnEventAction -> ProjectColumnEventAction -> Bool
ProjectColumnEventAction -> ProjectColumnEventAction -> Ordering
ProjectColumnEventAction
-> ProjectColumnEventAction -> ProjectColumnEventAction
forall a.
Eq a
-> (a -> a -> Ordering)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> a)
-> (a -> a -> a)
-> Ord a
min :: ProjectColumnEventAction
-> ProjectColumnEventAction -> ProjectColumnEventAction
$cmin :: ProjectColumnEventAction
-> ProjectColumnEventAction -> ProjectColumnEventAction
max :: ProjectColumnEventAction
-> ProjectColumnEventAction -> ProjectColumnEventAction
$cmax :: ProjectColumnEventAction
-> ProjectColumnEventAction -> ProjectColumnEventAction
>= :: ProjectColumnEventAction -> ProjectColumnEventAction -> Bool
$c>= :: ProjectColumnEventAction -> ProjectColumnEventAction -> Bool
> :: ProjectColumnEventAction -> ProjectColumnEventAction -> Bool
$c> :: ProjectColumnEventAction -> ProjectColumnEventAction -> Bool
<= :: ProjectColumnEventAction -> ProjectColumnEventAction -> Bool
$c<= :: ProjectColumnEventAction -> ProjectColumnEventAction -> Bool
< :: ProjectColumnEventAction -> ProjectColumnEventAction -> Bool
$c< :: ProjectColumnEventAction -> ProjectColumnEventAction -> Bool
compare :: ProjectColumnEventAction -> ProjectColumnEventAction -> Ordering
$ccompare :: ProjectColumnEventAction -> ProjectColumnEventAction -> Ordering
$cp1Ord :: Eq ProjectColumnEventAction
Ord, Int -> ProjectColumnEventAction -> ShowS
[ProjectColumnEventAction] -> ShowS
ProjectColumnEventAction -> String
(Int -> ProjectColumnEventAction -> ShowS)
-> (ProjectColumnEventAction -> String)
-> ([ProjectColumnEventAction] -> ShowS)
-> Show ProjectColumnEventAction
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [ProjectColumnEventAction] -> ShowS
$cshowList :: [ProjectColumnEventAction] -> ShowS
show :: ProjectColumnEventAction -> String
$cshow :: ProjectColumnEventAction -> String
showsPrec :: Int -> ProjectColumnEventAction -> ShowS
$cshowsPrec :: Int -> ProjectColumnEventAction -> ShowS
Show, (forall x.
ProjectColumnEventAction -> Rep ProjectColumnEventAction x)
-> (forall x.
Rep ProjectColumnEventAction x -> ProjectColumnEventAction)
-> Generic ProjectColumnEventAction
forall x.
Rep ProjectColumnEventAction x -> ProjectColumnEventAction
forall x.
ProjectColumnEventAction -> Rep ProjectColumnEventAction x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x.
Rep ProjectColumnEventAction x -> ProjectColumnEventAction
$cfrom :: forall x.
ProjectColumnEventAction -> Rep ProjectColumnEventAction x
Generic, Typeable, Typeable ProjectColumnEventAction
DataType
Constr
Typeable ProjectColumnEventAction
-> (forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g)
-> ProjectColumnEventAction
-> c ProjectColumnEventAction)
-> (forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c ProjectColumnEventAction)
-> (ProjectColumnEventAction -> Constr)
-> (ProjectColumnEventAction -> DataType)
-> (forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d))
-> Maybe (c ProjectColumnEventAction))
-> (forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c ProjectColumnEventAction))
-> ((forall b. Data b => b -> b)
-> ProjectColumnEventAction -> ProjectColumnEventAction)
-> (forall r r'.
(r -> r' -> r)
-> r
-> (forall d. Data d => d -> r')
-> ProjectColumnEventAction
-> r)
-> (forall r r'.
(r' -> r -> r)
-> r
-> (forall d. Data d => d -> r')
-> ProjectColumnEventAction
-> r)
-> (forall u.
(forall d. Data d => d -> u) -> ProjectColumnEventAction -> [u])
-> (forall u.
Int
-> (forall d. Data d => d -> u) -> ProjectColumnEventAction -> u)
-> (forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d)
-> ProjectColumnEventAction -> m ProjectColumnEventAction)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> ProjectColumnEventAction -> m ProjectColumnEventAction)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> ProjectColumnEventAction -> m ProjectColumnEventAction)
-> Data ProjectColumnEventAction
ProjectColumnEventAction -> DataType
ProjectColumnEventAction -> Constr
(forall b. Data b => b -> b)
-> ProjectColumnEventAction -> ProjectColumnEventAction
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g)
-> ProjectColumnEventAction
-> c ProjectColumnEventAction
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c ProjectColumnEventAction
forall a.
Typeable a
-> (forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> a -> c a)
-> (forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c a)
-> (a -> Constr)
-> (a -> DataType)
-> (forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c a))
-> (forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c a))
-> ((forall b. Data b => b -> b) -> a -> a)
-> (forall r r'.
(r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> a -> r)
-> (forall r r'.
(r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> a -> r)
-> (forall u. (forall d. Data d => d -> u) -> a -> [u])
-> (forall u. Int -> (forall d. Data d => d -> u) -> a -> u)
-> (forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d) -> a -> m a)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> a -> m a)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> a -> m a)
-> Data a
forall u.
Int
-> (forall d. Data d => d -> u) -> ProjectColumnEventAction -> u
forall u.
(forall d. Data d => d -> u) -> ProjectColumnEventAction -> [u]
forall r r'.
(r -> r' -> r)
-> r
-> (forall d. Data d => d -> r')
-> ProjectColumnEventAction
-> r
forall r r'.
(r' -> r -> r)
-> r
-> (forall d. Data d => d -> r')
-> ProjectColumnEventAction
-> r
forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d)
-> ProjectColumnEventAction -> m ProjectColumnEventAction
forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> ProjectColumnEventAction -> m ProjectColumnEventAction
forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c ProjectColumnEventAction
forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g)
-> ProjectColumnEventAction
-> c ProjectColumnEventAction
forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c ProjectColumnEventAction)
forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c ProjectColumnEventAction)
$cProjectColumnActionOther :: Constr
$cProjectColumnDeletedAction :: Constr
$cProjectColumnMovedAction :: Constr
$cProjectColumnEditedAction :: Constr
$cProjectColumnCreatedAction :: Constr
$tProjectColumnEventAction :: DataType
gmapMo :: (forall d. Data d => d -> m d)
-> ProjectColumnEventAction -> m ProjectColumnEventAction
$cgmapMo :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> ProjectColumnEventAction -> m ProjectColumnEventAction
gmapMp :: (forall d. Data d => d -> m d)
-> ProjectColumnEventAction -> m ProjectColumnEventAction
$cgmapMp :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> ProjectColumnEventAction -> m ProjectColumnEventAction
gmapM :: (forall d. Data d => d -> m d)
-> ProjectColumnEventAction -> m ProjectColumnEventAction
$cgmapM :: forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d)
-> ProjectColumnEventAction -> m ProjectColumnEventAction
gmapQi :: Int
-> (forall d. Data d => d -> u) -> ProjectColumnEventAction -> u
$cgmapQi :: forall u.
Int
-> (forall d. Data d => d -> u) -> ProjectColumnEventAction -> u
gmapQ :: (forall d. Data d => d -> u) -> ProjectColumnEventAction -> [u]
$cgmapQ :: forall u.
(forall d. Data d => d -> u) -> ProjectColumnEventAction -> [u]
gmapQr :: (r' -> r -> r)
-> r
-> (forall d. Data d => d -> r')
-> ProjectColumnEventAction
-> r
$cgmapQr :: forall r r'.
(r' -> r -> r)
-> r
-> (forall d. Data d => d -> r')
-> ProjectColumnEventAction
-> r
gmapQl :: (r -> r' -> r)
-> r
-> (forall d. Data d => d -> r')
-> ProjectColumnEventAction
-> r
$cgmapQl :: forall r r'.
(r -> r' -> r)
-> r
-> (forall d. Data d => d -> r')
-> ProjectColumnEventAction
-> r
gmapT :: (forall b. Data b => b -> b)
-> ProjectColumnEventAction -> ProjectColumnEventAction
$cgmapT :: (forall b. Data b => b -> b)
-> ProjectColumnEventAction -> ProjectColumnEventAction
dataCast2 :: (forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c ProjectColumnEventAction)
$cdataCast2 :: forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c ProjectColumnEventAction)
dataCast1 :: (forall d. Data d => c (t d)) -> Maybe (c ProjectColumnEventAction)
$cdataCast1 :: forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c ProjectColumnEventAction)
dataTypeOf :: ProjectColumnEventAction -> DataType
$cdataTypeOf :: ProjectColumnEventAction -> DataType
toConstr :: ProjectColumnEventAction -> Constr
$ctoConstr :: ProjectColumnEventAction -> Constr
gunfold :: (forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c ProjectColumnEventAction
$cgunfold :: forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c ProjectColumnEventAction
gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g)
-> ProjectColumnEventAction
-> c ProjectColumnEventAction
$cgfoldl :: forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g)
-> ProjectColumnEventAction
-> c ProjectColumnEventAction
$cp1Data :: Typeable ProjectColumnEventAction
Data)
instance NFData ProjectColumnEventAction where rnf :: ProjectColumnEventAction -> ()
rnf = ProjectColumnEventAction -> ()
forall a. (Generic a, GNFData (Rep a)) => a -> ()
genericRnf
instance FromJSON ProjectColumnEventAction where
parseJSON :: Value -> Parser ProjectColumnEventAction
parseJSON = String
-> (Text -> Parser ProjectColumnEventAction)
-> Value
-> Parser ProjectColumnEventAction
forall a. String -> (Text -> Parser a) -> Value -> Parser a
withText String
"Project column event action" ((Text -> Parser ProjectColumnEventAction)
-> Value -> Parser ProjectColumnEventAction)
-> (Text -> Parser ProjectColumnEventAction)
-> Value
-> Parser ProjectColumnEventAction
forall a b. (a -> b) -> a -> b
$ \Text
t ->
case Text
t of
Text
"created" -> ProjectColumnEventAction -> Parser ProjectColumnEventAction
forall (f :: * -> *) a. Applicative f => a -> f a
pure ProjectColumnEventAction
ProjectColumnCreatedAction
Text
"edited" -> ProjectColumnEventAction -> Parser ProjectColumnEventAction
forall (f :: * -> *) a. Applicative f => a -> f a
pure ProjectColumnEventAction
ProjectColumnEditedAction
Text
"moved" -> ProjectColumnEventAction -> Parser ProjectColumnEventAction
forall (f :: * -> *) a. Applicative f => a -> f a
pure ProjectColumnEventAction
ProjectColumnMovedAction
Text
"deleted" -> ProjectColumnEventAction -> Parser ProjectColumnEventAction
forall (f :: * -> *) a. Applicative f => a -> f a
pure ProjectColumnEventAction
ProjectColumnDeletedAction
Text
_ -> ProjectColumnEventAction -> Parser ProjectColumnEventAction
forall (f :: * -> *) a. Applicative f => a -> f a
pure (Text -> ProjectColumnEventAction
ProjectColumnActionOther Text
t)
data ProjectColumnEvent = ProjectColumnEvent
{ ProjectColumnEvent -> ProjectColumnEventAction
evProjectColumnAction :: !ProjectColumnEventAction
, ProjectColumnEvent -> HookProjectColumn
evProjectColumnPayload :: !HookProjectColumn
, ProjectColumnEvent -> HookRepository
evProjectColumnRepo :: !HookRepository
, ProjectColumnEvent -> HookOrganization
evProjectColumnOrg :: !HookOrganization
, ProjectColumnEvent -> HookUser
evProjectColumnSender :: !HookUser
}
deriving (ProjectColumnEvent -> ProjectColumnEvent -> Bool
(ProjectColumnEvent -> ProjectColumnEvent -> Bool)
-> (ProjectColumnEvent -> ProjectColumnEvent -> Bool)
-> Eq ProjectColumnEvent
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: ProjectColumnEvent -> ProjectColumnEvent -> Bool
$c/= :: ProjectColumnEvent -> ProjectColumnEvent -> Bool
== :: ProjectColumnEvent -> ProjectColumnEvent -> Bool
$c== :: ProjectColumnEvent -> ProjectColumnEvent -> Bool
Eq, Int -> ProjectColumnEvent -> ShowS
[ProjectColumnEvent] -> ShowS
ProjectColumnEvent -> String
(Int -> ProjectColumnEvent -> ShowS)
-> (ProjectColumnEvent -> String)
-> ([ProjectColumnEvent] -> ShowS)
-> Show ProjectColumnEvent
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [ProjectColumnEvent] -> ShowS
$cshowList :: [ProjectColumnEvent] -> ShowS
show :: ProjectColumnEvent -> String
$cshow :: ProjectColumnEvent -> String
showsPrec :: Int -> ProjectColumnEvent -> ShowS
$cshowsPrec :: Int -> ProjectColumnEvent -> ShowS
Show, Typeable, Typeable ProjectColumnEvent
DataType
Constr
Typeable ProjectColumnEvent
-> (forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g)
-> ProjectColumnEvent
-> c ProjectColumnEvent)
-> (forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c ProjectColumnEvent)
-> (ProjectColumnEvent -> Constr)
-> (ProjectColumnEvent -> DataType)
-> (forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c ProjectColumnEvent))
-> (forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c ProjectColumnEvent))
-> ((forall b. Data b => b -> b)
-> ProjectColumnEvent -> ProjectColumnEvent)
-> (forall r r'.
(r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> ProjectColumnEvent -> r)
-> (forall r r'.
(r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> ProjectColumnEvent -> r)
-> (forall u.
(forall d. Data d => d -> u) -> ProjectColumnEvent -> [u])
-> (forall u.
Int -> (forall d. Data d => d -> u) -> ProjectColumnEvent -> u)
-> (forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d)
-> ProjectColumnEvent -> m ProjectColumnEvent)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> ProjectColumnEvent -> m ProjectColumnEvent)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> ProjectColumnEvent -> m ProjectColumnEvent)
-> Data ProjectColumnEvent
ProjectColumnEvent -> DataType
ProjectColumnEvent -> Constr
(forall b. Data b => b -> b)
-> ProjectColumnEvent -> ProjectColumnEvent
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g)
-> ProjectColumnEvent
-> c ProjectColumnEvent
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c ProjectColumnEvent
forall a.
Typeable a
-> (forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> a -> c a)
-> (forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c a)
-> (a -> Constr)
-> (a -> DataType)
-> (forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c a))
-> (forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c a))
-> ((forall b. Data b => b -> b) -> a -> a)
-> (forall r r'.
(r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> a -> r)
-> (forall r r'.
(r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> a -> r)
-> (forall u. (forall d. Data d => d -> u) -> a -> [u])
-> (forall u. Int -> (forall d. Data d => d -> u) -> a -> u)
-> (forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d) -> a -> m a)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> a -> m a)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> a -> m a)
-> Data a
forall u.
Int -> (forall d. Data d => d -> u) -> ProjectColumnEvent -> u
forall u. (forall d. Data d => d -> u) -> ProjectColumnEvent -> [u]
forall r r'.
(r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> ProjectColumnEvent -> r
forall r r'.
(r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> ProjectColumnEvent -> r
forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d)
-> ProjectColumnEvent -> m ProjectColumnEvent
forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> ProjectColumnEvent -> m ProjectColumnEvent
forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c ProjectColumnEvent
forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g)
-> ProjectColumnEvent
-> c ProjectColumnEvent
forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c ProjectColumnEvent)
forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c ProjectColumnEvent)
$cProjectColumnEvent :: Constr
$tProjectColumnEvent :: DataType
gmapMo :: (forall d. Data d => d -> m d)
-> ProjectColumnEvent -> m ProjectColumnEvent
$cgmapMo :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> ProjectColumnEvent -> m ProjectColumnEvent
gmapMp :: (forall d. Data d => d -> m d)
-> ProjectColumnEvent -> m ProjectColumnEvent
$cgmapMp :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> ProjectColumnEvent -> m ProjectColumnEvent
gmapM :: (forall d. Data d => d -> m d)
-> ProjectColumnEvent -> m ProjectColumnEvent
$cgmapM :: forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d)
-> ProjectColumnEvent -> m ProjectColumnEvent
gmapQi :: Int -> (forall d. Data d => d -> u) -> ProjectColumnEvent -> u
$cgmapQi :: forall u.
Int -> (forall d. Data d => d -> u) -> ProjectColumnEvent -> u
gmapQ :: (forall d. Data d => d -> u) -> ProjectColumnEvent -> [u]
$cgmapQ :: forall u. (forall d. Data d => d -> u) -> ProjectColumnEvent -> [u]
gmapQr :: (r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> ProjectColumnEvent -> r
$cgmapQr :: forall r r'.
(r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> ProjectColumnEvent -> r
gmapQl :: (r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> ProjectColumnEvent -> r
$cgmapQl :: forall r r'.
(r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> ProjectColumnEvent -> r
gmapT :: (forall b. Data b => b -> b)
-> ProjectColumnEvent -> ProjectColumnEvent
$cgmapT :: (forall b. Data b => b -> b)
-> ProjectColumnEvent -> ProjectColumnEvent
dataCast2 :: (forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c ProjectColumnEvent)
$cdataCast2 :: forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c ProjectColumnEvent)
dataCast1 :: (forall d. Data d => c (t d)) -> Maybe (c ProjectColumnEvent)
$cdataCast1 :: forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c ProjectColumnEvent)
dataTypeOf :: ProjectColumnEvent -> DataType
$cdataTypeOf :: ProjectColumnEvent -> DataType
toConstr :: ProjectColumnEvent -> Constr
$ctoConstr :: ProjectColumnEvent -> Constr
gunfold :: (forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c ProjectColumnEvent
$cgunfold :: forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c ProjectColumnEvent
gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g)
-> ProjectColumnEvent
-> c ProjectColumnEvent
$cgfoldl :: forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g)
-> ProjectColumnEvent
-> c ProjectColumnEvent
$cp1Data :: Typeable ProjectColumnEvent
Data, (forall x. ProjectColumnEvent -> Rep ProjectColumnEvent x)
-> (forall x. Rep ProjectColumnEvent x -> ProjectColumnEvent)
-> Generic ProjectColumnEvent
forall x. Rep ProjectColumnEvent x -> ProjectColumnEvent
forall x. ProjectColumnEvent -> Rep ProjectColumnEvent x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep ProjectColumnEvent x -> ProjectColumnEvent
$cfrom :: forall x. ProjectColumnEvent -> Rep ProjectColumnEvent x
Generic)
instance EventHasSender ProjectColumnEvent where senderOfEvent :: ProjectColumnEvent -> HookUser
senderOfEvent = ProjectColumnEvent -> HookUser
evProjectColumnSender
instance EventHasRepo ProjectColumnEvent where repoForEvent :: ProjectColumnEvent -> HookRepository
repoForEvent = ProjectColumnEvent -> HookRepository
evProjectColumnRepo
instance NFData ProjectColumnEvent where rnf :: ProjectColumnEvent -> ()
rnf = ProjectColumnEvent -> ()
forall a. (Generic a, GNFData (Rep a)) => a -> ()
genericRnf
data ProjectEventAction
= ProjectCreatedAction
| ProjectEditedAction
| ProjectClosedAction
| ProjectReopenedAction
| ProjectDeletedAction
| ProjectActionOther !Text
deriving (ProjectEventAction -> ProjectEventAction -> Bool
(ProjectEventAction -> ProjectEventAction -> Bool)
-> (ProjectEventAction -> ProjectEventAction -> Bool)
-> Eq ProjectEventAction
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: ProjectEventAction -> ProjectEventAction -> Bool
$c/= :: ProjectEventAction -> ProjectEventAction -> Bool
== :: ProjectEventAction -> ProjectEventAction -> Bool
$c== :: ProjectEventAction -> ProjectEventAction -> Bool
Eq, Eq ProjectEventAction
Eq ProjectEventAction
-> (ProjectEventAction -> ProjectEventAction -> Ordering)
-> (ProjectEventAction -> ProjectEventAction -> Bool)
-> (ProjectEventAction -> ProjectEventAction -> Bool)
-> (ProjectEventAction -> ProjectEventAction -> Bool)
-> (ProjectEventAction -> ProjectEventAction -> Bool)
-> (ProjectEventAction -> ProjectEventAction -> ProjectEventAction)
-> (ProjectEventAction -> ProjectEventAction -> ProjectEventAction)
-> Ord ProjectEventAction
ProjectEventAction -> ProjectEventAction -> Bool
ProjectEventAction -> ProjectEventAction -> Ordering
ProjectEventAction -> ProjectEventAction -> ProjectEventAction
forall a.
Eq a
-> (a -> a -> Ordering)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> a)
-> (a -> a -> a)
-> Ord a
min :: ProjectEventAction -> ProjectEventAction -> ProjectEventAction
$cmin :: ProjectEventAction -> ProjectEventAction -> ProjectEventAction
max :: ProjectEventAction -> ProjectEventAction -> ProjectEventAction
$cmax :: ProjectEventAction -> ProjectEventAction -> ProjectEventAction
>= :: ProjectEventAction -> ProjectEventAction -> Bool
$c>= :: ProjectEventAction -> ProjectEventAction -> Bool
> :: ProjectEventAction -> ProjectEventAction -> Bool
$c> :: ProjectEventAction -> ProjectEventAction -> Bool
<= :: ProjectEventAction -> ProjectEventAction -> Bool
$c<= :: ProjectEventAction -> ProjectEventAction -> Bool
< :: ProjectEventAction -> ProjectEventAction -> Bool
$c< :: ProjectEventAction -> ProjectEventAction -> Bool
compare :: ProjectEventAction -> ProjectEventAction -> Ordering
$ccompare :: ProjectEventAction -> ProjectEventAction -> Ordering
$cp1Ord :: Eq ProjectEventAction
Ord, Int -> ProjectEventAction -> ShowS
[ProjectEventAction] -> ShowS
ProjectEventAction -> String
(Int -> ProjectEventAction -> ShowS)
-> (ProjectEventAction -> String)
-> ([ProjectEventAction] -> ShowS)
-> Show ProjectEventAction
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [ProjectEventAction] -> ShowS
$cshowList :: [ProjectEventAction] -> ShowS
show :: ProjectEventAction -> String
$cshow :: ProjectEventAction -> String
showsPrec :: Int -> ProjectEventAction -> ShowS
$cshowsPrec :: Int -> ProjectEventAction -> ShowS
Show, (forall x. ProjectEventAction -> Rep ProjectEventAction x)
-> (forall x. Rep ProjectEventAction x -> ProjectEventAction)
-> Generic ProjectEventAction
forall x. Rep ProjectEventAction x -> ProjectEventAction
forall x. ProjectEventAction -> Rep ProjectEventAction x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep ProjectEventAction x -> ProjectEventAction
$cfrom :: forall x. ProjectEventAction -> Rep ProjectEventAction x
Generic, Typeable, Typeable ProjectEventAction
DataType
Constr
Typeable ProjectEventAction
-> (forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g)
-> ProjectEventAction
-> c ProjectEventAction)
-> (forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c ProjectEventAction)
-> (ProjectEventAction -> Constr)
-> (ProjectEventAction -> DataType)
-> (forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c ProjectEventAction))
-> (forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c ProjectEventAction))
-> ((forall b. Data b => b -> b)
-> ProjectEventAction -> ProjectEventAction)
-> (forall r r'.
(r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> ProjectEventAction -> r)
-> (forall r r'.
(r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> ProjectEventAction -> r)
-> (forall u.
(forall d. Data d => d -> u) -> ProjectEventAction -> [u])
-> (forall u.
Int -> (forall d. Data d => d -> u) -> ProjectEventAction -> u)
-> (forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d)
-> ProjectEventAction -> m ProjectEventAction)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> ProjectEventAction -> m ProjectEventAction)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> ProjectEventAction -> m ProjectEventAction)
-> Data ProjectEventAction
ProjectEventAction -> DataType
ProjectEventAction -> Constr
(forall b. Data b => b -> b)
-> ProjectEventAction -> ProjectEventAction
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g)
-> ProjectEventAction
-> c ProjectEventAction
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c ProjectEventAction
forall a.
Typeable a
-> (forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> a -> c a)
-> (forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c a)
-> (a -> Constr)
-> (a -> DataType)
-> (forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c a))
-> (forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c a))
-> ((forall b. Data b => b -> b) -> a -> a)
-> (forall r r'.
(r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> a -> r)
-> (forall r r'.
(r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> a -> r)
-> (forall u. (forall d. Data d => d -> u) -> a -> [u])
-> (forall u. Int -> (forall d. Data d => d -> u) -> a -> u)
-> (forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d) -> a -> m a)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> a -> m a)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> a -> m a)
-> Data a
forall u.
Int -> (forall d. Data d => d -> u) -> ProjectEventAction -> u
forall u. (forall d. Data d => d -> u) -> ProjectEventAction -> [u]
forall r r'.
(r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> ProjectEventAction -> r
forall r r'.
(r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> ProjectEventAction -> r
forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d)
-> ProjectEventAction -> m ProjectEventAction
forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> ProjectEventAction -> m ProjectEventAction
forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c ProjectEventAction
forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g)
-> ProjectEventAction
-> c ProjectEventAction
forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c ProjectEventAction)
forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c ProjectEventAction)
$cProjectActionOther :: Constr
$cProjectDeletedAction :: Constr
$cProjectReopenedAction :: Constr
$cProjectClosedAction :: Constr
$cProjectEditedAction :: Constr
$cProjectCreatedAction :: Constr
$tProjectEventAction :: DataType
gmapMo :: (forall d. Data d => d -> m d)
-> ProjectEventAction -> m ProjectEventAction
$cgmapMo :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> ProjectEventAction -> m ProjectEventAction
gmapMp :: (forall d. Data d => d -> m d)
-> ProjectEventAction -> m ProjectEventAction
$cgmapMp :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> ProjectEventAction -> m ProjectEventAction
gmapM :: (forall d. Data d => d -> m d)
-> ProjectEventAction -> m ProjectEventAction
$cgmapM :: forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d)
-> ProjectEventAction -> m ProjectEventAction
gmapQi :: Int -> (forall d. Data d => d -> u) -> ProjectEventAction -> u
$cgmapQi :: forall u.
Int -> (forall d. Data d => d -> u) -> ProjectEventAction -> u
gmapQ :: (forall d. Data d => d -> u) -> ProjectEventAction -> [u]
$cgmapQ :: forall u. (forall d. Data d => d -> u) -> ProjectEventAction -> [u]
gmapQr :: (r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> ProjectEventAction -> r
$cgmapQr :: forall r r'.
(r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> ProjectEventAction -> r
gmapQl :: (r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> ProjectEventAction -> r
$cgmapQl :: forall r r'.
(r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> ProjectEventAction -> r
gmapT :: (forall b. Data b => b -> b)
-> ProjectEventAction -> ProjectEventAction
$cgmapT :: (forall b. Data b => b -> b)
-> ProjectEventAction -> ProjectEventAction
dataCast2 :: (forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c ProjectEventAction)
$cdataCast2 :: forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c ProjectEventAction)
dataCast1 :: (forall d. Data d => c (t d)) -> Maybe (c ProjectEventAction)
$cdataCast1 :: forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c ProjectEventAction)
dataTypeOf :: ProjectEventAction -> DataType
$cdataTypeOf :: ProjectEventAction -> DataType
toConstr :: ProjectEventAction -> Constr
$ctoConstr :: ProjectEventAction -> Constr
gunfold :: (forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c ProjectEventAction
$cgunfold :: forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c ProjectEventAction
gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g)
-> ProjectEventAction
-> c ProjectEventAction
$cgfoldl :: forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g)
-> ProjectEventAction
-> c ProjectEventAction
$cp1Data :: Typeable ProjectEventAction
Data)
instance NFData ProjectEventAction where rnf :: ProjectEventAction -> ()
rnf = ProjectEventAction -> ()
forall a. (Generic a, GNFData (Rep a)) => a -> ()
genericRnf
instance FromJSON ProjectEventAction where
parseJSON :: Value -> Parser ProjectEventAction
parseJSON = String
-> (Text -> Parser ProjectEventAction)
-> Value
-> Parser ProjectEventAction
forall a. String -> (Text -> Parser a) -> Value -> Parser a
withText String
"Project event action" ((Text -> Parser ProjectEventAction)
-> Value -> Parser ProjectEventAction)
-> (Text -> Parser ProjectEventAction)
-> Value
-> Parser ProjectEventAction
forall a b. (a -> b) -> a -> b
$ \Text
t ->
case Text
t of
Text
"created" -> ProjectEventAction -> Parser ProjectEventAction
forall (f :: * -> *) a. Applicative f => a -> f a
pure ProjectEventAction
ProjectCreatedAction
Text
"edited" -> ProjectEventAction -> Parser ProjectEventAction
forall (f :: * -> *) a. Applicative f => a -> f a
pure ProjectEventAction
ProjectEditedAction
Text
"closed" -> ProjectEventAction -> Parser ProjectEventAction
forall (f :: * -> *) a. Applicative f => a -> f a
pure ProjectEventAction
ProjectClosedAction
Text
"reopened" -> ProjectEventAction -> Parser ProjectEventAction
forall (f :: * -> *) a. Applicative f => a -> f a
pure ProjectEventAction
ProjectReopenedAction
Text
"deleted" -> ProjectEventAction -> Parser ProjectEventAction
forall (f :: * -> *) a. Applicative f => a -> f a
pure ProjectEventAction
ProjectDeletedAction
Text
_ -> ProjectEventAction -> Parser ProjectEventAction
forall (f :: * -> *) a. Applicative f => a -> f a
pure (Text -> ProjectEventAction
ProjectActionOther Text
t)
data ProjectEvent = ProjectEvent
{ ProjectEvent -> ProjectEventAction
evProjectEventAction :: !ProjectEventAction
, ProjectEvent -> HookProject
evProjectPayload :: !HookProject
, ProjectEvent -> HookRepository
evProjectRepo :: !HookRepository
, ProjectEvent -> HookOrganization
evProjectOrganization :: !HookOrganization
, ProjectEvent -> HookUser
evProjectSender :: !HookUser
}
deriving (ProjectEvent -> ProjectEvent -> Bool
(ProjectEvent -> ProjectEvent -> Bool)
-> (ProjectEvent -> ProjectEvent -> Bool) -> Eq ProjectEvent
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: ProjectEvent -> ProjectEvent -> Bool
$c/= :: ProjectEvent -> ProjectEvent -> Bool
== :: ProjectEvent -> ProjectEvent -> Bool
$c== :: ProjectEvent -> ProjectEvent -> Bool
Eq, Int -> ProjectEvent -> ShowS
[ProjectEvent] -> ShowS
ProjectEvent -> String
(Int -> ProjectEvent -> ShowS)
-> (ProjectEvent -> String)
-> ([ProjectEvent] -> ShowS)
-> Show ProjectEvent
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [ProjectEvent] -> ShowS
$cshowList :: [ProjectEvent] -> ShowS
show :: ProjectEvent -> String
$cshow :: ProjectEvent -> String
showsPrec :: Int -> ProjectEvent -> ShowS
$cshowsPrec :: Int -> ProjectEvent -> ShowS
Show, Typeable, Typeable ProjectEvent
DataType
Constr
Typeable ProjectEvent
-> (forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> ProjectEvent -> c ProjectEvent)
-> (forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c ProjectEvent)
-> (ProjectEvent -> Constr)
-> (ProjectEvent -> DataType)
-> (forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c ProjectEvent))
-> (forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c ProjectEvent))
-> ((forall b. Data b => b -> b) -> ProjectEvent -> ProjectEvent)
-> (forall r r'.
(r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> ProjectEvent -> r)
-> (forall r r'.
(r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> ProjectEvent -> r)
-> (forall u. (forall d. Data d => d -> u) -> ProjectEvent -> [u])
-> (forall u.
Int -> (forall d. Data d => d -> u) -> ProjectEvent -> u)
-> (forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d) -> ProjectEvent -> m ProjectEvent)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> ProjectEvent -> m ProjectEvent)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> ProjectEvent -> m ProjectEvent)
-> Data ProjectEvent
ProjectEvent -> DataType
ProjectEvent -> Constr
(forall b. Data b => b -> b) -> ProjectEvent -> ProjectEvent
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> ProjectEvent -> c ProjectEvent
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c ProjectEvent
forall a.
Typeable a
-> (forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> a -> c a)
-> (forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c a)
-> (a -> Constr)
-> (a -> DataType)
-> (forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c a))
-> (forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c a))
-> ((forall b. Data b => b -> b) -> a -> a)
-> (forall r r'.
(r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> a -> r)
-> (forall r r'.
(r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> a -> r)
-> (forall u. (forall d. Data d => d -> u) -> a -> [u])
-> (forall u. Int -> (forall d. Data d => d -> u) -> a -> u)
-> (forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d) -> a -> m a)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> a -> m a)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> a -> m a)
-> Data a
forall u. Int -> (forall d. Data d => d -> u) -> ProjectEvent -> u
forall u. (forall d. Data d => d -> u) -> ProjectEvent -> [u]
forall r r'.
(r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> ProjectEvent -> r
forall r r'.
(r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> ProjectEvent -> r
forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d) -> ProjectEvent -> m ProjectEvent
forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> ProjectEvent -> m ProjectEvent
forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c ProjectEvent
forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> ProjectEvent -> c ProjectEvent
forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c ProjectEvent)
forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c ProjectEvent)
$cProjectEvent :: Constr
$tProjectEvent :: DataType
gmapMo :: (forall d. Data d => d -> m d) -> ProjectEvent -> m ProjectEvent
$cgmapMo :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> ProjectEvent -> m ProjectEvent
gmapMp :: (forall d. Data d => d -> m d) -> ProjectEvent -> m ProjectEvent
$cgmapMp :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> ProjectEvent -> m ProjectEvent
gmapM :: (forall d. Data d => d -> m d) -> ProjectEvent -> m ProjectEvent
$cgmapM :: forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d) -> ProjectEvent -> m ProjectEvent
gmapQi :: Int -> (forall d. Data d => d -> u) -> ProjectEvent -> u
$cgmapQi :: forall u. Int -> (forall d. Data d => d -> u) -> ProjectEvent -> u
gmapQ :: (forall d. Data d => d -> u) -> ProjectEvent -> [u]
$cgmapQ :: forall u. (forall d. Data d => d -> u) -> ProjectEvent -> [u]
gmapQr :: (r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> ProjectEvent -> r
$cgmapQr :: forall r r'.
(r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> ProjectEvent -> r
gmapQl :: (r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> ProjectEvent -> r
$cgmapQl :: forall r r'.
(r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> ProjectEvent -> r
gmapT :: (forall b. Data b => b -> b) -> ProjectEvent -> ProjectEvent
$cgmapT :: (forall b. Data b => b -> b) -> ProjectEvent -> ProjectEvent
dataCast2 :: (forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c ProjectEvent)
$cdataCast2 :: forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c ProjectEvent)
dataCast1 :: (forall d. Data d => c (t d)) -> Maybe (c ProjectEvent)
$cdataCast1 :: forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c ProjectEvent)
dataTypeOf :: ProjectEvent -> DataType
$cdataTypeOf :: ProjectEvent -> DataType
toConstr :: ProjectEvent -> Constr
$ctoConstr :: ProjectEvent -> Constr
gunfold :: (forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c ProjectEvent
$cgunfold :: forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c ProjectEvent
gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> ProjectEvent -> c ProjectEvent
$cgfoldl :: forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> ProjectEvent -> c ProjectEvent
$cp1Data :: Typeable ProjectEvent
Data, (forall x. ProjectEvent -> Rep ProjectEvent x)
-> (forall x. Rep ProjectEvent x -> ProjectEvent)
-> Generic ProjectEvent
forall x. Rep ProjectEvent x -> ProjectEvent
forall x. ProjectEvent -> Rep ProjectEvent x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep ProjectEvent x -> ProjectEvent
$cfrom :: forall x. ProjectEvent -> Rep ProjectEvent x
Generic)
instance EventHasSender ProjectEvent where senderOfEvent :: ProjectEvent -> HookUser
senderOfEvent = ProjectEvent -> HookUser
evProjectSender
instance EventHasRepo ProjectEvent where repoForEvent :: ProjectEvent -> HookRepository
repoForEvent = ProjectEvent -> HookRepository
evProjectRepo
instance NFData ProjectEvent where rnf :: ProjectEvent -> ()
rnf = ProjectEvent -> ()
forall a. (Generic a, GNFData (Rep a)) => a -> ()
genericRnf
data PublicEvent = PublicEvent
{ PublicEvent -> HookRepository
evPublicEventRepo :: !HookRepository
, PublicEvent -> HookUser
evPublicEventSender :: !HookUser
}
deriving (PublicEvent -> PublicEvent -> Bool
(PublicEvent -> PublicEvent -> Bool)
-> (PublicEvent -> PublicEvent -> Bool) -> Eq PublicEvent
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PublicEvent -> PublicEvent -> Bool
$c/= :: PublicEvent -> PublicEvent -> Bool
== :: PublicEvent -> PublicEvent -> Bool
$c== :: PublicEvent -> PublicEvent -> Bool
Eq, Int -> PublicEvent -> ShowS
[PublicEvent] -> ShowS
PublicEvent -> String
(Int -> PublicEvent -> ShowS)
-> (PublicEvent -> String)
-> ([PublicEvent] -> ShowS)
-> Show PublicEvent
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PublicEvent] -> ShowS
$cshowList :: [PublicEvent] -> ShowS
show :: PublicEvent -> String
$cshow :: PublicEvent -> String
showsPrec :: Int -> PublicEvent -> ShowS
$cshowsPrec :: Int -> PublicEvent -> ShowS
Show, Typeable, Typeable PublicEvent
DataType
Constr
Typeable PublicEvent
-> (forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> PublicEvent -> c PublicEvent)
-> (forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c PublicEvent)
-> (PublicEvent -> Constr)
-> (PublicEvent -> DataType)
-> (forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c PublicEvent))
-> (forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c PublicEvent))
-> ((forall b. Data b => b -> b) -> PublicEvent -> PublicEvent)
-> (forall r r'.
(r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> PublicEvent -> r)
-> (forall r r'.
(r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> PublicEvent -> r)
-> (forall u. (forall d. Data d => d -> u) -> PublicEvent -> [u])
-> (forall u.
Int -> (forall d. Data d => d -> u) -> PublicEvent -> u)
-> (forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d) -> PublicEvent -> m PublicEvent)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> PublicEvent -> m PublicEvent)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> PublicEvent -> m PublicEvent)
-> Data PublicEvent
PublicEvent -> DataType
PublicEvent -> Constr
(forall b. Data b => b -> b) -> PublicEvent -> PublicEvent
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> PublicEvent -> c PublicEvent
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c PublicEvent
forall a.
Typeable a
-> (forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> a -> c a)
-> (forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c a)
-> (a -> Constr)
-> (a -> DataType)
-> (forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c a))
-> (forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c a))
-> ((forall b. Data b => b -> b) -> a -> a)
-> (forall r r'.
(r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> a -> r)
-> (forall r r'.
(r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> a -> r)
-> (forall u. (forall d. Data d => d -> u) -> a -> [u])
-> (forall u. Int -> (forall d. Data d => d -> u) -> a -> u)
-> (forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d) -> a -> m a)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> a -> m a)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> a -> m a)
-> Data a
forall u. Int -> (forall d. Data d => d -> u) -> PublicEvent -> u
forall u. (forall d. Data d => d -> u) -> PublicEvent -> [u]
forall r r'.
(r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> PublicEvent -> r
forall r r'.
(r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> PublicEvent -> r
forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d) -> PublicEvent -> m PublicEvent
forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> PublicEvent -> m PublicEvent
forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c PublicEvent
forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> PublicEvent -> c PublicEvent
forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c PublicEvent)
forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c PublicEvent)
$cPublicEvent :: Constr
$tPublicEvent :: DataType
gmapMo :: (forall d. Data d => d -> m d) -> PublicEvent -> m PublicEvent
$cgmapMo :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> PublicEvent -> m PublicEvent
gmapMp :: (forall d. Data d => d -> m d) -> PublicEvent -> m PublicEvent
$cgmapMp :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> PublicEvent -> m PublicEvent
gmapM :: (forall d. Data d => d -> m d) -> PublicEvent -> m PublicEvent
$cgmapM :: forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d) -> PublicEvent -> m PublicEvent
gmapQi :: Int -> (forall d. Data d => d -> u) -> PublicEvent -> u
$cgmapQi :: forall u. Int -> (forall d. Data d => d -> u) -> PublicEvent -> u
gmapQ :: (forall d. Data d => d -> u) -> PublicEvent -> [u]
$cgmapQ :: forall u. (forall d. Data d => d -> u) -> PublicEvent -> [u]
gmapQr :: (r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> PublicEvent -> r
$cgmapQr :: forall r r'.
(r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> PublicEvent -> r
gmapQl :: (r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> PublicEvent -> r
$cgmapQl :: forall r r'.
(r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> PublicEvent -> r
gmapT :: (forall b. Data b => b -> b) -> PublicEvent -> PublicEvent
$cgmapT :: (forall b. Data b => b -> b) -> PublicEvent -> PublicEvent
dataCast2 :: (forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c PublicEvent)
$cdataCast2 :: forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c PublicEvent)
dataCast1 :: (forall d. Data d => c (t d)) -> Maybe (c PublicEvent)
$cdataCast1 :: forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c PublicEvent)
dataTypeOf :: PublicEvent -> DataType
$cdataTypeOf :: PublicEvent -> DataType
toConstr :: PublicEvent -> Constr
$ctoConstr :: PublicEvent -> Constr
gunfold :: (forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c PublicEvent
$cgunfold :: forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c PublicEvent
gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> PublicEvent -> c PublicEvent
$cgfoldl :: forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> PublicEvent -> c PublicEvent
$cp1Data :: Typeable PublicEvent
Data, (forall x. PublicEvent -> Rep PublicEvent x)
-> (forall x. Rep PublicEvent x -> PublicEvent)
-> Generic PublicEvent
forall x. Rep PublicEvent x -> PublicEvent
forall x. PublicEvent -> Rep PublicEvent x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep PublicEvent x -> PublicEvent
$cfrom :: forall x. PublicEvent -> Rep PublicEvent x
Generic)
instance EventHasSender PublicEvent where senderOfEvent :: PublicEvent -> HookUser
senderOfEvent = PublicEvent -> HookUser
evPublicEventSender
instance EventHasRepo PublicEvent where repoForEvent :: PublicEvent -> HookRepository
repoForEvent = PublicEvent -> HookRepository
evPublicEventRepo
instance NFData PublicEvent where rnf :: PublicEvent -> ()
rnf = PublicEvent -> ()
forall a. (Generic a, GNFData (Rep a)) => a -> ()
genericRnf
data PullRequestEventAction
= PullRequestAssignedAction
| PullRequestUnassignedAction
| PullRequestReviewRequestedAction
| PullRequestReviewRequestRemovedAction
| PullRequestLabeledAction
| PullRequestUnlabeledAction
| PullRequestOpenedAction
| PullRequestEditedAction
| PullRequestClosedAction
| PullRequestReopenedAction
| PullRequestActionOther !Text
deriving (PullRequestEventAction -> PullRequestEventAction -> Bool
(PullRequestEventAction -> PullRequestEventAction -> Bool)
-> (PullRequestEventAction -> PullRequestEventAction -> Bool)
-> Eq PullRequestEventAction
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PullRequestEventAction -> PullRequestEventAction -> Bool
$c/= :: PullRequestEventAction -> PullRequestEventAction -> Bool
== :: PullRequestEventAction -> PullRequestEventAction -> Bool
$c== :: PullRequestEventAction -> PullRequestEventAction -> Bool
Eq, Eq PullRequestEventAction
Eq PullRequestEventAction
-> (PullRequestEventAction -> PullRequestEventAction -> Ordering)
-> (PullRequestEventAction -> PullRequestEventAction -> Bool)
-> (PullRequestEventAction -> PullRequestEventAction -> Bool)
-> (PullRequestEventAction -> PullRequestEventAction -> Bool)
-> (PullRequestEventAction -> PullRequestEventAction -> Bool)
-> (PullRequestEventAction
-> PullRequestEventAction -> PullRequestEventAction)
-> (PullRequestEventAction
-> PullRequestEventAction -> PullRequestEventAction)
-> Ord PullRequestEventAction
PullRequestEventAction -> PullRequestEventAction -> Bool
PullRequestEventAction -> PullRequestEventAction -> Ordering
PullRequestEventAction
-> PullRequestEventAction -> PullRequestEventAction
forall a.
Eq a
-> (a -> a -> Ordering)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> a)
-> (a -> a -> a)
-> Ord a
min :: PullRequestEventAction
-> PullRequestEventAction -> PullRequestEventAction
$cmin :: PullRequestEventAction
-> PullRequestEventAction -> PullRequestEventAction
max :: PullRequestEventAction
-> PullRequestEventAction -> PullRequestEventAction
$cmax :: PullRequestEventAction
-> PullRequestEventAction -> PullRequestEventAction
>= :: PullRequestEventAction -> PullRequestEventAction -> Bool
$c>= :: PullRequestEventAction -> PullRequestEventAction -> Bool
> :: PullRequestEventAction -> PullRequestEventAction -> Bool
$c> :: PullRequestEventAction -> PullRequestEventAction -> Bool
<= :: PullRequestEventAction -> PullRequestEventAction -> Bool
$c<= :: PullRequestEventAction -> PullRequestEventAction -> Bool
< :: PullRequestEventAction -> PullRequestEventAction -> Bool
$c< :: PullRequestEventAction -> PullRequestEventAction -> Bool
compare :: PullRequestEventAction -> PullRequestEventAction -> Ordering
$ccompare :: PullRequestEventAction -> PullRequestEventAction -> Ordering
$cp1Ord :: Eq PullRequestEventAction
Ord, Int -> PullRequestEventAction -> ShowS
[PullRequestEventAction] -> ShowS
PullRequestEventAction -> String
(Int -> PullRequestEventAction -> ShowS)
-> (PullRequestEventAction -> String)
-> ([PullRequestEventAction] -> ShowS)
-> Show PullRequestEventAction
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PullRequestEventAction] -> ShowS
$cshowList :: [PullRequestEventAction] -> ShowS
show :: PullRequestEventAction -> String
$cshow :: PullRequestEventAction -> String
showsPrec :: Int -> PullRequestEventAction -> ShowS
$cshowsPrec :: Int -> PullRequestEventAction -> ShowS
Show, (forall x. PullRequestEventAction -> Rep PullRequestEventAction x)
-> (forall x.
Rep PullRequestEventAction x -> PullRequestEventAction)
-> Generic PullRequestEventAction
forall x. Rep PullRequestEventAction x -> PullRequestEventAction
forall x. PullRequestEventAction -> Rep PullRequestEventAction x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep PullRequestEventAction x -> PullRequestEventAction
$cfrom :: forall x. PullRequestEventAction -> Rep PullRequestEventAction x
Generic, Typeable, Typeable PullRequestEventAction
DataType
Constr
Typeable PullRequestEventAction
-> (forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g)
-> PullRequestEventAction
-> c PullRequestEventAction)
-> (forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c PullRequestEventAction)
-> (PullRequestEventAction -> Constr)
-> (PullRequestEventAction -> DataType)
-> (forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c PullRequestEventAction))
-> (forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c PullRequestEventAction))
-> ((forall b. Data b => b -> b)
-> PullRequestEventAction -> PullRequestEventAction)
-> (forall r r'.
(r -> r' -> r)
-> r
-> (forall d. Data d => d -> r')
-> PullRequestEventAction
-> r)
-> (forall r r'.
(r' -> r -> r)
-> r
-> (forall d. Data d => d -> r')
-> PullRequestEventAction
-> r)
-> (forall u.
(forall d. Data d => d -> u) -> PullRequestEventAction -> [u])
-> (forall u.
Int -> (forall d. Data d => d -> u) -> PullRequestEventAction -> u)
-> (forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d)
-> PullRequestEventAction -> m PullRequestEventAction)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> PullRequestEventAction -> m PullRequestEventAction)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> PullRequestEventAction -> m PullRequestEventAction)
-> Data PullRequestEventAction
PullRequestEventAction -> DataType
PullRequestEventAction -> Constr
(forall b. Data b => b -> b)
-> PullRequestEventAction -> PullRequestEventAction
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g)
-> PullRequestEventAction
-> c PullRequestEventAction
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c PullRequestEventAction
forall a.
Typeable a
-> (forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> a -> c a)
-> (forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c a)
-> (a -> Constr)
-> (a -> DataType)
-> (forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c a))
-> (forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c a))
-> ((forall b. Data b => b -> b) -> a -> a)
-> (forall r r'.
(r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> a -> r)
-> (forall r r'.
(r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> a -> r)
-> (forall u. (forall d. Data d => d -> u) -> a -> [u])
-> (forall u. Int -> (forall d. Data d => d -> u) -> a -> u)
-> (forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d) -> a -> m a)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> a -> m a)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> a -> m a)
-> Data a
forall u.
Int -> (forall d. Data d => d -> u) -> PullRequestEventAction -> u
forall u.
(forall d. Data d => d -> u) -> PullRequestEventAction -> [u]
forall r r'.
(r -> r' -> r)
-> r
-> (forall d. Data d => d -> r')
-> PullRequestEventAction
-> r
forall r r'.
(r' -> r -> r)
-> r
-> (forall d. Data d => d -> r')
-> PullRequestEventAction
-> r
forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d)
-> PullRequestEventAction -> m PullRequestEventAction
forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> PullRequestEventAction -> m PullRequestEventAction
forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c PullRequestEventAction
forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g)
-> PullRequestEventAction
-> c PullRequestEventAction
forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c PullRequestEventAction)
forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c PullRequestEventAction)
$cPullRequestActionOther :: Constr
$cPullRequestReopenedAction :: Constr
$cPullRequestClosedAction :: Constr
$cPullRequestEditedAction :: Constr
$cPullRequestOpenedAction :: Constr
$cPullRequestUnlabeledAction :: Constr
$cPullRequestLabeledAction :: Constr
$cPullRequestReviewRequestRemovedAction :: Constr
$cPullRequestReviewRequestedAction :: Constr
$cPullRequestUnassignedAction :: Constr
$cPullRequestAssignedAction :: Constr
$tPullRequestEventAction :: DataType
gmapMo :: (forall d. Data d => d -> m d)
-> PullRequestEventAction -> m PullRequestEventAction
$cgmapMo :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> PullRequestEventAction -> m PullRequestEventAction
gmapMp :: (forall d. Data d => d -> m d)
-> PullRequestEventAction -> m PullRequestEventAction
$cgmapMp :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> PullRequestEventAction -> m PullRequestEventAction
gmapM :: (forall d. Data d => d -> m d)
-> PullRequestEventAction -> m PullRequestEventAction
$cgmapM :: forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d)
-> PullRequestEventAction -> m PullRequestEventAction
gmapQi :: Int -> (forall d. Data d => d -> u) -> PullRequestEventAction -> u
$cgmapQi :: forall u.
Int -> (forall d. Data d => d -> u) -> PullRequestEventAction -> u
gmapQ :: (forall d. Data d => d -> u) -> PullRequestEventAction -> [u]
$cgmapQ :: forall u.
(forall d. Data d => d -> u) -> PullRequestEventAction -> [u]
gmapQr :: (r' -> r -> r)
-> r
-> (forall d. Data d => d -> r')
-> PullRequestEventAction
-> r
$cgmapQr :: forall r r'.
(r' -> r -> r)
-> r
-> (forall d. Data d => d -> r')
-> PullRequestEventAction
-> r
gmapQl :: (r -> r' -> r)
-> r
-> (forall d. Data d => d -> r')
-> PullRequestEventAction
-> r
$cgmapQl :: forall r r'.
(r -> r' -> r)
-> r
-> (forall d. Data d => d -> r')
-> PullRequestEventAction
-> r
gmapT :: (forall b. Data b => b -> b)
-> PullRequestEventAction -> PullRequestEventAction
$cgmapT :: (forall b. Data b => b -> b)
-> PullRequestEventAction -> PullRequestEventAction
dataCast2 :: (forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c PullRequestEventAction)
$cdataCast2 :: forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c PullRequestEventAction)
dataCast1 :: (forall d. Data d => c (t d)) -> Maybe (c PullRequestEventAction)
$cdataCast1 :: forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c PullRequestEventAction)
dataTypeOf :: PullRequestEventAction -> DataType
$cdataTypeOf :: PullRequestEventAction -> DataType
toConstr :: PullRequestEventAction -> Constr
$ctoConstr :: PullRequestEventAction -> Constr
gunfold :: (forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c PullRequestEventAction
$cgunfold :: forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c PullRequestEventAction
gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g)
-> PullRequestEventAction
-> c PullRequestEventAction
$cgfoldl :: forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g)
-> PullRequestEventAction
-> c PullRequestEventAction
$cp1Data :: Typeable PullRequestEventAction
Data)
instance NFData PullRequestEventAction where rnf :: PullRequestEventAction -> ()
rnf = PullRequestEventAction -> ()
forall a. (Generic a, GNFData (Rep a)) => a -> ()
genericRnf
instance FromJSON PullRequestEventAction where
parseJSON :: Value -> Parser PullRequestEventAction
parseJSON = String
-> (Text -> Parser PullRequestEventAction)
-> Value
-> Parser PullRequestEventAction
forall a. String -> (Text -> Parser a) -> Value -> Parser a
withText String
"Pull request event action" ((Text -> Parser PullRequestEventAction)
-> Value -> Parser PullRequestEventAction)
-> (Text -> Parser PullRequestEventAction)
-> Value
-> Parser PullRequestEventAction
forall a b. (a -> b) -> a -> b
$ \Text
t ->
case Text
t of
Text
"assigned" -> PullRequestEventAction -> Parser PullRequestEventAction
forall (f :: * -> *) a. Applicative f => a -> f a
pure PullRequestEventAction
PullRequestAssignedAction
Text
"unassigned" -> PullRequestEventAction -> Parser PullRequestEventAction
forall (f :: * -> *) a. Applicative f => a -> f a
pure PullRequestEventAction
PullRequestUnassignedAction
Text
"review_requsted" -> PullRequestEventAction -> Parser PullRequestEventAction
forall (f :: * -> *) a. Applicative f => a -> f a
pure PullRequestEventAction
PullRequestReviewRequestedAction
Text
"review_request_removed" -> PullRequestEventAction -> Parser PullRequestEventAction
forall (f :: * -> *) a. Applicative f => a -> f a
pure PullRequestEventAction
PullRequestReviewRequestRemovedAction
Text
"labeled" -> PullRequestEventAction -> Parser PullRequestEventAction
forall (f :: * -> *) a. Applicative f => a -> f a
pure PullRequestEventAction
PullRequestLabeledAction
Text
"unlabeled" -> PullRequestEventAction -> Parser PullRequestEventAction
forall (f :: * -> *) a. Applicative f => a -> f a
pure PullRequestEventAction
PullRequestUnlabeledAction
Text
"opened" -> PullRequestEventAction -> Parser PullRequestEventAction
forall (f :: * -> *) a. Applicative f => a -> f a
pure PullRequestEventAction
PullRequestOpenedAction
Text
"edited" -> PullRequestEventAction -> Parser PullRequestEventAction
forall (f :: * -> *) a. Applicative f => a -> f a
pure PullRequestEventAction
PullRequestEditedAction
Text
"closed" -> PullRequestEventAction -> Parser PullRequestEventAction
forall (f :: * -> *) a. Applicative f => a -> f a
pure PullRequestEventAction
PullRequestClosedAction
Text
"reopened" -> PullRequestEventAction -> Parser PullRequestEventAction
forall (f :: * -> *) a. Applicative f => a -> f a
pure PullRequestEventAction
PullRequestReopenedAction
Text
_ -> PullRequestEventAction -> Parser PullRequestEventAction
forall (f :: * -> *) a. Applicative f => a -> f a
pure (Text -> PullRequestEventAction
PullRequestActionOther Text
t)
data PullRequestEvent = PullRequestEvent
{ PullRequestEvent -> PullRequestEventAction
evPullReqAction :: !PullRequestEventAction
, PullRequestEvent -> Int
evPullReqNumber :: !Int
, PullRequestEvent -> HookPullRequest
evPullReqPayload :: !HookPullRequest
, PullRequestEvent -> HookRepository
evPullReqRepo :: !HookRepository
, PullRequestEvent -> HookUser
evPullReqSender :: !HookUser
, PullRequestEvent -> Maybe Int
evPullReqInstallationId :: !(Maybe Int)
}
deriving (PullRequestEvent -> PullRequestEvent -> Bool
(PullRequestEvent -> PullRequestEvent -> Bool)
-> (PullRequestEvent -> PullRequestEvent -> Bool)
-> Eq PullRequestEvent
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PullRequestEvent -> PullRequestEvent -> Bool
$c/= :: PullRequestEvent -> PullRequestEvent -> Bool
== :: PullRequestEvent -> PullRequestEvent -> Bool
$c== :: PullRequestEvent -> PullRequestEvent -> Bool
Eq, Int -> PullRequestEvent -> ShowS
[PullRequestEvent] -> ShowS
PullRequestEvent -> String
(Int -> PullRequestEvent -> ShowS)
-> (PullRequestEvent -> String)
-> ([PullRequestEvent] -> ShowS)
-> Show PullRequestEvent
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PullRequestEvent] -> ShowS
$cshowList :: [PullRequestEvent] -> ShowS
show :: PullRequestEvent -> String
$cshow :: PullRequestEvent -> String
showsPrec :: Int -> PullRequestEvent -> ShowS
$cshowsPrec :: Int -> PullRequestEvent -> ShowS
Show, Typeable, Typeable PullRequestEvent
DataType
Constr
Typeable PullRequestEvent
-> (forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> PullRequestEvent -> c PullRequestEvent)
-> (forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c PullRequestEvent)
-> (PullRequestEvent -> Constr)
-> (PullRequestEvent -> DataType)
-> (forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c PullRequestEvent))
-> (forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c PullRequestEvent))
-> ((forall b. Data b => b -> b)
-> PullRequestEvent -> PullRequestEvent)
-> (forall r r'.
(r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> PullRequestEvent -> r)
-> (forall r r'.
(r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> PullRequestEvent -> r)
-> (forall u.
(forall d. Data d => d -> u) -> PullRequestEvent -> [u])
-> (forall u.
Int -> (forall d. Data d => d -> u) -> PullRequestEvent -> u)
-> (forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d)
-> PullRequestEvent -> m PullRequestEvent)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> PullRequestEvent -> m PullRequestEvent)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> PullRequestEvent -> m PullRequestEvent)
-> Data PullRequestEvent
PullRequestEvent -> DataType
PullRequestEvent -> Constr
(forall b. Data b => b -> b)
-> PullRequestEvent -> PullRequestEvent
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> PullRequestEvent -> c PullRequestEvent
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c PullRequestEvent
forall a.
Typeable a
-> (forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> a -> c a)
-> (forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c a)
-> (a -> Constr)
-> (a -> DataType)
-> (forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c a))
-> (forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c a))
-> ((forall b. Data b => b -> b) -> a -> a)
-> (forall r r'.
(r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> a -> r)
-> (forall r r'.
(r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> a -> r)
-> (forall u. (forall d. Data d => d -> u) -> a -> [u])
-> (forall u. Int -> (forall d. Data d => d -> u) -> a -> u)
-> (forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d) -> a -> m a)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> a -> m a)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> a -> m a)
-> Data a
forall u.
Int -> (forall d. Data d => d -> u) -> PullRequestEvent -> u
forall u. (forall d. Data d => d -> u) -> PullRequestEvent -> [u]
forall r r'.
(r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> PullRequestEvent -> r
forall r r'.
(r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> PullRequestEvent -> r
forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d)
-> PullRequestEvent -> m PullRequestEvent
forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> PullRequestEvent -> m PullRequestEvent
forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c PullRequestEvent
forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> PullRequestEvent -> c PullRequestEvent
forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c PullRequestEvent)
forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c PullRequestEvent)
$cPullRequestEvent :: Constr
$tPullRequestEvent :: DataType
gmapMo :: (forall d. Data d => d -> m d)
-> PullRequestEvent -> m PullRequestEvent
$cgmapMo :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> PullRequestEvent -> m PullRequestEvent
gmapMp :: (forall d. Data d => d -> m d)
-> PullRequestEvent -> m PullRequestEvent
$cgmapMp :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> PullRequestEvent -> m PullRequestEvent
gmapM :: (forall d. Data d => d -> m d)
-> PullRequestEvent -> m PullRequestEvent
$cgmapM :: forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d)
-> PullRequestEvent -> m PullRequestEvent
gmapQi :: Int -> (forall d. Data d => d -> u) -> PullRequestEvent -> u
$cgmapQi :: forall u.
Int -> (forall d. Data d => d -> u) -> PullRequestEvent -> u
gmapQ :: (forall d. Data d => d -> u) -> PullRequestEvent -> [u]
$cgmapQ :: forall u. (forall d. Data d => d -> u) -> PullRequestEvent -> [u]
gmapQr :: (r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> PullRequestEvent -> r
$cgmapQr :: forall r r'.
(r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> PullRequestEvent -> r
gmapQl :: (r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> PullRequestEvent -> r
$cgmapQl :: forall r r'.
(r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> PullRequestEvent -> r
gmapT :: (forall b. Data b => b -> b)
-> PullRequestEvent -> PullRequestEvent
$cgmapT :: (forall b. Data b => b -> b)
-> PullRequestEvent -> PullRequestEvent
dataCast2 :: (forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c PullRequestEvent)
$cdataCast2 :: forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c PullRequestEvent)
dataCast1 :: (forall d. Data d => c (t d)) -> Maybe (c PullRequestEvent)
$cdataCast1 :: forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c PullRequestEvent)
dataTypeOf :: PullRequestEvent -> DataType
$cdataTypeOf :: PullRequestEvent -> DataType
toConstr :: PullRequestEvent -> Constr
$ctoConstr :: PullRequestEvent -> Constr
gunfold :: (forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c PullRequestEvent
$cgunfold :: forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c PullRequestEvent
gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> PullRequestEvent -> c PullRequestEvent
$cgfoldl :: forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> PullRequestEvent -> c PullRequestEvent
$cp1Data :: Typeable PullRequestEvent
Data, (forall x. PullRequestEvent -> Rep PullRequestEvent x)
-> (forall x. Rep PullRequestEvent x -> PullRequestEvent)
-> Generic PullRequestEvent
forall x. Rep PullRequestEvent x -> PullRequestEvent
forall x. PullRequestEvent -> Rep PullRequestEvent x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep PullRequestEvent x -> PullRequestEvent
$cfrom :: forall x. PullRequestEvent -> Rep PullRequestEvent x
Generic)
instance EventHasSender PullRequestEvent where senderOfEvent :: PullRequestEvent -> HookUser
senderOfEvent = PullRequestEvent -> HookUser
evPullReqSender
instance EventHasRepo PullRequestEvent where repoForEvent :: PullRequestEvent -> HookRepository
repoForEvent = PullRequestEvent -> HookRepository
evPullReqRepo
instance NFData PullRequestEvent where rnf :: PullRequestEvent -> ()
rnf = PullRequestEvent -> ()
forall a. (Generic a, GNFData (Rep a)) => a -> ()
genericRnf
data PullRequestReviewEventAction
= PullRequestReviewSubmittedAction
| PullRequestReviewEditedAction
| PullRequestReviewDismissedAction
| PullRequestReviewActionOther !Text
deriving (PullRequestReviewEventAction
-> PullRequestReviewEventAction -> Bool
(PullRequestReviewEventAction
-> PullRequestReviewEventAction -> Bool)
-> (PullRequestReviewEventAction
-> PullRequestReviewEventAction -> Bool)
-> Eq PullRequestReviewEventAction
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PullRequestReviewEventAction
-> PullRequestReviewEventAction -> Bool
$c/= :: PullRequestReviewEventAction
-> PullRequestReviewEventAction -> Bool
== :: PullRequestReviewEventAction
-> PullRequestReviewEventAction -> Bool
$c== :: PullRequestReviewEventAction
-> PullRequestReviewEventAction -> Bool
Eq, Eq PullRequestReviewEventAction
Eq PullRequestReviewEventAction
-> (PullRequestReviewEventAction
-> PullRequestReviewEventAction -> Ordering)
-> (PullRequestReviewEventAction
-> PullRequestReviewEventAction -> Bool)
-> (PullRequestReviewEventAction
-> PullRequestReviewEventAction -> Bool)
-> (PullRequestReviewEventAction
-> PullRequestReviewEventAction -> Bool)
-> (PullRequestReviewEventAction
-> PullRequestReviewEventAction -> Bool)
-> (PullRequestReviewEventAction
-> PullRequestReviewEventAction -> PullRequestReviewEventAction)
-> (PullRequestReviewEventAction
-> PullRequestReviewEventAction -> PullRequestReviewEventAction)
-> Ord PullRequestReviewEventAction
PullRequestReviewEventAction
-> PullRequestReviewEventAction -> Bool
PullRequestReviewEventAction
-> PullRequestReviewEventAction -> Ordering
PullRequestReviewEventAction
-> PullRequestReviewEventAction -> PullRequestReviewEventAction
forall a.
Eq a
-> (a -> a -> Ordering)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> a)
-> (a -> a -> a)
-> Ord a
min :: PullRequestReviewEventAction
-> PullRequestReviewEventAction -> PullRequestReviewEventAction
$cmin :: PullRequestReviewEventAction
-> PullRequestReviewEventAction -> PullRequestReviewEventAction
max :: PullRequestReviewEventAction
-> PullRequestReviewEventAction -> PullRequestReviewEventAction
$cmax :: PullRequestReviewEventAction
-> PullRequestReviewEventAction -> PullRequestReviewEventAction
>= :: PullRequestReviewEventAction
-> PullRequestReviewEventAction -> Bool
$c>= :: PullRequestReviewEventAction
-> PullRequestReviewEventAction -> Bool
> :: PullRequestReviewEventAction
-> PullRequestReviewEventAction -> Bool
$c> :: PullRequestReviewEventAction
-> PullRequestReviewEventAction -> Bool
<= :: PullRequestReviewEventAction
-> PullRequestReviewEventAction -> Bool
$c<= :: PullRequestReviewEventAction
-> PullRequestReviewEventAction -> Bool
< :: PullRequestReviewEventAction
-> PullRequestReviewEventAction -> Bool
$c< :: PullRequestReviewEventAction
-> PullRequestReviewEventAction -> Bool
compare :: PullRequestReviewEventAction
-> PullRequestReviewEventAction -> Ordering
$ccompare :: PullRequestReviewEventAction
-> PullRequestReviewEventAction -> Ordering
$cp1Ord :: Eq PullRequestReviewEventAction
Ord, Int -> PullRequestReviewEventAction -> ShowS
[PullRequestReviewEventAction] -> ShowS
PullRequestReviewEventAction -> String
(Int -> PullRequestReviewEventAction -> ShowS)
-> (PullRequestReviewEventAction -> String)
-> ([PullRequestReviewEventAction] -> ShowS)
-> Show PullRequestReviewEventAction
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PullRequestReviewEventAction] -> ShowS
$cshowList :: [PullRequestReviewEventAction] -> ShowS
show :: PullRequestReviewEventAction -> String
$cshow :: PullRequestReviewEventAction -> String
showsPrec :: Int -> PullRequestReviewEventAction -> ShowS
$cshowsPrec :: Int -> PullRequestReviewEventAction -> ShowS
Show, (forall x.
PullRequestReviewEventAction -> Rep PullRequestReviewEventAction x)
-> (forall x.
Rep PullRequestReviewEventAction x -> PullRequestReviewEventAction)
-> Generic PullRequestReviewEventAction
forall x.
Rep PullRequestReviewEventAction x -> PullRequestReviewEventAction
forall x.
PullRequestReviewEventAction -> Rep PullRequestReviewEventAction x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x.
Rep PullRequestReviewEventAction x -> PullRequestReviewEventAction
$cfrom :: forall x.
PullRequestReviewEventAction -> Rep PullRequestReviewEventAction x
Generic, Typeable, Typeable PullRequestReviewEventAction
DataType
Constr
Typeable PullRequestReviewEventAction
-> (forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g)
-> PullRequestReviewEventAction
-> c PullRequestReviewEventAction)
-> (forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r)
-> Constr
-> c PullRequestReviewEventAction)
-> (PullRequestReviewEventAction -> Constr)
-> (PullRequestReviewEventAction -> DataType)
-> (forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d))
-> Maybe (c PullRequestReviewEventAction))
-> (forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c PullRequestReviewEventAction))
-> ((forall b. Data b => b -> b)
-> PullRequestReviewEventAction -> PullRequestReviewEventAction)
-> (forall r r'.
(r -> r' -> r)
-> r
-> (forall d. Data d => d -> r')
-> PullRequestReviewEventAction
-> r)
-> (forall r r'.
(r' -> r -> r)
-> r
-> (forall d. Data d => d -> r')
-> PullRequestReviewEventAction
-> r)
-> (forall u.
(forall d. Data d => d -> u)
-> PullRequestReviewEventAction -> [u])
-> (forall u.
Int
-> (forall d. Data d => d -> u)
-> PullRequestReviewEventAction
-> u)
-> (forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d)
-> PullRequestReviewEventAction -> m PullRequestReviewEventAction)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> PullRequestReviewEventAction -> m PullRequestReviewEventAction)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> PullRequestReviewEventAction -> m PullRequestReviewEventAction)
-> Data PullRequestReviewEventAction
PullRequestReviewEventAction -> DataType
PullRequestReviewEventAction -> Constr
(forall b. Data b => b -> b)
-> PullRequestReviewEventAction -> PullRequestReviewEventAction
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g)
-> PullRequestReviewEventAction
-> c PullRequestReviewEventAction
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c PullRequestReviewEventAction
forall a.
Typeable a
-> (forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> a -> c a)
-> (forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c a)
-> (a -> Constr)
-> (a -> DataType)
-> (forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c a))
-> (forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c a))
-> ((forall b. Data b => b -> b) -> a -> a)
-> (forall r r'.
(r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> a -> r)
-> (forall r r'.
(r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> a -> r)
-> (forall u. (forall d. Data d => d -> u) -> a -> [u])
-> (forall u. Int -> (forall d. Data d => d -> u) -> a -> u)
-> (forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d) -> a -> m a)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> a -> m a)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> a -> m a)
-> Data a
forall u.
Int
-> (forall d. Data d => d -> u)
-> PullRequestReviewEventAction
-> u
forall u.
(forall d. Data d => d -> u) -> PullRequestReviewEventAction -> [u]
forall r r'.
(r -> r' -> r)
-> r
-> (forall d. Data d => d -> r')
-> PullRequestReviewEventAction
-> r
forall r r'.
(r' -> r -> r)
-> r
-> (forall d. Data d => d -> r')
-> PullRequestReviewEventAction
-> r
forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d)
-> PullRequestReviewEventAction -> m PullRequestReviewEventAction
forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> PullRequestReviewEventAction -> m PullRequestReviewEventAction
forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c PullRequestReviewEventAction
forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g)
-> PullRequestReviewEventAction
-> c PullRequestReviewEventAction
forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d))
-> Maybe (c PullRequestReviewEventAction)
forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c PullRequestReviewEventAction)
$cPullRequestReviewActionOther :: Constr
$cPullRequestReviewDismissedAction :: Constr
$cPullRequestReviewEditedAction :: Constr
$cPullRequestReviewSubmittedAction :: Constr
$tPullRequestReviewEventAction :: DataType
gmapMo :: (forall d. Data d => d -> m d)
-> PullRequestReviewEventAction -> m PullRequestReviewEventAction
$cgmapMo :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> PullRequestReviewEventAction -> m PullRequestReviewEventAction
gmapMp :: (forall d. Data d => d -> m d)
-> PullRequestReviewEventAction -> m PullRequestReviewEventAction
$cgmapMp :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> PullRequestReviewEventAction -> m PullRequestReviewEventAction
gmapM :: (forall d. Data d => d -> m d)
-> PullRequestReviewEventAction -> m PullRequestReviewEventAction
$cgmapM :: forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d)
-> PullRequestReviewEventAction -> m PullRequestReviewEventAction
gmapQi :: Int
-> (forall d. Data d => d -> u)
-> PullRequestReviewEventAction
-> u
$cgmapQi :: forall u.
Int
-> (forall d. Data d => d -> u)
-> PullRequestReviewEventAction
-> u
gmapQ :: (forall d. Data d => d -> u) -> PullRequestReviewEventAction -> [u]
$cgmapQ :: forall u.
(forall d. Data d => d -> u) -> PullRequestReviewEventAction -> [u]
gmapQr :: (r' -> r -> r)
-> r
-> (forall d. Data d => d -> r')
-> PullRequestReviewEventAction
-> r
$cgmapQr :: forall r r'.
(r' -> r -> r)
-> r
-> (forall d. Data d => d -> r')
-> PullRequestReviewEventAction
-> r
gmapQl :: (r -> r' -> r)
-> r
-> (forall d. Data d => d -> r')
-> PullRequestReviewEventAction
-> r
$cgmapQl :: forall r r'.
(r -> r' -> r)
-> r
-> (forall d. Data d => d -> r')
-> PullRequestReviewEventAction
-> r
gmapT :: (forall b. Data b => b -> b)
-> PullRequestReviewEventAction -> PullRequestReviewEventAction
$cgmapT :: (forall b. Data b => b -> b)
-> PullRequestReviewEventAction -> PullRequestReviewEventAction
dataCast2 :: (forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c PullRequestReviewEventAction)
$cdataCast2 :: forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c PullRequestReviewEventAction)
dataCast1 :: (forall d. Data d => c (t d))
-> Maybe (c PullRequestReviewEventAction)
$cdataCast1 :: forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d))
-> Maybe (c PullRequestReviewEventAction)
dataTypeOf :: PullRequestReviewEventAction -> DataType
$cdataTypeOf :: PullRequestReviewEventAction -> DataType
toConstr :: PullRequestReviewEventAction -> Constr
$ctoConstr :: PullRequestReviewEventAction -> Constr
gunfold :: (forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c PullRequestReviewEventAction
$cgunfold :: forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c PullRequestReviewEventAction
gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g)
-> PullRequestReviewEventAction
-> c PullRequestReviewEventAction
$cgfoldl :: forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g)
-> PullRequestReviewEventAction
-> c PullRequestReviewEventAction
$cp1Data :: Typeable PullRequestReviewEventAction
Data)
instance NFData PullRequestReviewEventAction where rnf :: PullRequestReviewEventAction -> ()
rnf = PullRequestReviewEventAction -> ()
forall a. (Generic a, GNFData (Rep a)) => a -> ()
genericRnf
instance FromJSON PullRequestReviewEventAction where
parseJSON :: Value -> Parser PullRequestReviewEventAction
parseJSON = String
-> (Text -> Parser PullRequestReviewEventAction)
-> Value
-> Parser PullRequestReviewEventAction
forall a. String -> (Text -> Parser a) -> Value -> Parser a
withText String
"Pull request review event action" ((Text -> Parser PullRequestReviewEventAction)
-> Value -> Parser PullRequestReviewEventAction)
-> (Text -> Parser PullRequestReviewEventAction)
-> Value
-> Parser PullRequestReviewEventAction
forall a b. (a -> b) -> a -> b
$ \Text
t ->
case Text
t of
Text
"submitted" -> PullRequestReviewEventAction -> Parser PullRequestReviewEventAction
forall (f :: * -> *) a. Applicative f => a -> f a
pure PullRequestReviewEventAction
PullRequestReviewSubmittedAction
Text
"edited" -> PullRequestReviewEventAction -> Parser PullRequestReviewEventAction
forall (f :: * -> *) a. Applicative f => a -> f a
pure PullRequestReviewEventAction
PullRequestReviewEditedAction
Text
"dismissed" -> PullRequestReviewEventAction -> Parser PullRequestReviewEventAction
forall (f :: * -> *) a. Applicative f => a -> f a
pure PullRequestReviewEventAction
PullRequestReviewDismissedAction
Text
_ -> PullRequestReviewEventAction -> Parser PullRequestReviewEventAction
forall (f :: * -> *) a. Applicative f => a -> f a
pure (Text -> PullRequestReviewEventAction
PullRequestReviewActionOther Text
t)
data PullRequestReviewEvent = PullRequestReviewEvent
{ PullRequestReviewEvent -> PullRequestReviewEventAction
evPullReqReviewAction :: !PullRequestReviewEventAction
, PullRequestReviewEvent -> HookPullRequestReview
evPullReqReviewPayload :: !HookPullRequestReview
, PullRequestReviewEvent -> HookPullRequest
evPullReqReviewTarget :: !HookPullRequest
, PullRequestReviewEvent -> HookRepository
evPullReqReviewRepo :: !HookRepository
, PullRequestReviewEvent -> HookUser
evPullReqReviewSender :: !HookUser
}
deriving (PullRequestReviewEvent -> PullRequestReviewEvent -> Bool
(PullRequestReviewEvent -> PullRequestReviewEvent -> Bool)
-> (PullRequestReviewEvent -> PullRequestReviewEvent -> Bool)
-> Eq PullRequestReviewEvent
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PullRequestReviewEvent -> PullRequestReviewEvent -> Bool
$c/= :: PullRequestReviewEvent -> PullRequestReviewEvent -> Bool
== :: PullRequestReviewEvent -> PullRequestReviewEvent -> Bool
$c== :: PullRequestReviewEvent -> PullRequestReviewEvent -> Bool
Eq, Int -> PullRequestReviewEvent -> ShowS
[PullRequestReviewEvent] -> ShowS
PullRequestReviewEvent -> String
(Int -> PullRequestReviewEvent -> ShowS)
-> (PullRequestReviewEvent -> String)
-> ([PullRequestReviewEvent] -> ShowS)
-> Show PullRequestReviewEvent
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PullRequestReviewEvent] -> ShowS
$cshowList :: [PullRequestReviewEvent] -> ShowS
show :: PullRequestReviewEvent -> String
$cshow :: PullRequestReviewEvent -> String
showsPrec :: Int -> PullRequestReviewEvent -> ShowS
$cshowsPrec :: Int -> PullRequestReviewEvent -> ShowS
Show, Typeable, Typeable PullRequestReviewEvent
DataType
Constr
Typeable PullRequestReviewEvent
-> (forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g)
-> PullRequestReviewEvent
-> c PullRequestReviewEvent)
-> (forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c PullRequestReviewEvent)
-> (PullRequestReviewEvent -> Constr)
-> (PullRequestReviewEvent -> DataType)
-> (forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c PullRequestReviewEvent))
-> (forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c PullRequestReviewEvent))
-> ((forall b. Data b => b -> b)
-> PullRequestReviewEvent -> PullRequestReviewEvent)
-> (forall r r'.
(r -> r' -> r)
-> r
-> (forall d. Data d => d -> r')
-> PullRequestReviewEvent
-> r)
-> (forall r r'.
(r' -> r -> r)
-> r
-> (forall d. Data d => d -> r')
-> PullRequestReviewEvent
-> r)
-> (forall u.
(forall d. Data d => d -> u) -> PullRequestReviewEvent -> [u])
-> (forall u.
Int -> (forall d. Data d => d -> u) -> PullRequestReviewEvent -> u)
-> (forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d)
-> PullRequestReviewEvent -> m PullRequestReviewEvent)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> PullRequestReviewEvent -> m PullRequestReviewEvent)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> PullRequestReviewEvent -> m PullRequestReviewEvent)
-> Data PullRequestReviewEvent
PullRequestReviewEvent -> DataType
PullRequestReviewEvent -> Constr
(forall b. Data b => b -> b)
-> PullRequestReviewEvent -> PullRequestReviewEvent
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g)
-> PullRequestReviewEvent
-> c PullRequestReviewEvent
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c PullRequestReviewEvent
forall a.
Typeable a
-> (forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> a -> c a)
-> (forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c a)
-> (a -> Constr)
-> (a -> DataType)
-> (forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c a))
-> (forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c a))
-> ((forall b. Data b => b -> b) -> a -> a)
-> (forall r r'.
(r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> a -> r)
-> (forall r r'.
(r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> a -> r)
-> (forall u. (forall d. Data d => d -> u) -> a -> [u])
-> (forall u. Int -> (forall d. Data d => d -> u) -> a -> u)
-> (forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d) -> a -> m a)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> a -> m a)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> a -> m a)
-> Data a
forall u.
Int -> (forall d. Data d => d -> u) -> PullRequestReviewEvent -> u
forall u.
(forall d. Data d => d -> u) -> PullRequestReviewEvent -> [u]
forall r r'.
(r -> r' -> r)
-> r
-> (forall d. Data d => d -> r')
-> PullRequestReviewEvent
-> r
forall r r'.
(r' -> r -> r)
-> r
-> (forall d. Data d => d -> r')
-> PullRequestReviewEvent
-> r
forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d)
-> PullRequestReviewEvent -> m PullRequestReviewEvent
forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> PullRequestReviewEvent -> m PullRequestReviewEvent
forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c PullRequestReviewEvent
forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g)
-> PullRequestReviewEvent
-> c PullRequestReviewEvent
forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c PullRequestReviewEvent)
forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c PullRequestReviewEvent)
$cPullRequestReviewEvent :: Constr
$tPullRequestReviewEvent :: DataType
gmapMo :: (forall d. Data d => d -> m d)
-> PullRequestReviewEvent -> m PullRequestReviewEvent
$cgmapMo :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> PullRequestReviewEvent -> m PullRequestReviewEvent
gmapMp :: (forall d. Data d => d -> m d)
-> PullRequestReviewEvent -> m PullRequestReviewEvent
$cgmapMp :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> PullRequestReviewEvent -> m PullRequestReviewEvent
gmapM :: (forall d. Data d => d -> m d)
-> PullRequestReviewEvent -> m PullRequestReviewEvent
$cgmapM :: forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d)
-> PullRequestReviewEvent -> m PullRequestReviewEvent
gmapQi :: Int -> (forall d. Data d => d -> u) -> PullRequestReviewEvent -> u
$cgmapQi :: forall u.
Int -> (forall d. Data d => d -> u) -> PullRequestReviewEvent -> u
gmapQ :: (forall d. Data d => d -> u) -> PullRequestReviewEvent -> [u]
$cgmapQ :: forall u.
(forall d. Data d => d -> u) -> PullRequestReviewEvent -> [u]
gmapQr :: (r' -> r -> r)
-> r
-> (forall d. Data d => d -> r')
-> PullRequestReviewEvent
-> r
$cgmapQr :: forall r r'.
(r' -> r -> r)
-> r
-> (forall d. Data d => d -> r')
-> PullRequestReviewEvent
-> r
gmapQl :: (r -> r' -> r)
-> r
-> (forall d. Data d => d -> r')
-> PullRequestReviewEvent
-> r
$cgmapQl :: forall r r'.
(r -> r' -> r)
-> r
-> (forall d. Data d => d -> r')
-> PullRequestReviewEvent
-> r
gmapT :: (forall b. Data b => b -> b)
-> PullRequestReviewEvent -> PullRequestReviewEvent
$cgmapT :: (forall b. Data b => b -> b)
-> PullRequestReviewEvent -> PullRequestReviewEvent
dataCast2 :: (forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c PullRequestReviewEvent)
$cdataCast2 :: forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c PullRequestReviewEvent)
dataCast1 :: (forall d. Data d => c (t d)) -> Maybe (c PullRequestReviewEvent)
$cdataCast1 :: forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c PullRequestReviewEvent)
dataTypeOf :: PullRequestReviewEvent -> DataType
$cdataTypeOf :: PullRequestReviewEvent -> DataType
toConstr :: PullRequestReviewEvent -> Constr
$ctoConstr :: PullRequestReviewEvent -> Constr
gunfold :: (forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c PullRequestReviewEvent
$cgunfold :: forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c PullRequestReviewEvent
gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g)
-> PullRequestReviewEvent
-> c PullRequestReviewEvent
$cgfoldl :: forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g)
-> PullRequestReviewEvent
-> c PullRequestReviewEvent
$cp1Data :: Typeable PullRequestReviewEvent
Data, (forall x. PullRequestReviewEvent -> Rep PullRequestReviewEvent x)
-> (forall x.
Rep PullRequestReviewEvent x -> PullRequestReviewEvent)
-> Generic PullRequestReviewEvent
forall x. Rep PullRequestReviewEvent x -> PullRequestReviewEvent
forall x. PullRequestReviewEvent -> Rep PullRequestReviewEvent x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep PullRequestReviewEvent x -> PullRequestReviewEvent
$cfrom :: forall x. PullRequestReviewEvent -> Rep PullRequestReviewEvent x
Generic)
instance EventHasSender PullRequestReviewEvent where senderOfEvent :: PullRequestReviewEvent -> HookUser
senderOfEvent = PullRequestReviewEvent -> HookUser
evPullReqReviewSender
instance EventHasRepo PullRequestReviewEvent where repoForEvent :: PullRequestReviewEvent -> HookRepository
repoForEvent = PullRequestReviewEvent -> HookRepository
evPullReqReviewRepo
instance NFData PullRequestReviewEvent where rnf :: PullRequestReviewEvent -> ()
rnf = PullRequestReviewEvent -> ()
forall a. (Generic a, GNFData (Rep a)) => a -> ()
genericRnf
data
=
|
|
| !Text
deriving (PullRequestReviewCommentEventAction
-> PullRequestReviewCommentEventAction -> Bool
(PullRequestReviewCommentEventAction
-> PullRequestReviewCommentEventAction -> Bool)
-> (PullRequestReviewCommentEventAction
-> PullRequestReviewCommentEventAction -> Bool)
-> Eq PullRequestReviewCommentEventAction
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PullRequestReviewCommentEventAction
-> PullRequestReviewCommentEventAction -> Bool
$c/= :: PullRequestReviewCommentEventAction
-> PullRequestReviewCommentEventAction -> Bool
== :: PullRequestReviewCommentEventAction
-> PullRequestReviewCommentEventAction -> Bool
$c== :: PullRequestReviewCommentEventAction
-> PullRequestReviewCommentEventAction -> Bool
Eq, Eq PullRequestReviewCommentEventAction
Eq PullRequestReviewCommentEventAction
-> (PullRequestReviewCommentEventAction
-> PullRequestReviewCommentEventAction -> Ordering)
-> (PullRequestReviewCommentEventAction
-> PullRequestReviewCommentEventAction -> Bool)
-> (PullRequestReviewCommentEventAction
-> PullRequestReviewCommentEventAction -> Bool)
-> (PullRequestReviewCommentEventAction
-> PullRequestReviewCommentEventAction -> Bool)
-> (PullRequestReviewCommentEventAction
-> PullRequestReviewCommentEventAction -> Bool)
-> (PullRequestReviewCommentEventAction
-> PullRequestReviewCommentEventAction
-> PullRequestReviewCommentEventAction)
-> (PullRequestReviewCommentEventAction
-> PullRequestReviewCommentEventAction
-> PullRequestReviewCommentEventAction)
-> Ord PullRequestReviewCommentEventAction
PullRequestReviewCommentEventAction
-> PullRequestReviewCommentEventAction -> Bool
PullRequestReviewCommentEventAction
-> PullRequestReviewCommentEventAction -> Ordering
PullRequestReviewCommentEventAction
-> PullRequestReviewCommentEventAction
-> PullRequestReviewCommentEventAction
forall a.
Eq a
-> (a -> a -> Ordering)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> a)
-> (a -> a -> a)
-> Ord a
min :: PullRequestReviewCommentEventAction
-> PullRequestReviewCommentEventAction
-> PullRequestReviewCommentEventAction
$cmin :: PullRequestReviewCommentEventAction
-> PullRequestReviewCommentEventAction
-> PullRequestReviewCommentEventAction
max :: PullRequestReviewCommentEventAction
-> PullRequestReviewCommentEventAction
-> PullRequestReviewCommentEventAction
$cmax :: PullRequestReviewCommentEventAction
-> PullRequestReviewCommentEventAction
-> PullRequestReviewCommentEventAction
>= :: PullRequestReviewCommentEventAction
-> PullRequestReviewCommentEventAction -> Bool
$c>= :: PullRequestReviewCommentEventAction
-> PullRequestReviewCommentEventAction -> Bool
> :: PullRequestReviewCommentEventAction
-> PullRequestReviewCommentEventAction -> Bool
$c> :: PullRequestReviewCommentEventAction
-> PullRequestReviewCommentEventAction -> Bool
<= :: PullRequestReviewCommentEventAction
-> PullRequestReviewCommentEventAction -> Bool
$c<= :: PullRequestReviewCommentEventAction
-> PullRequestReviewCommentEventAction -> Bool
< :: PullRequestReviewCommentEventAction
-> PullRequestReviewCommentEventAction -> Bool
$c< :: PullRequestReviewCommentEventAction
-> PullRequestReviewCommentEventAction -> Bool
compare :: PullRequestReviewCommentEventAction
-> PullRequestReviewCommentEventAction -> Ordering
$ccompare :: PullRequestReviewCommentEventAction
-> PullRequestReviewCommentEventAction -> Ordering
$cp1Ord :: Eq PullRequestReviewCommentEventAction
Ord, Int -> PullRequestReviewCommentEventAction -> ShowS
[PullRequestReviewCommentEventAction] -> ShowS
PullRequestReviewCommentEventAction -> String
(Int -> PullRequestReviewCommentEventAction -> ShowS)
-> (PullRequestReviewCommentEventAction -> String)
-> ([PullRequestReviewCommentEventAction] -> ShowS)
-> Show PullRequestReviewCommentEventAction
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PullRequestReviewCommentEventAction] -> ShowS
$cshowList :: [PullRequestReviewCommentEventAction] -> ShowS
show :: PullRequestReviewCommentEventAction -> String
$cshow :: PullRequestReviewCommentEventAction -> String
showsPrec :: Int -> PullRequestReviewCommentEventAction -> ShowS
$cshowsPrec :: Int -> PullRequestReviewCommentEventAction -> ShowS
Show, (forall x.
PullRequestReviewCommentEventAction
-> Rep PullRequestReviewCommentEventAction x)
-> (forall x.
Rep PullRequestReviewCommentEventAction x
-> PullRequestReviewCommentEventAction)
-> Generic PullRequestReviewCommentEventAction
forall x.
Rep PullRequestReviewCommentEventAction x
-> PullRequestReviewCommentEventAction
forall x.
PullRequestReviewCommentEventAction
-> Rep PullRequestReviewCommentEventAction x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x.
Rep PullRequestReviewCommentEventAction x
-> PullRequestReviewCommentEventAction
$cfrom :: forall x.
PullRequestReviewCommentEventAction
-> Rep PullRequestReviewCommentEventAction x
Generic, Typeable, )
instance NFData PullRequestReviewCommentEventAction where rnf :: PullRequestReviewCommentEventAction -> ()
rnf = PullRequestReviewCommentEventAction -> ()
forall a. (Generic a, GNFData (Rep a)) => a -> ()
genericRnf
instance FromJSON PullRequestReviewCommentEventAction where
parseJSON :: Value -> Parser PullRequestReviewCommentEventAction
parseJSON = String
-> (Text -> Parser PullRequestReviewCommentEventAction)
-> Value
-> Parser PullRequestReviewCommentEventAction
forall a. String -> (Text -> Parser a) -> Value -> Parser a
withText String
"Pull request review comment event action" ((Text -> Parser PullRequestReviewCommentEventAction)
-> Value -> Parser PullRequestReviewCommentEventAction)
-> (Text -> Parser PullRequestReviewCommentEventAction)
-> Value
-> Parser PullRequestReviewCommentEventAction
forall a b. (a -> b) -> a -> b
$ \Text
t ->
case Text
t of
Text
"created" -> PullRequestReviewCommentEventAction
-> Parser PullRequestReviewCommentEventAction
forall (f :: * -> *) a. Applicative f => a -> f a
pure PullRequestReviewCommentEventAction
PullRequestReviewCommentCreatedAction
Text
"edited" -> PullRequestReviewCommentEventAction
-> Parser PullRequestReviewCommentEventAction
forall (f :: * -> *) a. Applicative f => a -> f a
pure PullRequestReviewCommentEventAction
PullRequestReviewCommentEditedAction
Text
"deleted" -> PullRequestReviewCommentEventAction
-> Parser PullRequestReviewCommentEventAction
forall (f :: * -> *) a. Applicative f => a -> f a
pure PullRequestReviewCommentEventAction
PullRequestReviewCommentDeletedAction
Text
_ -> PullRequestReviewCommentEventAction
-> Parser PullRequestReviewCommentEventAction
forall (f :: * -> *) a. Applicative f => a -> f a
pure (Text -> PullRequestReviewCommentEventAction
PullRequestReviewCommentActionOther Text
t)
data =
{ PullRequestReviewCommentEvent
-> PullRequestReviewCommentEventAction
evPullReqRevComAction :: !PullRequestReviewCommentEventAction
, :: !HookPullRequestReviewComment
, PullRequestReviewCommentEvent -> HookPullRequest
evPullReqRevTarget :: !HookPullRequest
, PullRequestReviewCommentEvent -> HookRepository
evPullReqRevRepo :: !HookRepository
, PullRequestReviewCommentEvent -> HookUser
evPullReqRevSender :: !HookUser
}
deriving (PullRequestReviewCommentEvent
-> PullRequestReviewCommentEvent -> Bool
(PullRequestReviewCommentEvent
-> PullRequestReviewCommentEvent -> Bool)
-> (PullRequestReviewCommentEvent
-> PullRequestReviewCommentEvent -> Bool)
-> Eq PullRequestReviewCommentEvent
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PullRequestReviewCommentEvent
-> PullRequestReviewCommentEvent -> Bool
$c/= :: PullRequestReviewCommentEvent
-> PullRequestReviewCommentEvent -> Bool
== :: PullRequestReviewCommentEvent
-> PullRequestReviewCommentEvent -> Bool
$c== :: PullRequestReviewCommentEvent
-> PullRequestReviewCommentEvent -> Bool
Eq, Int -> PullRequestReviewCommentEvent -> ShowS
[PullRequestReviewCommentEvent] -> ShowS
PullRequestReviewCommentEvent -> String
(Int -> PullRequestReviewCommentEvent -> ShowS)
-> (PullRequestReviewCommentEvent -> String)
-> ([PullRequestReviewCommentEvent] -> ShowS)
-> Show PullRequestReviewCommentEvent
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PullRequestReviewCommentEvent] -> ShowS
$cshowList :: [PullRequestReviewCommentEvent] -> ShowS
show :: PullRequestReviewCommentEvent -> String
$cshow :: PullRequestReviewCommentEvent -> String
showsPrec :: Int -> PullRequestReviewCommentEvent -> ShowS
$cshowsPrec :: Int -> PullRequestReviewCommentEvent -> ShowS
Show, Typeable, , (forall x.
PullRequestReviewCommentEvent
-> Rep PullRequestReviewCommentEvent x)
-> (forall x.
Rep PullRequestReviewCommentEvent x
-> PullRequestReviewCommentEvent)
-> Generic PullRequestReviewCommentEvent
forall x.
Rep PullRequestReviewCommentEvent x
-> PullRequestReviewCommentEvent
forall x.
PullRequestReviewCommentEvent
-> Rep PullRequestReviewCommentEvent x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x.
Rep PullRequestReviewCommentEvent x
-> PullRequestReviewCommentEvent
$cfrom :: forall x.
PullRequestReviewCommentEvent
-> Rep PullRequestReviewCommentEvent x
Generic)
instance EventHasSender PullRequestReviewCommentEvent where senderOfEvent :: PullRequestReviewCommentEvent -> HookUser
senderOfEvent = PullRequestReviewCommentEvent -> HookUser
evPullReqRevSender
instance EventHasRepo PullRequestReviewCommentEvent where repoForEvent :: PullRequestReviewCommentEvent -> HookRepository
repoForEvent = PullRequestReviewCommentEvent -> HookRepository
evPullReqRevRepo
instance NFData PullRequestReviewCommentEvent where rnf :: PullRequestReviewCommentEvent -> ()
rnf = PullRequestReviewCommentEvent -> ()
forall a. (Generic a, GNFData (Rep a)) => a -> ()
genericRnf
data PushEvent = PushEvent
{ PushEvent -> Text
evPushRef :: !Text
, PushEvent -> Maybe Text
evPushHeadSha :: !(Maybe Text)
, PushEvent -> Maybe Text
evPushBeforeSha :: !(Maybe Text)
, PushEvent -> Bool
evPushCreated :: !Bool
, PushEvent -> Bool
evPushDeleted :: !Bool
, PushEvent -> Bool
evPushForced :: !Bool
, PushEvent -> Maybe Text
evPushBaseRef :: !(Maybe Text)
, PushEvent -> URL
evPushCompareUrl :: !URL
, PushEvent -> Maybe (Vector HookCommit)
evPushCommits :: !(Maybe (Vector HookCommit))
, PushEvent -> Maybe HookCommit
evPushHeadCommit :: !(Maybe HookCommit)
, PushEvent -> HookRepository
evPushRepository :: !HookRepository
, PushEvent -> Maybe HookOrganization
evPushOrganization :: !(Maybe HookOrganization)
, PushEvent -> HookUser
evPushSender :: !HookUser
}
deriving (PushEvent -> PushEvent -> Bool
(PushEvent -> PushEvent -> Bool)
-> (PushEvent -> PushEvent -> Bool) -> Eq PushEvent
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PushEvent -> PushEvent -> Bool
$c/= :: PushEvent -> PushEvent -> Bool
== :: PushEvent -> PushEvent -> Bool
$c== :: PushEvent -> PushEvent -> Bool
Eq, Int -> PushEvent -> ShowS
[PushEvent] -> ShowS
PushEvent -> String
(Int -> PushEvent -> ShowS)
-> (PushEvent -> String)
-> ([PushEvent] -> ShowS)
-> Show PushEvent
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PushEvent] -> ShowS
$cshowList :: [PushEvent] -> ShowS
show :: PushEvent -> String
$cshow :: PushEvent -> String
showsPrec :: Int -> PushEvent -> ShowS
$cshowsPrec :: Int -> PushEvent -> ShowS
Show, Typeable, Typeable PushEvent
DataType
Constr
Typeable PushEvent
-> (forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> PushEvent -> c PushEvent)
-> (forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c PushEvent)
-> (PushEvent -> Constr)
-> (PushEvent -> DataType)
-> (forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c PushEvent))
-> (forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c PushEvent))
-> ((forall b. Data b => b -> b) -> PushEvent -> PushEvent)
-> (forall r r'.
(r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> PushEvent -> r)
-> (forall r r'.
(r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> PushEvent -> r)
-> (forall u. (forall d. Data d => d -> u) -> PushEvent -> [u])
-> (forall u.
Int -> (forall d. Data d => d -> u) -> PushEvent -> u)
-> (forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d) -> PushEvent -> m PushEvent)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> PushEvent -> m PushEvent)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> PushEvent -> m PushEvent)
-> Data PushEvent
PushEvent -> DataType
PushEvent -> Constr
(forall b. Data b => b -> b) -> PushEvent -> PushEvent
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> PushEvent -> c PushEvent
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c PushEvent
forall a.
Typeable a
-> (forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> a -> c a)
-> (forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c a)
-> (a -> Constr)
-> (a -> DataType)
-> (forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c a))
-> (forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c a))
-> ((forall b. Data b => b -> b) -> a -> a)
-> (forall r r'.
(r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> a -> r)
-> (forall r r'.
(r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> a -> r)
-> (forall u. (forall d. Data d => d -> u) -> a -> [u])
-> (forall u. Int -> (forall d. Data d => d -> u) -> a -> u)
-> (forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d) -> a -> m a)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> a -> m a)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> a -> m a)
-> Data a
forall u. Int -> (forall d. Data d => d -> u) -> PushEvent -> u
forall u. (forall d. Data d => d -> u) -> PushEvent -> [u]
forall r r'.
(r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> PushEvent -> r
forall r r'.
(r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> PushEvent -> r
forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d) -> PushEvent -> m PushEvent
forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> PushEvent -> m PushEvent
forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c PushEvent
forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> PushEvent -> c PushEvent
forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c PushEvent)
forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c PushEvent)
$cPushEvent :: Constr
$tPushEvent :: DataType
gmapMo :: (forall d. Data d => d -> m d) -> PushEvent -> m PushEvent
$cgmapMo :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> PushEvent -> m PushEvent
gmapMp :: (forall d. Data d => d -> m d) -> PushEvent -> m PushEvent
$cgmapMp :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> PushEvent -> m PushEvent
gmapM :: (forall d. Data d => d -> m d) -> PushEvent -> m PushEvent
$cgmapM :: forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d) -> PushEvent -> m PushEvent
gmapQi :: Int -> (forall d. Data d => d -> u) -> PushEvent -> u
$cgmapQi :: forall u. Int -> (forall d. Data d => d -> u) -> PushEvent -> u
gmapQ :: (forall d. Data d => d -> u) -> PushEvent -> [u]
$cgmapQ :: forall u. (forall d. Data d => d -> u) -> PushEvent -> [u]
gmapQr :: (r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> PushEvent -> r
$cgmapQr :: forall r r'.
(r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> PushEvent -> r
gmapQl :: (r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> PushEvent -> r
$cgmapQl :: forall r r'.
(r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> PushEvent -> r
gmapT :: (forall b. Data b => b -> b) -> PushEvent -> PushEvent
$cgmapT :: (forall b. Data b => b -> b) -> PushEvent -> PushEvent
dataCast2 :: (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c PushEvent)
$cdataCast2 :: forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c PushEvent)
dataCast1 :: (forall d. Data d => c (t d)) -> Maybe (c PushEvent)
$cdataCast1 :: forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c PushEvent)
dataTypeOf :: PushEvent -> DataType
$cdataTypeOf :: PushEvent -> DataType
toConstr :: PushEvent -> Constr
$ctoConstr :: PushEvent -> Constr
gunfold :: (forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c PushEvent
$cgunfold :: forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c PushEvent
gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> PushEvent -> c PushEvent
$cgfoldl :: forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> PushEvent -> c PushEvent
$cp1Data :: Typeable PushEvent
Data, (forall x. PushEvent -> Rep PushEvent x)
-> (forall x. Rep PushEvent x -> PushEvent) -> Generic PushEvent
forall x. Rep PushEvent x -> PushEvent
forall x. PushEvent -> Rep PushEvent x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep PushEvent x -> PushEvent
$cfrom :: forall x. PushEvent -> Rep PushEvent x
Generic)
instance EventHasSender PushEvent where senderOfEvent :: PushEvent -> HookUser
senderOfEvent = PushEvent -> HookUser
evPushSender
instance EventHasRepo PushEvent where repoForEvent :: PushEvent -> HookRepository
repoForEvent = PushEvent -> HookRepository
evPushRepository
instance NFData PushEvent where rnf :: PushEvent -> ()
rnf = PushEvent -> ()
forall a. (Generic a, GNFData (Rep a)) => a -> ()
genericRnf
data ReleaseEventAction
= ReleasePublishedAction
| ReleaseActionOther !Text
deriving (ReleaseEventAction -> ReleaseEventAction -> Bool
(ReleaseEventAction -> ReleaseEventAction -> Bool)
-> (ReleaseEventAction -> ReleaseEventAction -> Bool)
-> Eq ReleaseEventAction
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: ReleaseEventAction -> ReleaseEventAction -> Bool
$c/= :: ReleaseEventAction -> ReleaseEventAction -> Bool
== :: ReleaseEventAction -> ReleaseEventAction -> Bool
$c== :: ReleaseEventAction -> ReleaseEventAction -> Bool
Eq, Eq ReleaseEventAction
Eq ReleaseEventAction
-> (ReleaseEventAction -> ReleaseEventAction -> Ordering)
-> (ReleaseEventAction -> ReleaseEventAction -> Bool)
-> (ReleaseEventAction -> ReleaseEventAction -> Bool)
-> (ReleaseEventAction -> ReleaseEventAction -> Bool)
-> (ReleaseEventAction -> ReleaseEventAction -> Bool)
-> (ReleaseEventAction -> ReleaseEventAction -> ReleaseEventAction)
-> (ReleaseEventAction -> ReleaseEventAction -> ReleaseEventAction)
-> Ord ReleaseEventAction
ReleaseEventAction -> ReleaseEventAction -> Bool
ReleaseEventAction -> ReleaseEventAction -> Ordering
ReleaseEventAction -> ReleaseEventAction -> ReleaseEventAction
forall a.
Eq a
-> (a -> a -> Ordering)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> a)
-> (a -> a -> a)
-> Ord a
min :: ReleaseEventAction -> ReleaseEventAction -> ReleaseEventAction
$cmin :: ReleaseEventAction -> ReleaseEventAction -> ReleaseEventAction
max :: ReleaseEventAction -> ReleaseEventAction -> ReleaseEventAction
$cmax :: ReleaseEventAction -> ReleaseEventAction -> ReleaseEventAction
>= :: ReleaseEventAction -> ReleaseEventAction -> Bool
$c>= :: ReleaseEventAction -> ReleaseEventAction -> Bool
> :: ReleaseEventAction -> ReleaseEventAction -> Bool
$c> :: ReleaseEventAction -> ReleaseEventAction -> Bool
<= :: ReleaseEventAction -> ReleaseEventAction -> Bool
$c<= :: ReleaseEventAction -> ReleaseEventAction -> Bool
< :: ReleaseEventAction -> ReleaseEventAction -> Bool
$c< :: ReleaseEventAction -> ReleaseEventAction -> Bool
compare :: ReleaseEventAction -> ReleaseEventAction -> Ordering
$ccompare :: ReleaseEventAction -> ReleaseEventAction -> Ordering
$cp1Ord :: Eq ReleaseEventAction
Ord, Int -> ReleaseEventAction -> ShowS
[ReleaseEventAction] -> ShowS
ReleaseEventAction -> String
(Int -> ReleaseEventAction -> ShowS)
-> (ReleaseEventAction -> String)
-> ([ReleaseEventAction] -> ShowS)
-> Show ReleaseEventAction
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [ReleaseEventAction] -> ShowS
$cshowList :: [ReleaseEventAction] -> ShowS
show :: ReleaseEventAction -> String
$cshow :: ReleaseEventAction -> String
showsPrec :: Int -> ReleaseEventAction -> ShowS
$cshowsPrec :: Int -> ReleaseEventAction -> ShowS
Show, (forall x. ReleaseEventAction -> Rep ReleaseEventAction x)
-> (forall x. Rep ReleaseEventAction x -> ReleaseEventAction)
-> Generic ReleaseEventAction
forall x. Rep ReleaseEventAction x -> ReleaseEventAction
forall x. ReleaseEventAction -> Rep ReleaseEventAction x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep ReleaseEventAction x -> ReleaseEventAction
$cfrom :: forall x. ReleaseEventAction -> Rep ReleaseEventAction x
Generic, Typeable, Typeable ReleaseEventAction
DataType
Constr
Typeable ReleaseEventAction
-> (forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g)
-> ReleaseEventAction
-> c ReleaseEventAction)
-> (forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c ReleaseEventAction)
-> (ReleaseEventAction -> Constr)
-> (ReleaseEventAction -> DataType)
-> (forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c ReleaseEventAction))
-> (forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c ReleaseEventAction))
-> ((forall b. Data b => b -> b)
-> ReleaseEventAction -> ReleaseEventAction)
-> (forall r r'.
(r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> ReleaseEventAction -> r)
-> (forall r r'.
(r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> ReleaseEventAction -> r)
-> (forall u.
(forall d. Data d => d -> u) -> ReleaseEventAction -> [u])
-> (forall u.
Int -> (forall d. Data d => d -> u) -> ReleaseEventAction -> u)
-> (forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d)
-> ReleaseEventAction -> m ReleaseEventAction)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> ReleaseEventAction -> m ReleaseEventAction)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> ReleaseEventAction -> m ReleaseEventAction)
-> Data ReleaseEventAction
ReleaseEventAction -> DataType
ReleaseEventAction -> Constr
(forall b. Data b => b -> b)
-> ReleaseEventAction -> ReleaseEventAction
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g)
-> ReleaseEventAction
-> c ReleaseEventAction
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c ReleaseEventAction
forall a.
Typeable a
-> (forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> a -> c a)
-> (forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c a)
-> (a -> Constr)
-> (a -> DataType)
-> (forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c a))
-> (forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c a))
-> ((forall b. Data b => b -> b) -> a -> a)
-> (forall r r'.
(r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> a -> r)
-> (forall r r'.
(r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> a -> r)
-> (forall u. (forall d. Data d => d -> u) -> a -> [u])
-> (forall u. Int -> (forall d. Data d => d -> u) -> a -> u)
-> (forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d) -> a -> m a)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> a -> m a)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> a -> m a)
-> Data a
forall u.
Int -> (forall d. Data d => d -> u) -> ReleaseEventAction -> u
forall u. (forall d. Data d => d -> u) -> ReleaseEventAction -> [u]
forall r r'.
(r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> ReleaseEventAction -> r
forall r r'.
(r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> ReleaseEventAction -> r
forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d)
-> ReleaseEventAction -> m ReleaseEventAction
forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> ReleaseEventAction -> m ReleaseEventAction
forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c ReleaseEventAction
forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g)
-> ReleaseEventAction
-> c ReleaseEventAction
forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c ReleaseEventAction)
forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c ReleaseEventAction)
$cReleaseActionOther :: Constr
$cReleasePublishedAction :: Constr
$tReleaseEventAction :: DataType
gmapMo :: (forall d. Data d => d -> m d)
-> ReleaseEventAction -> m ReleaseEventAction
$cgmapMo :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> ReleaseEventAction -> m ReleaseEventAction
gmapMp :: (forall d. Data d => d -> m d)
-> ReleaseEventAction -> m ReleaseEventAction
$cgmapMp :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> ReleaseEventAction -> m ReleaseEventAction
gmapM :: (forall d. Data d => d -> m d)
-> ReleaseEventAction -> m ReleaseEventAction
$cgmapM :: forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d)
-> ReleaseEventAction -> m ReleaseEventAction
gmapQi :: Int -> (forall d. Data d => d -> u) -> ReleaseEventAction -> u
$cgmapQi :: forall u.
Int -> (forall d. Data d => d -> u) -> ReleaseEventAction -> u
gmapQ :: (forall d. Data d => d -> u) -> ReleaseEventAction -> [u]
$cgmapQ :: forall u. (forall d. Data d => d -> u) -> ReleaseEventAction -> [u]
gmapQr :: (r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> ReleaseEventAction -> r
$cgmapQr :: forall r r'.
(r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> ReleaseEventAction -> r
gmapQl :: (r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> ReleaseEventAction -> r
$cgmapQl :: forall r r'.
(r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> ReleaseEventAction -> r
gmapT :: (forall b. Data b => b -> b)
-> ReleaseEventAction -> ReleaseEventAction
$cgmapT :: (forall b. Data b => b -> b)
-> ReleaseEventAction -> ReleaseEventAction
dataCast2 :: (forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c ReleaseEventAction)
$cdataCast2 :: forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c ReleaseEventAction)
dataCast1 :: (forall d. Data d => c (t d)) -> Maybe (c ReleaseEventAction)
$cdataCast1 :: forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c ReleaseEventAction)
dataTypeOf :: ReleaseEventAction -> DataType
$cdataTypeOf :: ReleaseEventAction -> DataType
toConstr :: ReleaseEventAction -> Constr
$ctoConstr :: ReleaseEventAction -> Constr
gunfold :: (forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c ReleaseEventAction
$cgunfold :: forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c ReleaseEventAction
gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g)
-> ReleaseEventAction
-> c ReleaseEventAction
$cgfoldl :: forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g)
-> ReleaseEventAction
-> c ReleaseEventAction
$cp1Data :: Typeable ReleaseEventAction
Data)
instance NFData ReleaseEventAction where rnf :: ReleaseEventAction -> ()
rnf = ReleaseEventAction -> ()
forall a. (Generic a, GNFData (Rep a)) => a -> ()
genericRnf
instance FromJSON ReleaseEventAction where
parseJSON :: Value -> Parser ReleaseEventAction
parseJSON = String
-> (Text -> Parser ReleaseEventAction)
-> Value
-> Parser ReleaseEventAction
forall a. String -> (Text -> Parser a) -> Value -> Parser a
withText String
"Release event action" ((Text -> Parser ReleaseEventAction)
-> Value -> Parser ReleaseEventAction)
-> (Text -> Parser ReleaseEventAction)
-> Value
-> Parser ReleaseEventAction
forall a b. (a -> b) -> a -> b
$ \Text
t ->
case Text
t of
Text
"published" -> ReleaseEventAction -> Parser ReleaseEventAction
forall (f :: * -> *) a. Applicative f => a -> f a
pure ReleaseEventAction
ReleasePublishedAction
Text
_ -> ReleaseEventAction -> Parser ReleaseEventAction
forall (f :: * -> *) a. Applicative f => a -> f a
pure (Text -> ReleaseEventAction
ReleaseActionOther Text
t)
data ReleaseEvent = ReleaseEvent
{ ReleaseEvent -> ReleaseEventAction
evReleaseEventAction :: !ReleaseEventAction
, ReleaseEvent -> HookRelease
evReleaseEventPayload :: !HookRelease
, ReleaseEvent -> HookRepository
evReleaseEventRepo :: !HookRepository
, ReleaseEvent -> HookUser
evReleaseEventSender :: !HookUser
}
deriving (ReleaseEvent -> ReleaseEvent -> Bool
(ReleaseEvent -> ReleaseEvent -> Bool)
-> (ReleaseEvent -> ReleaseEvent -> Bool) -> Eq ReleaseEvent
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: ReleaseEvent -> ReleaseEvent -> Bool
$c/= :: ReleaseEvent -> ReleaseEvent -> Bool
== :: ReleaseEvent -> ReleaseEvent -> Bool
$c== :: ReleaseEvent -> ReleaseEvent -> Bool
Eq, Int -> ReleaseEvent -> ShowS
[ReleaseEvent] -> ShowS
ReleaseEvent -> String
(Int -> ReleaseEvent -> ShowS)
-> (ReleaseEvent -> String)
-> ([ReleaseEvent] -> ShowS)
-> Show ReleaseEvent
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [ReleaseEvent] -> ShowS
$cshowList :: [ReleaseEvent] -> ShowS
show :: ReleaseEvent -> String
$cshow :: ReleaseEvent -> String
showsPrec :: Int -> ReleaseEvent -> ShowS
$cshowsPrec :: Int -> ReleaseEvent -> ShowS
Show, Typeable, Typeable ReleaseEvent
DataType
Constr
Typeable ReleaseEvent
-> (forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> ReleaseEvent -> c ReleaseEvent)
-> (forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c ReleaseEvent)
-> (ReleaseEvent -> Constr)
-> (ReleaseEvent -> DataType)
-> (forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c ReleaseEvent))
-> (forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c ReleaseEvent))
-> ((forall b. Data b => b -> b) -> ReleaseEvent -> ReleaseEvent)
-> (forall r r'.
(r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> ReleaseEvent -> r)
-> (forall r r'.
(r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> ReleaseEvent -> r)
-> (forall u. (forall d. Data d => d -> u) -> ReleaseEvent -> [u])
-> (forall u.
Int -> (forall d. Data d => d -> u) -> ReleaseEvent -> u)
-> (forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d) -> ReleaseEvent -> m ReleaseEvent)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> ReleaseEvent -> m ReleaseEvent)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> ReleaseEvent -> m ReleaseEvent)
-> Data ReleaseEvent
ReleaseEvent -> DataType
ReleaseEvent -> Constr
(forall b. Data b => b -> b) -> ReleaseEvent -> ReleaseEvent
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> ReleaseEvent -> c ReleaseEvent
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c ReleaseEvent
forall a.
Typeable a
-> (forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> a -> c a)
-> (forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c a)
-> (a -> Constr)
-> (a -> DataType)
-> (forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c a))
-> (forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c a))
-> ((forall b. Data b => b -> b) -> a -> a)
-> (forall r r'.
(r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> a -> r)
-> (forall r r'.
(r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> a -> r)
-> (forall u. (forall d. Data d => d -> u) -> a -> [u])
-> (forall u. Int -> (forall d. Data d => d -> u) -> a -> u)
-> (forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d) -> a -> m a)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> a -> m a)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> a -> m a)
-> Data a
forall u. Int -> (forall d. Data d => d -> u) -> ReleaseEvent -> u
forall u. (forall d. Data d => d -> u) -> ReleaseEvent -> [u]
forall r r'.
(r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> ReleaseEvent -> r
forall r r'.
(r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> ReleaseEvent -> r
forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d) -> ReleaseEvent -> m ReleaseEvent
forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> ReleaseEvent -> m ReleaseEvent
forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c ReleaseEvent
forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> ReleaseEvent -> c ReleaseEvent
forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c ReleaseEvent)
forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c ReleaseEvent)
$cReleaseEvent :: Constr
$tReleaseEvent :: DataType
gmapMo :: (forall d. Data d => d -> m d) -> ReleaseEvent -> m ReleaseEvent
$cgmapMo :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> ReleaseEvent -> m ReleaseEvent
gmapMp :: (forall d. Data d => d -> m d) -> ReleaseEvent -> m ReleaseEvent
$cgmapMp :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> ReleaseEvent -> m ReleaseEvent
gmapM :: (forall d. Data d => d -> m d) -> ReleaseEvent -> m ReleaseEvent
$cgmapM :: forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d) -> ReleaseEvent -> m ReleaseEvent
gmapQi :: Int -> (forall d. Data d => d -> u) -> ReleaseEvent -> u
$cgmapQi :: forall u. Int -> (forall d. Data d => d -> u) -> ReleaseEvent -> u
gmapQ :: (forall d. Data d => d -> u) -> ReleaseEvent -> [u]
$cgmapQ :: forall u. (forall d. Data d => d -> u) -> ReleaseEvent -> [u]
gmapQr :: (r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> ReleaseEvent -> r
$cgmapQr :: forall r r'.
(r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> ReleaseEvent -> r
gmapQl :: (r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> ReleaseEvent -> r
$cgmapQl :: forall r r'.
(r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> ReleaseEvent -> r
gmapT :: (forall b. Data b => b -> b) -> ReleaseEvent -> ReleaseEvent
$cgmapT :: (forall b. Data b => b -> b) -> ReleaseEvent -> ReleaseEvent
dataCast2 :: (forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c ReleaseEvent)
$cdataCast2 :: forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c ReleaseEvent)
dataCast1 :: (forall d. Data d => c (t d)) -> Maybe (c ReleaseEvent)
$cdataCast1 :: forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c ReleaseEvent)
dataTypeOf :: ReleaseEvent -> DataType
$cdataTypeOf :: ReleaseEvent -> DataType
toConstr :: ReleaseEvent -> Constr
$ctoConstr :: ReleaseEvent -> Constr
gunfold :: (forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c ReleaseEvent
$cgunfold :: forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c ReleaseEvent
gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> ReleaseEvent -> c ReleaseEvent
$cgfoldl :: forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> ReleaseEvent -> c ReleaseEvent
$cp1Data :: Typeable ReleaseEvent
Data, (forall x. ReleaseEvent -> Rep ReleaseEvent x)
-> (forall x. Rep ReleaseEvent x -> ReleaseEvent)
-> Generic ReleaseEvent
forall x. Rep ReleaseEvent x -> ReleaseEvent
forall x. ReleaseEvent -> Rep ReleaseEvent x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep ReleaseEvent x -> ReleaseEvent
$cfrom :: forall x. ReleaseEvent -> Rep ReleaseEvent x
Generic)
instance EventHasSender ReleaseEvent where senderOfEvent :: ReleaseEvent -> HookUser
senderOfEvent = ReleaseEvent -> HookUser
evReleaseEventSender
instance EventHasRepo ReleaseEvent where repoForEvent :: ReleaseEvent -> HookRepository
repoForEvent = ReleaseEvent -> HookRepository
evReleaseEventRepo
instance NFData ReleaseEvent where rnf :: ReleaseEvent -> ()
rnf = ReleaseEvent -> ()
forall a. (Generic a, GNFData (Rep a)) => a -> ()
genericRnf
data RepositoryEventAction
= RepositoryCreatedAction
| RepositoryDeletedAction
| RepositoryArchivedAction
| RepositoryUnarchivedAction
| RepositoryPublicizedAction
| RepositoryPrivatizedAction
| RepositoryActionOther !Text
deriving (RepositoryEventAction -> RepositoryEventAction -> Bool
(RepositoryEventAction -> RepositoryEventAction -> Bool)
-> (RepositoryEventAction -> RepositoryEventAction -> Bool)
-> Eq RepositoryEventAction
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: RepositoryEventAction -> RepositoryEventAction -> Bool
$c/= :: RepositoryEventAction -> RepositoryEventAction -> Bool
== :: RepositoryEventAction -> RepositoryEventAction -> Bool
$c== :: RepositoryEventAction -> RepositoryEventAction -> Bool
Eq, Eq RepositoryEventAction
Eq RepositoryEventAction
-> (RepositoryEventAction -> RepositoryEventAction -> Ordering)
-> (RepositoryEventAction -> RepositoryEventAction -> Bool)
-> (RepositoryEventAction -> RepositoryEventAction -> Bool)
-> (RepositoryEventAction -> RepositoryEventAction -> Bool)
-> (RepositoryEventAction -> RepositoryEventAction -> Bool)
-> (RepositoryEventAction
-> RepositoryEventAction -> RepositoryEventAction)
-> (RepositoryEventAction
-> RepositoryEventAction -> RepositoryEventAction)
-> Ord RepositoryEventAction
RepositoryEventAction -> RepositoryEventAction -> Bool
RepositoryEventAction -> RepositoryEventAction -> Ordering
RepositoryEventAction
-> RepositoryEventAction -> RepositoryEventAction
forall a.
Eq a
-> (a -> a -> Ordering)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> a)
-> (a -> a -> a)
-> Ord a
min :: RepositoryEventAction
-> RepositoryEventAction -> RepositoryEventAction
$cmin :: RepositoryEventAction
-> RepositoryEventAction -> RepositoryEventAction
max :: RepositoryEventAction
-> RepositoryEventAction -> RepositoryEventAction
$cmax :: RepositoryEventAction
-> RepositoryEventAction -> RepositoryEventAction
>= :: RepositoryEventAction -> RepositoryEventAction -> Bool
$c>= :: RepositoryEventAction -> RepositoryEventAction -> Bool
> :: RepositoryEventAction -> RepositoryEventAction -> Bool
$c> :: RepositoryEventAction -> RepositoryEventAction -> Bool
<= :: RepositoryEventAction -> RepositoryEventAction -> Bool
$c<= :: RepositoryEventAction -> RepositoryEventAction -> Bool
< :: RepositoryEventAction -> RepositoryEventAction -> Bool
$c< :: RepositoryEventAction -> RepositoryEventAction -> Bool
compare :: RepositoryEventAction -> RepositoryEventAction -> Ordering
$ccompare :: RepositoryEventAction -> RepositoryEventAction -> Ordering
$cp1Ord :: Eq RepositoryEventAction
Ord, Int -> RepositoryEventAction -> ShowS
[RepositoryEventAction] -> ShowS
RepositoryEventAction -> String
(Int -> RepositoryEventAction -> ShowS)
-> (RepositoryEventAction -> String)
-> ([RepositoryEventAction] -> ShowS)
-> Show RepositoryEventAction
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [RepositoryEventAction] -> ShowS
$cshowList :: [RepositoryEventAction] -> ShowS
show :: RepositoryEventAction -> String
$cshow :: RepositoryEventAction -> String
showsPrec :: Int -> RepositoryEventAction -> ShowS
$cshowsPrec :: Int -> RepositoryEventAction -> ShowS
Show, (forall x. RepositoryEventAction -> Rep RepositoryEventAction x)
-> (forall x. Rep RepositoryEventAction x -> RepositoryEventAction)
-> Generic RepositoryEventAction
forall x. Rep RepositoryEventAction x -> RepositoryEventAction
forall x. RepositoryEventAction -> Rep RepositoryEventAction x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep RepositoryEventAction x -> RepositoryEventAction
$cfrom :: forall x. RepositoryEventAction -> Rep RepositoryEventAction x
Generic, Typeable, Typeable RepositoryEventAction
DataType
Constr
Typeable RepositoryEventAction
-> (forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g)
-> RepositoryEventAction
-> c RepositoryEventAction)
-> (forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c RepositoryEventAction)
-> (RepositoryEventAction -> Constr)
-> (RepositoryEventAction -> DataType)
-> (forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c RepositoryEventAction))
-> (forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c RepositoryEventAction))
-> ((forall b. Data b => b -> b)
-> RepositoryEventAction -> RepositoryEventAction)
-> (forall r r'.
(r -> r' -> r)
-> r
-> (forall d. Data d => d -> r')
-> RepositoryEventAction
-> r)
-> (forall r r'.
(r' -> r -> r)
-> r
-> (forall d. Data d => d -> r')
-> RepositoryEventAction
-> r)
-> (forall u.
(forall d. Data d => d -> u) -> RepositoryEventAction -> [u])
-> (forall u.
Int -> (forall d. Data d => d -> u) -> RepositoryEventAction -> u)
-> (forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d)
-> RepositoryEventAction -> m RepositoryEventAction)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> RepositoryEventAction -> m RepositoryEventAction)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> RepositoryEventAction -> m RepositoryEventAction)
-> Data RepositoryEventAction
RepositoryEventAction -> DataType
RepositoryEventAction -> Constr
(forall b. Data b => b -> b)
-> RepositoryEventAction -> RepositoryEventAction
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g)
-> RepositoryEventAction
-> c RepositoryEventAction
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c RepositoryEventAction
forall a.
Typeable a
-> (forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> a -> c a)
-> (forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c a)
-> (a -> Constr)
-> (a -> DataType)
-> (forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c a))
-> (forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c a))
-> ((forall b. Data b => b -> b) -> a -> a)
-> (forall r r'.
(r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> a -> r)
-> (forall r r'.
(r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> a -> r)
-> (forall u. (forall d. Data d => d -> u) -> a -> [u])
-> (forall u. Int -> (forall d. Data d => d -> u) -> a -> u)
-> (forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d) -> a -> m a)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> a -> m a)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> a -> m a)
-> Data a
forall u.
Int -> (forall d. Data d => d -> u) -> RepositoryEventAction -> u
forall u.
(forall d. Data d => d -> u) -> RepositoryEventAction -> [u]
forall r r'.
(r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> RepositoryEventAction -> r
forall r r'.
(r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> RepositoryEventAction -> r
forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d)
-> RepositoryEventAction -> m RepositoryEventAction
forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> RepositoryEventAction -> m RepositoryEventAction
forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c RepositoryEventAction
forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g)
-> RepositoryEventAction
-> c RepositoryEventAction
forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c RepositoryEventAction)
forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c RepositoryEventAction)
$cRepositoryActionOther :: Constr
$cRepositoryPrivatizedAction :: Constr
$cRepositoryPublicizedAction :: Constr
$cRepositoryUnarchivedAction :: Constr
$cRepositoryArchivedAction :: Constr
$cRepositoryDeletedAction :: Constr
$cRepositoryCreatedAction :: Constr
$tRepositoryEventAction :: DataType
gmapMo :: (forall d. Data d => d -> m d)
-> RepositoryEventAction -> m RepositoryEventAction
$cgmapMo :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> RepositoryEventAction -> m RepositoryEventAction
gmapMp :: (forall d. Data d => d -> m d)
-> RepositoryEventAction -> m RepositoryEventAction
$cgmapMp :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> RepositoryEventAction -> m RepositoryEventAction
gmapM :: (forall d. Data d => d -> m d)
-> RepositoryEventAction -> m RepositoryEventAction
$cgmapM :: forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d)
-> RepositoryEventAction -> m RepositoryEventAction
gmapQi :: Int -> (forall d. Data d => d -> u) -> RepositoryEventAction -> u
$cgmapQi :: forall u.
Int -> (forall d. Data d => d -> u) -> RepositoryEventAction -> u
gmapQ :: (forall d. Data d => d -> u) -> RepositoryEventAction -> [u]
$cgmapQ :: forall u.
(forall d. Data d => d -> u) -> RepositoryEventAction -> [u]
gmapQr :: (r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> RepositoryEventAction -> r
$cgmapQr :: forall r r'.
(r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> RepositoryEventAction -> r
gmapQl :: (r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> RepositoryEventAction -> r
$cgmapQl :: forall r r'.
(r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> RepositoryEventAction -> r
gmapT :: (forall b. Data b => b -> b)
-> RepositoryEventAction -> RepositoryEventAction
$cgmapT :: (forall b. Data b => b -> b)
-> RepositoryEventAction -> RepositoryEventAction
dataCast2 :: (forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c RepositoryEventAction)
$cdataCast2 :: forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c RepositoryEventAction)
dataCast1 :: (forall d. Data d => c (t d)) -> Maybe (c RepositoryEventAction)
$cdataCast1 :: forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c RepositoryEventAction)
dataTypeOf :: RepositoryEventAction -> DataType
$cdataTypeOf :: RepositoryEventAction -> DataType
toConstr :: RepositoryEventAction -> Constr
$ctoConstr :: RepositoryEventAction -> Constr
gunfold :: (forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c RepositoryEventAction
$cgunfold :: forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c RepositoryEventAction
gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g)
-> RepositoryEventAction
-> c RepositoryEventAction
$cgfoldl :: forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g)
-> RepositoryEventAction
-> c RepositoryEventAction
$cp1Data :: Typeable RepositoryEventAction
Data)
instance NFData RepositoryEventAction where rnf :: RepositoryEventAction -> ()
rnf = RepositoryEventAction -> ()
forall a. (Generic a, GNFData (Rep a)) => a -> ()
genericRnf
instance FromJSON RepositoryEventAction where
parseJSON :: Value -> Parser RepositoryEventAction
parseJSON = String
-> (Text -> Parser RepositoryEventAction)
-> Value
-> Parser RepositoryEventAction
forall a. String -> (Text -> Parser a) -> Value -> Parser a
withText String
"Repository event action" ((Text -> Parser RepositoryEventAction)
-> Value -> Parser RepositoryEventAction)
-> (Text -> Parser RepositoryEventAction)
-> Value
-> Parser RepositoryEventAction
forall a b. (a -> b) -> a -> b
$ \Text
t ->
case Text
t of
Text
"created" -> RepositoryEventAction -> Parser RepositoryEventAction
forall (f :: * -> *) a. Applicative f => a -> f a
pure RepositoryEventAction
RepositoryCreatedAction
Text
"deleted" -> RepositoryEventAction -> Parser RepositoryEventAction
forall (f :: * -> *) a. Applicative f => a -> f a
pure RepositoryEventAction
RepositoryDeletedAction
Text
"archived" -> RepositoryEventAction -> Parser RepositoryEventAction
forall (f :: * -> *) a. Applicative f => a -> f a
pure RepositoryEventAction
RepositoryArchivedAction
Text
"unarchived" -> RepositoryEventAction -> Parser RepositoryEventAction
forall (f :: * -> *) a. Applicative f => a -> f a
pure RepositoryEventAction
RepositoryUnarchivedAction
Text
"publicized" -> RepositoryEventAction -> Parser RepositoryEventAction
forall (f :: * -> *) a. Applicative f => a -> f a
pure RepositoryEventAction
RepositoryPublicizedAction
Text
"privatized" -> RepositoryEventAction -> Parser RepositoryEventAction
forall (f :: * -> *) a. Applicative f => a -> f a
pure RepositoryEventAction
RepositoryPrivatizedAction
Text
_ -> RepositoryEventAction -> Parser RepositoryEventAction
forall (f :: * -> *) a. Applicative f => a -> f a
pure (Text -> RepositoryEventAction
RepositoryActionOther Text
t)
data RepositoryEvent = RepositoryEvent
{ RepositoryEvent -> RepositoryEventAction
evRepositoryAction :: !RepositoryEventAction
, RepositoryEvent -> HookRepository
evRepositoryTarget :: !HookRepository
, RepositoryEvent -> Maybe HookOrganization
evRepositoryOrg :: !(Maybe HookOrganization)
, RepositoryEvent -> HookUser
evRepositorySender :: !HookUser
}
deriving (RepositoryEvent -> RepositoryEvent -> Bool
(RepositoryEvent -> RepositoryEvent -> Bool)
-> (RepositoryEvent -> RepositoryEvent -> Bool)
-> Eq RepositoryEvent
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: RepositoryEvent -> RepositoryEvent -> Bool
$c/= :: RepositoryEvent -> RepositoryEvent -> Bool
== :: RepositoryEvent -> RepositoryEvent -> Bool
$c== :: RepositoryEvent -> RepositoryEvent -> Bool
Eq, Int -> RepositoryEvent -> ShowS
[RepositoryEvent] -> ShowS
RepositoryEvent -> String
(Int -> RepositoryEvent -> ShowS)
-> (RepositoryEvent -> String)
-> ([RepositoryEvent] -> ShowS)
-> Show RepositoryEvent
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [RepositoryEvent] -> ShowS
$cshowList :: [RepositoryEvent] -> ShowS
show :: RepositoryEvent -> String
$cshow :: RepositoryEvent -> String
showsPrec :: Int -> RepositoryEvent -> ShowS
$cshowsPrec :: Int -> RepositoryEvent -> ShowS
Show, Typeable, Typeable RepositoryEvent
DataType
Constr
Typeable RepositoryEvent
-> (forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> RepositoryEvent -> c RepositoryEvent)
-> (forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c RepositoryEvent)
-> (RepositoryEvent -> Constr)
-> (RepositoryEvent -> DataType)
-> (forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c RepositoryEvent))
-> (forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c RepositoryEvent))
-> ((forall b. Data b => b -> b)
-> RepositoryEvent -> RepositoryEvent)
-> (forall r r'.
(r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> RepositoryEvent -> r)
-> (forall r r'.
(r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> RepositoryEvent -> r)
-> (forall u.
(forall d. Data d => d -> u) -> RepositoryEvent -> [u])
-> (forall u.
Int -> (forall d. Data d => d -> u) -> RepositoryEvent -> u)
-> (forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d)
-> RepositoryEvent -> m RepositoryEvent)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> RepositoryEvent -> m RepositoryEvent)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> RepositoryEvent -> m RepositoryEvent)
-> Data RepositoryEvent
RepositoryEvent -> DataType
RepositoryEvent -> Constr
(forall b. Data b => b -> b) -> RepositoryEvent -> RepositoryEvent
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> RepositoryEvent -> c RepositoryEvent
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c RepositoryEvent
forall a.
Typeable a
-> (forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> a -> c a)
-> (forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c a)
-> (a -> Constr)
-> (a -> DataType)
-> (forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c a))
-> (forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c a))
-> ((forall b. Data b => b -> b) -> a -> a)
-> (forall r r'.
(r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> a -> r)
-> (forall r r'.
(r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> a -> r)
-> (forall u. (forall d. Data d => d -> u) -> a -> [u])
-> (forall u. Int -> (forall d. Data d => d -> u) -> a -> u)
-> (forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d) -> a -> m a)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> a -> m a)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> a -> m a)
-> Data a
forall u.
Int -> (forall d. Data d => d -> u) -> RepositoryEvent -> u
forall u. (forall d. Data d => d -> u) -> RepositoryEvent -> [u]
forall r r'.
(r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> RepositoryEvent -> r
forall r r'.
(r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> RepositoryEvent -> r
forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d)
-> RepositoryEvent -> m RepositoryEvent
forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> RepositoryEvent -> m RepositoryEvent
forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c RepositoryEvent
forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> RepositoryEvent -> c RepositoryEvent
forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c RepositoryEvent)
forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c RepositoryEvent)
$cRepositoryEvent :: Constr
$tRepositoryEvent :: DataType
gmapMo :: (forall d. Data d => d -> m d)
-> RepositoryEvent -> m RepositoryEvent
$cgmapMo :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> RepositoryEvent -> m RepositoryEvent
gmapMp :: (forall d. Data d => d -> m d)
-> RepositoryEvent -> m RepositoryEvent
$cgmapMp :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> RepositoryEvent -> m RepositoryEvent
gmapM :: (forall d. Data d => d -> m d)
-> RepositoryEvent -> m RepositoryEvent
$cgmapM :: forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d)
-> RepositoryEvent -> m RepositoryEvent
gmapQi :: Int -> (forall d. Data d => d -> u) -> RepositoryEvent -> u
$cgmapQi :: forall u.
Int -> (forall d. Data d => d -> u) -> RepositoryEvent -> u
gmapQ :: (forall d. Data d => d -> u) -> RepositoryEvent -> [u]
$cgmapQ :: forall u. (forall d. Data d => d -> u) -> RepositoryEvent -> [u]
gmapQr :: (r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> RepositoryEvent -> r
$cgmapQr :: forall r r'.
(r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> RepositoryEvent -> r
gmapQl :: (r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> RepositoryEvent -> r
$cgmapQl :: forall r r'.
(r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> RepositoryEvent -> r
gmapT :: (forall b. Data b => b -> b) -> RepositoryEvent -> RepositoryEvent
$cgmapT :: (forall b. Data b => b -> b) -> RepositoryEvent -> RepositoryEvent
dataCast2 :: (forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c RepositoryEvent)
$cdataCast2 :: forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c RepositoryEvent)
dataCast1 :: (forall d. Data d => c (t d)) -> Maybe (c RepositoryEvent)
$cdataCast1 :: forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c RepositoryEvent)
dataTypeOf :: RepositoryEvent -> DataType
$cdataTypeOf :: RepositoryEvent -> DataType
toConstr :: RepositoryEvent -> Constr
$ctoConstr :: RepositoryEvent -> Constr
gunfold :: (forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c RepositoryEvent
$cgunfold :: forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c RepositoryEvent
gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> RepositoryEvent -> c RepositoryEvent
$cgfoldl :: forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> RepositoryEvent -> c RepositoryEvent
$cp1Data :: Typeable RepositoryEvent
Data, (forall x. RepositoryEvent -> Rep RepositoryEvent x)
-> (forall x. Rep RepositoryEvent x -> RepositoryEvent)
-> Generic RepositoryEvent
forall x. Rep RepositoryEvent x -> RepositoryEvent
forall x. RepositoryEvent -> Rep RepositoryEvent x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep RepositoryEvent x -> RepositoryEvent
$cfrom :: forall x. RepositoryEvent -> Rep RepositoryEvent x
Generic)
instance EventHasSender RepositoryEvent where senderOfEvent :: RepositoryEvent -> HookUser
senderOfEvent = RepositoryEvent -> HookUser
evRepositorySender
instance EventHasRepo RepositoryEvent where repoForEvent :: RepositoryEvent -> HookRepository
repoForEvent = RepositoryEvent -> HookRepository
evRepositoryTarget
instance NFData RepositoryEvent where rnf :: RepositoryEvent -> ()
rnf = RepositoryEvent -> ()
forall a. (Generic a, GNFData (Rep a)) => a -> ()
genericRnf
data StatusEventState
= StatusPendingState
| StatusSuccessState
| StatusFailureState
| StatusErrorState
| StatusStateOther !Text
deriving (StatusEventState -> StatusEventState -> Bool
(StatusEventState -> StatusEventState -> Bool)
-> (StatusEventState -> StatusEventState -> Bool)
-> Eq StatusEventState
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: StatusEventState -> StatusEventState -> Bool
$c/= :: StatusEventState -> StatusEventState -> Bool
== :: StatusEventState -> StatusEventState -> Bool
$c== :: StatusEventState -> StatusEventState -> Bool
Eq, Eq StatusEventState
Eq StatusEventState
-> (StatusEventState -> StatusEventState -> Ordering)
-> (StatusEventState -> StatusEventState -> Bool)
-> (StatusEventState -> StatusEventState -> Bool)
-> (StatusEventState -> StatusEventState -> Bool)
-> (StatusEventState -> StatusEventState -> Bool)
-> (StatusEventState -> StatusEventState -> StatusEventState)
-> (StatusEventState -> StatusEventState -> StatusEventState)
-> Ord StatusEventState
StatusEventState -> StatusEventState -> Bool
StatusEventState -> StatusEventState -> Ordering
StatusEventState -> StatusEventState -> StatusEventState
forall a.
Eq a
-> (a -> a -> Ordering)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> a)
-> (a -> a -> a)
-> Ord a
min :: StatusEventState -> StatusEventState -> StatusEventState
$cmin :: StatusEventState -> StatusEventState -> StatusEventState
max :: StatusEventState -> StatusEventState -> StatusEventState
$cmax :: StatusEventState -> StatusEventState -> StatusEventState
>= :: StatusEventState -> StatusEventState -> Bool
$c>= :: StatusEventState -> StatusEventState -> Bool
> :: StatusEventState -> StatusEventState -> Bool
$c> :: StatusEventState -> StatusEventState -> Bool
<= :: StatusEventState -> StatusEventState -> Bool
$c<= :: StatusEventState -> StatusEventState -> Bool
< :: StatusEventState -> StatusEventState -> Bool
$c< :: StatusEventState -> StatusEventState -> Bool
compare :: StatusEventState -> StatusEventState -> Ordering
$ccompare :: StatusEventState -> StatusEventState -> Ordering
$cp1Ord :: Eq StatusEventState
Ord, Int -> StatusEventState -> ShowS
[StatusEventState] -> ShowS
StatusEventState -> String
(Int -> StatusEventState -> ShowS)
-> (StatusEventState -> String)
-> ([StatusEventState] -> ShowS)
-> Show StatusEventState
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [StatusEventState] -> ShowS
$cshowList :: [StatusEventState] -> ShowS
show :: StatusEventState -> String
$cshow :: StatusEventState -> String
showsPrec :: Int -> StatusEventState -> ShowS
$cshowsPrec :: Int -> StatusEventState -> ShowS
Show, (forall x. StatusEventState -> Rep StatusEventState x)
-> (forall x. Rep StatusEventState x -> StatusEventState)
-> Generic StatusEventState
forall x. Rep StatusEventState x -> StatusEventState
forall x. StatusEventState -> Rep StatusEventState x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep StatusEventState x -> StatusEventState
$cfrom :: forall x. StatusEventState -> Rep StatusEventState x
Generic, Typeable, Typeable StatusEventState
DataType
Constr
Typeable StatusEventState
-> (forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> StatusEventState -> c StatusEventState)
-> (forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c StatusEventState)
-> (StatusEventState -> Constr)
-> (StatusEventState -> DataType)
-> (forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c StatusEventState))
-> (forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c StatusEventState))
-> ((forall b. Data b => b -> b)
-> StatusEventState -> StatusEventState)
-> (forall r r'.
(r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> StatusEventState -> r)
-> (forall r r'.
(r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> StatusEventState -> r)
-> (forall u.
(forall d. Data d => d -> u) -> StatusEventState -> [u])
-> (forall u.
Int -> (forall d. Data d => d -> u) -> StatusEventState -> u)
-> (forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d)
-> StatusEventState -> m StatusEventState)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> StatusEventState -> m StatusEventState)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> StatusEventState -> m StatusEventState)
-> Data StatusEventState
StatusEventState -> DataType
StatusEventState -> Constr
(forall b. Data b => b -> b)
-> StatusEventState -> StatusEventState
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> StatusEventState -> c StatusEventState
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c StatusEventState
forall a.
Typeable a
-> (forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> a -> c a)
-> (forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c a)
-> (a -> Constr)
-> (a -> DataType)
-> (forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c a))
-> (forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c a))
-> ((forall b. Data b => b -> b) -> a -> a)
-> (forall r r'.
(r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> a -> r)
-> (forall r r'.
(r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> a -> r)
-> (forall u. (forall d. Data d => d -> u) -> a -> [u])
-> (forall u. Int -> (forall d. Data d => d -> u) -> a -> u)
-> (forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d) -> a -> m a)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> a -> m a)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> a -> m a)
-> Data a
forall u.
Int -> (forall d. Data d => d -> u) -> StatusEventState -> u
forall u. (forall d. Data d => d -> u) -> StatusEventState -> [u]
forall r r'.
(r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> StatusEventState -> r
forall r r'.
(r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> StatusEventState -> r
forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d)
-> StatusEventState -> m StatusEventState
forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> StatusEventState -> m StatusEventState
forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c StatusEventState
forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> StatusEventState -> c StatusEventState
forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c StatusEventState)
forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c StatusEventState)
$cStatusStateOther :: Constr
$cStatusErrorState :: Constr
$cStatusFailureState :: Constr
$cStatusSuccessState :: Constr
$cStatusPendingState :: Constr
$tStatusEventState :: DataType
gmapMo :: (forall d. Data d => d -> m d)
-> StatusEventState -> m StatusEventState
$cgmapMo :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> StatusEventState -> m StatusEventState
gmapMp :: (forall d. Data d => d -> m d)
-> StatusEventState -> m StatusEventState
$cgmapMp :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> StatusEventState -> m StatusEventState
gmapM :: (forall d. Data d => d -> m d)
-> StatusEventState -> m StatusEventState
$cgmapM :: forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d)
-> StatusEventState -> m StatusEventState
gmapQi :: Int -> (forall d. Data d => d -> u) -> StatusEventState -> u
$cgmapQi :: forall u.
Int -> (forall d. Data d => d -> u) -> StatusEventState -> u
gmapQ :: (forall d. Data d => d -> u) -> StatusEventState -> [u]
$cgmapQ :: forall u. (forall d. Data d => d -> u) -> StatusEventState -> [u]
gmapQr :: (r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> StatusEventState -> r
$cgmapQr :: forall r r'.
(r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> StatusEventState -> r
gmapQl :: (r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> StatusEventState -> r
$cgmapQl :: forall r r'.
(r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> StatusEventState -> r
gmapT :: (forall b. Data b => b -> b)
-> StatusEventState -> StatusEventState
$cgmapT :: (forall b. Data b => b -> b)
-> StatusEventState -> StatusEventState
dataCast2 :: (forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c StatusEventState)
$cdataCast2 :: forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c StatusEventState)
dataCast1 :: (forall d. Data d => c (t d)) -> Maybe (c StatusEventState)
$cdataCast1 :: forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c StatusEventState)
dataTypeOf :: StatusEventState -> DataType
$cdataTypeOf :: StatusEventState -> DataType
toConstr :: StatusEventState -> Constr
$ctoConstr :: StatusEventState -> Constr
gunfold :: (forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c StatusEventState
$cgunfold :: forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c StatusEventState
gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> StatusEventState -> c StatusEventState
$cgfoldl :: forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> StatusEventState -> c StatusEventState
$cp1Data :: Typeable StatusEventState
Data)
instance NFData StatusEventState where rnf :: StatusEventState -> ()
rnf = StatusEventState -> ()
forall a. (Generic a, GNFData (Rep a)) => a -> ()
genericRnf
instance FromJSON StatusEventState where
parseJSON :: Value -> Parser StatusEventState
parseJSON = String
-> (Text -> Parser StatusEventState)
-> Value
-> Parser StatusEventState
forall a. String -> (Text -> Parser a) -> Value -> Parser a
withText String
"Status event state" ((Text -> Parser StatusEventState)
-> Value -> Parser StatusEventState)
-> (Text -> Parser StatusEventState)
-> Value
-> Parser StatusEventState
forall a b. (a -> b) -> a -> b
$ \Text
t ->
case Text
t of
Text
"pending" -> StatusEventState -> Parser StatusEventState
forall (f :: * -> *) a. Applicative f => a -> f a
pure StatusEventState
StatusPendingState
Text
"success" -> StatusEventState -> Parser StatusEventState
forall (f :: * -> *) a. Applicative f => a -> f a
pure StatusEventState
StatusSuccessState
Text
"failure" -> StatusEventState -> Parser StatusEventState
forall (f :: * -> *) a. Applicative f => a -> f a
pure StatusEventState
StatusFailureState
Text
"error" -> StatusEventState -> Parser StatusEventState
forall (f :: * -> *) a. Applicative f => a -> f a
pure StatusEventState
StatusErrorState
Text
_ -> StatusEventState -> Parser StatusEventState
forall (f :: * -> *) a. Applicative f => a -> f a
pure (Text -> StatusEventState
StatusStateOther Text
t)
data StatusEvent = StatusEvent
{ StatusEvent -> Int
evStatusId :: !Int
, StatusEvent -> Text
evStatusCommitSha :: !Text
, StatusEvent -> Text
evStatusCommitName :: !Text
, StatusEvent -> Maybe URL
evStatusTargetUrl :: !(Maybe URL)
, StatusEvent -> Text
evStatusContext :: !Text
, StatusEvent -> Maybe Text
evStatusDescription :: !(Maybe Text)
, StatusEvent -> StatusEventState
evStatusState :: !StatusEventState
, StatusEvent -> HookCommit
evStatusCommit :: !HookCommit
, StatusEvent -> UTCTime
evStatusCreatedAt :: !UTCTime
, StatusEvent -> UTCTime
evStatusUpdatedAt :: !UTCTime
, StatusEvent -> HookRepository
evStatusRepo :: !HookRepository
, StatusEvent -> HookUser
evStatusSender :: !HookUser
}
deriving (StatusEvent -> StatusEvent -> Bool
(StatusEvent -> StatusEvent -> Bool)
-> (StatusEvent -> StatusEvent -> Bool) -> Eq StatusEvent
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: StatusEvent -> StatusEvent -> Bool
$c/= :: StatusEvent -> StatusEvent -> Bool
== :: StatusEvent -> StatusEvent -> Bool
$c== :: StatusEvent -> StatusEvent -> Bool
Eq, Int -> StatusEvent -> ShowS
[StatusEvent] -> ShowS
StatusEvent -> String
(Int -> StatusEvent -> ShowS)
-> (StatusEvent -> String)
-> ([StatusEvent] -> ShowS)
-> Show StatusEvent
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [StatusEvent] -> ShowS
$cshowList :: [StatusEvent] -> ShowS
show :: StatusEvent -> String
$cshow :: StatusEvent -> String
showsPrec :: Int -> StatusEvent -> ShowS
$cshowsPrec :: Int -> StatusEvent -> ShowS
Show, Typeable, Typeable StatusEvent
DataType
Constr
Typeable StatusEvent
-> (forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> StatusEvent -> c StatusEvent)
-> (forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c StatusEvent)
-> (StatusEvent -> Constr)
-> (StatusEvent -> DataType)
-> (forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c StatusEvent))
-> (forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c StatusEvent))
-> ((forall b. Data b => b -> b) -> StatusEvent -> StatusEvent)
-> (forall r r'.
(r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> StatusEvent -> r)
-> (forall r r'.
(r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> StatusEvent -> r)
-> (forall u. (forall d. Data d => d -> u) -> StatusEvent -> [u])
-> (forall u.
Int -> (forall d. Data d => d -> u) -> StatusEvent -> u)
-> (forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d) -> StatusEvent -> m StatusEvent)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> StatusEvent -> m StatusEvent)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> StatusEvent -> m StatusEvent)
-> Data StatusEvent
StatusEvent -> DataType
StatusEvent -> Constr
(forall b. Data b => b -> b) -> StatusEvent -> StatusEvent
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> StatusEvent -> c StatusEvent
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c StatusEvent
forall a.
Typeable a
-> (forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> a -> c a)
-> (forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c a)
-> (a -> Constr)
-> (a -> DataType)
-> (forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c a))
-> (forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c a))
-> ((forall b. Data b => b -> b) -> a -> a)
-> (forall r r'.
(r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> a -> r)
-> (forall r r'.
(r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> a -> r)
-> (forall u. (forall d. Data d => d -> u) -> a -> [u])
-> (forall u. Int -> (forall d. Data d => d -> u) -> a -> u)
-> (forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d) -> a -> m a)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> a -> m a)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> a -> m a)
-> Data a
forall u. Int -> (forall d. Data d => d -> u) -> StatusEvent -> u
forall u. (forall d. Data d => d -> u) -> StatusEvent -> [u]
forall r r'.
(r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> StatusEvent -> r
forall r r'.
(r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> StatusEvent -> r
forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d) -> StatusEvent -> m StatusEvent
forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> StatusEvent -> m StatusEvent
forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c StatusEvent
forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> StatusEvent -> c StatusEvent
forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c StatusEvent)
forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c StatusEvent)
$cStatusEvent :: Constr
$tStatusEvent :: DataType
gmapMo :: (forall d. Data d => d -> m d) -> StatusEvent -> m StatusEvent
$cgmapMo :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> StatusEvent -> m StatusEvent
gmapMp :: (forall d. Data d => d -> m d) -> StatusEvent -> m StatusEvent
$cgmapMp :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> StatusEvent -> m StatusEvent
gmapM :: (forall d. Data d => d -> m d) -> StatusEvent -> m StatusEvent
$cgmapM :: forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d) -> StatusEvent -> m StatusEvent
gmapQi :: Int -> (forall d. Data d => d -> u) -> StatusEvent -> u
$cgmapQi :: forall u. Int -> (forall d. Data d => d -> u) -> StatusEvent -> u
gmapQ :: (forall d. Data d => d -> u) -> StatusEvent -> [u]
$cgmapQ :: forall u. (forall d. Data d => d -> u) -> StatusEvent -> [u]
gmapQr :: (r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> StatusEvent -> r
$cgmapQr :: forall r r'.
(r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> StatusEvent -> r
gmapQl :: (r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> StatusEvent -> r
$cgmapQl :: forall r r'.
(r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> StatusEvent -> r
gmapT :: (forall b. Data b => b -> b) -> StatusEvent -> StatusEvent
$cgmapT :: (forall b. Data b => b -> b) -> StatusEvent -> StatusEvent
dataCast2 :: (forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c StatusEvent)
$cdataCast2 :: forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c StatusEvent)
dataCast1 :: (forall d. Data d => c (t d)) -> Maybe (c StatusEvent)
$cdataCast1 :: forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c StatusEvent)
dataTypeOf :: StatusEvent -> DataType
$cdataTypeOf :: StatusEvent -> DataType
toConstr :: StatusEvent -> Constr
$ctoConstr :: StatusEvent -> Constr
gunfold :: (forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c StatusEvent
$cgunfold :: forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c StatusEvent
gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> StatusEvent -> c StatusEvent
$cgfoldl :: forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> StatusEvent -> c StatusEvent
$cp1Data :: Typeable StatusEvent
Data, (forall x. StatusEvent -> Rep StatusEvent x)
-> (forall x. Rep StatusEvent x -> StatusEvent)
-> Generic StatusEvent
forall x. Rep StatusEvent x -> StatusEvent
forall x. StatusEvent -> Rep StatusEvent x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep StatusEvent x -> StatusEvent
$cfrom :: forall x. StatusEvent -> Rep StatusEvent x
Generic)
instance EventHasSender StatusEvent where senderOfEvent :: StatusEvent -> HookUser
senderOfEvent = StatusEvent -> HookUser
evStatusSender
instance EventHasRepo StatusEvent where repoForEvent :: StatusEvent -> HookRepository
repoForEvent = StatusEvent -> HookRepository
evStatusRepo
instance NFData StatusEvent where rnf :: StatusEvent -> ()
rnf = StatusEvent -> ()
forall a. (Generic a, GNFData (Rep a)) => a -> ()
genericRnf
data TeamEventAction
= TeamCreatedAction
| TeamDeletedAction
| TeamEditedAction
| TeamAddedToRepoAction
| TeamRemovedFromRepoAction
| TeamActionOther !Text
deriving (TeamEventAction -> TeamEventAction -> Bool
(TeamEventAction -> TeamEventAction -> Bool)
-> (TeamEventAction -> TeamEventAction -> Bool)
-> Eq TeamEventAction
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: TeamEventAction -> TeamEventAction -> Bool
$c/= :: TeamEventAction -> TeamEventAction -> Bool
== :: TeamEventAction -> TeamEventAction -> Bool
$c== :: TeamEventAction -> TeamEventAction -> Bool
Eq, Eq TeamEventAction
Eq TeamEventAction
-> (TeamEventAction -> TeamEventAction -> Ordering)
-> (TeamEventAction -> TeamEventAction -> Bool)
-> (TeamEventAction -> TeamEventAction -> Bool)
-> (TeamEventAction -> TeamEventAction -> Bool)
-> (TeamEventAction -> TeamEventAction -> Bool)
-> (TeamEventAction -> TeamEventAction -> TeamEventAction)
-> (TeamEventAction -> TeamEventAction -> TeamEventAction)
-> Ord TeamEventAction
TeamEventAction -> TeamEventAction -> Bool
TeamEventAction -> TeamEventAction -> Ordering
TeamEventAction -> TeamEventAction -> TeamEventAction
forall a.
Eq a
-> (a -> a -> Ordering)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> a)
-> (a -> a -> a)
-> Ord a
min :: TeamEventAction -> TeamEventAction -> TeamEventAction
$cmin :: TeamEventAction -> TeamEventAction -> TeamEventAction
max :: TeamEventAction -> TeamEventAction -> TeamEventAction
$cmax :: TeamEventAction -> TeamEventAction -> TeamEventAction
>= :: TeamEventAction -> TeamEventAction -> Bool
$c>= :: TeamEventAction -> TeamEventAction -> Bool
> :: TeamEventAction -> TeamEventAction -> Bool
$c> :: TeamEventAction -> TeamEventAction -> Bool
<= :: TeamEventAction -> TeamEventAction -> Bool
$c<= :: TeamEventAction -> TeamEventAction -> Bool
< :: TeamEventAction -> TeamEventAction -> Bool
$c< :: TeamEventAction -> TeamEventAction -> Bool
compare :: TeamEventAction -> TeamEventAction -> Ordering
$ccompare :: TeamEventAction -> TeamEventAction -> Ordering
$cp1Ord :: Eq TeamEventAction
Ord, Int -> TeamEventAction -> ShowS
[TeamEventAction] -> ShowS
TeamEventAction -> String
(Int -> TeamEventAction -> ShowS)
-> (TeamEventAction -> String)
-> ([TeamEventAction] -> ShowS)
-> Show TeamEventAction
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [TeamEventAction] -> ShowS
$cshowList :: [TeamEventAction] -> ShowS
show :: TeamEventAction -> String
$cshow :: TeamEventAction -> String
showsPrec :: Int -> TeamEventAction -> ShowS
$cshowsPrec :: Int -> TeamEventAction -> ShowS
Show, (forall x. TeamEventAction -> Rep TeamEventAction x)
-> (forall x. Rep TeamEventAction x -> TeamEventAction)
-> Generic TeamEventAction
forall x. Rep TeamEventAction x -> TeamEventAction
forall x. TeamEventAction -> Rep TeamEventAction x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep TeamEventAction x -> TeamEventAction
$cfrom :: forall x. TeamEventAction -> Rep TeamEventAction x
Generic, Typeable, Typeable TeamEventAction
DataType
Constr
Typeable TeamEventAction
-> (forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> TeamEventAction -> c TeamEventAction)
-> (forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c TeamEventAction)
-> (TeamEventAction -> Constr)
-> (TeamEventAction -> DataType)
-> (forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c TeamEventAction))
-> (forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c TeamEventAction))
-> ((forall b. Data b => b -> b)
-> TeamEventAction -> TeamEventAction)
-> (forall r r'.
(r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> TeamEventAction -> r)
-> (forall r r'.
(r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> TeamEventAction -> r)
-> (forall u.
(forall d. Data d => d -> u) -> TeamEventAction -> [u])
-> (forall u.
Int -> (forall d. Data d => d -> u) -> TeamEventAction -> u)
-> (forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d)
-> TeamEventAction -> m TeamEventAction)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> TeamEventAction -> m TeamEventAction)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> TeamEventAction -> m TeamEventAction)
-> Data TeamEventAction
TeamEventAction -> DataType
TeamEventAction -> Constr
(forall b. Data b => b -> b) -> TeamEventAction -> TeamEventAction
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> TeamEventAction -> c TeamEventAction
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c TeamEventAction
forall a.
Typeable a
-> (forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> a -> c a)
-> (forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c a)
-> (a -> Constr)
-> (a -> DataType)
-> (forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c a))
-> (forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c a))
-> ((forall b. Data b => b -> b) -> a -> a)
-> (forall r r'.
(r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> a -> r)
-> (forall r r'.
(r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> a -> r)
-> (forall u. (forall d. Data d => d -> u) -> a -> [u])
-> (forall u. Int -> (forall d. Data d => d -> u) -> a -> u)
-> (forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d) -> a -> m a)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> a -> m a)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> a -> m a)
-> Data a
forall u.
Int -> (forall d. Data d => d -> u) -> TeamEventAction -> u
forall u. (forall d. Data d => d -> u) -> TeamEventAction -> [u]
forall r r'.
(r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> TeamEventAction -> r
forall r r'.
(r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> TeamEventAction -> r
forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d)
-> TeamEventAction -> m TeamEventAction
forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> TeamEventAction -> m TeamEventAction
forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c TeamEventAction
forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> TeamEventAction -> c TeamEventAction
forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c TeamEventAction)
forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c TeamEventAction)
$cTeamActionOther :: Constr
$cTeamRemovedFromRepoAction :: Constr
$cTeamAddedToRepoAction :: Constr
$cTeamEditedAction :: Constr
$cTeamDeletedAction :: Constr
$cTeamCreatedAction :: Constr
$tTeamEventAction :: DataType
gmapMo :: (forall d. Data d => d -> m d)
-> TeamEventAction -> m TeamEventAction
$cgmapMo :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> TeamEventAction -> m TeamEventAction
gmapMp :: (forall d. Data d => d -> m d)
-> TeamEventAction -> m TeamEventAction
$cgmapMp :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> TeamEventAction -> m TeamEventAction
gmapM :: (forall d. Data d => d -> m d)
-> TeamEventAction -> m TeamEventAction
$cgmapM :: forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d)
-> TeamEventAction -> m TeamEventAction
gmapQi :: Int -> (forall d. Data d => d -> u) -> TeamEventAction -> u
$cgmapQi :: forall u.
Int -> (forall d. Data d => d -> u) -> TeamEventAction -> u
gmapQ :: (forall d. Data d => d -> u) -> TeamEventAction -> [u]
$cgmapQ :: forall u. (forall d. Data d => d -> u) -> TeamEventAction -> [u]
gmapQr :: (r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> TeamEventAction -> r
$cgmapQr :: forall r r'.
(r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> TeamEventAction -> r
gmapQl :: (r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> TeamEventAction -> r
$cgmapQl :: forall r r'.
(r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> TeamEventAction -> r
gmapT :: (forall b. Data b => b -> b) -> TeamEventAction -> TeamEventAction
$cgmapT :: (forall b. Data b => b -> b) -> TeamEventAction -> TeamEventAction
dataCast2 :: (forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c TeamEventAction)
$cdataCast2 :: forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c TeamEventAction)
dataCast1 :: (forall d. Data d => c (t d)) -> Maybe (c TeamEventAction)
$cdataCast1 :: forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c TeamEventAction)
dataTypeOf :: TeamEventAction -> DataType
$cdataTypeOf :: TeamEventAction -> DataType
toConstr :: TeamEventAction -> Constr
$ctoConstr :: TeamEventAction -> Constr
gunfold :: (forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c TeamEventAction
$cgunfold :: forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c TeamEventAction
gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> TeamEventAction -> c TeamEventAction
$cgfoldl :: forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> TeamEventAction -> c TeamEventAction
$cp1Data :: Typeable TeamEventAction
Data)
instance NFData TeamEventAction where rnf :: TeamEventAction -> ()
rnf = TeamEventAction -> ()
forall a. (Generic a, GNFData (Rep a)) => a -> ()
genericRnf
instance FromJSON TeamEventAction where
parseJSON :: Value -> Parser TeamEventAction
parseJSON = String
-> (Text -> Parser TeamEventAction)
-> Value
-> Parser TeamEventAction
forall a. String -> (Text -> Parser a) -> Value -> Parser a
withText String
"Team event action" ((Text -> Parser TeamEventAction)
-> Value -> Parser TeamEventAction)
-> (Text -> Parser TeamEventAction)
-> Value
-> Parser TeamEventAction
forall a b. (a -> b) -> a -> b
$ \Text
t ->
case Text
t of
Text
"created" -> TeamEventAction -> Parser TeamEventAction
forall (f :: * -> *) a. Applicative f => a -> f a
pure TeamEventAction
TeamCreatedAction
Text
"deleted" -> TeamEventAction -> Parser TeamEventAction
forall (f :: * -> *) a. Applicative f => a -> f a
pure TeamEventAction
TeamDeletedAction
Text
"edited" -> TeamEventAction -> Parser TeamEventAction
forall (f :: * -> *) a. Applicative f => a -> f a
pure TeamEventAction
TeamEditedAction
Text
"added_to_repository" -> TeamEventAction -> Parser TeamEventAction
forall (f :: * -> *) a. Applicative f => a -> f a
pure TeamEventAction
TeamAddedToRepoAction
Text
"removed_from_repository" -> TeamEventAction -> Parser TeamEventAction
forall (f :: * -> *) a. Applicative f => a -> f a
pure TeamEventAction
TeamRemovedFromRepoAction
Text
_ -> TeamEventAction -> Parser TeamEventAction
forall (f :: * -> *) a. Applicative f => a -> f a
pure (Text -> TeamEventAction
TeamActionOther Text
t)
data TeamEvent = TeamEvent
{ TeamEvent -> TeamEventAction
evTeamAction :: !TeamEventAction
, TeamEvent -> HookTeam
evTeamTarget :: !HookTeam
, TeamEvent -> HookOrganization
evTeamOrganization :: !HookOrganization
, TeamEvent -> HookUser
evTeamSender :: !HookUser
}
deriving (TeamEvent -> TeamEvent -> Bool
(TeamEvent -> TeamEvent -> Bool)
-> (TeamEvent -> TeamEvent -> Bool) -> Eq TeamEvent
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: TeamEvent -> TeamEvent -> Bool
$c/= :: TeamEvent -> TeamEvent -> Bool
== :: TeamEvent -> TeamEvent -> Bool
$c== :: TeamEvent -> TeamEvent -> Bool
Eq, Int -> TeamEvent -> ShowS
[TeamEvent] -> ShowS
TeamEvent -> String
(Int -> TeamEvent -> ShowS)
-> (TeamEvent -> String)
-> ([TeamEvent] -> ShowS)
-> Show TeamEvent
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [TeamEvent] -> ShowS
$cshowList :: [TeamEvent] -> ShowS
show :: TeamEvent -> String
$cshow :: TeamEvent -> String
showsPrec :: Int -> TeamEvent -> ShowS
$cshowsPrec :: Int -> TeamEvent -> ShowS
Show, Typeable, Typeable TeamEvent
DataType
Constr
Typeable TeamEvent
-> (forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> TeamEvent -> c TeamEvent)
-> (forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c TeamEvent)
-> (TeamEvent -> Constr)
-> (TeamEvent -> DataType)
-> (forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c TeamEvent))
-> (forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c TeamEvent))
-> ((forall b. Data b => b -> b) -> TeamEvent -> TeamEvent)
-> (forall r r'.
(r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> TeamEvent -> r)
-> (forall r r'.
(r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> TeamEvent -> r)
-> (forall u. (forall d. Data d => d -> u) -> TeamEvent -> [u])
-> (forall u.
Int -> (forall d. Data d => d -> u) -> TeamEvent -> u)
-> (forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d) -> TeamEvent -> m TeamEvent)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> TeamEvent -> m TeamEvent)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> TeamEvent -> m TeamEvent)
-> Data TeamEvent
TeamEvent -> DataType
TeamEvent -> Constr
(forall b. Data b => b -> b) -> TeamEvent -> TeamEvent
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> TeamEvent -> c TeamEvent
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c TeamEvent
forall a.
Typeable a
-> (forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> a -> c a)
-> (forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c a)
-> (a -> Constr)
-> (a -> DataType)
-> (forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c a))
-> (forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c a))
-> ((forall b. Data b => b -> b) -> a -> a)
-> (forall r r'.
(r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> a -> r)
-> (forall r r'.
(r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> a -> r)
-> (forall u. (forall d. Data d => d -> u) -> a -> [u])
-> (forall u. Int -> (forall d. Data d => d -> u) -> a -> u)
-> (forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d) -> a -> m a)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> a -> m a)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> a -> m a)
-> Data a
forall u. Int -> (forall d. Data d => d -> u) -> TeamEvent -> u
forall u. (forall d. Data d => d -> u) -> TeamEvent -> [u]
forall r r'.
(r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> TeamEvent -> r
forall r r'.
(r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> TeamEvent -> r
forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d) -> TeamEvent -> m TeamEvent
forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> TeamEvent -> m TeamEvent
forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c TeamEvent
forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> TeamEvent -> c TeamEvent
forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c TeamEvent)
forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c TeamEvent)
$cTeamEvent :: Constr
$tTeamEvent :: DataType
gmapMo :: (forall d. Data d => d -> m d) -> TeamEvent -> m TeamEvent
$cgmapMo :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> TeamEvent -> m TeamEvent
gmapMp :: (forall d. Data d => d -> m d) -> TeamEvent -> m TeamEvent
$cgmapMp :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> TeamEvent -> m TeamEvent
gmapM :: (forall d. Data d => d -> m d) -> TeamEvent -> m TeamEvent
$cgmapM :: forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d) -> TeamEvent -> m TeamEvent
gmapQi :: Int -> (forall d. Data d => d -> u) -> TeamEvent -> u
$cgmapQi :: forall u. Int -> (forall d. Data d => d -> u) -> TeamEvent -> u
gmapQ :: (forall d. Data d => d -> u) -> TeamEvent -> [u]
$cgmapQ :: forall u. (forall d. Data d => d -> u) -> TeamEvent -> [u]
gmapQr :: (r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> TeamEvent -> r
$cgmapQr :: forall r r'.
(r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> TeamEvent -> r
gmapQl :: (r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> TeamEvent -> r
$cgmapQl :: forall r r'.
(r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> TeamEvent -> r
gmapT :: (forall b. Data b => b -> b) -> TeamEvent -> TeamEvent
$cgmapT :: (forall b. Data b => b -> b) -> TeamEvent -> TeamEvent
dataCast2 :: (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c TeamEvent)
$cdataCast2 :: forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c TeamEvent)
dataCast1 :: (forall d. Data d => c (t d)) -> Maybe (c TeamEvent)
$cdataCast1 :: forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c TeamEvent)
dataTypeOf :: TeamEvent -> DataType
$cdataTypeOf :: TeamEvent -> DataType
toConstr :: TeamEvent -> Constr
$ctoConstr :: TeamEvent -> Constr
gunfold :: (forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c TeamEvent
$cgunfold :: forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c TeamEvent
gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> TeamEvent -> c TeamEvent
$cgfoldl :: forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> TeamEvent -> c TeamEvent
$cp1Data :: Typeable TeamEvent
Data, (forall x. TeamEvent -> Rep TeamEvent x)
-> (forall x. Rep TeamEvent x -> TeamEvent) -> Generic TeamEvent
forall x. Rep TeamEvent x -> TeamEvent
forall x. TeamEvent -> Rep TeamEvent x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep TeamEvent x -> TeamEvent
$cfrom :: forall x. TeamEvent -> Rep TeamEvent x
Generic)
instance EventHasSender TeamEvent where senderOfEvent :: TeamEvent -> HookUser
senderOfEvent = TeamEvent -> HookUser
evTeamSender
instance NFData TeamEvent where rnf :: TeamEvent -> ()
rnf = TeamEvent -> ()
forall a. (Generic a, GNFData (Rep a)) => a -> ()
genericRnf
data TeamAddEvent = TeamAddEvent
{ TeamAddEvent -> Maybe HookTeam
evTeamAddTarget :: !(Maybe HookTeam)
, TeamAddEvent -> HookRepository
evTeamAddRepo :: !HookRepository
, TeamAddEvent -> HookOrganization
evTeamAddOrg :: !HookOrganization
, TeamAddEvent -> HookUser
evTeamAddSender :: !HookUser
}
deriving (TeamAddEvent -> TeamAddEvent -> Bool
(TeamAddEvent -> TeamAddEvent -> Bool)
-> (TeamAddEvent -> TeamAddEvent -> Bool) -> Eq TeamAddEvent
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: TeamAddEvent -> TeamAddEvent -> Bool
$c/= :: TeamAddEvent -> TeamAddEvent -> Bool
== :: TeamAddEvent -> TeamAddEvent -> Bool
$c== :: TeamAddEvent -> TeamAddEvent -> Bool
Eq, Int -> TeamAddEvent -> ShowS
[TeamAddEvent] -> ShowS
TeamAddEvent -> String
(Int -> TeamAddEvent -> ShowS)
-> (TeamAddEvent -> String)
-> ([TeamAddEvent] -> ShowS)
-> Show TeamAddEvent
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [TeamAddEvent] -> ShowS
$cshowList :: [TeamAddEvent] -> ShowS
show :: TeamAddEvent -> String
$cshow :: TeamAddEvent -> String
showsPrec :: Int -> TeamAddEvent -> ShowS
$cshowsPrec :: Int -> TeamAddEvent -> ShowS
Show, Typeable, Typeable TeamAddEvent
DataType
Constr
Typeable TeamAddEvent
-> (forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> TeamAddEvent -> c TeamAddEvent)
-> (forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c TeamAddEvent)
-> (TeamAddEvent -> Constr)
-> (TeamAddEvent -> DataType)
-> (forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c TeamAddEvent))
-> (forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c TeamAddEvent))
-> ((forall b. Data b => b -> b) -> TeamAddEvent -> TeamAddEvent)
-> (forall r r'.
(r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> TeamAddEvent -> r)
-> (forall r r'.
(r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> TeamAddEvent -> r)
-> (forall u. (forall d. Data d => d -> u) -> TeamAddEvent -> [u])
-> (forall u.
Int -> (forall d. Data d => d -> u) -> TeamAddEvent -> u)
-> (forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d) -> TeamAddEvent -> m TeamAddEvent)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> TeamAddEvent -> m TeamAddEvent)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> TeamAddEvent -> m TeamAddEvent)
-> Data TeamAddEvent
TeamAddEvent -> DataType
TeamAddEvent -> Constr
(forall b. Data b => b -> b) -> TeamAddEvent -> TeamAddEvent
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> TeamAddEvent -> c TeamAddEvent
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c TeamAddEvent
forall a.
Typeable a
-> (forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> a -> c a)
-> (forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c a)
-> (a -> Constr)
-> (a -> DataType)
-> (forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c a))
-> (forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c a))
-> ((forall b. Data b => b -> b) -> a -> a)
-> (forall r r'.
(r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> a -> r)
-> (forall r r'.
(r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> a -> r)
-> (forall u. (forall d. Data d => d -> u) -> a -> [u])
-> (forall u. Int -> (forall d. Data d => d -> u) -> a -> u)
-> (forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d) -> a -> m a)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> a -> m a)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> a -> m a)
-> Data a
forall u. Int -> (forall d. Data d => d -> u) -> TeamAddEvent -> u
forall u. (forall d. Data d => d -> u) -> TeamAddEvent -> [u]
forall r r'.
(r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> TeamAddEvent -> r
forall r r'.
(r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> TeamAddEvent -> r
forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d) -> TeamAddEvent -> m TeamAddEvent
forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> TeamAddEvent -> m TeamAddEvent
forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c TeamAddEvent
forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> TeamAddEvent -> c TeamAddEvent
forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c TeamAddEvent)
forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c TeamAddEvent)
$cTeamAddEvent :: Constr
$tTeamAddEvent :: DataType
gmapMo :: (forall d. Data d => d -> m d) -> TeamAddEvent -> m TeamAddEvent
$cgmapMo :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> TeamAddEvent -> m TeamAddEvent
gmapMp :: (forall d. Data d => d -> m d) -> TeamAddEvent -> m TeamAddEvent
$cgmapMp :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> TeamAddEvent -> m TeamAddEvent
gmapM :: (forall d. Data d => d -> m d) -> TeamAddEvent -> m TeamAddEvent
$cgmapM :: forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d) -> TeamAddEvent -> m TeamAddEvent
gmapQi :: Int -> (forall d. Data d => d -> u) -> TeamAddEvent -> u
$cgmapQi :: forall u. Int -> (forall d. Data d => d -> u) -> TeamAddEvent -> u
gmapQ :: (forall d. Data d => d -> u) -> TeamAddEvent -> [u]
$cgmapQ :: forall u. (forall d. Data d => d -> u) -> TeamAddEvent -> [u]
gmapQr :: (r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> TeamAddEvent -> r
$cgmapQr :: forall r r'.
(r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> TeamAddEvent -> r
gmapQl :: (r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> TeamAddEvent -> r
$cgmapQl :: forall r r'.
(r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> TeamAddEvent -> r
gmapT :: (forall b. Data b => b -> b) -> TeamAddEvent -> TeamAddEvent
$cgmapT :: (forall b. Data b => b -> b) -> TeamAddEvent -> TeamAddEvent
dataCast2 :: (forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c TeamAddEvent)
$cdataCast2 :: forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c TeamAddEvent)
dataCast1 :: (forall d. Data d => c (t d)) -> Maybe (c TeamAddEvent)
$cdataCast1 :: forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c TeamAddEvent)
dataTypeOf :: TeamAddEvent -> DataType
$cdataTypeOf :: TeamAddEvent -> DataType
toConstr :: TeamAddEvent -> Constr
$ctoConstr :: TeamAddEvent -> Constr
gunfold :: (forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c TeamAddEvent
$cgunfold :: forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c TeamAddEvent
gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> TeamAddEvent -> c TeamAddEvent
$cgfoldl :: forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> TeamAddEvent -> c TeamAddEvent
$cp1Data :: Typeable TeamAddEvent
Data, (forall x. TeamAddEvent -> Rep TeamAddEvent x)
-> (forall x. Rep TeamAddEvent x -> TeamAddEvent)
-> Generic TeamAddEvent
forall x. Rep TeamAddEvent x -> TeamAddEvent
forall x. TeamAddEvent -> Rep TeamAddEvent x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep TeamAddEvent x -> TeamAddEvent
$cfrom :: forall x. TeamAddEvent -> Rep TeamAddEvent x
Generic)
instance EventHasSender TeamAddEvent where senderOfEvent :: TeamAddEvent -> HookUser
senderOfEvent = TeamAddEvent -> HookUser
evTeamAddSender
instance EventHasRepo TeamAddEvent where repoForEvent :: TeamAddEvent -> HookRepository
repoForEvent = TeamAddEvent -> HookRepository
evTeamAddRepo
instance NFData TeamAddEvent where rnf :: TeamAddEvent -> ()
rnf = TeamAddEvent -> ()
forall a. (Generic a, GNFData (Rep a)) => a -> ()
genericRnf
data WatchEventAction
= WatchStartedAction
| WatchActionOther !Text
deriving (WatchEventAction -> WatchEventAction -> Bool
(WatchEventAction -> WatchEventAction -> Bool)
-> (WatchEventAction -> WatchEventAction -> Bool)
-> Eq WatchEventAction
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: WatchEventAction -> WatchEventAction -> Bool
$c/= :: WatchEventAction -> WatchEventAction -> Bool
== :: WatchEventAction -> WatchEventAction -> Bool
$c== :: WatchEventAction -> WatchEventAction -> Bool
Eq, Eq WatchEventAction
Eq WatchEventAction
-> (WatchEventAction -> WatchEventAction -> Ordering)
-> (WatchEventAction -> WatchEventAction -> Bool)
-> (WatchEventAction -> WatchEventAction -> Bool)
-> (WatchEventAction -> WatchEventAction -> Bool)
-> (WatchEventAction -> WatchEventAction -> Bool)
-> (WatchEventAction -> WatchEventAction -> WatchEventAction)
-> (WatchEventAction -> WatchEventAction -> WatchEventAction)
-> Ord WatchEventAction
WatchEventAction -> WatchEventAction -> Bool
WatchEventAction -> WatchEventAction -> Ordering
WatchEventAction -> WatchEventAction -> WatchEventAction
forall a.
Eq a
-> (a -> a -> Ordering)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> a)
-> (a -> a -> a)
-> Ord a
min :: WatchEventAction -> WatchEventAction -> WatchEventAction
$cmin :: WatchEventAction -> WatchEventAction -> WatchEventAction
max :: WatchEventAction -> WatchEventAction -> WatchEventAction
$cmax :: WatchEventAction -> WatchEventAction -> WatchEventAction
>= :: WatchEventAction -> WatchEventAction -> Bool
$c>= :: WatchEventAction -> WatchEventAction -> Bool
> :: WatchEventAction -> WatchEventAction -> Bool
$c> :: WatchEventAction -> WatchEventAction -> Bool
<= :: WatchEventAction -> WatchEventAction -> Bool
$c<= :: WatchEventAction -> WatchEventAction -> Bool
< :: WatchEventAction -> WatchEventAction -> Bool
$c< :: WatchEventAction -> WatchEventAction -> Bool
compare :: WatchEventAction -> WatchEventAction -> Ordering
$ccompare :: WatchEventAction -> WatchEventAction -> Ordering
$cp1Ord :: Eq WatchEventAction
Ord, Int -> WatchEventAction -> ShowS
[WatchEventAction] -> ShowS
WatchEventAction -> String
(Int -> WatchEventAction -> ShowS)
-> (WatchEventAction -> String)
-> ([WatchEventAction] -> ShowS)
-> Show WatchEventAction
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [WatchEventAction] -> ShowS
$cshowList :: [WatchEventAction] -> ShowS
show :: WatchEventAction -> String
$cshow :: WatchEventAction -> String
showsPrec :: Int -> WatchEventAction -> ShowS
$cshowsPrec :: Int -> WatchEventAction -> ShowS
Show, (forall x. WatchEventAction -> Rep WatchEventAction x)
-> (forall x. Rep WatchEventAction x -> WatchEventAction)
-> Generic WatchEventAction
forall x. Rep WatchEventAction x -> WatchEventAction
forall x. WatchEventAction -> Rep WatchEventAction x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep WatchEventAction x -> WatchEventAction
$cfrom :: forall x. WatchEventAction -> Rep WatchEventAction x
Generic, Typeable, Typeable WatchEventAction
DataType
Constr
Typeable WatchEventAction
-> (forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> WatchEventAction -> c WatchEventAction)
-> (forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c WatchEventAction)
-> (WatchEventAction -> Constr)
-> (WatchEventAction -> DataType)
-> (forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c WatchEventAction))
-> (forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c WatchEventAction))
-> ((forall b. Data b => b -> b)
-> WatchEventAction -> WatchEventAction)
-> (forall r r'.
(r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> WatchEventAction -> r)
-> (forall r r'.
(r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> WatchEventAction -> r)
-> (forall u.
(forall d. Data d => d -> u) -> WatchEventAction -> [u])
-> (forall u.
Int -> (forall d. Data d => d -> u) -> WatchEventAction -> u)
-> (forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d)
-> WatchEventAction -> m WatchEventAction)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> WatchEventAction -> m WatchEventAction)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> WatchEventAction -> m WatchEventAction)
-> Data WatchEventAction
WatchEventAction -> DataType
WatchEventAction -> Constr
(forall b. Data b => b -> b)
-> WatchEventAction -> WatchEventAction
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> WatchEventAction -> c WatchEventAction
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c WatchEventAction
forall a.
Typeable a
-> (forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> a -> c a)
-> (forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c a)
-> (a -> Constr)
-> (a -> DataType)
-> (forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c a))
-> (forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c a))
-> ((forall b. Data b => b -> b) -> a -> a)
-> (forall r r'.
(r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> a -> r)
-> (forall r r'.
(r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> a -> r)
-> (forall u. (forall d. Data d => d -> u) -> a -> [u])
-> (forall u. Int -> (forall d. Data d => d -> u) -> a -> u)
-> (forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d) -> a -> m a)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> a -> m a)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> a -> m a)
-> Data a
forall u.
Int -> (forall d. Data d => d -> u) -> WatchEventAction -> u
forall u. (forall d. Data d => d -> u) -> WatchEventAction -> [u]
forall r r'.
(r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> WatchEventAction -> r
forall r r'.
(r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> WatchEventAction -> r
forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d)
-> WatchEventAction -> m WatchEventAction
forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> WatchEventAction -> m WatchEventAction
forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c WatchEventAction
forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> WatchEventAction -> c WatchEventAction
forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c WatchEventAction)
forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c WatchEventAction)
$cWatchActionOther :: Constr
$cWatchStartedAction :: Constr
$tWatchEventAction :: DataType
gmapMo :: (forall d. Data d => d -> m d)
-> WatchEventAction -> m WatchEventAction
$cgmapMo :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> WatchEventAction -> m WatchEventAction
gmapMp :: (forall d. Data d => d -> m d)
-> WatchEventAction -> m WatchEventAction
$cgmapMp :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> WatchEventAction -> m WatchEventAction
gmapM :: (forall d. Data d => d -> m d)
-> WatchEventAction -> m WatchEventAction
$cgmapM :: forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d)
-> WatchEventAction -> m WatchEventAction
gmapQi :: Int -> (forall d. Data d => d -> u) -> WatchEventAction -> u
$cgmapQi :: forall u.
Int -> (forall d. Data d => d -> u) -> WatchEventAction -> u
gmapQ :: (forall d. Data d => d -> u) -> WatchEventAction -> [u]
$cgmapQ :: forall u. (forall d. Data d => d -> u) -> WatchEventAction -> [u]
gmapQr :: (r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> WatchEventAction -> r
$cgmapQr :: forall r r'.
(r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> WatchEventAction -> r
gmapQl :: (r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> WatchEventAction -> r
$cgmapQl :: forall r r'.
(r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> WatchEventAction -> r
gmapT :: (forall b. Data b => b -> b)
-> WatchEventAction -> WatchEventAction
$cgmapT :: (forall b. Data b => b -> b)
-> WatchEventAction -> WatchEventAction
dataCast2 :: (forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c WatchEventAction)
$cdataCast2 :: forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c WatchEventAction)
dataCast1 :: (forall d. Data d => c (t d)) -> Maybe (c WatchEventAction)
$cdataCast1 :: forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c WatchEventAction)
dataTypeOf :: WatchEventAction -> DataType
$cdataTypeOf :: WatchEventAction -> DataType
toConstr :: WatchEventAction -> Constr
$ctoConstr :: WatchEventAction -> Constr
gunfold :: (forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c WatchEventAction
$cgunfold :: forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c WatchEventAction
gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> WatchEventAction -> c WatchEventAction
$cgfoldl :: forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> WatchEventAction -> c WatchEventAction
$cp1Data :: Typeable WatchEventAction
Data)
instance NFData WatchEventAction where rnf :: WatchEventAction -> ()
rnf = WatchEventAction -> ()
forall a. (Generic a, GNFData (Rep a)) => a -> ()
genericRnf
instance FromJSON WatchEventAction where
parseJSON :: Value -> Parser WatchEventAction
parseJSON = String
-> (Text -> Parser WatchEventAction)
-> Value
-> Parser WatchEventAction
forall a. String -> (Text -> Parser a) -> Value -> Parser a
withText String
"Watch event action" ((Text -> Parser WatchEventAction)
-> Value -> Parser WatchEventAction)
-> (Text -> Parser WatchEventAction)
-> Value
-> Parser WatchEventAction
forall a b. (a -> b) -> a -> b
$ \Text
t ->
case Text
t of
Text
"started" -> WatchEventAction -> Parser WatchEventAction
forall (f :: * -> *) a. Applicative f => a -> f a
pure WatchEventAction
WatchStartedAction
Text
_ -> WatchEventAction -> Parser WatchEventAction
forall (f :: * -> *) a. Applicative f => a -> f a
pure (Text -> WatchEventAction
WatchActionOther Text
t)
data WatchEvent = WatchEvent
{ WatchEvent -> WatchEventAction
evWatchAction :: !WatchEventAction
, WatchEvent -> HookRepository
evWatchRepo :: !HookRepository
, WatchEvent -> HookUser
evWatchSender :: !HookUser
}
deriving (WatchEvent -> WatchEvent -> Bool
(WatchEvent -> WatchEvent -> Bool)
-> (WatchEvent -> WatchEvent -> Bool) -> Eq WatchEvent
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: WatchEvent -> WatchEvent -> Bool
$c/= :: WatchEvent -> WatchEvent -> Bool
== :: WatchEvent -> WatchEvent -> Bool
$c== :: WatchEvent -> WatchEvent -> Bool
Eq, Int -> WatchEvent -> ShowS
[WatchEvent] -> ShowS
WatchEvent -> String
(Int -> WatchEvent -> ShowS)
-> (WatchEvent -> String)
-> ([WatchEvent] -> ShowS)
-> Show WatchEvent
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [WatchEvent] -> ShowS
$cshowList :: [WatchEvent] -> ShowS
show :: WatchEvent -> String
$cshow :: WatchEvent -> String
showsPrec :: Int -> WatchEvent -> ShowS
$cshowsPrec :: Int -> WatchEvent -> ShowS
Show, Typeable, Typeable WatchEvent
DataType
Constr
Typeable WatchEvent
-> (forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> WatchEvent -> c WatchEvent)
-> (forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c WatchEvent)
-> (WatchEvent -> Constr)
-> (WatchEvent -> DataType)
-> (forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c WatchEvent))
-> (forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c WatchEvent))
-> ((forall b. Data b => b -> b) -> WatchEvent -> WatchEvent)
-> (forall r r'.
(r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> WatchEvent -> r)
-> (forall r r'.
(r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> WatchEvent -> r)
-> (forall u. (forall d. Data d => d -> u) -> WatchEvent -> [u])
-> (forall u.
Int -> (forall d. Data d => d -> u) -> WatchEvent -> u)
-> (forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d) -> WatchEvent -> m WatchEvent)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> WatchEvent -> m WatchEvent)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> WatchEvent -> m WatchEvent)
-> Data WatchEvent
WatchEvent -> DataType
WatchEvent -> Constr
(forall b. Data b => b -> b) -> WatchEvent -> WatchEvent
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> WatchEvent -> c WatchEvent
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c WatchEvent
forall a.
Typeable a
-> (forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> a -> c a)
-> (forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c a)
-> (a -> Constr)
-> (a -> DataType)
-> (forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c a))
-> (forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c a))
-> ((forall b. Data b => b -> b) -> a -> a)
-> (forall r r'.
(r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> a -> r)
-> (forall r r'.
(r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> a -> r)
-> (forall u. (forall d. Data d => d -> u) -> a -> [u])
-> (forall u. Int -> (forall d. Data d => d -> u) -> a -> u)
-> (forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d) -> a -> m a)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> a -> m a)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> a -> m a)
-> Data a
forall u. Int -> (forall d. Data d => d -> u) -> WatchEvent -> u
forall u. (forall d. Data d => d -> u) -> WatchEvent -> [u]
forall r r'.
(r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> WatchEvent -> r
forall r r'.
(r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> WatchEvent -> r
forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d) -> WatchEvent -> m WatchEvent
forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> WatchEvent -> m WatchEvent
forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c WatchEvent
forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> WatchEvent -> c WatchEvent
forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c WatchEvent)
forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c WatchEvent)
$cWatchEvent :: Constr
$tWatchEvent :: DataType
gmapMo :: (forall d. Data d => d -> m d) -> WatchEvent -> m WatchEvent
$cgmapMo :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> WatchEvent -> m WatchEvent
gmapMp :: (forall d. Data d => d -> m d) -> WatchEvent -> m WatchEvent
$cgmapMp :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> WatchEvent -> m WatchEvent
gmapM :: (forall d. Data d => d -> m d) -> WatchEvent -> m WatchEvent
$cgmapM :: forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d) -> WatchEvent -> m WatchEvent
gmapQi :: Int -> (forall d. Data d => d -> u) -> WatchEvent -> u
$cgmapQi :: forall u. Int -> (forall d. Data d => d -> u) -> WatchEvent -> u
gmapQ :: (forall d. Data d => d -> u) -> WatchEvent -> [u]
$cgmapQ :: forall u. (forall d. Data d => d -> u) -> WatchEvent -> [u]
gmapQr :: (r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> WatchEvent -> r
$cgmapQr :: forall r r'.
(r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> WatchEvent -> r
gmapQl :: (r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> WatchEvent -> r
$cgmapQl :: forall r r'.
(r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> WatchEvent -> r
gmapT :: (forall b. Data b => b -> b) -> WatchEvent -> WatchEvent
$cgmapT :: (forall b. Data b => b -> b) -> WatchEvent -> WatchEvent
dataCast2 :: (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c WatchEvent)
$cdataCast2 :: forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c WatchEvent)
dataCast1 :: (forall d. Data d => c (t d)) -> Maybe (c WatchEvent)
$cdataCast1 :: forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c WatchEvent)
dataTypeOf :: WatchEvent -> DataType
$cdataTypeOf :: WatchEvent -> DataType
toConstr :: WatchEvent -> Constr
$ctoConstr :: WatchEvent -> Constr
gunfold :: (forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c WatchEvent
$cgunfold :: forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c WatchEvent
gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> WatchEvent -> c WatchEvent
$cgfoldl :: forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> WatchEvent -> c WatchEvent
$cp1Data :: Typeable WatchEvent
Data, (forall x. WatchEvent -> Rep WatchEvent x)
-> (forall x. Rep WatchEvent x -> WatchEvent) -> Generic WatchEvent
forall x. Rep WatchEvent x -> WatchEvent
forall x. WatchEvent -> Rep WatchEvent x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep WatchEvent x -> WatchEvent
$cfrom :: forall x. WatchEvent -> Rep WatchEvent x
Generic)
instance EventHasSender WatchEvent where senderOfEvent :: WatchEvent -> HookUser
senderOfEvent = WatchEvent -> HookUser
evWatchSender
instance EventHasRepo WatchEvent where repoForEvent :: WatchEvent -> HookRepository
repoForEvent = WatchEvent -> HookRepository
evWatchRepo
instance NFData WatchEvent where rnf :: WatchEvent -> ()
rnf = WatchEvent -> ()
forall a. (Generic a, GNFData (Rep a)) => a -> ()
genericRnf
instance FromJSON CheckSuiteEvent where
parseJSON :: Value -> Parser CheckSuiteEvent
parseJSON = String
-> (Object -> Parser CheckSuiteEvent)
-> Value
-> Parser CheckSuiteEvent
forall a. String -> (Object -> Parser a) -> Value -> Parser a
withObject String
"CheckSuiteEvent" ((Object -> Parser CheckSuiteEvent)
-> Value -> Parser CheckSuiteEvent)
-> (Object -> Parser CheckSuiteEvent)
-> Value
-> Parser CheckSuiteEvent
forall a b. (a -> b) -> a -> b
$ \Object
o -> CheckSuiteEventAction
-> HookCheckSuite
-> HookRepository
-> Maybe HookOrganization
-> HookUser
-> Maybe HookChecksInstallation
-> CheckSuiteEvent
CheckSuiteEvent
(CheckSuiteEventAction
-> HookCheckSuite
-> HookRepository
-> Maybe HookOrganization
-> HookUser
-> Maybe HookChecksInstallation
-> CheckSuiteEvent)
-> Parser CheckSuiteEventAction
-> Parser
(HookCheckSuite
-> HookRepository
-> Maybe HookOrganization
-> HookUser
-> Maybe HookChecksInstallation
-> CheckSuiteEvent)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Key -> Parser CheckSuiteEventAction
forall a. FromJSON a => Object -> Key -> Parser a
.: Key
"action"
Parser
(HookCheckSuite
-> HookRepository
-> Maybe HookOrganization
-> HookUser
-> Maybe HookChecksInstallation
-> CheckSuiteEvent)
-> Parser HookCheckSuite
-> Parser
(HookRepository
-> Maybe HookOrganization
-> HookUser
-> Maybe HookChecksInstallation
-> CheckSuiteEvent)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Key -> Parser HookCheckSuite
forall a. FromJSON a => Object -> Key -> Parser a
.: Key
"check_suite"
Parser
(HookRepository
-> Maybe HookOrganization
-> HookUser
-> Maybe HookChecksInstallation
-> CheckSuiteEvent)
-> Parser HookRepository
-> Parser
(Maybe HookOrganization
-> HookUser -> Maybe HookChecksInstallation -> CheckSuiteEvent)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Key -> Parser HookRepository
forall a. FromJSON a => Object -> Key -> Parser a
.: Key
"repository"
Parser
(Maybe HookOrganization
-> HookUser -> Maybe HookChecksInstallation -> CheckSuiteEvent)
-> Parser (Maybe HookOrganization)
-> Parser
(HookUser -> Maybe HookChecksInstallation -> CheckSuiteEvent)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Key -> Parser (Maybe HookOrganization)
forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
.:? Key
"organization"
Parser
(HookUser -> Maybe HookChecksInstallation -> CheckSuiteEvent)
-> Parser HookUser
-> Parser (Maybe HookChecksInstallation -> CheckSuiteEvent)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Key -> Parser HookUser
forall a. FromJSON a => Object -> Key -> Parser a
.: Key
"sender"
Parser (Maybe HookChecksInstallation -> CheckSuiteEvent)
-> Parser (Maybe HookChecksInstallation) -> Parser CheckSuiteEvent
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Key -> Parser (Maybe HookChecksInstallation)
forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
.:? Key
"installation"
instance FromJSON CheckRunEvent where
parseJSON :: Value -> Parser CheckRunEvent
parseJSON = String
-> (Object -> Parser CheckRunEvent)
-> Value
-> Parser CheckRunEvent
forall a. String -> (Object -> Parser a) -> Value -> Parser a
withObject String
"CheckRunEvent" ((Object -> Parser CheckRunEvent) -> Value -> Parser CheckRunEvent)
-> (Object -> Parser CheckRunEvent)
-> Value
-> Parser CheckRunEvent
forall a b. (a -> b) -> a -> b
$ \Object
o -> CheckRunEventAction
-> HookCheckRun
-> Maybe HookCheckRunRequestedAction
-> HookRepository
-> Maybe HookOrganization
-> HookUser
-> Maybe HookChecksInstallation
-> CheckRunEvent
CheckRunEvent
(CheckRunEventAction
-> HookCheckRun
-> Maybe HookCheckRunRequestedAction
-> HookRepository
-> Maybe HookOrganization
-> HookUser
-> Maybe HookChecksInstallation
-> CheckRunEvent)
-> Parser CheckRunEventAction
-> Parser
(HookCheckRun
-> Maybe HookCheckRunRequestedAction
-> HookRepository
-> Maybe HookOrganization
-> HookUser
-> Maybe HookChecksInstallation
-> CheckRunEvent)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Key -> Parser CheckRunEventAction
forall a. FromJSON a => Object -> Key -> Parser a
.: Key
"action"
Parser
(HookCheckRun
-> Maybe HookCheckRunRequestedAction
-> HookRepository
-> Maybe HookOrganization
-> HookUser
-> Maybe HookChecksInstallation
-> CheckRunEvent)
-> Parser HookCheckRun
-> Parser
(Maybe HookCheckRunRequestedAction
-> HookRepository
-> Maybe HookOrganization
-> HookUser
-> Maybe HookChecksInstallation
-> CheckRunEvent)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Key -> Parser HookCheckRun
forall a. FromJSON a => Object -> Key -> Parser a
.: Key
"check_run"
Parser
(Maybe HookCheckRunRequestedAction
-> HookRepository
-> Maybe HookOrganization
-> HookUser
-> Maybe HookChecksInstallation
-> CheckRunEvent)
-> Parser (Maybe HookCheckRunRequestedAction)
-> Parser
(HookRepository
-> Maybe HookOrganization
-> HookUser
-> Maybe HookChecksInstallation
-> CheckRunEvent)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Key -> Parser (Maybe HookCheckRunRequestedAction)
forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
.:? Key
"requested_action"
Parser
(HookRepository
-> Maybe HookOrganization
-> HookUser
-> Maybe HookChecksInstallation
-> CheckRunEvent)
-> Parser HookRepository
-> Parser
(Maybe HookOrganization
-> HookUser -> Maybe HookChecksInstallation -> CheckRunEvent)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Key -> Parser HookRepository
forall a. FromJSON a => Object -> Key -> Parser a
.: Key
"repository"
Parser
(Maybe HookOrganization
-> HookUser -> Maybe HookChecksInstallation -> CheckRunEvent)
-> Parser (Maybe HookOrganization)
-> Parser
(HookUser -> Maybe HookChecksInstallation -> CheckRunEvent)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Key -> Parser (Maybe HookOrganization)
forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
.:? Key
"organization"
Parser (HookUser -> Maybe HookChecksInstallation -> CheckRunEvent)
-> Parser HookUser
-> Parser (Maybe HookChecksInstallation -> CheckRunEvent)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Key -> Parser HookUser
forall a. FromJSON a => Object -> Key -> Parser a
.: Key
"sender"
Parser (Maybe HookChecksInstallation -> CheckRunEvent)
-> Parser (Maybe HookChecksInstallation) -> Parser CheckRunEvent
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Key -> Parser (Maybe HookChecksInstallation)
forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
.:? Key
"installation"
instance FromJSON CommitCommentEvent where
parseJSON :: Value -> Parser CommitCommentEvent
parseJSON = String
-> (Object -> Parser CommitCommentEvent)
-> Value
-> Parser CommitCommentEvent
forall a. String -> (Object -> Parser a) -> Value -> Parser a
withObject String
"CommitCommentEvent" ((Object -> Parser CommitCommentEvent)
-> Value -> Parser CommitCommentEvent)
-> (Object -> Parser CommitCommentEvent)
-> Value
-> Parser CommitCommentEvent
forall a b. (a -> b) -> a -> b
$ \Object
o -> CommitCommentEventAction
-> HookCommitComment
-> HookRepository
-> HookUser
-> CommitCommentEvent
CommitCommentEvent
(CommitCommentEventAction
-> HookCommitComment
-> HookRepository
-> HookUser
-> CommitCommentEvent)
-> Parser CommitCommentEventAction
-> Parser
(HookCommitComment
-> HookRepository -> HookUser -> CommitCommentEvent)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Key -> Parser CommitCommentEventAction
forall a. FromJSON a => Object -> Key -> Parser a
.: Key
"action"
Parser
(HookCommitComment
-> HookRepository -> HookUser -> CommitCommentEvent)
-> Parser HookCommitComment
-> Parser (HookRepository -> HookUser -> CommitCommentEvent)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Key -> Parser HookCommitComment
forall a. FromJSON a => Object -> Key -> Parser a
.: Key
"comment"
Parser (HookRepository -> HookUser -> CommitCommentEvent)
-> Parser HookRepository -> Parser (HookUser -> CommitCommentEvent)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Key -> Parser HookRepository
forall a. FromJSON a => Object -> Key -> Parser a
.: Key
"repository"
Parser (HookUser -> CommitCommentEvent)
-> Parser HookUser -> Parser CommitCommentEvent
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Key -> Parser HookUser
forall a. FromJSON a => Object -> Key -> Parser a
.: Key
"sender"
instance FromJSON CreateEvent where
parseJSON :: Value -> Parser CreateEvent
parseJSON = String
-> (Object -> Parser CreateEvent) -> Value -> Parser CreateEvent
forall a. String -> (Object -> Parser a) -> Value -> Parser a
withObject String
"CreateEvent" ((Object -> Parser CreateEvent) -> Value -> Parser CreateEvent)
-> (Object -> Parser CreateEvent) -> Value -> Parser CreateEvent
forall a b. (a -> b) -> a -> b
$ \Object
o -> Text
-> Text
-> Text
-> Text
-> OwnerType
-> HookRepository
-> HookUser
-> CreateEvent
CreateEvent
(Text
-> Text
-> Text
-> Text
-> OwnerType
-> HookRepository
-> HookUser
-> CreateEvent)
-> Parser Text
-> Parser
(Text
-> Text
-> Text
-> OwnerType
-> HookRepository
-> HookUser
-> CreateEvent)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Key -> Parser Text
forall a. FromJSON a => Object -> Key -> Parser a
.: Key
"ref"
Parser
(Text
-> Text
-> Text
-> OwnerType
-> HookRepository
-> HookUser
-> CreateEvent)
-> Parser Text
-> Parser
(Text
-> Text -> OwnerType -> HookRepository -> HookUser -> CreateEvent)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Key -> Parser Text
forall a. FromJSON a => Object -> Key -> Parser a
.: Key
"ref_type"
Parser
(Text
-> Text -> OwnerType -> HookRepository -> HookUser -> CreateEvent)
-> Parser Text
-> Parser
(Text -> OwnerType -> HookRepository -> HookUser -> CreateEvent)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Key -> Parser Text
forall a. FromJSON a => Object -> Key -> Parser a
.: Key
"master_branch"
Parser
(Text -> OwnerType -> HookRepository -> HookUser -> CreateEvent)
-> Parser Text
-> Parser (OwnerType -> HookRepository -> HookUser -> CreateEvent)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Key -> Parser Text
forall a. FromJSON a => Object -> Key -> Parser a
.: Key
"description"
Parser (OwnerType -> HookRepository -> HookUser -> CreateEvent)
-> Parser OwnerType
-> Parser (HookRepository -> HookUser -> CreateEvent)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Key -> Parser OwnerType
forall a. FromJSON a => Object -> Key -> Parser a
.: Key
"pusher_type"
Parser (HookRepository -> HookUser -> CreateEvent)
-> Parser HookRepository -> Parser (HookUser -> CreateEvent)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Key -> Parser HookRepository
forall a. FromJSON a => Object -> Key -> Parser a
.: Key
"repository"
Parser (HookUser -> CreateEvent)
-> Parser HookUser -> Parser CreateEvent
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Key -> Parser HookUser
forall a. FromJSON a => Object -> Key -> Parser a
.: Key
"sender"
instance FromJSON DeleteEvent where
parseJSON :: Value -> Parser DeleteEvent
parseJSON = String
-> (Object -> Parser DeleteEvent) -> Value -> Parser DeleteEvent
forall a. String -> (Object -> Parser a) -> Value -> Parser a
withObject String
"DeleteEvent" ((Object -> Parser DeleteEvent) -> Value -> Parser DeleteEvent)
-> (Object -> Parser DeleteEvent) -> Value -> Parser DeleteEvent
forall a b. (a -> b) -> a -> b
$ \Object
o -> Text
-> Text -> OwnerType -> HookRepository -> HookUser -> DeleteEvent
DeleteEvent
(Text
-> Text -> OwnerType -> HookRepository -> HookUser -> DeleteEvent)
-> Parser Text
-> Parser
(Text -> OwnerType -> HookRepository -> HookUser -> DeleteEvent)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Key -> Parser Text
forall a. FromJSON a => Object -> Key -> Parser a
.: Key
"ref"
Parser
(Text -> OwnerType -> HookRepository -> HookUser -> DeleteEvent)
-> Parser Text
-> Parser (OwnerType -> HookRepository -> HookUser -> DeleteEvent)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Key -> Parser Text
forall a. FromJSON a => Object -> Key -> Parser a
.: Key
"ref_type"
Parser (OwnerType -> HookRepository -> HookUser -> DeleteEvent)
-> Parser OwnerType
-> Parser (HookRepository -> HookUser -> DeleteEvent)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Key -> Parser OwnerType
forall a. FromJSON a => Object -> Key -> Parser a
.: Key
"pusher_type"
Parser (HookRepository -> HookUser -> DeleteEvent)
-> Parser HookRepository -> Parser (HookUser -> DeleteEvent)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Key -> Parser HookRepository
forall a. FromJSON a => Object -> Key -> Parser a
.: Key
"repository"
Parser (HookUser -> DeleteEvent)
-> Parser HookUser -> Parser DeleteEvent
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Key -> Parser HookUser
forall a. FromJSON a => Object -> Key -> Parser a
.: Key
"sender"
instance FromJSON DeploymentEvent where
parseJSON :: Value -> Parser DeploymentEvent
parseJSON = String
-> (Object -> Parser DeploymentEvent)
-> Value
-> Parser DeploymentEvent
forall a. String -> (Object -> Parser a) -> Value -> Parser a
withObject String
"DeploymentEvent" ((Object -> Parser DeploymentEvent)
-> Value -> Parser DeploymentEvent)
-> (Object -> Parser DeploymentEvent)
-> Value
-> Parser DeploymentEvent
forall a b. (a -> b) -> a -> b
$ \Object
o -> HookDeployment -> HookRepository -> HookUser -> DeploymentEvent
DeploymentEvent
(HookDeployment -> HookRepository -> HookUser -> DeploymentEvent)
-> Parser HookDeployment
-> Parser (HookRepository -> HookUser -> DeploymentEvent)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Key -> Parser HookDeployment
forall a. FromJSON a => Object -> Key -> Parser a
.: Key
"deployment"
Parser (HookRepository -> HookUser -> DeploymentEvent)
-> Parser HookRepository -> Parser (HookUser -> DeploymentEvent)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Key -> Parser HookRepository
forall a. FromJSON a => Object -> Key -> Parser a
.: Key
"repository"
Parser (HookUser -> DeploymentEvent)
-> Parser HookUser -> Parser DeploymentEvent
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Key -> Parser HookUser
forall a. FromJSON a => Object -> Key -> Parser a
.: Key
"sender"
instance FromJSON DeploymentStatusEvent where
parseJSON :: Value -> Parser DeploymentStatusEvent
parseJSON = String
-> (Object -> Parser DeploymentStatusEvent)
-> Value
-> Parser DeploymentStatusEvent
forall a. String -> (Object -> Parser a) -> Value -> Parser a
withObject String
"DeploymentStatusEvent" ((Object -> Parser DeploymentStatusEvent)
-> Value -> Parser DeploymentStatusEvent)
-> (Object -> Parser DeploymentStatusEvent)
-> Value
-> Parser DeploymentStatusEvent
forall a b. (a -> b) -> a -> b
$ \Object
o -> HookDeploymentStatus
-> HookDeployment
-> HookRepository
-> HookUser
-> DeploymentStatusEvent
DeploymentStatusEvent
(HookDeploymentStatus
-> HookDeployment
-> HookRepository
-> HookUser
-> DeploymentStatusEvent)
-> Parser HookDeploymentStatus
-> Parser
(HookDeployment
-> HookRepository -> HookUser -> DeploymentStatusEvent)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Key -> Parser HookDeploymentStatus
forall a. FromJSON a => Object -> Key -> Parser a
.: Key
"deployment_status"
Parser
(HookDeployment
-> HookRepository -> HookUser -> DeploymentStatusEvent)
-> Parser HookDeployment
-> Parser (HookRepository -> HookUser -> DeploymentStatusEvent)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Key -> Parser HookDeployment
forall a. FromJSON a => Object -> Key -> Parser a
.: Key
"deployment"
Parser (HookRepository -> HookUser -> DeploymentStatusEvent)
-> Parser HookRepository
-> Parser (HookUser -> DeploymentStatusEvent)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Key -> Parser HookRepository
forall a. FromJSON a => Object -> Key -> Parser a
.: Key
"repository"
Parser (HookUser -> DeploymentStatusEvent)
-> Parser HookUser -> Parser DeploymentStatusEvent
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Key -> Parser HookUser
forall a. FromJSON a => Object -> Key -> Parser a
.: Key
"sender"
instance FromJSON ForkEvent where
parseJSON :: Value -> Parser ForkEvent
parseJSON = String -> (Object -> Parser ForkEvent) -> Value -> Parser ForkEvent
forall a. String -> (Object -> Parser a) -> Value -> Parser a
withObject String
"ForkEvent" ((Object -> Parser ForkEvent) -> Value -> Parser ForkEvent)
-> (Object -> Parser ForkEvent) -> Value -> Parser ForkEvent
forall a b. (a -> b) -> a -> b
$ \Object
o -> HookRepository -> HookRepository -> HookUser -> ForkEvent
ForkEvent
(HookRepository -> HookRepository -> HookUser -> ForkEvent)
-> Parser HookRepository
-> Parser (HookRepository -> HookUser -> ForkEvent)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Key -> Parser HookRepository
forall a. FromJSON a => Object -> Key -> Parser a
.: Key
"forkee"
Parser (HookRepository -> HookUser -> ForkEvent)
-> Parser HookRepository -> Parser (HookUser -> ForkEvent)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Key -> Parser HookRepository
forall a. FromJSON a => Object -> Key -> Parser a
.: Key
"repository"
Parser (HookUser -> ForkEvent)
-> Parser HookUser -> Parser ForkEvent
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Key -> Parser HookUser
forall a. FromJSON a => Object -> Key -> Parser a
.: Key
"sender"
instance FromJSON GollumEvent where
parseJSON :: Value -> Parser GollumEvent
parseJSON = String
-> (Object -> Parser GollumEvent) -> Value -> Parser GollumEvent
forall a. String -> (Object -> Parser a) -> Value -> Parser a
withObject String
"GollumEvent" ((Object -> Parser GollumEvent) -> Value -> Parser GollumEvent)
-> (Object -> Parser GollumEvent) -> Value -> Parser GollumEvent
forall a b. (a -> b) -> a -> b
$ \Object
o -> Vector HookWikiPage -> HookRepository -> HookUser -> GollumEvent
GollumEvent
(Vector HookWikiPage -> HookRepository -> HookUser -> GollumEvent)
-> Parser (Vector HookWikiPage)
-> Parser (HookRepository -> HookUser -> GollumEvent)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Key -> Parser (Vector HookWikiPage)
forall a. FromJSON a => Object -> Key -> Parser a
.: Key
"pages"
Parser (HookRepository -> HookUser -> GollumEvent)
-> Parser HookRepository -> Parser (HookUser -> GollumEvent)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Key -> Parser HookRepository
forall a. FromJSON a => Object -> Key -> Parser a
.: Key
"repository"
Parser (HookUser -> GollumEvent)
-> Parser HookUser -> Parser GollumEvent
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Key -> Parser HookUser
forall a. FromJSON a => Object -> Key -> Parser a
.: Key
"sender"
instance FromJSON InstallationEvent where
parseJSON :: Value -> Parser InstallationEvent
parseJSON = String
-> (Object -> Parser InstallationEvent)
-> Value
-> Parser InstallationEvent
forall a. String -> (Object -> Parser a) -> Value -> Parser a
withObject String
"InstallationEvent" ((Object -> Parser InstallationEvent)
-> Value -> Parser InstallationEvent)
-> (Object -> Parser InstallationEvent)
-> Value
-> Parser InstallationEvent
forall a b. (a -> b) -> a -> b
$ \Object
o -> InstallationEventAction
-> HookInstallation
-> Vector HookRepositorySimple
-> HookUser
-> InstallationEvent
InstallationEvent
(InstallationEventAction
-> HookInstallation
-> Vector HookRepositorySimple
-> HookUser
-> InstallationEvent)
-> Parser InstallationEventAction
-> Parser
(HookInstallation
-> Vector HookRepositorySimple -> HookUser -> InstallationEvent)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Key -> Parser InstallationEventAction
forall a. FromJSON a => Object -> Key -> Parser a
.: Key
"action"
Parser
(HookInstallation
-> Vector HookRepositorySimple -> HookUser -> InstallationEvent)
-> Parser HookInstallation
-> Parser
(Vector HookRepositorySimple -> HookUser -> InstallationEvent)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Key -> Parser HookInstallation
forall a. FromJSON a => Object -> Key -> Parser a
.: Key
"installation"
Parser
(Vector HookRepositorySimple -> HookUser -> InstallationEvent)
-> Parser (Vector HookRepositorySimple)
-> Parser (HookUser -> InstallationEvent)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Key -> Parser (Maybe (Vector HookRepositorySimple))
forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
.:? Key
"repositories" Parser (Maybe (Vector HookRepositorySimple))
-> Vector HookRepositorySimple
-> Parser (Vector HookRepositorySimple)
forall a. Parser (Maybe a) -> a -> Parser a
.!= Vector HookRepositorySimple
forall a. Monoid a => a
mempty
Parser (HookUser -> InstallationEvent)
-> Parser HookUser -> Parser InstallationEvent
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Key -> Parser HookUser
forall a. FromJSON a => Object -> Key -> Parser a
.: Key
"sender"
instance FromJSON InstallationRepositoriesEvent where
parseJSON :: Value -> Parser InstallationRepositoriesEvent
parseJSON = String
-> (Object -> Parser InstallationRepositoriesEvent)
-> Value
-> Parser InstallationRepositoriesEvent
forall a. String -> (Object -> Parser a) -> Value -> Parser a
withObject String
"InstallationRepositoriesEvent" ((Object -> Parser InstallationRepositoriesEvent)
-> Value -> Parser InstallationRepositoriesEvent)
-> (Object -> Parser InstallationRepositoriesEvent)
-> Value
-> Parser InstallationRepositoriesEvent
forall a b. (a -> b) -> a -> b
$ \Object
o -> InstallationRepoEventAction
-> HookInstallation
-> Text
-> Vector HookRepositorySimple
-> Vector HookRepositorySimple
-> HookUser
-> InstallationRepositoriesEvent
InstallationRepositoriesEvent
(InstallationRepoEventAction
-> HookInstallation
-> Text
-> Vector HookRepositorySimple
-> Vector HookRepositorySimple
-> HookUser
-> InstallationRepositoriesEvent)
-> Parser InstallationRepoEventAction
-> Parser
(HookInstallation
-> Text
-> Vector HookRepositorySimple
-> Vector HookRepositorySimple
-> HookUser
-> InstallationRepositoriesEvent)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Key -> Parser InstallationRepoEventAction
forall a. FromJSON a => Object -> Key -> Parser a
.: Key
"action"
Parser
(HookInstallation
-> Text
-> Vector HookRepositorySimple
-> Vector HookRepositorySimple
-> HookUser
-> InstallationRepositoriesEvent)
-> Parser HookInstallation
-> Parser
(Text
-> Vector HookRepositorySimple
-> Vector HookRepositorySimple
-> HookUser
-> InstallationRepositoriesEvent)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Key -> Parser HookInstallation
forall a. FromJSON a => Object -> Key -> Parser a
.: Key
"installation"
Parser
(Text
-> Vector HookRepositorySimple
-> Vector HookRepositorySimple
-> HookUser
-> InstallationRepositoriesEvent)
-> Parser Text
-> Parser
(Vector HookRepositorySimple
-> Vector HookRepositorySimple
-> HookUser
-> InstallationRepositoriesEvent)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Key -> Parser Text
forall a. FromJSON a => Object -> Key -> Parser a
.: Key
"repository_selection"
Parser
(Vector HookRepositorySimple
-> Vector HookRepositorySimple
-> HookUser
-> InstallationRepositoriesEvent)
-> Parser (Vector HookRepositorySimple)
-> Parser
(Vector HookRepositorySimple
-> HookUser -> InstallationRepositoriesEvent)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Key -> Parser (Vector HookRepositorySimple)
forall a. FromJSON a => Object -> Key -> Parser a
.: Key
"repositories_added"
Parser
(Vector HookRepositorySimple
-> HookUser -> InstallationRepositoriesEvent)
-> Parser (Vector HookRepositorySimple)
-> Parser (HookUser -> InstallationRepositoriesEvent)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Key -> Parser (Vector HookRepositorySimple)
forall a. FromJSON a => Object -> Key -> Parser a
.: Key
"repositories_removed"
Parser (HookUser -> InstallationRepositoriesEvent)
-> Parser HookUser -> Parser InstallationRepositoriesEvent
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Key -> Parser HookUser
forall a. FromJSON a => Object -> Key -> Parser a
.: Key
"sender"
instance FromJSON IssueCommentEvent where
parseJSON :: Value -> Parser IssueCommentEvent
parseJSON = String
-> (Object -> Parser IssueCommentEvent)
-> Value
-> Parser IssueCommentEvent
forall a. String -> (Object -> Parser a) -> Value -> Parser a
withObject String
"IssueCommentEvent" ((Object -> Parser IssueCommentEvent)
-> Value -> Parser IssueCommentEvent)
-> (Object -> Parser IssueCommentEvent)
-> Value
-> Parser IssueCommentEvent
forall a b. (a -> b) -> a -> b
$ \Object
o -> IssueCommentEventAction
-> HookIssue
-> HookIssueComment
-> HookRepository
-> HookUser
-> IssueCommentEvent
IssueCommentEvent
(IssueCommentEventAction
-> HookIssue
-> HookIssueComment
-> HookRepository
-> HookUser
-> IssueCommentEvent)
-> Parser IssueCommentEventAction
-> Parser
(HookIssue
-> HookIssueComment
-> HookRepository
-> HookUser
-> IssueCommentEvent)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Key -> Parser IssueCommentEventAction
forall a. FromJSON a => Object -> Key -> Parser a
.: Key
"action"
Parser
(HookIssue
-> HookIssueComment
-> HookRepository
-> HookUser
-> IssueCommentEvent)
-> Parser HookIssue
-> Parser
(HookIssueComment
-> HookRepository -> HookUser -> IssueCommentEvent)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Key -> Parser HookIssue
forall a. FromJSON a => Object -> Key -> Parser a
.: Key
"issue"
Parser
(HookIssueComment
-> HookRepository -> HookUser -> IssueCommentEvent)
-> Parser HookIssueComment
-> Parser (HookRepository -> HookUser -> IssueCommentEvent)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Key -> Parser HookIssueComment
forall a. FromJSON a => Object -> Key -> Parser a
.: Key
"comment"
Parser (HookRepository -> HookUser -> IssueCommentEvent)
-> Parser HookRepository -> Parser (HookUser -> IssueCommentEvent)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Key -> Parser HookRepository
forall a. FromJSON a => Object -> Key -> Parser a
.: Key
"repository"
Parser (HookUser -> IssueCommentEvent)
-> Parser HookUser -> Parser IssueCommentEvent
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Key -> Parser HookUser
forall a. FromJSON a => Object -> Key -> Parser a
.: Key
"sender"
instance FromJSON IssuesEvent where
parseJSON :: Value -> Parser IssuesEvent
parseJSON = String
-> (Object -> Parser IssuesEvent) -> Value -> Parser IssuesEvent
forall a. String -> (Object -> Parser a) -> Value -> Parser a
withObject String
"IssuesEvent" ((Object -> Parser IssuesEvent) -> Value -> Parser IssuesEvent)
-> (Object -> Parser IssuesEvent) -> Value -> Parser IssuesEvent
forall a b. (a -> b) -> a -> b
$ \Object
o -> IssuesEventAction
-> HookIssue -> HookRepository -> HookUser -> IssuesEvent
IssuesEvent
(IssuesEventAction
-> HookIssue -> HookRepository -> HookUser -> IssuesEvent)
-> Parser IssuesEventAction
-> Parser (HookIssue -> HookRepository -> HookUser -> IssuesEvent)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Key -> Parser IssuesEventAction
forall a. FromJSON a => Object -> Key -> Parser a
.: Key
"action"
Parser (HookIssue -> HookRepository -> HookUser -> IssuesEvent)
-> Parser HookIssue
-> Parser (HookRepository -> HookUser -> IssuesEvent)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Key -> Parser HookIssue
forall a. FromJSON a => Object -> Key -> Parser a
.: Key
"issue"
Parser (HookRepository -> HookUser -> IssuesEvent)
-> Parser HookRepository -> Parser (HookUser -> IssuesEvent)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Key -> Parser HookRepository
forall a. FromJSON a => Object -> Key -> Parser a
.: Key
"repository"
Parser (HookUser -> IssuesEvent)
-> Parser HookUser -> Parser IssuesEvent
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Key -> Parser HookUser
forall a. FromJSON a => Object -> Key -> Parser a
.: Key
"sender"
instance FromJSON LabelEvent where
parseJSON :: Value -> Parser LabelEvent
parseJSON = String
-> (Object -> Parser LabelEvent) -> Value -> Parser LabelEvent
forall a. String -> (Object -> Parser a) -> Value -> Parser a
withObject String
"LabelEvent" ((Object -> Parser LabelEvent) -> Value -> Parser LabelEvent)
-> (Object -> Parser LabelEvent) -> Value -> Parser LabelEvent
forall a b. (a -> b) -> a -> b
$ \Object
o -> LabelEventAction
-> HookRepositoryLabel
-> HookRepository
-> Maybe HookOrganization
-> HookUser
-> LabelEvent
LabelEvent
(LabelEventAction
-> HookRepositoryLabel
-> HookRepository
-> Maybe HookOrganization
-> HookUser
-> LabelEvent)
-> Parser LabelEventAction
-> Parser
(HookRepositoryLabel
-> HookRepository
-> Maybe HookOrganization
-> HookUser
-> LabelEvent)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Key -> Parser LabelEventAction
forall a. FromJSON a => Object -> Key -> Parser a
.: Key
"action"
Parser
(HookRepositoryLabel
-> HookRepository
-> Maybe HookOrganization
-> HookUser
-> LabelEvent)
-> Parser HookRepositoryLabel
-> Parser
(HookRepository
-> Maybe HookOrganization -> HookUser -> LabelEvent)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Key -> Parser HookRepositoryLabel
forall a. FromJSON a => Object -> Key -> Parser a
.: Key
"label"
Parser
(HookRepository
-> Maybe HookOrganization -> HookUser -> LabelEvent)
-> Parser HookRepository
-> Parser (Maybe HookOrganization -> HookUser -> LabelEvent)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Key -> Parser HookRepository
forall a. FromJSON a => Object -> Key -> Parser a
.: Key
"repository"
Parser (Maybe HookOrganization -> HookUser -> LabelEvent)
-> Parser (Maybe HookOrganization)
-> Parser (HookUser -> LabelEvent)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Key -> Parser (Maybe HookOrganization)
forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
.:? Key
"organization"
Parser (HookUser -> LabelEvent)
-> Parser HookUser -> Parser LabelEvent
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Key -> Parser HookUser
forall a. FromJSON a => Object -> Key -> Parser a
.: Key
"sender"
instance FromJSON MarketplacePurchaseEvent where
parseJSON :: Value -> Parser MarketplacePurchaseEvent
parseJSON = String
-> (Object -> Parser MarketplacePurchaseEvent)
-> Value
-> Parser MarketplacePurchaseEvent
forall a. String -> (Object -> Parser a) -> Value -> Parser a
withObject String
"MarketplacePurchaseEvent" ((Object -> Parser MarketplacePurchaseEvent)
-> Value -> Parser MarketplacePurchaseEvent)
-> (Object -> Parser MarketplacePurchaseEvent)
-> Value
-> Parser MarketplacePurchaseEvent
forall a b. (a -> b) -> a -> b
$ \Object
o -> MarketplacePurchaseEventAction
-> UTCTime
-> HookUser
-> HookMarketplacePurchase
-> Maybe HookMarketplacePurchase
-> MarketplacePurchaseEvent
MarketplacePurchaseEvent
(MarketplacePurchaseEventAction
-> UTCTime
-> HookUser
-> HookMarketplacePurchase
-> Maybe HookMarketplacePurchase
-> MarketplacePurchaseEvent)
-> Parser MarketplacePurchaseEventAction
-> Parser
(UTCTime
-> HookUser
-> HookMarketplacePurchase
-> Maybe HookMarketplacePurchase
-> MarketplacePurchaseEvent)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Key -> Parser MarketplacePurchaseEventAction
forall a. FromJSON a => Object -> Key -> Parser a
.: Key
"action"
Parser
(UTCTime
-> HookUser
-> HookMarketplacePurchase
-> Maybe HookMarketplacePurchase
-> MarketplacePurchaseEvent)
-> Parser UTCTime
-> Parser
(HookUser
-> HookMarketplacePurchase
-> Maybe HookMarketplacePurchase
-> MarketplacePurchaseEvent)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> (ZonedTime -> UTCTime
zonedTimeToUTC (ZonedTime -> UTCTime) -> Parser ZonedTime -> Parser UTCTime
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Key -> Parser ZonedTime
forall a. FromJSON a => Object -> Key -> Parser a
.: Key
"effective_date")
Parser
(HookUser
-> HookMarketplacePurchase
-> Maybe HookMarketplacePurchase
-> MarketplacePurchaseEvent)
-> Parser HookUser
-> Parser
(HookMarketplacePurchase
-> Maybe HookMarketplacePurchase -> MarketplacePurchaseEvent)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Key -> Parser HookUser
forall a. FromJSON a => Object -> Key -> Parser a
.: Key
"sender"
Parser
(HookMarketplacePurchase
-> Maybe HookMarketplacePurchase -> MarketplacePurchaseEvent)
-> Parser HookMarketplacePurchase
-> Parser
(Maybe HookMarketplacePurchase -> MarketplacePurchaseEvent)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Key -> Parser HookMarketplacePurchase
forall a. FromJSON a => Object -> Key -> Parser a
.: Key
"marketplace_purchase"
Parser (Maybe HookMarketplacePurchase -> MarketplacePurchaseEvent)
-> Parser (Maybe HookMarketplacePurchase)
-> Parser MarketplacePurchaseEvent
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Key -> Parser (Maybe HookMarketplacePurchase)
forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
.:? Key
"previous_marketplace_purchase"
instance FromJSON MemberEvent where
parseJSON :: Value -> Parser MemberEvent
parseJSON = String
-> (Object -> Parser MemberEvent) -> Value -> Parser MemberEvent
forall a. String -> (Object -> Parser a) -> Value -> Parser a
withObject String
"MemberEvent" ((Object -> Parser MemberEvent) -> Value -> Parser MemberEvent)
-> (Object -> Parser MemberEvent) -> Value -> Parser MemberEvent
forall a b. (a -> b) -> a -> b
$ \Object
o -> MemberEventAction
-> HookUser -> HookRepository -> HookUser -> MemberEvent
MemberEvent
(MemberEventAction
-> HookUser -> HookRepository -> HookUser -> MemberEvent)
-> Parser MemberEventAction
-> Parser (HookUser -> HookRepository -> HookUser -> MemberEvent)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Key -> Parser MemberEventAction
forall a. FromJSON a => Object -> Key -> Parser a
.: Key
"action"
Parser (HookUser -> HookRepository -> HookUser -> MemberEvent)
-> Parser HookUser
-> Parser (HookRepository -> HookUser -> MemberEvent)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Key -> Parser HookUser
forall a. FromJSON a => Object -> Key -> Parser a
.: Key
"member"
Parser (HookRepository -> HookUser -> MemberEvent)
-> Parser HookRepository -> Parser (HookUser -> MemberEvent)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Key -> Parser HookRepository
forall a. FromJSON a => Object -> Key -> Parser a
.: Key
"repository"
Parser (HookUser -> MemberEvent)
-> Parser HookUser -> Parser MemberEvent
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Key -> Parser HookUser
forall a. FromJSON a => Object -> Key -> Parser a
.: Key
"sender"
instance FromJSON MembershipEvent where
parseJSON :: Value -> Parser MembershipEvent
parseJSON = String
-> (Object -> Parser MembershipEvent)
-> Value
-> Parser MembershipEvent
forall a. String -> (Object -> Parser a) -> Value -> Parser a
withObject String
"MembershipEvent" ((Object -> Parser MembershipEvent)
-> Value -> Parser MembershipEvent)
-> (Object -> Parser MembershipEvent)
-> Value
-> Parser MembershipEvent
forall a b. (a -> b) -> a -> b
$ \Object
o -> MembershipEventAction
-> Text
-> HookUser
-> HookTeam
-> HookOrganization
-> HookUser
-> MembershipEvent
MembershipEvent
(MembershipEventAction
-> Text
-> HookUser
-> HookTeam
-> HookOrganization
-> HookUser
-> MembershipEvent)
-> Parser MembershipEventAction
-> Parser
(Text
-> HookUser
-> HookTeam
-> HookOrganization
-> HookUser
-> MembershipEvent)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Key -> Parser MembershipEventAction
forall a. FromJSON a => Object -> Key -> Parser a
.: Key
"action"
Parser
(Text
-> HookUser
-> HookTeam
-> HookOrganization
-> HookUser
-> MembershipEvent)
-> Parser Text
-> Parser
(HookUser
-> HookTeam -> HookOrganization -> HookUser -> MembershipEvent)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Key -> Parser Text
forall a. FromJSON a => Object -> Key -> Parser a
.: Key
"scope"
Parser
(HookUser
-> HookTeam -> HookOrganization -> HookUser -> MembershipEvent)
-> Parser HookUser
-> Parser
(HookTeam -> HookOrganization -> HookUser -> MembershipEvent)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Key -> Parser HookUser
forall a. FromJSON a => Object -> Key -> Parser a
.: Key
"member"
Parser
(HookTeam -> HookOrganization -> HookUser -> MembershipEvent)
-> Parser HookTeam
-> Parser (HookOrganization -> HookUser -> MembershipEvent)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Key -> Parser HookTeam
forall a. FromJSON a => Object -> Key -> Parser a
.: Key
"team"
Parser (HookOrganization -> HookUser -> MembershipEvent)
-> Parser HookOrganization -> Parser (HookUser -> MembershipEvent)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Key -> Parser HookOrganization
forall a. FromJSON a => Object -> Key -> Parser a
.: Key
"organization"
Parser (HookUser -> MembershipEvent)
-> Parser HookUser -> Parser MembershipEvent
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Key -> Parser HookUser
forall a. FromJSON a => Object -> Key -> Parser a
.: Key
"sender"
instance FromJSON MilestoneEvent where
parseJSON :: Value -> Parser MilestoneEvent
parseJSON = String
-> (Object -> Parser MilestoneEvent)
-> Value
-> Parser MilestoneEvent
forall a. String -> (Object -> Parser a) -> Value -> Parser a
withObject String
"MilestoneEvent" ((Object -> Parser MilestoneEvent)
-> Value -> Parser MilestoneEvent)
-> (Object -> Parser MilestoneEvent)
-> Value
-> Parser MilestoneEvent
forall a b. (a -> b) -> a -> b
$ \Object
o -> MilestoneEventAction
-> HookMilestone
-> HookRepository
-> HookOrganization
-> HookUser
-> MilestoneEvent
MilestoneEvent
(MilestoneEventAction
-> HookMilestone
-> HookRepository
-> HookOrganization
-> HookUser
-> MilestoneEvent)
-> Parser MilestoneEventAction
-> Parser
(HookMilestone
-> HookRepository
-> HookOrganization
-> HookUser
-> MilestoneEvent)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Key -> Parser MilestoneEventAction
forall a. FromJSON a => Object -> Key -> Parser a
.: Key
"action"
Parser
(HookMilestone
-> HookRepository
-> HookOrganization
-> HookUser
-> MilestoneEvent)
-> Parser HookMilestone
-> Parser
(HookRepository -> HookOrganization -> HookUser -> MilestoneEvent)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Key -> Parser HookMilestone
forall a. FromJSON a => Object -> Key -> Parser a
.: Key
"milestone"
Parser
(HookRepository -> HookOrganization -> HookUser -> MilestoneEvent)
-> Parser HookRepository
-> Parser (HookOrganization -> HookUser -> MilestoneEvent)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Key -> Parser HookRepository
forall a. FromJSON a => Object -> Key -> Parser a
.: Key
"repository"
Parser (HookOrganization -> HookUser -> MilestoneEvent)
-> Parser HookOrganization -> Parser (HookUser -> MilestoneEvent)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Key -> Parser HookOrganization
forall a. FromJSON a => Object -> Key -> Parser a
.: Key
"organization"
Parser (HookUser -> MilestoneEvent)
-> Parser HookUser -> Parser MilestoneEvent
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Key -> Parser HookUser
forall a. FromJSON a => Object -> Key -> Parser a
.: Key
"sender"
instance FromJSON OrganizationEvent where
parseJSON :: Value -> Parser OrganizationEvent
parseJSON = String
-> (Object -> Parser OrganizationEvent)
-> Value
-> Parser OrganizationEvent
forall a. String -> (Object -> Parser a) -> Value -> Parser a
withObject String
"OrganizationEvent" ((Object -> Parser OrganizationEvent)
-> Value -> Parser OrganizationEvent)
-> (Object -> Parser OrganizationEvent)
-> Value
-> Parser OrganizationEvent
forall a b. (a -> b) -> a -> b
$ \Object
o -> OrganizationEventAction
-> Maybe HookOrganizationInvitation
-> Maybe HookOrganizationMembership
-> HookOrganization
-> HookUser
-> OrganizationEvent
OrganizationEvent
(OrganizationEventAction
-> Maybe HookOrganizationInvitation
-> Maybe HookOrganizationMembership
-> HookOrganization
-> HookUser
-> OrganizationEvent)
-> Parser OrganizationEventAction
-> Parser
(Maybe HookOrganizationInvitation
-> Maybe HookOrganizationMembership
-> HookOrganization
-> HookUser
-> OrganizationEvent)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Key -> Parser OrganizationEventAction
forall a. FromJSON a => Object -> Key -> Parser a
.: Key
"action"
Parser
(Maybe HookOrganizationInvitation
-> Maybe HookOrganizationMembership
-> HookOrganization
-> HookUser
-> OrganizationEvent)
-> Parser (Maybe HookOrganizationInvitation)
-> Parser
(Maybe HookOrganizationMembership
-> HookOrganization -> HookUser -> OrganizationEvent)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Key -> Parser (Maybe HookOrganizationInvitation)
forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
.:? Key
"invitation"
Parser
(Maybe HookOrganizationMembership
-> HookOrganization -> HookUser -> OrganizationEvent)
-> Parser (Maybe HookOrganizationMembership)
-> Parser (HookOrganization -> HookUser -> OrganizationEvent)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Key -> Parser (Maybe HookOrganizationMembership)
forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
.:? Key
"membership"
Parser (HookOrganization -> HookUser -> OrganizationEvent)
-> Parser HookOrganization
-> Parser (HookUser -> OrganizationEvent)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Key -> Parser HookOrganization
forall a. FromJSON a => Object -> Key -> Parser a
.: Key
"organization"
Parser (HookUser -> OrganizationEvent)
-> Parser HookUser -> Parser OrganizationEvent
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Key -> Parser HookUser
forall a. FromJSON a => Object -> Key -> Parser a
.: Key
"sender"
instance FromJSON OrgBlockEvent where
parseJSON :: Value -> Parser OrgBlockEvent
parseJSON = String
-> (Object -> Parser OrgBlockEvent)
-> Value
-> Parser OrgBlockEvent
forall a. String -> (Object -> Parser a) -> Value -> Parser a
withObject String
"OrgBlockEvent" ((Object -> Parser OrgBlockEvent) -> Value -> Parser OrgBlockEvent)
-> (Object -> Parser OrgBlockEvent)
-> Value
-> Parser OrgBlockEvent
forall a b. (a -> b) -> a -> b
$ \Object
o -> OrgBlockEventAction
-> HookUser -> HookOrganization -> HookUser -> OrgBlockEvent
OrgBlockEvent
(OrgBlockEventAction
-> HookUser -> HookOrganization -> HookUser -> OrgBlockEvent)
-> Parser OrgBlockEventAction
-> Parser
(HookUser -> HookOrganization -> HookUser -> OrgBlockEvent)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Key -> Parser OrgBlockEventAction
forall a. FromJSON a => Object -> Key -> Parser a
.: Key
"action"
Parser (HookUser -> HookOrganization -> HookUser -> OrgBlockEvent)
-> Parser HookUser
-> Parser (HookOrganization -> HookUser -> OrgBlockEvent)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Key -> Parser HookUser
forall a. FromJSON a => Object -> Key -> Parser a
.: Key
"blocked_user"
Parser (HookOrganization -> HookUser -> OrgBlockEvent)
-> Parser HookOrganization -> Parser (HookUser -> OrgBlockEvent)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Key -> Parser HookOrganization
forall a. FromJSON a => Object -> Key -> Parser a
.: Key
"organization"
Parser (HookUser -> OrgBlockEvent)
-> Parser HookUser -> Parser OrgBlockEvent
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Key -> Parser HookUser
forall a. FromJSON a => Object -> Key -> Parser a
.: Key
"sender"
instance FromJSON PageBuildEvent where
parseJSON :: Value -> Parser PageBuildEvent
parseJSON = String
-> (Object -> Parser PageBuildEvent)
-> Value
-> Parser PageBuildEvent
forall a. String -> (Object -> Parser a) -> Value -> Parser a
withObject String
"PageBuildEvent" ((Object -> Parser PageBuildEvent)
-> Value -> Parser PageBuildEvent)
-> (Object -> Parser PageBuildEvent)
-> Value
-> Parser PageBuildEvent
forall a b. (a -> b) -> a -> b
$ \Object
o -> Int
-> HookPageBuildResult
-> HookRepository
-> HookUser
-> PageBuildEvent
PageBuildEvent
(Int
-> HookPageBuildResult
-> HookRepository
-> HookUser
-> PageBuildEvent)
-> Parser Int
-> Parser
(HookPageBuildResult
-> HookRepository -> HookUser -> PageBuildEvent)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Key -> Parser Int
forall a. FromJSON a => Object -> Key -> Parser a
.: Key
"id"
Parser
(HookPageBuildResult
-> HookRepository -> HookUser -> PageBuildEvent)
-> Parser HookPageBuildResult
-> Parser (HookRepository -> HookUser -> PageBuildEvent)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Key -> Parser HookPageBuildResult
forall a. FromJSON a => Object -> Key -> Parser a
.: Key
"build"
Parser (HookRepository -> HookUser -> PageBuildEvent)
-> Parser HookRepository -> Parser (HookUser -> PageBuildEvent)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Key -> Parser HookRepository
forall a. FromJSON a => Object -> Key -> Parser a
.: Key
"repository"
Parser (HookUser -> PageBuildEvent)
-> Parser HookUser -> Parser PageBuildEvent
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Key -> Parser HookUser
forall a. FromJSON a => Object -> Key -> Parser a
.: Key
"sender"
instance FromJSON ProjectCardEvent where
parseJSON :: Value -> Parser ProjectCardEvent
parseJSON = String
-> (Object -> Parser ProjectCardEvent)
-> Value
-> Parser ProjectCardEvent
forall a. String -> (Object -> Parser a) -> Value -> Parser a
withObject String
"ProjectCardEvent" ((Object -> Parser ProjectCardEvent)
-> Value -> Parser ProjectCardEvent)
-> (Object -> Parser ProjectCardEvent)
-> Value
-> Parser ProjectCardEvent
forall a b. (a -> b) -> a -> b
$ \Object
o -> ProjectCardEventAction
-> HookProjectCard
-> HookRepository
-> HookOrganization
-> HookUser
-> ProjectCardEvent
ProjectCardEvent
(ProjectCardEventAction
-> HookProjectCard
-> HookRepository
-> HookOrganization
-> HookUser
-> ProjectCardEvent)
-> Parser ProjectCardEventAction
-> Parser
(HookProjectCard
-> HookRepository
-> HookOrganization
-> HookUser
-> ProjectCardEvent)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Key -> Parser ProjectCardEventAction
forall a. FromJSON a => Object -> Key -> Parser a
.: Key
"action"
Parser
(HookProjectCard
-> HookRepository
-> HookOrganization
-> HookUser
-> ProjectCardEvent)
-> Parser HookProjectCard
-> Parser
(HookRepository
-> HookOrganization -> HookUser -> ProjectCardEvent)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Key -> Parser HookProjectCard
forall a. FromJSON a => Object -> Key -> Parser a
.: Key
"project_card"
Parser
(HookRepository
-> HookOrganization -> HookUser -> ProjectCardEvent)
-> Parser HookRepository
-> Parser (HookOrganization -> HookUser -> ProjectCardEvent)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Key -> Parser HookRepository
forall a. FromJSON a => Object -> Key -> Parser a
.: Key
"repository"
Parser (HookOrganization -> HookUser -> ProjectCardEvent)
-> Parser HookOrganization -> Parser (HookUser -> ProjectCardEvent)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Key -> Parser HookOrganization
forall a. FromJSON a => Object -> Key -> Parser a
.: Key
"organization"
Parser (HookUser -> ProjectCardEvent)
-> Parser HookUser -> Parser ProjectCardEvent
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Key -> Parser HookUser
forall a. FromJSON a => Object -> Key -> Parser a
.: Key
"sender"
instance FromJSON ProjectColumnEvent where
parseJSON :: Value -> Parser ProjectColumnEvent
parseJSON = String
-> (Object -> Parser ProjectColumnEvent)
-> Value
-> Parser ProjectColumnEvent
forall a. String -> (Object -> Parser a) -> Value -> Parser a
withObject String
"ProjectColumnEvent" ((Object -> Parser ProjectColumnEvent)
-> Value -> Parser ProjectColumnEvent)
-> (Object -> Parser ProjectColumnEvent)
-> Value
-> Parser ProjectColumnEvent
forall a b. (a -> b) -> a -> b
$ \Object
o -> ProjectColumnEventAction
-> HookProjectColumn
-> HookRepository
-> HookOrganization
-> HookUser
-> ProjectColumnEvent
ProjectColumnEvent
(ProjectColumnEventAction
-> HookProjectColumn
-> HookRepository
-> HookOrganization
-> HookUser
-> ProjectColumnEvent)
-> Parser ProjectColumnEventAction
-> Parser
(HookProjectColumn
-> HookRepository
-> HookOrganization
-> HookUser
-> ProjectColumnEvent)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Key -> Parser ProjectColumnEventAction
forall a. FromJSON a => Object -> Key -> Parser a
.: Key
"action"
Parser
(HookProjectColumn
-> HookRepository
-> HookOrganization
-> HookUser
-> ProjectColumnEvent)
-> Parser HookProjectColumn
-> Parser
(HookRepository
-> HookOrganization -> HookUser -> ProjectColumnEvent)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Key -> Parser HookProjectColumn
forall a. FromJSON a => Object -> Key -> Parser a
.: Key
"project_column"
Parser
(HookRepository
-> HookOrganization -> HookUser -> ProjectColumnEvent)
-> Parser HookRepository
-> Parser (HookOrganization -> HookUser -> ProjectColumnEvent)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Key -> Parser HookRepository
forall a. FromJSON a => Object -> Key -> Parser a
.: Key
"repository"
Parser (HookOrganization -> HookUser -> ProjectColumnEvent)
-> Parser HookOrganization
-> Parser (HookUser -> ProjectColumnEvent)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Key -> Parser HookOrganization
forall a. FromJSON a => Object -> Key -> Parser a
.: Key
"organization"
Parser (HookUser -> ProjectColumnEvent)
-> Parser HookUser -> Parser ProjectColumnEvent
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Key -> Parser HookUser
forall a. FromJSON a => Object -> Key -> Parser a
.: Key
"sender"
instance FromJSON ProjectEvent where
parseJSON :: Value -> Parser ProjectEvent
parseJSON = String
-> (Object -> Parser ProjectEvent) -> Value -> Parser ProjectEvent
forall a. String -> (Object -> Parser a) -> Value -> Parser a
withObject String
"ProjectEvent" ((Object -> Parser ProjectEvent) -> Value -> Parser ProjectEvent)
-> (Object -> Parser ProjectEvent) -> Value -> Parser ProjectEvent
forall a b. (a -> b) -> a -> b
$ \Object
o -> ProjectEventAction
-> HookProject
-> HookRepository
-> HookOrganization
-> HookUser
-> ProjectEvent
ProjectEvent
(ProjectEventAction
-> HookProject
-> HookRepository
-> HookOrganization
-> HookUser
-> ProjectEvent)
-> Parser ProjectEventAction
-> Parser
(HookProject
-> HookRepository -> HookOrganization -> HookUser -> ProjectEvent)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Key -> Parser ProjectEventAction
forall a. FromJSON a => Object -> Key -> Parser a
.: Key
"action"
Parser
(HookProject
-> HookRepository -> HookOrganization -> HookUser -> ProjectEvent)
-> Parser HookProject
-> Parser
(HookRepository -> HookOrganization -> HookUser -> ProjectEvent)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Key -> Parser HookProject
forall a. FromJSON a => Object -> Key -> Parser a
.: Key
"project"
Parser
(HookRepository -> HookOrganization -> HookUser -> ProjectEvent)
-> Parser HookRepository
-> Parser (HookOrganization -> HookUser -> ProjectEvent)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Key -> Parser HookRepository
forall a. FromJSON a => Object -> Key -> Parser a
.: Key
"repository"
Parser (HookOrganization -> HookUser -> ProjectEvent)
-> Parser HookOrganization -> Parser (HookUser -> ProjectEvent)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Key -> Parser HookOrganization
forall a. FromJSON a => Object -> Key -> Parser a
.: Key
"organization"
Parser (HookUser -> ProjectEvent)
-> Parser HookUser -> Parser ProjectEvent
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Key -> Parser HookUser
forall a. FromJSON a => Object -> Key -> Parser a
.: Key
"sender"
instance FromJSON PublicEvent where
parseJSON :: Value -> Parser PublicEvent
parseJSON = String
-> (Object -> Parser PublicEvent) -> Value -> Parser PublicEvent
forall a. String -> (Object -> Parser a) -> Value -> Parser a
withObject String
"PublicEvent" ((Object -> Parser PublicEvent) -> Value -> Parser PublicEvent)
-> (Object -> Parser PublicEvent) -> Value -> Parser PublicEvent
forall a b. (a -> b) -> a -> b
$ \Object
o -> HookRepository -> HookUser -> PublicEvent
PublicEvent
(HookRepository -> HookUser -> PublicEvent)
-> Parser HookRepository -> Parser (HookUser -> PublicEvent)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Key -> Parser HookRepository
forall a. FromJSON a => Object -> Key -> Parser a
.: Key
"repository"
Parser (HookUser -> PublicEvent)
-> Parser HookUser -> Parser PublicEvent
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Key -> Parser HookUser
forall a. FromJSON a => Object -> Key -> Parser a
.: Key
"sender"
instance FromJSON PullRequestEvent where
parseJSON :: Value -> Parser PullRequestEvent
parseJSON = String
-> (Object -> Parser PullRequestEvent)
-> Value
-> Parser PullRequestEvent
forall a. String -> (Object -> Parser a) -> Value -> Parser a
withObject String
"PullRequestEvent" ((Object -> Parser PullRequestEvent)
-> Value -> Parser PullRequestEvent)
-> (Object -> Parser PullRequestEvent)
-> Value
-> Parser PullRequestEvent
forall a b. (a -> b) -> a -> b
$ \Object
o -> PullRequestEventAction
-> Int
-> HookPullRequest
-> HookRepository
-> HookUser
-> Maybe Int
-> PullRequestEvent
PullRequestEvent
(PullRequestEventAction
-> Int
-> HookPullRequest
-> HookRepository
-> HookUser
-> Maybe Int
-> PullRequestEvent)
-> Parser PullRequestEventAction
-> Parser
(Int
-> HookPullRequest
-> HookRepository
-> HookUser
-> Maybe Int
-> PullRequestEvent)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Key -> Parser PullRequestEventAction
forall a. FromJSON a => Object -> Key -> Parser a
.: Key
"action"
Parser
(Int
-> HookPullRequest
-> HookRepository
-> HookUser
-> Maybe Int
-> PullRequestEvent)
-> Parser Int
-> Parser
(HookPullRequest
-> HookRepository -> HookUser -> Maybe Int -> PullRequestEvent)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Key -> Parser Int
forall a. FromJSON a => Object -> Key -> Parser a
.: Key
"number"
Parser
(HookPullRequest
-> HookRepository -> HookUser -> Maybe Int -> PullRequestEvent)
-> Parser HookPullRequest
-> Parser
(HookRepository -> HookUser -> Maybe Int -> PullRequestEvent)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Key -> Parser HookPullRequest
forall a. FromJSON a => Object -> Key -> Parser a
.: Key
"pull_request"
Parser
(HookRepository -> HookUser -> Maybe Int -> PullRequestEvent)
-> Parser HookRepository
-> Parser (HookUser -> Maybe Int -> PullRequestEvent)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Key -> Parser HookRepository
forall a. FromJSON a => Object -> Key -> Parser a
.: Key
"repository"
Parser (HookUser -> Maybe Int -> PullRequestEvent)
-> Parser HookUser -> Parser (Maybe Int -> PullRequestEvent)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Key -> Parser HookUser
forall a. FromJSON a => Object -> Key -> Parser a
.: Key
"sender"
Parser (Maybe Int -> PullRequestEvent)
-> Parser (Maybe Int) -> Parser PullRequestEvent
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> (Object
o Object -> Key -> Parser (Maybe Object)
forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
.:? Key
"installation" Parser (Maybe Object)
-> (Maybe Object -> Parser (Maybe Int)) -> Parser (Maybe Int)
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= Parser (Maybe Int)
-> (Object -> Parser (Maybe Int))
-> Maybe Object
-> Parser (Maybe Int)
forall b a. b -> (a -> b) -> Maybe a -> b
maybe (Maybe Int -> Parser (Maybe Int)
forall (f :: * -> *) a. Applicative f => a -> f a
pure Maybe Int
forall a. Maybe a
Nothing) (Object -> Key -> Parser (Maybe Int)
forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
.:? Key
"id"))
instance FromJSON PullRequestReviewEvent where
parseJSON :: Value -> Parser PullRequestReviewEvent
parseJSON = String
-> (Object -> Parser PullRequestReviewEvent)
-> Value
-> Parser PullRequestReviewEvent
forall a. String -> (Object -> Parser a) -> Value -> Parser a
withObject String
"PullRequestReviewEvent" ((Object -> Parser PullRequestReviewEvent)
-> Value -> Parser PullRequestReviewEvent)
-> (Object -> Parser PullRequestReviewEvent)
-> Value
-> Parser PullRequestReviewEvent
forall a b. (a -> b) -> a -> b
$ \Object
o -> PullRequestReviewEventAction
-> HookPullRequestReview
-> HookPullRequest
-> HookRepository
-> HookUser
-> PullRequestReviewEvent
PullRequestReviewEvent
(PullRequestReviewEventAction
-> HookPullRequestReview
-> HookPullRequest
-> HookRepository
-> HookUser
-> PullRequestReviewEvent)
-> Parser PullRequestReviewEventAction
-> Parser
(HookPullRequestReview
-> HookPullRequest
-> HookRepository
-> HookUser
-> PullRequestReviewEvent)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Key -> Parser PullRequestReviewEventAction
forall a. FromJSON a => Object -> Key -> Parser a
.: Key
"action"
Parser
(HookPullRequestReview
-> HookPullRequest
-> HookRepository
-> HookUser
-> PullRequestReviewEvent)
-> Parser HookPullRequestReview
-> Parser
(HookPullRequest
-> HookRepository -> HookUser -> PullRequestReviewEvent)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Key -> Parser HookPullRequestReview
forall a. FromJSON a => Object -> Key -> Parser a
.: Key
"review"
Parser
(HookPullRequest
-> HookRepository -> HookUser -> PullRequestReviewEvent)
-> Parser HookPullRequest
-> Parser (HookRepository -> HookUser -> PullRequestReviewEvent)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Key -> Parser HookPullRequest
forall a. FromJSON a => Object -> Key -> Parser a
.: Key
"pull_request"
Parser (HookRepository -> HookUser -> PullRequestReviewEvent)
-> Parser HookRepository
-> Parser (HookUser -> PullRequestReviewEvent)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Key -> Parser HookRepository
forall a. FromJSON a => Object -> Key -> Parser a
.: Key
"repository"
Parser (HookUser -> PullRequestReviewEvent)
-> Parser HookUser -> Parser PullRequestReviewEvent
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Key -> Parser HookUser
forall a. FromJSON a => Object -> Key -> Parser a
.: Key
"sender"
instance FromJSON PullRequestReviewCommentEvent where
parseJSON :: Value -> Parser PullRequestReviewCommentEvent
parseJSON = String
-> (Object -> Parser PullRequestReviewCommentEvent)
-> Value
-> Parser PullRequestReviewCommentEvent
forall a. String -> (Object -> Parser a) -> Value -> Parser a
withObject String
"PullRequestReviewCommentEvent" ((Object -> Parser PullRequestReviewCommentEvent)
-> Value -> Parser PullRequestReviewCommentEvent)
-> (Object -> Parser PullRequestReviewCommentEvent)
-> Value
-> Parser PullRequestReviewCommentEvent
forall a b. (a -> b) -> a -> b
$ \Object
o -> PullRequestReviewCommentEventAction
-> HookPullRequestReviewComment
-> HookPullRequest
-> HookRepository
-> HookUser
-> PullRequestReviewCommentEvent
PullRequestReviewCommentEvent
(PullRequestReviewCommentEventAction
-> HookPullRequestReviewComment
-> HookPullRequest
-> HookRepository
-> HookUser
-> PullRequestReviewCommentEvent)
-> Parser PullRequestReviewCommentEventAction
-> Parser
(HookPullRequestReviewComment
-> HookPullRequest
-> HookRepository
-> HookUser
-> PullRequestReviewCommentEvent)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Key -> Parser PullRequestReviewCommentEventAction
forall a. FromJSON a => Object -> Key -> Parser a
.: Key
"action"
Parser
(HookPullRequestReviewComment
-> HookPullRequest
-> HookRepository
-> HookUser
-> PullRequestReviewCommentEvent)
-> Parser HookPullRequestReviewComment
-> Parser
(HookPullRequest
-> HookRepository -> HookUser -> PullRequestReviewCommentEvent)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Key -> Parser HookPullRequestReviewComment
forall a. FromJSON a => Object -> Key -> Parser a
.: Key
"comment"
Parser
(HookPullRequest
-> HookRepository -> HookUser -> PullRequestReviewCommentEvent)
-> Parser HookPullRequest
-> Parser
(HookRepository -> HookUser -> PullRequestReviewCommentEvent)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Key -> Parser HookPullRequest
forall a. FromJSON a => Object -> Key -> Parser a
.: Key
"pull_request"
Parser
(HookRepository -> HookUser -> PullRequestReviewCommentEvent)
-> Parser HookRepository
-> Parser (HookUser -> PullRequestReviewCommentEvent)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Key -> Parser HookRepository
forall a. FromJSON a => Object -> Key -> Parser a
.: Key
"repository"
Parser (HookUser -> PullRequestReviewCommentEvent)
-> Parser HookUser -> Parser PullRequestReviewCommentEvent
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Key -> Parser HookUser
forall a. FromJSON a => Object -> Key -> Parser a
.: Key
"sender"
instance FromJSON PushEvent where
parseJSON :: Value -> Parser PushEvent
parseJSON = String -> (Object -> Parser PushEvent) -> Value -> Parser PushEvent
forall a. String -> (Object -> Parser a) -> Value -> Parser a
withObject String
"PushEvent" ((Object -> Parser PushEvent) -> Value -> Parser PushEvent)
-> (Object -> Parser PushEvent) -> Value -> Parser PushEvent
forall a b. (a -> b) -> a -> b
$ \Object
o -> Text
-> Maybe Text
-> Maybe Text
-> Bool
-> Bool
-> Bool
-> Maybe Text
-> URL
-> Maybe (Vector HookCommit)
-> Maybe HookCommit
-> HookRepository
-> Maybe HookOrganization
-> HookUser
-> PushEvent
PushEvent
(Text
-> Maybe Text
-> Maybe Text
-> Bool
-> Bool
-> Bool
-> Maybe Text
-> URL
-> Maybe (Vector HookCommit)
-> Maybe HookCommit
-> HookRepository
-> Maybe HookOrganization
-> HookUser
-> PushEvent)
-> Parser Text
-> Parser
(Maybe Text
-> Maybe Text
-> Bool
-> Bool
-> Bool
-> Maybe Text
-> URL
-> Maybe (Vector HookCommit)
-> Maybe HookCommit
-> HookRepository
-> Maybe HookOrganization
-> HookUser
-> PushEvent)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Key -> Parser Text
forall a. FromJSON a => Object -> Key -> Parser a
.: Key
"ref"
Parser
(Maybe Text
-> Maybe Text
-> Bool
-> Bool
-> Bool
-> Maybe Text
-> URL
-> Maybe (Vector HookCommit)
-> Maybe HookCommit
-> HookRepository
-> Maybe HookOrganization
-> HookUser
-> PushEvent)
-> Parser (Maybe Text)
-> Parser
(Maybe Text
-> Bool
-> Bool
-> Bool
-> Maybe Text
-> URL
-> Maybe (Vector HookCommit)
-> Maybe HookCommit
-> HookRepository
-> Maybe HookOrganization
-> HookUser
-> PushEvent)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Key -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
.:? Key
"after"
Parser
(Maybe Text
-> Bool
-> Bool
-> Bool
-> Maybe Text
-> URL
-> Maybe (Vector HookCommit)
-> Maybe HookCommit
-> HookRepository
-> Maybe HookOrganization
-> HookUser
-> PushEvent)
-> Parser (Maybe Text)
-> Parser
(Bool
-> Bool
-> Bool
-> Maybe Text
-> URL
-> Maybe (Vector HookCommit)
-> Maybe HookCommit
-> HookRepository
-> Maybe HookOrganization
-> HookUser
-> PushEvent)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Key -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
.:? Key
"before"
Parser
(Bool
-> Bool
-> Bool
-> Maybe Text
-> URL
-> Maybe (Vector HookCommit)
-> Maybe HookCommit
-> HookRepository
-> Maybe HookOrganization
-> HookUser
-> PushEvent)
-> Parser Bool
-> Parser
(Bool
-> Bool
-> Maybe Text
-> URL
-> Maybe (Vector HookCommit)
-> Maybe HookCommit
-> HookRepository
-> Maybe HookOrganization
-> HookUser
-> PushEvent)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Key -> Parser Bool
forall a. FromJSON a => Object -> Key -> Parser a
.: Key
"created"
Parser
(Bool
-> Bool
-> Maybe Text
-> URL
-> Maybe (Vector HookCommit)
-> Maybe HookCommit
-> HookRepository
-> Maybe HookOrganization
-> HookUser
-> PushEvent)
-> Parser Bool
-> Parser
(Bool
-> Maybe Text
-> URL
-> Maybe (Vector HookCommit)
-> Maybe HookCommit
-> HookRepository
-> Maybe HookOrganization
-> HookUser
-> PushEvent)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Key -> Parser Bool
forall a. FromJSON a => Object -> Key -> Parser a
.: Key
"deleted"
Parser
(Bool
-> Maybe Text
-> URL
-> Maybe (Vector HookCommit)
-> Maybe HookCommit
-> HookRepository
-> Maybe HookOrganization
-> HookUser
-> PushEvent)
-> Parser Bool
-> Parser
(Maybe Text
-> URL
-> Maybe (Vector HookCommit)
-> Maybe HookCommit
-> HookRepository
-> Maybe HookOrganization
-> HookUser
-> PushEvent)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Key -> Parser Bool
forall a. FromJSON a => Object -> Key -> Parser a
.: Key
"forced"
Parser
(Maybe Text
-> URL
-> Maybe (Vector HookCommit)
-> Maybe HookCommit
-> HookRepository
-> Maybe HookOrganization
-> HookUser
-> PushEvent)
-> Parser (Maybe Text)
-> Parser
(URL
-> Maybe (Vector HookCommit)
-> Maybe HookCommit
-> HookRepository
-> Maybe HookOrganization
-> HookUser
-> PushEvent)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Key -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
.:? Key
"base_ref"
Parser
(URL
-> Maybe (Vector HookCommit)
-> Maybe HookCommit
-> HookRepository
-> Maybe HookOrganization
-> HookUser
-> PushEvent)
-> Parser URL
-> Parser
(Maybe (Vector HookCommit)
-> Maybe HookCommit
-> HookRepository
-> Maybe HookOrganization
-> HookUser
-> PushEvent)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Key -> Parser URL
forall a. FromJSON a => Object -> Key -> Parser a
.: Key
"compare"
Parser
(Maybe (Vector HookCommit)
-> Maybe HookCommit
-> HookRepository
-> Maybe HookOrganization
-> HookUser
-> PushEvent)
-> Parser (Maybe (Vector HookCommit))
-> Parser
(Maybe HookCommit
-> HookRepository
-> Maybe HookOrganization
-> HookUser
-> PushEvent)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Key -> Parser (Maybe (Vector HookCommit))
forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
.:? Key
"commits"
Parser
(Maybe HookCommit
-> HookRepository
-> Maybe HookOrganization
-> HookUser
-> PushEvent)
-> Parser (Maybe HookCommit)
-> Parser
(HookRepository -> Maybe HookOrganization -> HookUser -> PushEvent)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Key -> Parser (Maybe HookCommit)
forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
.:? Key
"head_commit"
Parser
(HookRepository -> Maybe HookOrganization -> HookUser -> PushEvent)
-> Parser HookRepository
-> Parser (Maybe HookOrganization -> HookUser -> PushEvent)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Key -> Parser HookRepository
forall a. FromJSON a => Object -> Key -> Parser a
.: Key
"repository"
Parser (Maybe HookOrganization -> HookUser -> PushEvent)
-> Parser (Maybe HookOrganization)
-> Parser (HookUser -> PushEvent)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Key -> Parser (Maybe HookOrganization)
forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
.:? Key
"organization"
Parser (HookUser -> PushEvent)
-> Parser HookUser -> Parser PushEvent
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Key -> Parser HookUser
forall a. FromJSON a => Object -> Key -> Parser a
.: Key
"sender"
instance FromJSON ReleaseEvent where
parseJSON :: Value -> Parser ReleaseEvent
parseJSON = String
-> (Object -> Parser ReleaseEvent) -> Value -> Parser ReleaseEvent
forall a. String -> (Object -> Parser a) -> Value -> Parser a
withObject String
"ReleaseEvent" ((Object -> Parser ReleaseEvent) -> Value -> Parser ReleaseEvent)
-> (Object -> Parser ReleaseEvent) -> Value -> Parser ReleaseEvent
forall a b. (a -> b) -> a -> b
$ \Object
o -> ReleaseEventAction
-> HookRelease -> HookRepository -> HookUser -> ReleaseEvent
ReleaseEvent
(ReleaseEventAction
-> HookRelease -> HookRepository -> HookUser -> ReleaseEvent)
-> Parser ReleaseEventAction
-> Parser
(HookRelease -> HookRepository -> HookUser -> ReleaseEvent)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Key -> Parser ReleaseEventAction
forall a. FromJSON a => Object -> Key -> Parser a
.: Key
"action"
Parser (HookRelease -> HookRepository -> HookUser -> ReleaseEvent)
-> Parser HookRelease
-> Parser (HookRepository -> HookUser -> ReleaseEvent)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Key -> Parser HookRelease
forall a. FromJSON a => Object -> Key -> Parser a
.: Key
"release"
Parser (HookRepository -> HookUser -> ReleaseEvent)
-> Parser HookRepository -> Parser (HookUser -> ReleaseEvent)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Key -> Parser HookRepository
forall a. FromJSON a => Object -> Key -> Parser a
.: Key
"repository"
Parser (HookUser -> ReleaseEvent)
-> Parser HookUser -> Parser ReleaseEvent
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Key -> Parser HookUser
forall a. FromJSON a => Object -> Key -> Parser a
.: Key
"sender"
instance FromJSON RepositoryEvent where
parseJSON :: Value -> Parser RepositoryEvent
parseJSON = String
-> (Object -> Parser RepositoryEvent)
-> Value
-> Parser RepositoryEvent
forall a. String -> (Object -> Parser a) -> Value -> Parser a
withObject String
"RepositoryEvent" ((Object -> Parser RepositoryEvent)
-> Value -> Parser RepositoryEvent)
-> (Object -> Parser RepositoryEvent)
-> Value
-> Parser RepositoryEvent
forall a b. (a -> b) -> a -> b
$ \Object
o -> RepositoryEventAction
-> HookRepository
-> Maybe HookOrganization
-> HookUser
-> RepositoryEvent
RepositoryEvent
(RepositoryEventAction
-> HookRepository
-> Maybe HookOrganization
-> HookUser
-> RepositoryEvent)
-> Parser RepositoryEventAction
-> Parser
(HookRepository
-> Maybe HookOrganization -> HookUser -> RepositoryEvent)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Key -> Parser RepositoryEventAction
forall a. FromJSON a => Object -> Key -> Parser a
.: Key
"action"
Parser
(HookRepository
-> Maybe HookOrganization -> HookUser -> RepositoryEvent)
-> Parser HookRepository
-> Parser (Maybe HookOrganization -> HookUser -> RepositoryEvent)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Key -> Parser HookRepository
forall a. FromJSON a => Object -> Key -> Parser a
.: Key
"repository"
Parser (Maybe HookOrganization -> HookUser -> RepositoryEvent)
-> Parser (Maybe HookOrganization)
-> Parser (HookUser -> RepositoryEvent)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Key -> Parser (Maybe HookOrganization)
forall a. FromJSON a => Object -> Key -> Parser a
.: Key
"organization"
Parser (HookUser -> RepositoryEvent)
-> Parser HookUser -> Parser RepositoryEvent
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Key -> Parser HookUser
forall a. FromJSON a => Object -> Key -> Parser a
.: Key
"sender"
instance FromJSON StatusEvent where
parseJSON :: Value -> Parser StatusEvent
parseJSON = String
-> (Object -> Parser StatusEvent) -> Value -> Parser StatusEvent
forall a. String -> (Object -> Parser a) -> Value -> Parser a
withObject String
"StatusEvent" ((Object -> Parser StatusEvent) -> Value -> Parser StatusEvent)
-> (Object -> Parser StatusEvent) -> Value -> Parser StatusEvent
forall a b. (a -> b) -> a -> b
$ \Object
o -> Int
-> Text
-> Text
-> Maybe URL
-> Text
-> Maybe Text
-> StatusEventState
-> HookCommit
-> UTCTime
-> UTCTime
-> HookRepository
-> HookUser
-> StatusEvent
StatusEvent
(Int
-> Text
-> Text
-> Maybe URL
-> Text
-> Maybe Text
-> StatusEventState
-> HookCommit
-> UTCTime
-> UTCTime
-> HookRepository
-> HookUser
-> StatusEvent)
-> Parser Int
-> Parser
(Text
-> Text
-> Maybe URL
-> Text
-> Maybe Text
-> StatusEventState
-> HookCommit
-> UTCTime
-> UTCTime
-> HookRepository
-> HookUser
-> StatusEvent)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Key -> Parser Int
forall a. FromJSON a => Object -> Key -> Parser a
.: Key
"id"
Parser
(Text
-> Text
-> Maybe URL
-> Text
-> Maybe Text
-> StatusEventState
-> HookCommit
-> UTCTime
-> UTCTime
-> HookRepository
-> HookUser
-> StatusEvent)
-> Parser Text
-> Parser
(Text
-> Maybe URL
-> Text
-> Maybe Text
-> StatusEventState
-> HookCommit
-> UTCTime
-> UTCTime
-> HookRepository
-> HookUser
-> StatusEvent)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Key -> Parser Text
forall a. FromJSON a => Object -> Key -> Parser a
.: Key
"sha"
Parser
(Text
-> Maybe URL
-> Text
-> Maybe Text
-> StatusEventState
-> HookCommit
-> UTCTime
-> UTCTime
-> HookRepository
-> HookUser
-> StatusEvent)
-> Parser Text
-> Parser
(Maybe URL
-> Text
-> Maybe Text
-> StatusEventState
-> HookCommit
-> UTCTime
-> UTCTime
-> HookRepository
-> HookUser
-> StatusEvent)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Key -> Parser Text
forall a. FromJSON a => Object -> Key -> Parser a
.: Key
"name"
Parser
(Maybe URL
-> Text
-> Maybe Text
-> StatusEventState
-> HookCommit
-> UTCTime
-> UTCTime
-> HookRepository
-> HookUser
-> StatusEvent)
-> Parser (Maybe URL)
-> Parser
(Text
-> Maybe Text
-> StatusEventState
-> HookCommit
-> UTCTime
-> UTCTime
-> HookRepository
-> HookUser
-> StatusEvent)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Key -> Parser (Maybe URL)
forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
.:? Key
"target_url"
Parser
(Text
-> Maybe Text
-> StatusEventState
-> HookCommit
-> UTCTime
-> UTCTime
-> HookRepository
-> HookUser
-> StatusEvent)
-> Parser Text
-> Parser
(Maybe Text
-> StatusEventState
-> HookCommit
-> UTCTime
-> UTCTime
-> HookRepository
-> HookUser
-> StatusEvent)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Key -> Parser Text
forall a. FromJSON a => Object -> Key -> Parser a
.: Key
"context"
Parser
(Maybe Text
-> StatusEventState
-> HookCommit
-> UTCTime
-> UTCTime
-> HookRepository
-> HookUser
-> StatusEvent)
-> Parser (Maybe Text)
-> Parser
(StatusEventState
-> HookCommit
-> UTCTime
-> UTCTime
-> HookRepository
-> HookUser
-> StatusEvent)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Key -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
.:? Key
"description"
Parser
(StatusEventState
-> HookCommit
-> UTCTime
-> UTCTime
-> HookRepository
-> HookUser
-> StatusEvent)
-> Parser StatusEventState
-> Parser
(HookCommit
-> UTCTime -> UTCTime -> HookRepository -> HookUser -> StatusEvent)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Key -> Parser StatusEventState
forall a. FromJSON a => Object -> Key -> Parser a
.: Key
"state"
Parser
(HookCommit
-> UTCTime -> UTCTime -> HookRepository -> HookUser -> StatusEvent)
-> Parser HookCommit
-> Parser
(UTCTime -> UTCTime -> HookRepository -> HookUser -> StatusEvent)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Key -> Parser HookCommit
forall a. FromJSON a => Object -> Key -> Parser a
.: Key
"commit"
Parser
(UTCTime -> UTCTime -> HookRepository -> HookUser -> StatusEvent)
-> Parser UTCTime
-> Parser (UTCTime -> HookRepository -> HookUser -> StatusEvent)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Key -> Parser UTCTime
forall a. FromJSON a => Object -> Key -> Parser a
.: Key
"created_at"
Parser (UTCTime -> HookRepository -> HookUser -> StatusEvent)
-> Parser UTCTime
-> Parser (HookRepository -> HookUser -> StatusEvent)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Key -> Parser UTCTime
forall a. FromJSON a => Object -> Key -> Parser a
.: Key
"updated_at"
Parser (HookRepository -> HookUser -> StatusEvent)
-> Parser HookRepository -> Parser (HookUser -> StatusEvent)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Key -> Parser HookRepository
forall a. FromJSON a => Object -> Key -> Parser a
.: Key
"repository"
Parser (HookUser -> StatusEvent)
-> Parser HookUser -> Parser StatusEvent
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Key -> Parser HookUser
forall a. FromJSON a => Object -> Key -> Parser a
.: Key
"sender"
instance FromJSON TeamEvent where
parseJSON :: Value -> Parser TeamEvent
parseJSON = String -> (Object -> Parser TeamEvent) -> Value -> Parser TeamEvent
forall a. String -> (Object -> Parser a) -> Value -> Parser a
withObject String
"TeamEvent" ((Object -> Parser TeamEvent) -> Value -> Parser TeamEvent)
-> (Object -> Parser TeamEvent) -> Value -> Parser TeamEvent
forall a b. (a -> b) -> a -> b
$ \Object
o -> TeamEventAction
-> HookTeam -> HookOrganization -> HookUser -> TeamEvent
TeamEvent
(TeamEventAction
-> HookTeam -> HookOrganization -> HookUser -> TeamEvent)
-> Parser TeamEventAction
-> Parser (HookTeam -> HookOrganization -> HookUser -> TeamEvent)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Key -> Parser TeamEventAction
forall a. FromJSON a => Object -> Key -> Parser a
.: Key
"action"
Parser (HookTeam -> HookOrganization -> HookUser -> TeamEvent)
-> Parser HookTeam
-> Parser (HookOrganization -> HookUser -> TeamEvent)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Key -> Parser HookTeam
forall a. FromJSON a => Object -> Key -> Parser a
.: Key
"team"
Parser (HookOrganization -> HookUser -> TeamEvent)
-> Parser HookOrganization -> Parser (HookUser -> TeamEvent)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Key -> Parser HookOrganization
forall a. FromJSON a => Object -> Key -> Parser a
.: Key
"organization"
Parser (HookUser -> TeamEvent)
-> Parser HookUser -> Parser TeamEvent
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Key -> Parser HookUser
forall a. FromJSON a => Object -> Key -> Parser a
.: Key
"sender"
instance FromJSON TeamAddEvent where
parseJSON :: Value -> Parser TeamAddEvent
parseJSON = String
-> (Object -> Parser TeamAddEvent) -> Value -> Parser TeamAddEvent
forall a. String -> (Object -> Parser a) -> Value -> Parser a
withObject String
"TeamAddEvent" ((Object -> Parser TeamAddEvent) -> Value -> Parser TeamAddEvent)
-> (Object -> Parser TeamAddEvent) -> Value -> Parser TeamAddEvent
forall a b. (a -> b) -> a -> b
$ \Object
o -> Maybe HookTeam
-> HookRepository -> HookOrganization -> HookUser -> TeamAddEvent
TeamAddEvent
(Maybe HookTeam
-> HookRepository -> HookOrganization -> HookUser -> TeamAddEvent)
-> Parser (Maybe HookTeam)
-> Parser
(HookRepository -> HookOrganization -> HookUser -> TeamAddEvent)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Key -> Parser (Maybe HookTeam)
forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
.:? Key
"team"
Parser
(HookRepository -> HookOrganization -> HookUser -> TeamAddEvent)
-> Parser HookRepository
-> Parser (HookOrganization -> HookUser -> TeamAddEvent)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Key -> Parser HookRepository
forall a. FromJSON a => Object -> Key -> Parser a
.: Key
"repository"
Parser (HookOrganization -> HookUser -> TeamAddEvent)
-> Parser HookOrganization -> Parser (HookUser -> TeamAddEvent)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Key -> Parser HookOrganization
forall a. FromJSON a => Object -> Key -> Parser a
.: Key
"organization"
Parser (HookUser -> TeamAddEvent)
-> Parser HookUser -> Parser TeamAddEvent
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Key -> Parser HookUser
forall a. FromJSON a => Object -> Key -> Parser a
.: Key
"sender"
instance FromJSON WatchEvent where
parseJSON :: Value -> Parser WatchEvent
parseJSON = String
-> (Object -> Parser WatchEvent) -> Value -> Parser WatchEvent
forall a. String -> (Object -> Parser a) -> Value -> Parser a
withObject String
"WatchEvent" ((Object -> Parser WatchEvent) -> Value -> Parser WatchEvent)
-> (Object -> Parser WatchEvent) -> Value -> Parser WatchEvent
forall a b. (a -> b) -> a -> b
$ \Object
o -> WatchEventAction -> HookRepository -> HookUser -> WatchEvent
WatchEvent
(WatchEventAction -> HookRepository -> HookUser -> WatchEvent)
-> Parser WatchEventAction
-> Parser (HookRepository -> HookUser -> WatchEvent)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Key -> Parser WatchEventAction
forall a. FromJSON a => Object -> Key -> Parser a
.: Key
"action"
Parser (HookRepository -> HookUser -> WatchEvent)
-> Parser HookRepository -> Parser (HookUser -> WatchEvent)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Key -> Parser HookRepository
forall a. FromJSON a => Object -> Key -> Parser a
.: Key
"repository"
Parser (HookUser -> WatchEvent)
-> Parser HookUser -> Parser WatchEvent
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Key -> Parser HookUser
forall a. FromJSON a => Object -> Key -> Parser a
.: Key
"sender"