module GitHub.Data.GitData where
import GitHub.Data.Definitions
import GitHub.Data.Name (Name)
import GitHub.Data.URL (URL)
import GitHub.Internal.Prelude
import Prelude ()
import qualified Data.Vector as V
data CommitQueryOption
= CommitQuerySha !Text
| CommitQueryPath !Text
| CommitQueryAuthor !Text
| CommitQuerySince !UTCTime
| CommitQueryUntil !UTCTime
deriving (Int -> CommitQueryOption -> ShowS
[CommitQueryOption] -> ShowS
CommitQueryOption -> String
(Int -> CommitQueryOption -> ShowS)
-> (CommitQueryOption -> String)
-> ([CommitQueryOption] -> ShowS)
-> Show CommitQueryOption
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
$cshowsPrec :: Int -> CommitQueryOption -> ShowS
showsPrec :: Int -> CommitQueryOption -> ShowS
$cshow :: CommitQueryOption -> String
show :: CommitQueryOption -> String
$cshowList :: [CommitQueryOption] -> ShowS
showList :: [CommitQueryOption] -> ShowS
Show, CommitQueryOption -> CommitQueryOption -> Bool
(CommitQueryOption -> CommitQueryOption -> Bool)
-> (CommitQueryOption -> CommitQueryOption -> Bool)
-> Eq CommitQueryOption
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: CommitQueryOption -> CommitQueryOption -> Bool
== :: CommitQueryOption -> CommitQueryOption -> Bool
$c/= :: CommitQueryOption -> CommitQueryOption -> Bool
/= :: CommitQueryOption -> CommitQueryOption -> Bool
Eq, Eq CommitQueryOption
Eq CommitQueryOption =>
(CommitQueryOption -> CommitQueryOption -> Ordering)
-> (CommitQueryOption -> CommitQueryOption -> Bool)
-> (CommitQueryOption -> CommitQueryOption -> Bool)
-> (CommitQueryOption -> CommitQueryOption -> Bool)
-> (CommitQueryOption -> CommitQueryOption -> Bool)
-> (CommitQueryOption -> CommitQueryOption -> CommitQueryOption)
-> (CommitQueryOption -> CommitQueryOption -> CommitQueryOption)
-> Ord CommitQueryOption
CommitQueryOption -> CommitQueryOption -> Bool
CommitQueryOption -> CommitQueryOption -> Ordering
CommitQueryOption -> CommitQueryOption -> CommitQueryOption
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
$ccompare :: CommitQueryOption -> CommitQueryOption -> Ordering
compare :: CommitQueryOption -> CommitQueryOption -> Ordering
$c< :: CommitQueryOption -> CommitQueryOption -> Bool
< :: CommitQueryOption -> CommitQueryOption -> Bool
$c<= :: CommitQueryOption -> CommitQueryOption -> Bool
<= :: CommitQueryOption -> CommitQueryOption -> Bool
$c> :: CommitQueryOption -> CommitQueryOption -> Bool
> :: CommitQueryOption -> CommitQueryOption -> Bool
$c>= :: CommitQueryOption -> CommitQueryOption -> Bool
>= :: CommitQueryOption -> CommitQueryOption -> Bool
$cmax :: CommitQueryOption -> CommitQueryOption -> CommitQueryOption
max :: CommitQueryOption -> CommitQueryOption -> CommitQueryOption
$cmin :: CommitQueryOption -> CommitQueryOption -> CommitQueryOption
min :: CommitQueryOption -> CommitQueryOption -> CommitQueryOption
Ord, (forall x. CommitQueryOption -> Rep CommitQueryOption x)
-> (forall x. Rep CommitQueryOption x -> CommitQueryOption)
-> Generic CommitQueryOption
forall x. Rep CommitQueryOption x -> CommitQueryOption
forall x. CommitQueryOption -> Rep CommitQueryOption x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cfrom :: forall x. CommitQueryOption -> Rep CommitQueryOption x
from :: forall x. CommitQueryOption -> Rep CommitQueryOption x
$cto :: forall x. Rep CommitQueryOption x -> CommitQueryOption
to :: forall x. Rep CommitQueryOption x -> CommitQueryOption
Generic, Typeable, Typeable CommitQueryOption
Typeable CommitQueryOption =>
(forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g)
-> CommitQueryOption
-> c CommitQueryOption)
-> (forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c CommitQueryOption)
-> (CommitQueryOption -> Constr)
-> (CommitQueryOption -> DataType)
-> (forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c CommitQueryOption))
-> (forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c CommitQueryOption))
-> ((forall b. Data b => b -> b)
-> CommitQueryOption -> CommitQueryOption)
-> (forall r r'.
(r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> CommitQueryOption -> r)
-> (forall r r'.
(r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> CommitQueryOption -> r)
-> (forall u.
(forall d. Data d => d -> u) -> CommitQueryOption -> [u])
-> (forall u.
Int -> (forall d. Data d => d -> u) -> CommitQueryOption -> u)
-> (forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d)
-> CommitQueryOption -> m CommitQueryOption)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> CommitQueryOption -> m CommitQueryOption)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> CommitQueryOption -> m CommitQueryOption)
-> Data CommitQueryOption
CommitQueryOption -> Constr
CommitQueryOption -> DataType
(forall b. Data b => b -> b)
-> CommitQueryOption -> CommitQueryOption
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) -> CommitQueryOption -> u
forall u. (forall d. Data d => d -> u) -> CommitQueryOption -> [u]
forall r r'.
(r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> CommitQueryOption -> r
forall r r'.
(r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> CommitQueryOption -> r
forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d)
-> CommitQueryOption -> m CommitQueryOption
forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> CommitQueryOption -> m CommitQueryOption
forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c CommitQueryOption
forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> CommitQueryOption -> c CommitQueryOption
forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c CommitQueryOption)
forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c CommitQueryOption)
$cgfoldl :: forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> CommitQueryOption -> c CommitQueryOption
gfoldl :: forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> CommitQueryOption -> c CommitQueryOption
$cgunfold :: forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c CommitQueryOption
gunfold :: forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c CommitQueryOption
$ctoConstr :: CommitQueryOption -> Constr
toConstr :: CommitQueryOption -> Constr
$cdataTypeOf :: CommitQueryOption -> DataType
dataTypeOf :: CommitQueryOption -> DataType
$cdataCast1 :: forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c CommitQueryOption)
dataCast1 :: forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c CommitQueryOption)
$cdataCast2 :: forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c CommitQueryOption)
dataCast2 :: forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c CommitQueryOption)
$cgmapT :: (forall b. Data b => b -> b)
-> CommitQueryOption -> CommitQueryOption
gmapT :: (forall b. Data b => b -> b)
-> CommitQueryOption -> CommitQueryOption
$cgmapQl :: forall r r'.
(r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> CommitQueryOption -> r
gmapQl :: forall r r'.
(r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> CommitQueryOption -> r
$cgmapQr :: forall r r'.
(r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> CommitQueryOption -> r
gmapQr :: forall r r'.
(r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> CommitQueryOption -> r
$cgmapQ :: forall u. (forall d. Data d => d -> u) -> CommitQueryOption -> [u]
gmapQ :: forall u. (forall d. Data d => d -> u) -> CommitQueryOption -> [u]
$cgmapQi :: forall u.
Int -> (forall d. Data d => d -> u) -> CommitQueryOption -> u
gmapQi :: forall u.
Int -> (forall d. Data d => d -> u) -> CommitQueryOption -> u
$cgmapM :: forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d)
-> CommitQueryOption -> m CommitQueryOption
gmapM :: forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d)
-> CommitQueryOption -> m CommitQueryOption
$cgmapMp :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> CommitQueryOption -> m CommitQueryOption
gmapMp :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> CommitQueryOption -> m CommitQueryOption
$cgmapMo :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> CommitQueryOption -> m CommitQueryOption
gmapMo :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> CommitQueryOption -> m CommitQueryOption
Data)
data Stats = Stats
{ Stats -> Int
statsAdditions :: !Int
, Stats -> Int
statsTotal :: !Int
, Stats -> Int
statsDeletions :: !Int
}
deriving (Int -> Stats -> ShowS
[Stats] -> ShowS
Stats -> String
(Int -> Stats -> ShowS)
-> (Stats -> String) -> ([Stats] -> ShowS) -> Show Stats
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
$cshowsPrec :: Int -> Stats -> ShowS
showsPrec :: Int -> Stats -> ShowS
$cshow :: Stats -> String
show :: Stats -> String
$cshowList :: [Stats] -> ShowS
showList :: [Stats] -> ShowS
Show, Typeable Stats
Typeable Stats =>
(forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> Stats -> c Stats)
-> (forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c Stats)
-> (Stats -> Constr)
-> (Stats -> DataType)
-> (forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c Stats))
-> (forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c Stats))
-> ((forall b. Data b => b -> b) -> Stats -> Stats)
-> (forall r r'.
(r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Stats -> r)
-> (forall r r'.
(r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Stats -> r)
-> (forall u. (forall d. Data d => d -> u) -> Stats -> [u])
-> (forall u. Int -> (forall d. Data d => d -> u) -> Stats -> u)
-> (forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d) -> Stats -> m Stats)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> Stats -> m Stats)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> Stats -> m Stats)
-> Data Stats
Stats -> Constr
Stats -> DataType
(forall b. Data b => b -> b) -> Stats -> Stats
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) -> Stats -> u
forall u. (forall d. Data d => d -> u) -> Stats -> [u]
forall r r'.
(r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Stats -> r
forall r r'.
(r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Stats -> r
forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d) -> Stats -> m Stats
forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> Stats -> m Stats
forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c Stats
forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> Stats -> c Stats
forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c Stats)
forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c Stats)
$cgfoldl :: forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> Stats -> c Stats
gfoldl :: forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> Stats -> c Stats
$cgunfold :: forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c Stats
gunfold :: forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c Stats
$ctoConstr :: Stats -> Constr
toConstr :: Stats -> Constr
$cdataTypeOf :: Stats -> DataType
dataTypeOf :: Stats -> DataType
$cdataCast1 :: forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c Stats)
dataCast1 :: forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c Stats)
$cdataCast2 :: forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c Stats)
dataCast2 :: forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c Stats)
$cgmapT :: (forall b. Data b => b -> b) -> Stats -> Stats
gmapT :: (forall b. Data b => b -> b) -> Stats -> Stats
$cgmapQl :: forall r r'.
(r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Stats -> r
gmapQl :: forall r r'.
(r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Stats -> r
$cgmapQr :: forall r r'.
(r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Stats -> r
gmapQr :: forall r r'.
(r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Stats -> r
$cgmapQ :: forall u. (forall d. Data d => d -> u) -> Stats -> [u]
gmapQ :: forall u. (forall d. Data d => d -> u) -> Stats -> [u]
$cgmapQi :: forall u. Int -> (forall d. Data d => d -> u) -> Stats -> u
gmapQi :: forall u. Int -> (forall d. Data d => d -> u) -> Stats -> u
$cgmapM :: forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d) -> Stats -> m Stats
gmapM :: forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d) -> Stats -> m Stats
$cgmapMp :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> Stats -> m Stats
gmapMp :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> Stats -> m Stats
$cgmapMo :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> Stats -> m Stats
gmapMo :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> Stats -> m Stats
Data, Typeable, Stats -> Stats -> Bool
(Stats -> Stats -> Bool) -> (Stats -> Stats -> Bool) -> Eq Stats
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: Stats -> Stats -> Bool
== :: Stats -> Stats -> Bool
$c/= :: Stats -> Stats -> Bool
/= :: Stats -> Stats -> Bool
Eq, Eq Stats
Eq Stats =>
(Stats -> Stats -> Ordering)
-> (Stats -> Stats -> Bool)
-> (Stats -> Stats -> Bool)
-> (Stats -> Stats -> Bool)
-> (Stats -> Stats -> Bool)
-> (Stats -> Stats -> Stats)
-> (Stats -> Stats -> Stats)
-> Ord Stats
Stats -> Stats -> Bool
Stats -> Stats -> Ordering
Stats -> Stats -> Stats
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
$ccompare :: Stats -> Stats -> Ordering
compare :: Stats -> Stats -> Ordering
$c< :: Stats -> Stats -> Bool
< :: Stats -> Stats -> Bool
$c<= :: Stats -> Stats -> Bool
<= :: Stats -> Stats -> Bool
$c> :: Stats -> Stats -> Bool
> :: Stats -> Stats -> Bool
$c>= :: Stats -> Stats -> Bool
>= :: Stats -> Stats -> Bool
$cmax :: Stats -> Stats -> Stats
max :: Stats -> Stats -> Stats
$cmin :: Stats -> Stats -> Stats
min :: Stats -> Stats -> Stats
Ord, (forall x. Stats -> Rep Stats x)
-> (forall x. Rep Stats x -> Stats) -> Generic Stats
forall x. Rep Stats x -> Stats
forall x. Stats -> Rep Stats x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cfrom :: forall x. Stats -> Rep Stats x
from :: forall x. Stats -> Rep Stats x
$cto :: forall x. Rep Stats x -> Stats
to :: forall x. Rep Stats x -> Stats
Generic)
instance NFData Stats where rnf :: Stats -> ()
rnf = Stats -> ()
forall a. (Generic a, GNFData (Rep a)) => a -> ()
genericRnf
instance Binary Stats
data Commit = Commit
{ Commit -> Name Commit
commitSha :: !(Name Commit)
, Commit -> Vector Tree
commitParents :: !(Vector Tree)
, Commit -> URL
commitUrl :: !URL
, Commit -> GitCommit
commitGitCommit :: !GitCommit
, Commit -> Maybe SimpleUser
commitCommitter :: !(Maybe SimpleUser)
, Commit -> Maybe SimpleUser
commitAuthor :: !(Maybe SimpleUser)
, Commit -> Vector File
commitFiles :: !(Vector File)
, Commit -> Maybe Stats
commitStats :: !(Maybe Stats)
}
deriving (Int -> Commit -> ShowS
[Commit] -> ShowS
Commit -> String
(Int -> Commit -> ShowS)
-> (Commit -> String) -> ([Commit] -> ShowS) -> Show Commit
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
$cshowsPrec :: Int -> Commit -> ShowS
showsPrec :: Int -> Commit -> ShowS
$cshow :: Commit -> String
show :: Commit -> String
$cshowList :: [Commit] -> ShowS
showList :: [Commit] -> ShowS
Show, Typeable Commit
Typeable Commit =>
(forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> Commit -> c Commit)
-> (forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c Commit)
-> (Commit -> Constr)
-> (Commit -> DataType)
-> (forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c Commit))
-> (forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c Commit))
-> ((forall b. Data b => b -> b) -> Commit -> Commit)
-> (forall r r'.
(r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> Commit -> r)
-> (forall r r'.
(r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> Commit -> r)
-> (forall u. (forall d. Data d => d -> u) -> Commit -> [u])
-> (forall u. Int -> (forall d. Data d => d -> u) -> Commit -> u)
-> (forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d) -> Commit -> m Commit)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> Commit -> m Commit)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> Commit -> m Commit)
-> Data Commit
Commit -> Constr
Commit -> DataType
(forall b. Data b => b -> b) -> Commit -> Commit
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) -> Commit -> u
forall u. (forall d. Data d => d -> u) -> Commit -> [u]
forall r r'.
(r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Commit -> r
forall r r'.
(r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Commit -> r
forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d) -> Commit -> m Commit
forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> Commit -> m Commit
forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c Commit
forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> Commit -> c Commit
forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c Commit)
forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c Commit)
$cgfoldl :: forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> Commit -> c Commit
gfoldl :: forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> Commit -> c Commit
$cgunfold :: forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c Commit
gunfold :: forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c Commit
$ctoConstr :: Commit -> Constr
toConstr :: Commit -> Constr
$cdataTypeOf :: Commit -> DataType
dataTypeOf :: Commit -> DataType
$cdataCast1 :: forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c Commit)
dataCast1 :: forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c Commit)
$cdataCast2 :: forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c Commit)
dataCast2 :: forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c Commit)
$cgmapT :: (forall b. Data b => b -> b) -> Commit -> Commit
gmapT :: (forall b. Data b => b -> b) -> Commit -> Commit
$cgmapQl :: forall r r'.
(r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Commit -> r
gmapQl :: forall r r'.
(r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Commit -> r
$cgmapQr :: forall r r'.
(r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Commit -> r
gmapQr :: forall r r'.
(r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Commit -> r
$cgmapQ :: forall u. (forall d. Data d => d -> u) -> Commit -> [u]
gmapQ :: forall u. (forall d. Data d => d -> u) -> Commit -> [u]
$cgmapQi :: forall u. Int -> (forall d. Data d => d -> u) -> Commit -> u
gmapQi :: forall u. Int -> (forall d. Data d => d -> u) -> Commit -> u
$cgmapM :: forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d) -> Commit -> m Commit
gmapM :: forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d) -> Commit -> m Commit
$cgmapMp :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> Commit -> m Commit
gmapMp :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> Commit -> m Commit
$cgmapMo :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> Commit -> m Commit
gmapMo :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> Commit -> m Commit
Data, Typeable, Commit -> Commit -> Bool
(Commit -> Commit -> Bool)
-> (Commit -> Commit -> Bool) -> Eq Commit
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: Commit -> Commit -> Bool
== :: Commit -> Commit -> Bool
$c/= :: Commit -> Commit -> Bool
/= :: Commit -> Commit -> Bool
Eq, Eq Commit
Eq Commit =>
(Commit -> Commit -> Ordering)
-> (Commit -> Commit -> Bool)
-> (Commit -> Commit -> Bool)
-> (Commit -> Commit -> Bool)
-> (Commit -> Commit -> Bool)
-> (Commit -> Commit -> Commit)
-> (Commit -> Commit -> Commit)
-> Ord Commit
Commit -> Commit -> Bool
Commit -> Commit -> Ordering
Commit -> Commit -> Commit
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
$ccompare :: Commit -> Commit -> Ordering
compare :: Commit -> Commit -> Ordering
$c< :: Commit -> Commit -> Bool
< :: Commit -> Commit -> Bool
$c<= :: Commit -> Commit -> Bool
<= :: Commit -> Commit -> Bool
$c> :: Commit -> Commit -> Bool
> :: Commit -> Commit -> Bool
$c>= :: Commit -> Commit -> Bool
>= :: Commit -> Commit -> Bool
$cmax :: Commit -> Commit -> Commit
max :: Commit -> Commit -> Commit
$cmin :: Commit -> Commit -> Commit
min :: Commit -> Commit -> Commit
Ord, (forall x. Commit -> Rep Commit x)
-> (forall x. Rep Commit x -> Commit) -> Generic Commit
forall x. Rep Commit x -> Commit
forall x. Commit -> Rep Commit x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cfrom :: forall x. Commit -> Rep Commit x
from :: forall x. Commit -> Rep Commit x
$cto :: forall x. Rep Commit x -> Commit
to :: forall x. Rep Commit x -> Commit
Generic)
instance NFData Commit where rnf :: Commit -> ()
rnf = Commit -> ()
forall a. (Generic a, GNFData (Rep a)) => a -> ()
genericRnf
instance Binary Commit
data Tree = Tree
{ Tree -> Name Tree
treeSha :: !(Name Tree)
, Tree -> URL
treeUrl :: !URL
, Tree -> Vector GitTree
treeGitTrees :: !(Vector GitTree)
}
deriving (Int -> Tree -> ShowS
[Tree] -> ShowS
Tree -> String
(Int -> Tree -> ShowS)
-> (Tree -> String) -> ([Tree] -> ShowS) -> Show Tree
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
$cshowsPrec :: Int -> Tree -> ShowS
showsPrec :: Int -> Tree -> ShowS
$cshow :: Tree -> String
show :: Tree -> String
$cshowList :: [Tree] -> ShowS
showList :: [Tree] -> ShowS
Show, Typeable Tree
Typeable Tree =>
(forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> Tree -> c Tree)
-> (forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c Tree)
-> (Tree -> Constr)
-> (Tree -> DataType)
-> (forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c Tree))
-> (forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c Tree))
-> ((forall b. Data b => b -> b) -> Tree -> Tree)
-> (forall r r'.
(r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Tree -> r)
-> (forall r r'.
(r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Tree -> r)
-> (forall u. (forall d. Data d => d -> u) -> Tree -> [u])
-> (forall u. Int -> (forall d. Data d => d -> u) -> Tree -> u)
-> (forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d) -> Tree -> m Tree)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> Tree -> m Tree)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> Tree -> m Tree)
-> Data Tree
Tree -> Constr
Tree -> DataType
(forall b. Data b => b -> b) -> Tree -> Tree
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) -> Tree -> u
forall u. (forall d. Data d => d -> u) -> Tree -> [u]
forall r r'.
(r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Tree -> r
forall r r'.
(r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Tree -> r
forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d) -> Tree -> m Tree
forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> Tree -> m Tree
forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c Tree
forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> Tree -> c Tree
forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c Tree)
forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c Tree)
$cgfoldl :: forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> Tree -> c Tree
gfoldl :: forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> Tree -> c Tree
$cgunfold :: forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c Tree
gunfold :: forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c Tree
$ctoConstr :: Tree -> Constr
toConstr :: Tree -> Constr
$cdataTypeOf :: Tree -> DataType
dataTypeOf :: Tree -> DataType
$cdataCast1 :: forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c Tree)
dataCast1 :: forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c Tree)
$cdataCast2 :: forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c Tree)
dataCast2 :: forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c Tree)
$cgmapT :: (forall b. Data b => b -> b) -> Tree -> Tree
gmapT :: (forall b. Data b => b -> b) -> Tree -> Tree
$cgmapQl :: forall r r'.
(r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Tree -> r
gmapQl :: forall r r'.
(r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Tree -> r
$cgmapQr :: forall r r'.
(r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Tree -> r
gmapQr :: forall r r'.
(r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Tree -> r
$cgmapQ :: forall u. (forall d. Data d => d -> u) -> Tree -> [u]
gmapQ :: forall u. (forall d. Data d => d -> u) -> Tree -> [u]
$cgmapQi :: forall u. Int -> (forall d. Data d => d -> u) -> Tree -> u
gmapQi :: forall u. Int -> (forall d. Data d => d -> u) -> Tree -> u
$cgmapM :: forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d) -> Tree -> m Tree
gmapM :: forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d) -> Tree -> m Tree
$cgmapMp :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> Tree -> m Tree
gmapMp :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> Tree -> m Tree
$cgmapMo :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> Tree -> m Tree
gmapMo :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> Tree -> m Tree
Data, Typeable, Tree -> Tree -> Bool
(Tree -> Tree -> Bool) -> (Tree -> Tree -> Bool) -> Eq Tree
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: Tree -> Tree -> Bool
== :: Tree -> Tree -> Bool
$c/= :: Tree -> Tree -> Bool
/= :: Tree -> Tree -> Bool
Eq, Eq Tree
Eq Tree =>
(Tree -> Tree -> Ordering)
-> (Tree -> Tree -> Bool)
-> (Tree -> Tree -> Bool)
-> (Tree -> Tree -> Bool)
-> (Tree -> Tree -> Bool)
-> (Tree -> Tree -> Tree)
-> (Tree -> Tree -> Tree)
-> Ord Tree
Tree -> Tree -> Bool
Tree -> Tree -> Ordering
Tree -> Tree -> Tree
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
$ccompare :: Tree -> Tree -> Ordering
compare :: Tree -> Tree -> Ordering
$c< :: Tree -> Tree -> Bool
< :: Tree -> Tree -> Bool
$c<= :: Tree -> Tree -> Bool
<= :: Tree -> Tree -> Bool
$c> :: Tree -> Tree -> Bool
> :: Tree -> Tree -> Bool
$c>= :: Tree -> Tree -> Bool
>= :: Tree -> Tree -> Bool
$cmax :: Tree -> Tree -> Tree
max :: Tree -> Tree -> Tree
$cmin :: Tree -> Tree -> Tree
min :: Tree -> Tree -> Tree
Ord, (forall x. Tree -> Rep Tree x)
-> (forall x. Rep Tree x -> Tree) -> Generic Tree
forall x. Rep Tree x -> Tree
forall x. Tree -> Rep Tree x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cfrom :: forall x. Tree -> Rep Tree x
from :: forall x. Tree -> Rep Tree x
$cto :: forall x. Rep Tree x -> Tree
to :: forall x. Rep Tree x -> Tree
Generic)
instance NFData Tree where rnf :: Tree -> ()
rnf = Tree -> ()
forall a. (Generic a, GNFData (Rep a)) => a -> ()
genericRnf
instance Binary Tree
data GitTree = GitTree
{ GitTree -> Text
gitTreeType :: !Text
, GitTree -> Name GitTree
gitTreeSha :: !(Name GitTree)
, GitTree -> Maybe URL
gitTreeUrl :: !(Maybe URL)
, GitTree -> Maybe Int
gitTreeSize :: !(Maybe Int)
, GitTree -> Text
gitTreePath :: !Text
, GitTree -> Text
gitTreeMode :: !Text
}
deriving (Int -> GitTree -> ShowS
[GitTree] -> ShowS
GitTree -> String
(Int -> GitTree -> ShowS)
-> (GitTree -> String) -> ([GitTree] -> ShowS) -> Show GitTree
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
$cshowsPrec :: Int -> GitTree -> ShowS
showsPrec :: Int -> GitTree -> ShowS
$cshow :: GitTree -> String
show :: GitTree -> String
$cshowList :: [GitTree] -> ShowS
showList :: [GitTree] -> ShowS
Show, Typeable GitTree
Typeable GitTree =>
(forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> GitTree -> c GitTree)
-> (forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c GitTree)
-> (GitTree -> Constr)
-> (GitTree -> DataType)
-> (forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c GitTree))
-> (forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c GitTree))
-> ((forall b. Data b => b -> b) -> GitTree -> GitTree)
-> (forall r r'.
(r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> GitTree -> r)
-> (forall r r'.
(r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> GitTree -> r)
-> (forall u. (forall d. Data d => d -> u) -> GitTree -> [u])
-> (forall u. Int -> (forall d. Data d => d -> u) -> GitTree -> u)
-> (forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d) -> GitTree -> m GitTree)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> GitTree -> m GitTree)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> GitTree -> m GitTree)
-> Data GitTree
GitTree -> Constr
GitTree -> DataType
(forall b. Data b => b -> b) -> GitTree -> GitTree
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) -> GitTree -> u
forall u. (forall d. Data d => d -> u) -> GitTree -> [u]
forall r r'.
(r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> GitTree -> r
forall r r'.
(r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> GitTree -> r
forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d) -> GitTree -> m GitTree
forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> GitTree -> m GitTree
forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c GitTree
forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> GitTree -> c GitTree
forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c GitTree)
forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c GitTree)
$cgfoldl :: forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> GitTree -> c GitTree
gfoldl :: forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> GitTree -> c GitTree
$cgunfold :: forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c GitTree
gunfold :: forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c GitTree
$ctoConstr :: GitTree -> Constr
toConstr :: GitTree -> Constr
$cdataTypeOf :: GitTree -> DataType
dataTypeOf :: GitTree -> DataType
$cdataCast1 :: forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c GitTree)
dataCast1 :: forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c GitTree)
$cdataCast2 :: forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c GitTree)
dataCast2 :: forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c GitTree)
$cgmapT :: (forall b. Data b => b -> b) -> GitTree -> GitTree
gmapT :: (forall b. Data b => b -> b) -> GitTree -> GitTree
$cgmapQl :: forall r r'.
(r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> GitTree -> r
gmapQl :: forall r r'.
(r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> GitTree -> r
$cgmapQr :: forall r r'.
(r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> GitTree -> r
gmapQr :: forall r r'.
(r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> GitTree -> r
$cgmapQ :: forall u. (forall d. Data d => d -> u) -> GitTree -> [u]
gmapQ :: forall u. (forall d. Data d => d -> u) -> GitTree -> [u]
$cgmapQi :: forall u. Int -> (forall d. Data d => d -> u) -> GitTree -> u
gmapQi :: forall u. Int -> (forall d. Data d => d -> u) -> GitTree -> u
$cgmapM :: forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d) -> GitTree -> m GitTree
gmapM :: forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d) -> GitTree -> m GitTree
$cgmapMp :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> GitTree -> m GitTree
gmapMp :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> GitTree -> m GitTree
$cgmapMo :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> GitTree -> m GitTree
gmapMo :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> GitTree -> m GitTree
Data, Typeable, GitTree -> GitTree -> Bool
(GitTree -> GitTree -> Bool)
-> (GitTree -> GitTree -> Bool) -> Eq GitTree
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: GitTree -> GitTree -> Bool
== :: GitTree -> GitTree -> Bool
$c/= :: GitTree -> GitTree -> Bool
/= :: GitTree -> GitTree -> Bool
Eq, Eq GitTree
Eq GitTree =>
(GitTree -> GitTree -> Ordering)
-> (GitTree -> GitTree -> Bool)
-> (GitTree -> GitTree -> Bool)
-> (GitTree -> GitTree -> Bool)
-> (GitTree -> GitTree -> Bool)
-> (GitTree -> GitTree -> GitTree)
-> (GitTree -> GitTree -> GitTree)
-> Ord GitTree
GitTree -> GitTree -> Bool
GitTree -> GitTree -> Ordering
GitTree -> GitTree -> GitTree
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
$ccompare :: GitTree -> GitTree -> Ordering
compare :: GitTree -> GitTree -> Ordering
$c< :: GitTree -> GitTree -> Bool
< :: GitTree -> GitTree -> Bool
$c<= :: GitTree -> GitTree -> Bool
<= :: GitTree -> GitTree -> Bool
$c> :: GitTree -> GitTree -> Bool
> :: GitTree -> GitTree -> Bool
$c>= :: GitTree -> GitTree -> Bool
>= :: GitTree -> GitTree -> Bool
$cmax :: GitTree -> GitTree -> GitTree
max :: GitTree -> GitTree -> GitTree
$cmin :: GitTree -> GitTree -> GitTree
min :: GitTree -> GitTree -> GitTree
Ord, (forall x. GitTree -> Rep GitTree x)
-> (forall x. Rep GitTree x -> GitTree) -> Generic GitTree
forall x. Rep GitTree x -> GitTree
forall x. GitTree -> Rep GitTree x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cfrom :: forall x. GitTree -> Rep GitTree x
from :: forall x. GitTree -> Rep GitTree x
$cto :: forall x. Rep GitTree x -> GitTree
to :: forall x. Rep GitTree x -> GitTree
Generic)
instance NFData GitTree where rnf :: GitTree -> ()
rnf = GitTree -> ()
forall a. (Generic a, GNFData (Rep a)) => a -> ()
genericRnf
instance Binary GitTree
data GitCommit = GitCommit
{ GitCommit -> Text
gitCommitMessage :: !Text
, GitCommit -> URL
gitCommitUrl :: !URL
, GitCommit -> GitUser
gitCommitCommitter :: !GitUser
, GitCommit -> GitUser
gitCommitAuthor :: !GitUser
, GitCommit -> Tree
gitCommitTree :: !Tree
, GitCommit -> Maybe (Name GitCommit)
gitCommitSha :: !(Maybe (Name GitCommit))
, GitCommit -> Vector Tree
gitCommitParents :: !(Vector Tree)
}
deriving (Int -> GitCommit -> ShowS
[GitCommit] -> ShowS
GitCommit -> String
(Int -> GitCommit -> ShowS)
-> (GitCommit -> String)
-> ([GitCommit] -> ShowS)
-> Show GitCommit
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
$cshowsPrec :: Int -> GitCommit -> ShowS
showsPrec :: Int -> GitCommit -> ShowS
$cshow :: GitCommit -> String
show :: GitCommit -> String
$cshowList :: [GitCommit] -> ShowS
showList :: [GitCommit] -> ShowS
Show, Typeable GitCommit
Typeable GitCommit =>
(forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> GitCommit -> c GitCommit)
-> (forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c GitCommit)
-> (GitCommit -> Constr)
-> (GitCommit -> DataType)
-> (forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c GitCommit))
-> (forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c GitCommit))
-> ((forall b. Data b => b -> b) -> GitCommit -> GitCommit)
-> (forall r r'.
(r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> GitCommit -> r)
-> (forall r r'.
(r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> GitCommit -> r)
-> (forall u. (forall d. Data d => d -> u) -> GitCommit -> [u])
-> (forall u.
Int -> (forall d. Data d => d -> u) -> GitCommit -> u)
-> (forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d) -> GitCommit -> m GitCommit)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> GitCommit -> m GitCommit)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> GitCommit -> m GitCommit)
-> Data GitCommit
GitCommit -> Constr
GitCommit -> DataType
(forall b. Data b => b -> b) -> GitCommit -> GitCommit
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) -> GitCommit -> u
forall u. (forall d. Data d => d -> u) -> GitCommit -> [u]
forall r r'.
(r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> GitCommit -> r
forall r r'.
(r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> GitCommit -> r
forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d) -> GitCommit -> m GitCommit
forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> GitCommit -> m GitCommit
forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c GitCommit
forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> GitCommit -> c GitCommit
forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c GitCommit)
forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c GitCommit)
$cgfoldl :: forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> GitCommit -> c GitCommit
gfoldl :: forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> GitCommit -> c GitCommit
$cgunfold :: forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c GitCommit
gunfold :: forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c GitCommit
$ctoConstr :: GitCommit -> Constr
toConstr :: GitCommit -> Constr
$cdataTypeOf :: GitCommit -> DataType
dataTypeOf :: GitCommit -> DataType
$cdataCast1 :: forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c GitCommit)
dataCast1 :: forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c GitCommit)
$cdataCast2 :: forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c GitCommit)
dataCast2 :: forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c GitCommit)
$cgmapT :: (forall b. Data b => b -> b) -> GitCommit -> GitCommit
gmapT :: (forall b. Data b => b -> b) -> GitCommit -> GitCommit
$cgmapQl :: forall r r'.
(r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> GitCommit -> r
gmapQl :: forall r r'.
(r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> GitCommit -> r
$cgmapQr :: forall r r'.
(r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> GitCommit -> r
gmapQr :: forall r r'.
(r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> GitCommit -> r
$cgmapQ :: forall u. (forall d. Data d => d -> u) -> GitCommit -> [u]
gmapQ :: forall u. (forall d. Data d => d -> u) -> GitCommit -> [u]
$cgmapQi :: forall u. Int -> (forall d. Data d => d -> u) -> GitCommit -> u
gmapQi :: forall u. Int -> (forall d. Data d => d -> u) -> GitCommit -> u
$cgmapM :: forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d) -> GitCommit -> m GitCommit
gmapM :: forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d) -> GitCommit -> m GitCommit
$cgmapMp :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> GitCommit -> m GitCommit
gmapMp :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> GitCommit -> m GitCommit
$cgmapMo :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> GitCommit -> m GitCommit
gmapMo :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> GitCommit -> m GitCommit
Data, Typeable, GitCommit -> GitCommit -> Bool
(GitCommit -> GitCommit -> Bool)
-> (GitCommit -> GitCommit -> Bool) -> Eq GitCommit
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: GitCommit -> GitCommit -> Bool
== :: GitCommit -> GitCommit -> Bool
$c/= :: GitCommit -> GitCommit -> Bool
/= :: GitCommit -> GitCommit -> Bool
Eq, Eq GitCommit
Eq GitCommit =>
(GitCommit -> GitCommit -> Ordering)
-> (GitCommit -> GitCommit -> Bool)
-> (GitCommit -> GitCommit -> Bool)
-> (GitCommit -> GitCommit -> Bool)
-> (GitCommit -> GitCommit -> Bool)
-> (GitCommit -> GitCommit -> GitCommit)
-> (GitCommit -> GitCommit -> GitCommit)
-> Ord GitCommit
GitCommit -> GitCommit -> Bool
GitCommit -> GitCommit -> Ordering
GitCommit -> GitCommit -> GitCommit
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
$ccompare :: GitCommit -> GitCommit -> Ordering
compare :: GitCommit -> GitCommit -> Ordering
$c< :: GitCommit -> GitCommit -> Bool
< :: GitCommit -> GitCommit -> Bool
$c<= :: GitCommit -> GitCommit -> Bool
<= :: GitCommit -> GitCommit -> Bool
$c> :: GitCommit -> GitCommit -> Bool
> :: GitCommit -> GitCommit -> Bool
$c>= :: GitCommit -> GitCommit -> Bool
>= :: GitCommit -> GitCommit -> Bool
$cmax :: GitCommit -> GitCommit -> GitCommit
max :: GitCommit -> GitCommit -> GitCommit
$cmin :: GitCommit -> GitCommit -> GitCommit
min :: GitCommit -> GitCommit -> GitCommit
Ord, (forall x. GitCommit -> Rep GitCommit x)
-> (forall x. Rep GitCommit x -> GitCommit) -> Generic GitCommit
forall x. Rep GitCommit x -> GitCommit
forall x. GitCommit -> Rep GitCommit x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cfrom :: forall x. GitCommit -> Rep GitCommit x
from :: forall x. GitCommit -> Rep GitCommit x
$cto :: forall x. Rep GitCommit x -> GitCommit
to :: forall x. Rep GitCommit x -> GitCommit
Generic)
instance NFData GitCommit where rnf :: GitCommit -> ()
rnf = GitCommit -> ()
forall a. (Generic a, GNFData (Rep a)) => a -> ()
genericRnf
instance Binary GitCommit
data Blob = Blob
{ Blob -> URL
blobUrl :: !URL
, Blob -> Text
blobEncoding :: !Text
, Blob -> Text
blobContent :: !Text
, Blob -> Name Blob
blobSha :: !(Name Blob)
, Blob -> Int
blobSize :: !Int
}
deriving (Int -> Blob -> ShowS
[Blob] -> ShowS
Blob -> String
(Int -> Blob -> ShowS)
-> (Blob -> String) -> ([Blob] -> ShowS) -> Show Blob
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
$cshowsPrec :: Int -> Blob -> ShowS
showsPrec :: Int -> Blob -> ShowS
$cshow :: Blob -> String
show :: Blob -> String
$cshowList :: [Blob] -> ShowS
showList :: [Blob] -> ShowS
Show, Typeable Blob
Typeable Blob =>
(forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> Blob -> c Blob)
-> (forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c Blob)
-> (Blob -> Constr)
-> (Blob -> DataType)
-> (forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c Blob))
-> (forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c Blob))
-> ((forall b. Data b => b -> b) -> Blob -> Blob)
-> (forall r r'.
(r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Blob -> r)
-> (forall r r'.
(r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Blob -> r)
-> (forall u. (forall d. Data d => d -> u) -> Blob -> [u])
-> (forall u. Int -> (forall d. Data d => d -> u) -> Blob -> u)
-> (forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d) -> Blob -> m Blob)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> Blob -> m Blob)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> Blob -> m Blob)
-> Data Blob
Blob -> Constr
Blob -> DataType
(forall b. Data b => b -> b) -> Blob -> Blob
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) -> Blob -> u
forall u. (forall d. Data d => d -> u) -> Blob -> [u]
forall r r'.
(r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Blob -> r
forall r r'.
(r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Blob -> r
forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d) -> Blob -> m Blob
forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> Blob -> m Blob
forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c Blob
forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> Blob -> c Blob
forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c Blob)
forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c Blob)
$cgfoldl :: forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> Blob -> c Blob
gfoldl :: forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> Blob -> c Blob
$cgunfold :: forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c Blob
gunfold :: forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c Blob
$ctoConstr :: Blob -> Constr
toConstr :: Blob -> Constr
$cdataTypeOf :: Blob -> DataType
dataTypeOf :: Blob -> DataType
$cdataCast1 :: forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c Blob)
dataCast1 :: forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c Blob)
$cdataCast2 :: forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c Blob)
dataCast2 :: forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c Blob)
$cgmapT :: (forall b. Data b => b -> b) -> Blob -> Blob
gmapT :: (forall b. Data b => b -> b) -> Blob -> Blob
$cgmapQl :: forall r r'.
(r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Blob -> r
gmapQl :: forall r r'.
(r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Blob -> r
$cgmapQr :: forall r r'.
(r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Blob -> r
gmapQr :: forall r r'.
(r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Blob -> r
$cgmapQ :: forall u. (forall d. Data d => d -> u) -> Blob -> [u]
gmapQ :: forall u. (forall d. Data d => d -> u) -> Blob -> [u]
$cgmapQi :: forall u. Int -> (forall d. Data d => d -> u) -> Blob -> u
gmapQi :: forall u. Int -> (forall d. Data d => d -> u) -> Blob -> u
$cgmapM :: forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d) -> Blob -> m Blob
gmapM :: forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d) -> Blob -> m Blob
$cgmapMp :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> Blob -> m Blob
gmapMp :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> Blob -> m Blob
$cgmapMo :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> Blob -> m Blob
gmapMo :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> Blob -> m Blob
Data, Typeable, Blob -> Blob -> Bool
(Blob -> Blob -> Bool) -> (Blob -> Blob -> Bool) -> Eq Blob
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: Blob -> Blob -> Bool
== :: Blob -> Blob -> Bool
$c/= :: Blob -> Blob -> Bool
/= :: Blob -> Blob -> Bool
Eq, Eq Blob
Eq Blob =>
(Blob -> Blob -> Ordering)
-> (Blob -> Blob -> Bool)
-> (Blob -> Blob -> Bool)
-> (Blob -> Blob -> Bool)
-> (Blob -> Blob -> Bool)
-> (Blob -> Blob -> Blob)
-> (Blob -> Blob -> Blob)
-> Ord Blob
Blob -> Blob -> Bool
Blob -> Blob -> Ordering
Blob -> Blob -> Blob
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
$ccompare :: Blob -> Blob -> Ordering
compare :: Blob -> Blob -> Ordering
$c< :: Blob -> Blob -> Bool
< :: Blob -> Blob -> Bool
$c<= :: Blob -> Blob -> Bool
<= :: Blob -> Blob -> Bool
$c> :: Blob -> Blob -> Bool
> :: Blob -> Blob -> Bool
$c>= :: Blob -> Blob -> Bool
>= :: Blob -> Blob -> Bool
$cmax :: Blob -> Blob -> Blob
max :: Blob -> Blob -> Blob
$cmin :: Blob -> Blob -> Blob
min :: Blob -> Blob -> Blob
Ord, (forall x. Blob -> Rep Blob x)
-> (forall x. Rep Blob x -> Blob) -> Generic Blob
forall x. Rep Blob x -> Blob
forall x. Blob -> Rep Blob x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cfrom :: forall x. Blob -> Rep Blob x
from :: forall x. Blob -> Rep Blob x
$cto :: forall x. Rep Blob x -> Blob
to :: forall x. Rep Blob x -> Blob
Generic)
instance NFData Blob where rnf :: Blob -> ()
rnf = Blob -> ()
forall a. (Generic a, GNFData (Rep a)) => a -> ()
genericRnf
instance Binary Blob
data Tag = Tag
{ Tag -> Text
tagName :: !Text
, Tag -> URL
tagZipballUrl :: !URL
, Tag -> URL
tagTarballUrl :: !URL
, Tag -> BranchCommit
tagCommit :: !BranchCommit
}
deriving (Int -> Tag -> ShowS
[Tag] -> ShowS
Tag -> String
(Int -> Tag -> ShowS)
-> (Tag -> String) -> ([Tag] -> ShowS) -> Show Tag
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
$cshowsPrec :: Int -> Tag -> ShowS
showsPrec :: Int -> Tag -> ShowS
$cshow :: Tag -> String
show :: Tag -> String
$cshowList :: [Tag] -> ShowS
showList :: [Tag] -> ShowS
Show, Typeable Tag
Typeable Tag =>
(forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> Tag -> c Tag)
-> (forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c Tag)
-> (Tag -> Constr)
-> (Tag -> DataType)
-> (forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c Tag))
-> (forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c Tag))
-> ((forall b. Data b => b -> b) -> Tag -> Tag)
-> (forall r r'.
(r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Tag -> r)
-> (forall r r'.
(r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Tag -> r)
-> (forall u. (forall d. Data d => d -> u) -> Tag -> [u])
-> (forall u. Int -> (forall d. Data d => d -> u) -> Tag -> u)
-> (forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d) -> Tag -> m Tag)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> Tag -> m Tag)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> Tag -> m Tag)
-> Data Tag
Tag -> Constr
Tag -> DataType
(forall b. Data b => b -> b) -> Tag -> Tag
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) -> Tag -> u
forall u. (forall d. Data d => d -> u) -> Tag -> [u]
forall r r'.
(r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Tag -> r
forall r r'.
(r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Tag -> r
forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d) -> Tag -> m Tag
forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> Tag -> m Tag
forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c Tag
forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> Tag -> c Tag
forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c Tag)
forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c Tag)
$cgfoldl :: forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> Tag -> c Tag
gfoldl :: forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> Tag -> c Tag
$cgunfold :: forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c Tag
gunfold :: forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c Tag
$ctoConstr :: Tag -> Constr
toConstr :: Tag -> Constr
$cdataTypeOf :: Tag -> DataType
dataTypeOf :: Tag -> DataType
$cdataCast1 :: forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c Tag)
dataCast1 :: forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c Tag)
$cdataCast2 :: forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c Tag)
dataCast2 :: forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c Tag)
$cgmapT :: (forall b. Data b => b -> b) -> Tag -> Tag
gmapT :: (forall b. Data b => b -> b) -> Tag -> Tag
$cgmapQl :: forall r r'.
(r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Tag -> r
gmapQl :: forall r r'.
(r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Tag -> r
$cgmapQr :: forall r r'.
(r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Tag -> r
gmapQr :: forall r r'.
(r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Tag -> r
$cgmapQ :: forall u. (forall d. Data d => d -> u) -> Tag -> [u]
gmapQ :: forall u. (forall d. Data d => d -> u) -> Tag -> [u]
$cgmapQi :: forall u. Int -> (forall d. Data d => d -> u) -> Tag -> u
gmapQi :: forall u. Int -> (forall d. Data d => d -> u) -> Tag -> u
$cgmapM :: forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d) -> Tag -> m Tag
gmapM :: forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d) -> Tag -> m Tag
$cgmapMp :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> Tag -> m Tag
gmapMp :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> Tag -> m Tag
$cgmapMo :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> Tag -> m Tag
gmapMo :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> Tag -> m Tag
Data, Typeable, Tag -> Tag -> Bool
(Tag -> Tag -> Bool) -> (Tag -> Tag -> Bool) -> Eq Tag
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: Tag -> Tag -> Bool
== :: Tag -> Tag -> Bool
$c/= :: Tag -> Tag -> Bool
/= :: Tag -> Tag -> Bool
Eq, Eq Tag
Eq Tag =>
(Tag -> Tag -> Ordering)
-> (Tag -> Tag -> Bool)
-> (Tag -> Tag -> Bool)
-> (Tag -> Tag -> Bool)
-> (Tag -> Tag -> Bool)
-> (Tag -> Tag -> Tag)
-> (Tag -> Tag -> Tag)
-> Ord Tag
Tag -> Tag -> Bool
Tag -> Tag -> Ordering
Tag -> Tag -> Tag
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
$ccompare :: Tag -> Tag -> Ordering
compare :: Tag -> Tag -> Ordering
$c< :: Tag -> Tag -> Bool
< :: Tag -> Tag -> Bool
$c<= :: Tag -> Tag -> Bool
<= :: Tag -> Tag -> Bool
$c> :: Tag -> Tag -> Bool
> :: Tag -> Tag -> Bool
$c>= :: Tag -> Tag -> Bool
>= :: Tag -> Tag -> Bool
$cmax :: Tag -> Tag -> Tag
max :: Tag -> Tag -> Tag
$cmin :: Tag -> Tag -> Tag
min :: Tag -> Tag -> Tag
Ord, (forall x. Tag -> Rep Tag x)
-> (forall x. Rep Tag x -> Tag) -> Generic Tag
forall x. Rep Tag x -> Tag
forall x. Tag -> Rep Tag x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cfrom :: forall x. Tag -> Rep Tag x
from :: forall x. Tag -> Rep Tag x
$cto :: forall x. Rep Tag x -> Tag
to :: forall x. Rep Tag x -> Tag
Generic)
instance NFData Tag where rnf :: Tag -> ()
rnf = Tag -> ()
forall a. (Generic a, GNFData (Rep a)) => a -> ()
genericRnf
instance Binary Tag
data Branch = Branch
{ Branch -> Text
branchName :: !Text
, Branch -> BranchCommit
branchCommit :: !BranchCommit
}
deriving (Int -> Branch -> ShowS
[Branch] -> ShowS
Branch -> String
(Int -> Branch -> ShowS)
-> (Branch -> String) -> ([Branch] -> ShowS) -> Show Branch
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
$cshowsPrec :: Int -> Branch -> ShowS
showsPrec :: Int -> Branch -> ShowS
$cshow :: Branch -> String
show :: Branch -> String
$cshowList :: [Branch] -> ShowS
showList :: [Branch] -> ShowS
Show, Typeable Branch
Typeable Branch =>
(forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> Branch -> c Branch)
-> (forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c Branch)
-> (Branch -> Constr)
-> (Branch -> DataType)
-> (forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c Branch))
-> (forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c Branch))
-> ((forall b. Data b => b -> b) -> Branch -> Branch)
-> (forall r r'.
(r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> Branch -> r)
-> (forall r r'.
(r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> Branch -> r)
-> (forall u. (forall d. Data d => d -> u) -> Branch -> [u])
-> (forall u. Int -> (forall d. Data d => d -> u) -> Branch -> u)
-> (forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d) -> Branch -> m Branch)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> Branch -> m Branch)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> Branch -> m Branch)
-> Data Branch
Branch -> Constr
Branch -> DataType
(forall b. Data b => b -> b) -> Branch -> Branch
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) -> Branch -> u
forall u. (forall d. Data d => d -> u) -> Branch -> [u]
forall r r'.
(r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Branch -> r
forall r r'.
(r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Branch -> r
forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d) -> Branch -> m Branch
forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> Branch -> m Branch
forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c Branch
forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> Branch -> c Branch
forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c Branch)
forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c Branch)
$cgfoldl :: forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> Branch -> c Branch
gfoldl :: forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> Branch -> c Branch
$cgunfold :: forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c Branch
gunfold :: forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c Branch
$ctoConstr :: Branch -> Constr
toConstr :: Branch -> Constr
$cdataTypeOf :: Branch -> DataType
dataTypeOf :: Branch -> DataType
$cdataCast1 :: forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c Branch)
dataCast1 :: forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c Branch)
$cdataCast2 :: forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c Branch)
dataCast2 :: forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c Branch)
$cgmapT :: (forall b. Data b => b -> b) -> Branch -> Branch
gmapT :: (forall b. Data b => b -> b) -> Branch -> Branch
$cgmapQl :: forall r r'.
(r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Branch -> r
gmapQl :: forall r r'.
(r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Branch -> r
$cgmapQr :: forall r r'.
(r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Branch -> r
gmapQr :: forall r r'.
(r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Branch -> r
$cgmapQ :: forall u. (forall d. Data d => d -> u) -> Branch -> [u]
gmapQ :: forall u. (forall d. Data d => d -> u) -> Branch -> [u]
$cgmapQi :: forall u. Int -> (forall d. Data d => d -> u) -> Branch -> u
gmapQi :: forall u. Int -> (forall d. Data d => d -> u) -> Branch -> u
$cgmapM :: forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d) -> Branch -> m Branch
gmapM :: forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d) -> Branch -> m Branch
$cgmapMp :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> Branch -> m Branch
gmapMp :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> Branch -> m Branch
$cgmapMo :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> Branch -> m Branch
gmapMo :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> Branch -> m Branch
Data, Typeable, Branch -> Branch -> Bool
(Branch -> Branch -> Bool)
-> (Branch -> Branch -> Bool) -> Eq Branch
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: Branch -> Branch -> Bool
== :: Branch -> Branch -> Bool
$c/= :: Branch -> Branch -> Bool
/= :: Branch -> Branch -> Bool
Eq, Eq Branch
Eq Branch =>
(Branch -> Branch -> Ordering)
-> (Branch -> Branch -> Bool)
-> (Branch -> Branch -> Bool)
-> (Branch -> Branch -> Bool)
-> (Branch -> Branch -> Bool)
-> (Branch -> Branch -> Branch)
-> (Branch -> Branch -> Branch)
-> Ord Branch
Branch -> Branch -> Bool
Branch -> Branch -> Ordering
Branch -> Branch -> Branch
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
$ccompare :: Branch -> Branch -> Ordering
compare :: Branch -> Branch -> Ordering
$c< :: Branch -> Branch -> Bool
< :: Branch -> Branch -> Bool
$c<= :: Branch -> Branch -> Bool
<= :: Branch -> Branch -> Bool
$c> :: Branch -> Branch -> Bool
> :: Branch -> Branch -> Bool
$c>= :: Branch -> Branch -> Bool
>= :: Branch -> Branch -> Bool
$cmax :: Branch -> Branch -> Branch
max :: Branch -> Branch -> Branch
$cmin :: Branch -> Branch -> Branch
min :: Branch -> Branch -> Branch
Ord, (forall x. Branch -> Rep Branch x)
-> (forall x. Rep Branch x -> Branch) -> Generic Branch
forall x. Rep Branch x -> Branch
forall x. Branch -> Rep Branch x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cfrom :: forall x. Branch -> Rep Branch x
from :: forall x. Branch -> Rep Branch x
$cto :: forall x. Rep Branch x -> Branch
to :: forall x. Rep Branch x -> Branch
Generic)
instance NFData Branch where rnf :: Branch -> ()
rnf = Branch -> ()
forall a. (Generic a, GNFData (Rep a)) => a -> ()
genericRnf
data BranchCommit = BranchCommit
{ BranchCommit -> Text
branchCommitSha :: !Text
, BranchCommit -> URL
branchCommitUrl :: !URL
}
deriving (Int -> BranchCommit -> ShowS
[BranchCommit] -> ShowS
BranchCommit -> String
(Int -> BranchCommit -> ShowS)
-> (BranchCommit -> String)
-> ([BranchCommit] -> ShowS)
-> Show BranchCommit
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
$cshowsPrec :: Int -> BranchCommit -> ShowS
showsPrec :: Int -> BranchCommit -> ShowS
$cshow :: BranchCommit -> String
show :: BranchCommit -> String
$cshowList :: [BranchCommit] -> ShowS
showList :: [BranchCommit] -> ShowS
Show, Typeable BranchCommit
Typeable BranchCommit =>
(forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> BranchCommit -> c BranchCommit)
-> (forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c BranchCommit)
-> (BranchCommit -> Constr)
-> (BranchCommit -> DataType)
-> (forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c BranchCommit))
-> (forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c BranchCommit))
-> ((forall b. Data b => b -> b) -> BranchCommit -> BranchCommit)
-> (forall r r'.
(r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> BranchCommit -> r)
-> (forall r r'.
(r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> BranchCommit -> r)
-> (forall u. (forall d. Data d => d -> u) -> BranchCommit -> [u])
-> (forall u.
Int -> (forall d. Data d => d -> u) -> BranchCommit -> u)
-> (forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d) -> BranchCommit -> m BranchCommit)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> BranchCommit -> m BranchCommit)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> BranchCommit -> m BranchCommit)
-> Data BranchCommit
BranchCommit -> Constr
BranchCommit -> DataType
(forall b. Data b => b -> b) -> BranchCommit -> BranchCommit
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) -> BranchCommit -> u
forall u. (forall d. Data d => d -> u) -> BranchCommit -> [u]
forall r r'.
(r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> BranchCommit -> r
forall r r'.
(r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> BranchCommit -> r
forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d) -> BranchCommit -> m BranchCommit
forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> BranchCommit -> m BranchCommit
forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c BranchCommit
forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> BranchCommit -> c BranchCommit
forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c BranchCommit)
forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c BranchCommit)
$cgfoldl :: forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> BranchCommit -> c BranchCommit
gfoldl :: forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> BranchCommit -> c BranchCommit
$cgunfold :: forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c BranchCommit
gunfold :: forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c BranchCommit
$ctoConstr :: BranchCommit -> Constr
toConstr :: BranchCommit -> Constr
$cdataTypeOf :: BranchCommit -> DataType
dataTypeOf :: BranchCommit -> DataType
$cdataCast1 :: forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c BranchCommit)
dataCast1 :: forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c BranchCommit)
$cdataCast2 :: forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c BranchCommit)
dataCast2 :: forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c BranchCommit)
$cgmapT :: (forall b. Data b => b -> b) -> BranchCommit -> BranchCommit
gmapT :: (forall b. Data b => b -> b) -> BranchCommit -> BranchCommit
$cgmapQl :: forall r r'.
(r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> BranchCommit -> r
gmapQl :: forall r r'.
(r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> BranchCommit -> r
$cgmapQr :: forall r r'.
(r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> BranchCommit -> r
gmapQr :: forall r r'.
(r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> BranchCommit -> r
$cgmapQ :: forall u. (forall d. Data d => d -> u) -> BranchCommit -> [u]
gmapQ :: forall u. (forall d. Data d => d -> u) -> BranchCommit -> [u]
$cgmapQi :: forall u. Int -> (forall d. Data d => d -> u) -> BranchCommit -> u
gmapQi :: forall u. Int -> (forall d. Data d => d -> u) -> BranchCommit -> u
$cgmapM :: forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d) -> BranchCommit -> m BranchCommit
gmapM :: forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d) -> BranchCommit -> m BranchCommit
$cgmapMp :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> BranchCommit -> m BranchCommit
gmapMp :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> BranchCommit -> m BranchCommit
$cgmapMo :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> BranchCommit -> m BranchCommit
gmapMo :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> BranchCommit -> m BranchCommit
Data, Typeable, BranchCommit -> BranchCommit -> Bool
(BranchCommit -> BranchCommit -> Bool)
-> (BranchCommit -> BranchCommit -> Bool) -> Eq BranchCommit
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: BranchCommit -> BranchCommit -> Bool
== :: BranchCommit -> BranchCommit -> Bool
$c/= :: BranchCommit -> BranchCommit -> Bool
/= :: BranchCommit -> BranchCommit -> Bool
Eq, Eq BranchCommit
Eq BranchCommit =>
(BranchCommit -> BranchCommit -> Ordering)
-> (BranchCommit -> BranchCommit -> Bool)
-> (BranchCommit -> BranchCommit -> Bool)
-> (BranchCommit -> BranchCommit -> Bool)
-> (BranchCommit -> BranchCommit -> Bool)
-> (BranchCommit -> BranchCommit -> BranchCommit)
-> (BranchCommit -> BranchCommit -> BranchCommit)
-> Ord BranchCommit
BranchCommit -> BranchCommit -> Bool
BranchCommit -> BranchCommit -> Ordering
BranchCommit -> BranchCommit -> BranchCommit
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
$ccompare :: BranchCommit -> BranchCommit -> Ordering
compare :: BranchCommit -> BranchCommit -> Ordering
$c< :: BranchCommit -> BranchCommit -> Bool
< :: BranchCommit -> BranchCommit -> Bool
$c<= :: BranchCommit -> BranchCommit -> Bool
<= :: BranchCommit -> BranchCommit -> Bool
$c> :: BranchCommit -> BranchCommit -> Bool
> :: BranchCommit -> BranchCommit -> Bool
$c>= :: BranchCommit -> BranchCommit -> Bool
>= :: BranchCommit -> BranchCommit -> Bool
$cmax :: BranchCommit -> BranchCommit -> BranchCommit
max :: BranchCommit -> BranchCommit -> BranchCommit
$cmin :: BranchCommit -> BranchCommit -> BranchCommit
min :: BranchCommit -> BranchCommit -> BranchCommit
Ord, (forall x. BranchCommit -> Rep BranchCommit x)
-> (forall x. Rep BranchCommit x -> BranchCommit)
-> Generic BranchCommit
forall x. Rep BranchCommit x -> BranchCommit
forall x. BranchCommit -> Rep BranchCommit x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cfrom :: forall x. BranchCommit -> Rep BranchCommit x
from :: forall x. BranchCommit -> Rep BranchCommit x
$cto :: forall x. Rep BranchCommit x -> BranchCommit
to :: forall x. Rep BranchCommit x -> BranchCommit
Generic)
instance NFData BranchCommit where rnf :: BranchCommit -> ()
rnf = BranchCommit -> ()
forall a. (Generic a, GNFData (Rep a)) => a -> ()
genericRnf
instance Binary BranchCommit
data Diff = Diff
{ Diff -> Text
diffStatus :: !Text
, Diff -> Int
diffBehindBy :: !Int
, Diff -> URL
diffPatchUrl :: !URL
, Diff -> URL
diffUrl :: !URL
, Diff -> Commit
diffBaseCommit :: !Commit
, Diff -> Vector Commit
diffCommits :: !(Vector Commit)
, Diff -> Int
diffTotalCommits :: !Int
, Diff -> URL
diffHtmlUrl :: !URL
, Diff -> Vector File
diffFiles :: !(Vector File)
, Diff -> Int
diffAheadBy :: !Int
, Diff -> URL
diffDiffUrl :: !URL
, Diff -> URL
diffPermalinkUrl :: !URL
}
deriving (Int -> Diff -> ShowS
[Diff] -> ShowS
Diff -> String
(Int -> Diff -> ShowS)
-> (Diff -> String) -> ([Diff] -> ShowS) -> Show Diff
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
$cshowsPrec :: Int -> Diff -> ShowS
showsPrec :: Int -> Diff -> ShowS
$cshow :: Diff -> String
show :: Diff -> String
$cshowList :: [Diff] -> ShowS
showList :: [Diff] -> ShowS
Show, Typeable Diff
Typeable Diff =>
(forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> Diff -> c Diff)
-> (forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c Diff)
-> (Diff -> Constr)
-> (Diff -> DataType)
-> (forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c Diff))
-> (forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c Diff))
-> ((forall b. Data b => b -> b) -> Diff -> Diff)
-> (forall r r'.
(r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Diff -> r)
-> (forall r r'.
(r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Diff -> r)
-> (forall u. (forall d. Data d => d -> u) -> Diff -> [u])
-> (forall u. Int -> (forall d. Data d => d -> u) -> Diff -> u)
-> (forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d) -> Diff -> m Diff)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> Diff -> m Diff)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> Diff -> m Diff)
-> Data Diff
Diff -> Constr
Diff -> DataType
(forall b. Data b => b -> b) -> Diff -> Diff
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) -> Diff -> u
forall u. (forall d. Data d => d -> u) -> Diff -> [u]
forall r r'.
(r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Diff -> r
forall r r'.
(r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Diff -> r
forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d) -> Diff -> m Diff
forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> Diff -> m Diff
forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c Diff
forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> Diff -> c Diff
forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c Diff)
forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c Diff)
$cgfoldl :: forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> Diff -> c Diff
gfoldl :: forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> Diff -> c Diff
$cgunfold :: forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c Diff
gunfold :: forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c Diff
$ctoConstr :: Diff -> Constr
toConstr :: Diff -> Constr
$cdataTypeOf :: Diff -> DataType
dataTypeOf :: Diff -> DataType
$cdataCast1 :: forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c Diff)
dataCast1 :: forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c Diff)
$cdataCast2 :: forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c Diff)
dataCast2 :: forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c Diff)
$cgmapT :: (forall b. Data b => b -> b) -> Diff -> Diff
gmapT :: (forall b. Data b => b -> b) -> Diff -> Diff
$cgmapQl :: forall r r'.
(r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Diff -> r
gmapQl :: forall r r'.
(r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Diff -> r
$cgmapQr :: forall r r'.
(r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Diff -> r
gmapQr :: forall r r'.
(r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Diff -> r
$cgmapQ :: forall u. (forall d. Data d => d -> u) -> Diff -> [u]
gmapQ :: forall u. (forall d. Data d => d -> u) -> Diff -> [u]
$cgmapQi :: forall u. Int -> (forall d. Data d => d -> u) -> Diff -> u
gmapQi :: forall u. Int -> (forall d. Data d => d -> u) -> Diff -> u
$cgmapM :: forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d) -> Diff -> m Diff
gmapM :: forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d) -> Diff -> m Diff
$cgmapMp :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> Diff -> m Diff
gmapMp :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> Diff -> m Diff
$cgmapMo :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> Diff -> m Diff
gmapMo :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> Diff -> m Diff
Data, Typeable, Diff -> Diff -> Bool
(Diff -> Diff -> Bool) -> (Diff -> Diff -> Bool) -> Eq Diff
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: Diff -> Diff -> Bool
== :: Diff -> Diff -> Bool
$c/= :: Diff -> Diff -> Bool
/= :: Diff -> Diff -> Bool
Eq, Eq Diff
Eq Diff =>
(Diff -> Diff -> Ordering)
-> (Diff -> Diff -> Bool)
-> (Diff -> Diff -> Bool)
-> (Diff -> Diff -> Bool)
-> (Diff -> Diff -> Bool)
-> (Diff -> Diff -> Diff)
-> (Diff -> Diff -> Diff)
-> Ord Diff
Diff -> Diff -> Bool
Diff -> Diff -> Ordering
Diff -> Diff -> Diff
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
$ccompare :: Diff -> Diff -> Ordering
compare :: Diff -> Diff -> Ordering
$c< :: Diff -> Diff -> Bool
< :: Diff -> Diff -> Bool
$c<= :: Diff -> Diff -> Bool
<= :: Diff -> Diff -> Bool
$c> :: Diff -> Diff -> Bool
> :: Diff -> Diff -> Bool
$c>= :: Diff -> Diff -> Bool
>= :: Diff -> Diff -> Bool
$cmax :: Diff -> Diff -> Diff
max :: Diff -> Diff -> Diff
$cmin :: Diff -> Diff -> Diff
min :: Diff -> Diff -> Diff
Ord, (forall x. Diff -> Rep Diff x)
-> (forall x. Rep Diff x -> Diff) -> Generic Diff
forall x. Rep Diff x -> Diff
forall x. Diff -> Rep Diff x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cfrom :: forall x. Diff -> Rep Diff x
from :: forall x. Diff -> Rep Diff x
$cto :: forall x. Rep Diff x -> Diff
to :: forall x. Rep Diff x -> Diff
Generic)
instance NFData Diff where rnf :: Diff -> ()
rnf = Diff -> ()
forall a. (Generic a, GNFData (Rep a)) => a -> ()
genericRnf
instance Binary Diff
data NewGitReference = NewGitReference
{ NewGitReference -> Text
newGitReferenceRef :: !Text
, NewGitReference -> Text
newGitReferenceSha :: !Text
}
deriving (Int -> NewGitReference -> ShowS
[NewGitReference] -> ShowS
NewGitReference -> String
(Int -> NewGitReference -> ShowS)
-> (NewGitReference -> String)
-> ([NewGitReference] -> ShowS)
-> Show NewGitReference
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
$cshowsPrec :: Int -> NewGitReference -> ShowS
showsPrec :: Int -> NewGitReference -> ShowS
$cshow :: NewGitReference -> String
show :: NewGitReference -> String
$cshowList :: [NewGitReference] -> ShowS
showList :: [NewGitReference] -> ShowS
Show, Typeable NewGitReference
Typeable NewGitReference =>
(forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> NewGitReference -> c NewGitReference)
-> (forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c NewGitReference)
-> (NewGitReference -> Constr)
-> (NewGitReference -> DataType)
-> (forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c NewGitReference))
-> (forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c NewGitReference))
-> ((forall b. Data b => b -> b)
-> NewGitReference -> NewGitReference)
-> (forall r r'.
(r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> NewGitReference -> r)
-> (forall r r'.
(r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> NewGitReference -> r)
-> (forall u.
(forall d. Data d => d -> u) -> NewGitReference -> [u])
-> (forall u.
Int -> (forall d. Data d => d -> u) -> NewGitReference -> u)
-> (forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d)
-> NewGitReference -> m NewGitReference)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> NewGitReference -> m NewGitReference)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> NewGitReference -> m NewGitReference)
-> Data NewGitReference
NewGitReference -> Constr
NewGitReference -> DataType
(forall b. Data b => b -> b) -> NewGitReference -> NewGitReference
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) -> NewGitReference -> u
forall u. (forall d. Data d => d -> u) -> NewGitReference -> [u]
forall r r'.
(r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> NewGitReference -> r
forall r r'.
(r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> NewGitReference -> r
forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d)
-> NewGitReference -> m NewGitReference
forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> NewGitReference -> m NewGitReference
forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c NewGitReference
forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> NewGitReference -> c NewGitReference
forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c NewGitReference)
forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c NewGitReference)
$cgfoldl :: forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> NewGitReference -> c NewGitReference
gfoldl :: forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> NewGitReference -> c NewGitReference
$cgunfold :: forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c NewGitReference
gunfold :: forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c NewGitReference
$ctoConstr :: NewGitReference -> Constr
toConstr :: NewGitReference -> Constr
$cdataTypeOf :: NewGitReference -> DataType
dataTypeOf :: NewGitReference -> DataType
$cdataCast1 :: forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c NewGitReference)
dataCast1 :: forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c NewGitReference)
$cdataCast2 :: forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c NewGitReference)
dataCast2 :: forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c NewGitReference)
$cgmapT :: (forall b. Data b => b -> b) -> NewGitReference -> NewGitReference
gmapT :: (forall b. Data b => b -> b) -> NewGitReference -> NewGitReference
$cgmapQl :: forall r r'.
(r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> NewGitReference -> r
gmapQl :: forall r r'.
(r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> NewGitReference -> r
$cgmapQr :: forall r r'.
(r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> NewGitReference -> r
gmapQr :: forall r r'.
(r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> NewGitReference -> r
$cgmapQ :: forall u. (forall d. Data d => d -> u) -> NewGitReference -> [u]
gmapQ :: forall u. (forall d. Data d => d -> u) -> NewGitReference -> [u]
$cgmapQi :: forall u.
Int -> (forall d. Data d => d -> u) -> NewGitReference -> u
gmapQi :: forall u.
Int -> (forall d. Data d => d -> u) -> NewGitReference -> u
$cgmapM :: forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d)
-> NewGitReference -> m NewGitReference
gmapM :: forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d)
-> NewGitReference -> m NewGitReference
$cgmapMp :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> NewGitReference -> m NewGitReference
gmapMp :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> NewGitReference -> m NewGitReference
$cgmapMo :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> NewGitReference -> m NewGitReference
gmapMo :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> NewGitReference -> m NewGitReference
Data, Typeable, NewGitReference -> NewGitReference -> Bool
(NewGitReference -> NewGitReference -> Bool)
-> (NewGitReference -> NewGitReference -> Bool)
-> Eq NewGitReference
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: NewGitReference -> NewGitReference -> Bool
== :: NewGitReference -> NewGitReference -> Bool
$c/= :: NewGitReference -> NewGitReference -> Bool
/= :: NewGitReference -> NewGitReference -> Bool
Eq, Eq NewGitReference
Eq NewGitReference =>
(NewGitReference -> NewGitReference -> Ordering)
-> (NewGitReference -> NewGitReference -> Bool)
-> (NewGitReference -> NewGitReference -> Bool)
-> (NewGitReference -> NewGitReference -> Bool)
-> (NewGitReference -> NewGitReference -> Bool)
-> (NewGitReference -> NewGitReference -> NewGitReference)
-> (NewGitReference -> NewGitReference -> NewGitReference)
-> Ord NewGitReference
NewGitReference -> NewGitReference -> Bool
NewGitReference -> NewGitReference -> Ordering
NewGitReference -> NewGitReference -> NewGitReference
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
$ccompare :: NewGitReference -> NewGitReference -> Ordering
compare :: NewGitReference -> NewGitReference -> Ordering
$c< :: NewGitReference -> NewGitReference -> Bool
< :: NewGitReference -> NewGitReference -> Bool
$c<= :: NewGitReference -> NewGitReference -> Bool
<= :: NewGitReference -> NewGitReference -> Bool
$c> :: NewGitReference -> NewGitReference -> Bool
> :: NewGitReference -> NewGitReference -> Bool
$c>= :: NewGitReference -> NewGitReference -> Bool
>= :: NewGitReference -> NewGitReference -> Bool
$cmax :: NewGitReference -> NewGitReference -> NewGitReference
max :: NewGitReference -> NewGitReference -> NewGitReference
$cmin :: NewGitReference -> NewGitReference -> NewGitReference
min :: NewGitReference -> NewGitReference -> NewGitReference
Ord, (forall x. NewGitReference -> Rep NewGitReference x)
-> (forall x. Rep NewGitReference x -> NewGitReference)
-> Generic NewGitReference
forall x. Rep NewGitReference x -> NewGitReference
forall x. NewGitReference -> Rep NewGitReference x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cfrom :: forall x. NewGitReference -> Rep NewGitReference x
from :: forall x. NewGitReference -> Rep NewGitReference x
$cto :: forall x. Rep NewGitReference x -> NewGitReference
to :: forall x. Rep NewGitReference x -> NewGitReference
Generic)
instance NFData NewGitReference where rnf :: NewGitReference -> ()
rnf = NewGitReference -> ()
forall a. (Generic a, GNFData (Rep a)) => a -> ()
genericRnf
instance Binary NewGitReference
data GitReference = GitReference
{ GitReference -> GitObject
gitReferenceObject :: !GitObject
, GitReference -> URL
gitReferenceUrl :: !URL
, GitReference -> Name GitReference
gitReferenceRef :: !(Name GitReference)
}
deriving (Int -> GitReference -> ShowS
[GitReference] -> ShowS
GitReference -> String
(Int -> GitReference -> ShowS)
-> (GitReference -> String)
-> ([GitReference] -> ShowS)
-> Show GitReference
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
$cshowsPrec :: Int -> GitReference -> ShowS
showsPrec :: Int -> GitReference -> ShowS
$cshow :: GitReference -> String
show :: GitReference -> String
$cshowList :: [GitReference] -> ShowS
showList :: [GitReference] -> ShowS
Show, Typeable GitReference
Typeable GitReference =>
(forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> GitReference -> c GitReference)
-> (forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c GitReference)
-> (GitReference -> Constr)
-> (GitReference -> DataType)
-> (forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c GitReference))
-> (forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c GitReference))
-> ((forall b. Data b => b -> b) -> GitReference -> GitReference)
-> (forall r r'.
(r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> GitReference -> r)
-> (forall r r'.
(r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> GitReference -> r)
-> (forall u. (forall d. Data d => d -> u) -> GitReference -> [u])
-> (forall u.
Int -> (forall d. Data d => d -> u) -> GitReference -> u)
-> (forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d) -> GitReference -> m GitReference)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> GitReference -> m GitReference)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> GitReference -> m GitReference)
-> Data GitReference
GitReference -> Constr
GitReference -> DataType
(forall b. Data b => b -> b) -> GitReference -> GitReference
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) -> GitReference -> u
forall u. (forall d. Data d => d -> u) -> GitReference -> [u]
forall r r'.
(r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> GitReference -> r
forall r r'.
(r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> GitReference -> r
forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d) -> GitReference -> m GitReference
forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> GitReference -> m GitReference
forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c GitReference
forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> GitReference -> c GitReference
forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c GitReference)
forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c GitReference)
$cgfoldl :: forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> GitReference -> c GitReference
gfoldl :: forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> GitReference -> c GitReference
$cgunfold :: forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c GitReference
gunfold :: forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c GitReference
$ctoConstr :: GitReference -> Constr
toConstr :: GitReference -> Constr
$cdataTypeOf :: GitReference -> DataType
dataTypeOf :: GitReference -> DataType
$cdataCast1 :: forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c GitReference)
dataCast1 :: forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c GitReference)
$cdataCast2 :: forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c GitReference)
dataCast2 :: forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c GitReference)
$cgmapT :: (forall b. Data b => b -> b) -> GitReference -> GitReference
gmapT :: (forall b. Data b => b -> b) -> GitReference -> GitReference
$cgmapQl :: forall r r'.
(r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> GitReference -> r
gmapQl :: forall r r'.
(r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> GitReference -> r
$cgmapQr :: forall r r'.
(r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> GitReference -> r
gmapQr :: forall r r'.
(r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> GitReference -> r
$cgmapQ :: forall u. (forall d. Data d => d -> u) -> GitReference -> [u]
gmapQ :: forall u. (forall d. Data d => d -> u) -> GitReference -> [u]
$cgmapQi :: forall u. Int -> (forall d. Data d => d -> u) -> GitReference -> u
gmapQi :: forall u. Int -> (forall d. Data d => d -> u) -> GitReference -> u
$cgmapM :: forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d) -> GitReference -> m GitReference
gmapM :: forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d) -> GitReference -> m GitReference
$cgmapMp :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> GitReference -> m GitReference
gmapMp :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> GitReference -> m GitReference
$cgmapMo :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> GitReference -> m GitReference
gmapMo :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> GitReference -> m GitReference
Data, Typeable, GitReference -> GitReference -> Bool
(GitReference -> GitReference -> Bool)
-> (GitReference -> GitReference -> Bool) -> Eq GitReference
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: GitReference -> GitReference -> Bool
== :: GitReference -> GitReference -> Bool
$c/= :: GitReference -> GitReference -> Bool
/= :: GitReference -> GitReference -> Bool
Eq, Eq GitReference
Eq GitReference =>
(GitReference -> GitReference -> Ordering)
-> (GitReference -> GitReference -> Bool)
-> (GitReference -> GitReference -> Bool)
-> (GitReference -> GitReference -> Bool)
-> (GitReference -> GitReference -> Bool)
-> (GitReference -> GitReference -> GitReference)
-> (GitReference -> GitReference -> GitReference)
-> Ord GitReference
GitReference -> GitReference -> Bool
GitReference -> GitReference -> Ordering
GitReference -> GitReference -> GitReference
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
$ccompare :: GitReference -> GitReference -> Ordering
compare :: GitReference -> GitReference -> Ordering
$c< :: GitReference -> GitReference -> Bool
< :: GitReference -> GitReference -> Bool
$c<= :: GitReference -> GitReference -> Bool
<= :: GitReference -> GitReference -> Bool
$c> :: GitReference -> GitReference -> Bool
> :: GitReference -> GitReference -> Bool
$c>= :: GitReference -> GitReference -> Bool
>= :: GitReference -> GitReference -> Bool
$cmax :: GitReference -> GitReference -> GitReference
max :: GitReference -> GitReference -> GitReference
$cmin :: GitReference -> GitReference -> GitReference
min :: GitReference -> GitReference -> GitReference
Ord, (forall x. GitReference -> Rep GitReference x)
-> (forall x. Rep GitReference x -> GitReference)
-> Generic GitReference
forall x. Rep GitReference x -> GitReference
forall x. GitReference -> Rep GitReference x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cfrom :: forall x. GitReference -> Rep GitReference x
from :: forall x. GitReference -> Rep GitReference x
$cto :: forall x. Rep GitReference x -> GitReference
to :: forall x. Rep GitReference x -> GitReference
Generic)
instance NFData GitReference where rnf :: GitReference -> ()
rnf = GitReference -> ()
forall a. (Generic a, GNFData (Rep a)) => a -> ()
genericRnf
instance Binary GitReference
data GitObject = GitObject
{ GitObject -> Text
gitObjectType :: !Text
, GitObject -> Text
gitObjectSha :: !Text
, GitObject -> URL
gitObjectUrl :: !URL
}
deriving (Int -> GitObject -> ShowS
[GitObject] -> ShowS
GitObject -> String
(Int -> GitObject -> ShowS)
-> (GitObject -> String)
-> ([GitObject] -> ShowS)
-> Show GitObject
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
$cshowsPrec :: Int -> GitObject -> ShowS
showsPrec :: Int -> GitObject -> ShowS
$cshow :: GitObject -> String
show :: GitObject -> String
$cshowList :: [GitObject] -> ShowS
showList :: [GitObject] -> ShowS
Show, Typeable GitObject
Typeable GitObject =>
(forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> GitObject -> c GitObject)
-> (forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c GitObject)
-> (GitObject -> Constr)
-> (GitObject -> DataType)
-> (forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c GitObject))
-> (forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c GitObject))
-> ((forall b. Data b => b -> b) -> GitObject -> GitObject)
-> (forall r r'.
(r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> GitObject -> r)
-> (forall r r'.
(r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> GitObject -> r)
-> (forall u. (forall d. Data d => d -> u) -> GitObject -> [u])
-> (forall u.
Int -> (forall d. Data d => d -> u) -> GitObject -> u)
-> (forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d) -> GitObject -> m GitObject)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> GitObject -> m GitObject)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> GitObject -> m GitObject)
-> Data GitObject
GitObject -> Constr
GitObject -> DataType
(forall b. Data b => b -> b) -> GitObject -> GitObject
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) -> GitObject -> u
forall u. (forall d. Data d => d -> u) -> GitObject -> [u]
forall r r'.
(r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> GitObject -> r
forall r r'.
(r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> GitObject -> r
forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d) -> GitObject -> m GitObject
forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> GitObject -> m GitObject
forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c GitObject
forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> GitObject -> c GitObject
forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c GitObject)
forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c GitObject)
$cgfoldl :: forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> GitObject -> c GitObject
gfoldl :: forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> GitObject -> c GitObject
$cgunfold :: forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c GitObject
gunfold :: forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c GitObject
$ctoConstr :: GitObject -> Constr
toConstr :: GitObject -> Constr
$cdataTypeOf :: GitObject -> DataType
dataTypeOf :: GitObject -> DataType
$cdataCast1 :: forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c GitObject)
dataCast1 :: forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c GitObject)
$cdataCast2 :: forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c GitObject)
dataCast2 :: forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c GitObject)
$cgmapT :: (forall b. Data b => b -> b) -> GitObject -> GitObject
gmapT :: (forall b. Data b => b -> b) -> GitObject -> GitObject
$cgmapQl :: forall r r'.
(r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> GitObject -> r
gmapQl :: forall r r'.
(r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> GitObject -> r
$cgmapQr :: forall r r'.
(r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> GitObject -> r
gmapQr :: forall r r'.
(r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> GitObject -> r
$cgmapQ :: forall u. (forall d. Data d => d -> u) -> GitObject -> [u]
gmapQ :: forall u. (forall d. Data d => d -> u) -> GitObject -> [u]
$cgmapQi :: forall u. Int -> (forall d. Data d => d -> u) -> GitObject -> u
gmapQi :: forall u. Int -> (forall d. Data d => d -> u) -> GitObject -> u
$cgmapM :: forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d) -> GitObject -> m GitObject
gmapM :: forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d) -> GitObject -> m GitObject
$cgmapMp :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> GitObject -> m GitObject
gmapMp :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> GitObject -> m GitObject
$cgmapMo :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> GitObject -> m GitObject
gmapMo :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> GitObject -> m GitObject
Data, Typeable, GitObject -> GitObject -> Bool
(GitObject -> GitObject -> Bool)
-> (GitObject -> GitObject -> Bool) -> Eq GitObject
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: GitObject -> GitObject -> Bool
== :: GitObject -> GitObject -> Bool
$c/= :: GitObject -> GitObject -> Bool
/= :: GitObject -> GitObject -> Bool
Eq, Eq GitObject
Eq GitObject =>
(GitObject -> GitObject -> Ordering)
-> (GitObject -> GitObject -> Bool)
-> (GitObject -> GitObject -> Bool)
-> (GitObject -> GitObject -> Bool)
-> (GitObject -> GitObject -> Bool)
-> (GitObject -> GitObject -> GitObject)
-> (GitObject -> GitObject -> GitObject)
-> Ord GitObject
GitObject -> GitObject -> Bool
GitObject -> GitObject -> Ordering
GitObject -> GitObject -> GitObject
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
$ccompare :: GitObject -> GitObject -> Ordering
compare :: GitObject -> GitObject -> Ordering
$c< :: GitObject -> GitObject -> Bool
< :: GitObject -> GitObject -> Bool
$c<= :: GitObject -> GitObject -> Bool
<= :: GitObject -> GitObject -> Bool
$c> :: GitObject -> GitObject -> Bool
> :: GitObject -> GitObject -> Bool
$c>= :: GitObject -> GitObject -> Bool
>= :: GitObject -> GitObject -> Bool
$cmax :: GitObject -> GitObject -> GitObject
max :: GitObject -> GitObject -> GitObject
$cmin :: GitObject -> GitObject -> GitObject
min :: GitObject -> GitObject -> GitObject
Ord, (forall x. GitObject -> Rep GitObject x)
-> (forall x. Rep GitObject x -> GitObject) -> Generic GitObject
forall x. Rep GitObject x -> GitObject
forall x. GitObject -> Rep GitObject x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cfrom :: forall x. GitObject -> Rep GitObject x
from :: forall x. GitObject -> Rep GitObject x
$cto :: forall x. Rep GitObject x -> GitObject
to :: forall x. Rep GitObject x -> GitObject
Generic)
instance NFData GitObject where rnf :: GitObject -> ()
rnf = GitObject -> ()
forall a. (Generic a, GNFData (Rep a)) => a -> ()
genericRnf
instance Binary GitObject
data GitUser = GitUser
{ GitUser -> Text
gitUserName :: !Text
, GitUser -> Text
gitUserEmail :: !Text
, GitUser -> UTCTime
gitUserDate :: !UTCTime
}
deriving (Int -> GitUser -> ShowS
[GitUser] -> ShowS
GitUser -> String
(Int -> GitUser -> ShowS)
-> (GitUser -> String) -> ([GitUser] -> ShowS) -> Show GitUser
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
$cshowsPrec :: Int -> GitUser -> ShowS
showsPrec :: Int -> GitUser -> ShowS
$cshow :: GitUser -> String
show :: GitUser -> String
$cshowList :: [GitUser] -> ShowS
showList :: [GitUser] -> ShowS
Show, Typeable GitUser
Typeable GitUser =>
(forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> GitUser -> c GitUser)
-> (forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c GitUser)
-> (GitUser -> Constr)
-> (GitUser -> DataType)
-> (forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c GitUser))
-> (forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c GitUser))
-> ((forall b. Data b => b -> b) -> GitUser -> GitUser)
-> (forall r r'.
(r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> GitUser -> r)
-> (forall r r'.
(r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> GitUser -> r)
-> (forall u. (forall d. Data d => d -> u) -> GitUser -> [u])
-> (forall u. Int -> (forall d. Data d => d -> u) -> GitUser -> u)
-> (forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d) -> GitUser -> m GitUser)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> GitUser -> m GitUser)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> GitUser -> m GitUser)
-> Data GitUser
GitUser -> Constr
GitUser -> DataType
(forall b. Data b => b -> b) -> GitUser -> GitUser
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) -> GitUser -> u
forall u. (forall d. Data d => d -> u) -> GitUser -> [u]
forall r r'.
(r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> GitUser -> r
forall r r'.
(r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> GitUser -> r
forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d) -> GitUser -> m GitUser
forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> GitUser -> m GitUser
forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c GitUser
forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> GitUser -> c GitUser
forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c GitUser)
forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c GitUser)
$cgfoldl :: forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> GitUser -> c GitUser
gfoldl :: forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> GitUser -> c GitUser
$cgunfold :: forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c GitUser
gunfold :: forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c GitUser
$ctoConstr :: GitUser -> Constr
toConstr :: GitUser -> Constr
$cdataTypeOf :: GitUser -> DataType
dataTypeOf :: GitUser -> DataType
$cdataCast1 :: forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c GitUser)
dataCast1 :: forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c GitUser)
$cdataCast2 :: forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c GitUser)
dataCast2 :: forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c GitUser)
$cgmapT :: (forall b. Data b => b -> b) -> GitUser -> GitUser
gmapT :: (forall b. Data b => b -> b) -> GitUser -> GitUser
$cgmapQl :: forall r r'.
(r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> GitUser -> r
gmapQl :: forall r r'.
(r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> GitUser -> r
$cgmapQr :: forall r r'.
(r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> GitUser -> r
gmapQr :: forall r r'.
(r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> GitUser -> r
$cgmapQ :: forall u. (forall d. Data d => d -> u) -> GitUser -> [u]
gmapQ :: forall u. (forall d. Data d => d -> u) -> GitUser -> [u]
$cgmapQi :: forall u. Int -> (forall d. Data d => d -> u) -> GitUser -> u
gmapQi :: forall u. Int -> (forall d. Data d => d -> u) -> GitUser -> u
$cgmapM :: forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d) -> GitUser -> m GitUser
gmapM :: forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d) -> GitUser -> m GitUser
$cgmapMp :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> GitUser -> m GitUser
gmapMp :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> GitUser -> m GitUser
$cgmapMo :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> GitUser -> m GitUser
gmapMo :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> GitUser -> m GitUser
Data, Typeable, GitUser -> GitUser -> Bool
(GitUser -> GitUser -> Bool)
-> (GitUser -> GitUser -> Bool) -> Eq GitUser
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: GitUser -> GitUser -> Bool
== :: GitUser -> GitUser -> Bool
$c/= :: GitUser -> GitUser -> Bool
/= :: GitUser -> GitUser -> Bool
Eq, Eq GitUser
Eq GitUser =>
(GitUser -> GitUser -> Ordering)
-> (GitUser -> GitUser -> Bool)
-> (GitUser -> GitUser -> Bool)
-> (GitUser -> GitUser -> Bool)
-> (GitUser -> GitUser -> Bool)
-> (GitUser -> GitUser -> GitUser)
-> (GitUser -> GitUser -> GitUser)
-> Ord GitUser
GitUser -> GitUser -> Bool
GitUser -> GitUser -> Ordering
GitUser -> GitUser -> GitUser
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
$ccompare :: GitUser -> GitUser -> Ordering
compare :: GitUser -> GitUser -> Ordering
$c< :: GitUser -> GitUser -> Bool
< :: GitUser -> GitUser -> Bool
$c<= :: GitUser -> GitUser -> Bool
<= :: GitUser -> GitUser -> Bool
$c> :: GitUser -> GitUser -> Bool
> :: GitUser -> GitUser -> Bool
$c>= :: GitUser -> GitUser -> Bool
>= :: GitUser -> GitUser -> Bool
$cmax :: GitUser -> GitUser -> GitUser
max :: GitUser -> GitUser -> GitUser
$cmin :: GitUser -> GitUser -> GitUser
min :: GitUser -> GitUser -> GitUser
Ord, (forall x. GitUser -> Rep GitUser x)
-> (forall x. Rep GitUser x -> GitUser) -> Generic GitUser
forall x. Rep GitUser x -> GitUser
forall x. GitUser -> Rep GitUser x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cfrom :: forall x. GitUser -> Rep GitUser x
from :: forall x. GitUser -> Rep GitUser x
$cto :: forall x. Rep GitUser x -> GitUser
to :: forall x. Rep GitUser x -> GitUser
Generic)
instance NFData GitUser where rnf :: GitUser -> ()
rnf = GitUser -> ()
forall a. (Generic a, GNFData (Rep a)) => a -> ()
genericRnf
instance Binary GitUser
data File = File
{ File -> Maybe URL
fileBlobUrl :: !(Maybe URL)
, File -> Text
fileStatus :: !Text
, File -> Maybe URL
fileRawUrl :: !(Maybe URL)
, File -> Int
fileAdditions :: !Int
, File -> Maybe Text
fileSha :: !(Maybe Text)
, File -> Int
fileChanges :: !Int
, File -> Maybe Text
filePatch :: !(Maybe Text)
, File -> Text
fileFilename :: !Text
, File -> Int
fileDeletions :: !Int
}
deriving (Int -> File -> ShowS
[File] -> ShowS
File -> String
(Int -> File -> ShowS)
-> (File -> String) -> ([File] -> ShowS) -> Show File
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
$cshowsPrec :: Int -> File -> ShowS
showsPrec :: Int -> File -> ShowS
$cshow :: File -> String
show :: File -> String
$cshowList :: [File] -> ShowS
showList :: [File] -> ShowS
Show, Typeable File
Typeable File =>
(forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> File -> c File)
-> (forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c File)
-> (File -> Constr)
-> (File -> DataType)
-> (forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c File))
-> (forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c File))
-> ((forall b. Data b => b -> b) -> File -> File)
-> (forall r r'.
(r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> File -> r)
-> (forall r r'.
(r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> File -> r)
-> (forall u. (forall d. Data d => d -> u) -> File -> [u])
-> (forall u. Int -> (forall d. Data d => d -> u) -> File -> u)
-> (forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d) -> File -> m File)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> File -> m File)
-> (forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> File -> m File)
-> Data File
File -> Constr
File -> DataType
(forall b. Data b => b -> b) -> File -> File
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) -> File -> u
forall u. (forall d. Data d => d -> u) -> File -> [u]
forall r r'.
(r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> File -> r
forall r r'.
(r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> File -> r
forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d) -> File -> m File
forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> File -> m File
forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c File
forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> File -> c File
forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c File)
forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c File)
$cgfoldl :: forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> File -> c File
gfoldl :: forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> File -> c File
$cgunfold :: forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c File
gunfold :: forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c File
$ctoConstr :: File -> Constr
toConstr :: File -> Constr
$cdataTypeOf :: File -> DataType
dataTypeOf :: File -> DataType
$cdataCast1 :: forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c File)
dataCast1 :: forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c File)
$cdataCast2 :: forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c File)
dataCast2 :: forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c File)
$cgmapT :: (forall b. Data b => b -> b) -> File -> File
gmapT :: (forall b. Data b => b -> b) -> File -> File
$cgmapQl :: forall r r'.
(r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> File -> r
gmapQl :: forall r r'.
(r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> File -> r
$cgmapQr :: forall r r'.
(r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> File -> r
gmapQr :: forall r r'.
(r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> File -> r
$cgmapQ :: forall u. (forall d. Data d => d -> u) -> File -> [u]
gmapQ :: forall u. (forall d. Data d => d -> u) -> File -> [u]
$cgmapQi :: forall u. Int -> (forall d. Data d => d -> u) -> File -> u
gmapQi :: forall u. Int -> (forall d. Data d => d -> u) -> File -> u
$cgmapM :: forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d) -> File -> m File
gmapM :: forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d) -> File -> m File
$cgmapMp :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> File -> m File
gmapMp :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> File -> m File
$cgmapMo :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> File -> m File
gmapMo :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> File -> m File
Data, Typeable, File -> File -> Bool
(File -> File -> Bool) -> (File -> File -> Bool) -> Eq File
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: File -> File -> Bool
== :: File -> File -> Bool
$c/= :: File -> File -> Bool
/= :: File -> File -> Bool
Eq, Eq File
Eq File =>
(File -> File -> Ordering)
-> (File -> File -> Bool)
-> (File -> File -> Bool)
-> (File -> File -> Bool)
-> (File -> File -> Bool)
-> (File -> File -> File)
-> (File -> File -> File)
-> Ord File
File -> File -> Bool
File -> File -> Ordering
File -> File -> File
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
$ccompare :: File -> File -> Ordering
compare :: File -> File -> Ordering
$c< :: File -> File -> Bool
< :: File -> File -> Bool
$c<= :: File -> File -> Bool
<= :: File -> File -> Bool
$c> :: File -> File -> Bool
> :: File -> File -> Bool
$c>= :: File -> File -> Bool
>= :: File -> File -> Bool
$cmax :: File -> File -> File
max :: File -> File -> File
$cmin :: File -> File -> File
min :: File -> File -> File
Ord, (forall x. File -> Rep File x)
-> (forall x. Rep File x -> File) -> Generic File
forall x. Rep File x -> File
forall x. File -> Rep File x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cfrom :: forall x. File -> Rep File x
from :: forall x. File -> Rep File x
$cto :: forall x. Rep File x -> File
to :: forall x. Rep File x -> File
Generic)
instance NFData File where rnf :: File -> ()
rnf = File -> ()
forall a. (Generic a, GNFData (Rep a)) => a -> ()
genericRnf
instance Binary File
instance FromJSON Stats where
parseJSON :: Value -> Parser Stats
parseJSON = String -> (Object -> Parser Stats) -> Value -> Parser Stats
forall a. String -> (Object -> Parser a) -> Value -> Parser a
withObject String
"Stats" ((Object -> Parser Stats) -> Value -> Parser Stats)
-> (Object -> Parser Stats) -> Value -> Parser Stats
forall a b. (a -> b) -> a -> b
$ \Object
o -> Int -> Int -> Int -> Stats
Stats
(Int -> Int -> Int -> Stats)
-> Parser Int -> Parser (Int -> Int -> Stats)
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
"additions"
Parser (Int -> Int -> Stats) -> Parser Int -> Parser (Int -> Stats)
forall a b. Parser (a -> b) -> Parser a -> Parser b
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
"total"
Parser (Int -> Stats) -> Parser Int -> Parser Stats
forall a b. Parser (a -> b) -> Parser a -> Parser b
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
"deletions"
instance FromJSON Commit where
parseJSON :: Value -> Parser Commit
parseJSON = String -> (Object -> Parser Commit) -> Value -> Parser Commit
forall a. String -> (Object -> Parser a) -> Value -> Parser a
withObject String
"Commit" ((Object -> Parser Commit) -> Value -> Parser Commit)
-> (Object -> Parser Commit) -> Value -> Parser Commit
forall a b. (a -> b) -> a -> b
$ \Object
o -> Name Commit
-> Vector Tree
-> URL
-> GitCommit
-> Maybe SimpleUser
-> Maybe SimpleUser
-> Vector File
-> Maybe Stats
-> Commit
Commit
(Name Commit
-> Vector Tree
-> URL
-> GitCommit
-> Maybe SimpleUser
-> Maybe SimpleUser
-> Vector File
-> Maybe Stats
-> Commit)
-> Parser (Name Commit)
-> Parser
(Vector Tree
-> URL
-> GitCommit
-> Maybe SimpleUser
-> Maybe SimpleUser
-> Vector File
-> Maybe Stats
-> Commit)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Key -> Parser (Name Commit)
forall a. FromJSON a => Object -> Key -> Parser a
.: Key
"sha"
Parser
(Vector Tree
-> URL
-> GitCommit
-> Maybe SimpleUser
-> Maybe SimpleUser
-> Vector File
-> Maybe Stats
-> Commit)
-> Parser (Vector Tree)
-> Parser
(URL
-> GitCommit
-> Maybe SimpleUser
-> Maybe SimpleUser
-> Vector File
-> Maybe Stats
-> Commit)
forall a b. Parser (a -> b) -> Parser a -> Parser b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Key -> Parser (Vector Tree)
forall a. FromJSON a => Object -> Key -> Parser a
.: Key
"parents"
Parser
(URL
-> GitCommit
-> Maybe SimpleUser
-> Maybe SimpleUser
-> Vector File
-> Maybe Stats
-> Commit)
-> Parser URL
-> Parser
(GitCommit
-> Maybe SimpleUser
-> Maybe SimpleUser
-> Vector File
-> Maybe Stats
-> Commit)
forall a b. Parser (a -> b) -> Parser a -> Parser b
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
"url"
Parser
(GitCommit
-> Maybe SimpleUser
-> Maybe SimpleUser
-> Vector File
-> Maybe Stats
-> Commit)
-> Parser GitCommit
-> Parser
(Maybe SimpleUser
-> Maybe SimpleUser -> Vector File -> Maybe Stats -> Commit)
forall a b. Parser (a -> b) -> Parser a -> Parser b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Key -> Parser GitCommit
forall a. FromJSON a => Object -> Key -> Parser a
.: Key
"commit"
Parser
(Maybe SimpleUser
-> Maybe SimpleUser -> Vector File -> Maybe Stats -> Commit)
-> Parser (Maybe SimpleUser)
-> Parser
(Maybe SimpleUser -> Vector File -> Maybe Stats -> Commit)
forall a b. Parser (a -> b) -> Parser a -> Parser b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Key -> Parser (Maybe SimpleUser)
forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
.:? Key
"committer"
Parser (Maybe SimpleUser -> Vector File -> Maybe Stats -> Commit)
-> Parser (Maybe SimpleUser)
-> Parser (Vector File -> Maybe Stats -> Commit)
forall a b. Parser (a -> b) -> Parser a -> Parser b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Key -> Parser (Maybe SimpleUser)
forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
.:? Key
"author"
Parser (Vector File -> Maybe Stats -> Commit)
-> Parser (Vector File) -> Parser (Maybe Stats -> Commit)
forall a b. Parser (a -> b) -> Parser a -> Parser b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Key -> Parser (Maybe (Vector File))
forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
.:? Key
"files" Parser (Maybe (Vector File)) -> Vector File -> Parser (Vector File)
forall a. Parser (Maybe a) -> a -> Parser a
.!= Vector File
forall a. Vector a
V.empty
Parser (Maybe Stats -> Commit)
-> Parser (Maybe Stats) -> Parser Commit
forall a b. Parser (a -> b) -> Parser a -> Parser b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Key -> Parser (Maybe Stats)
forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
.:? Key
"stats"
instance FromJSON Tree where
parseJSON :: Value -> Parser Tree
parseJSON = String -> (Object -> Parser Tree) -> Value -> Parser Tree
forall a. String -> (Object -> Parser a) -> Value -> Parser a
withObject String
"Tree" ((Object -> Parser Tree) -> Value -> Parser Tree)
-> (Object -> Parser Tree) -> Value -> Parser Tree
forall a b. (a -> b) -> a -> b
$ \Object
o -> Name Tree -> URL -> Vector GitTree -> Tree
Tree
(Name Tree -> URL -> Vector GitTree -> Tree)
-> Parser (Name Tree) -> Parser (URL -> Vector GitTree -> Tree)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Key -> Parser (Name Tree)
forall a. FromJSON a => Object -> Key -> Parser a
.: Key
"sha"
Parser (URL -> Vector GitTree -> Tree)
-> Parser URL -> Parser (Vector GitTree -> Tree)
forall a b. Parser (a -> b) -> Parser a -> Parser b
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
"url"
Parser (Vector GitTree -> Tree)
-> Parser (Vector GitTree) -> Parser Tree
forall a b. Parser (a -> b) -> Parser a -> Parser b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Key -> Parser (Maybe (Vector GitTree))
forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
.:? Key
"tree" Parser (Maybe (Vector GitTree))
-> Vector GitTree -> Parser (Vector GitTree)
forall a. Parser (Maybe a) -> a -> Parser a
.!= Vector GitTree
forall a. Vector a
V.empty
instance FromJSON GitTree where
parseJSON :: Value -> Parser GitTree
parseJSON = String -> (Object -> Parser GitTree) -> Value -> Parser GitTree
forall a. String -> (Object -> Parser a) -> Value -> Parser a
withObject String
"GitTree" ((Object -> Parser GitTree) -> Value -> Parser GitTree)
-> (Object -> Parser GitTree) -> Value -> Parser GitTree
forall a b. (a -> b) -> a -> b
$ \Object
o -> Text
-> Name GitTree
-> Maybe URL
-> Maybe Int
-> Text
-> Text
-> GitTree
GitTree
(Text
-> Name GitTree
-> Maybe URL
-> Maybe Int
-> Text
-> Text
-> GitTree)
-> Parser Text
-> Parser
(Name GitTree -> Maybe URL -> Maybe Int -> Text -> Text -> GitTree)
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
"type"
Parser
(Name GitTree -> Maybe URL -> Maybe Int -> Text -> Text -> GitTree)
-> Parser (Name GitTree)
-> Parser (Maybe URL -> Maybe Int -> Text -> Text -> GitTree)
forall a b. Parser (a -> b) -> Parser a -> Parser b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Key -> Parser (Name GitTree)
forall a. FromJSON a => Object -> Key -> Parser a
.: Key
"sha"
Parser (Maybe URL -> Maybe Int -> Text -> Text -> GitTree)
-> Parser (Maybe URL)
-> Parser (Maybe Int -> Text -> Text -> GitTree)
forall a b. Parser (a -> b) -> Parser a -> Parser b
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
"url"
Parser (Maybe Int -> Text -> Text -> GitTree)
-> Parser (Maybe Int) -> Parser (Text -> Text -> GitTree)
forall a b. Parser (a -> b) -> Parser a -> Parser b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Key -> Parser (Maybe Int)
forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
.:? Key
"size"
Parser (Text -> Text -> GitTree)
-> Parser Text -> Parser (Text -> GitTree)
forall a b. Parser (a -> b) -> Parser a -> Parser b
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
"path"
Parser (Text -> GitTree) -> Parser Text -> Parser GitTree
forall a b. Parser (a -> b) -> Parser a -> Parser b
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
"mode"
instance FromJSON GitCommit where
parseJSON :: Value -> Parser GitCommit
parseJSON = String -> (Object -> Parser GitCommit) -> Value -> Parser GitCommit
forall a. String -> (Object -> Parser a) -> Value -> Parser a
withObject String
"GitCommit" ((Object -> Parser GitCommit) -> Value -> Parser GitCommit)
-> (Object -> Parser GitCommit) -> Value -> Parser GitCommit
forall a b. (a -> b) -> a -> b
$ \Object
o -> Text
-> URL
-> GitUser
-> GitUser
-> Tree
-> Maybe (Name GitCommit)
-> Vector Tree
-> GitCommit
GitCommit
(Text
-> URL
-> GitUser
-> GitUser
-> Tree
-> Maybe (Name GitCommit)
-> Vector Tree
-> GitCommit)
-> Parser Text
-> Parser
(URL
-> GitUser
-> GitUser
-> Tree
-> Maybe (Name GitCommit)
-> Vector Tree
-> GitCommit)
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
"message"
Parser
(URL
-> GitUser
-> GitUser
-> Tree
-> Maybe (Name GitCommit)
-> Vector Tree
-> GitCommit)
-> Parser URL
-> Parser
(GitUser
-> GitUser
-> Tree
-> Maybe (Name GitCommit)
-> Vector Tree
-> GitCommit)
forall a b. Parser (a -> b) -> Parser a -> Parser b
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
"url"
Parser
(GitUser
-> GitUser
-> Tree
-> Maybe (Name GitCommit)
-> Vector Tree
-> GitCommit)
-> Parser GitUser
-> Parser
(GitUser
-> Tree -> Maybe (Name GitCommit) -> Vector Tree -> GitCommit)
forall a b. Parser (a -> b) -> Parser a -> Parser b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Key -> Parser GitUser
forall a. FromJSON a => Object -> Key -> Parser a
.: Key
"committer"
Parser
(GitUser
-> Tree -> Maybe (Name GitCommit) -> Vector Tree -> GitCommit)
-> Parser GitUser
-> Parser
(Tree -> Maybe (Name GitCommit) -> Vector Tree -> GitCommit)
forall a b. Parser (a -> b) -> Parser a -> Parser b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Key -> Parser GitUser
forall a. FromJSON a => Object -> Key -> Parser a
.: Key
"author"
Parser (Tree -> Maybe (Name GitCommit) -> Vector Tree -> GitCommit)
-> Parser Tree
-> Parser (Maybe (Name GitCommit) -> Vector Tree -> GitCommit)
forall a b. Parser (a -> b) -> Parser a -> Parser b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Key -> Parser Tree
forall a. FromJSON a => Object -> Key -> Parser a
.: Key
"tree"
Parser (Maybe (Name GitCommit) -> Vector Tree -> GitCommit)
-> Parser (Maybe (Name GitCommit))
-> Parser (Vector Tree -> GitCommit)
forall a b. Parser (a -> b) -> Parser a -> Parser b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Key -> Parser (Maybe (Name GitCommit))
forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
.:? Key
"sha"
Parser (Vector Tree -> GitCommit)
-> Parser (Vector Tree) -> Parser GitCommit
forall a b. Parser (a -> b) -> Parser a -> Parser b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Key -> Parser (Maybe (Vector Tree))
forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
.:? Key
"parents" Parser (Maybe (Vector Tree)) -> Vector Tree -> Parser (Vector Tree)
forall a. Parser (Maybe a) -> a -> Parser a
.!= Vector Tree
forall a. Vector a
V.empty
instance FromJSON GitUser where
parseJSON :: Value -> Parser GitUser
parseJSON = String -> (Object -> Parser GitUser) -> Value -> Parser GitUser
forall a. String -> (Object -> Parser a) -> Value -> Parser a
withObject String
"GitUser" ((Object -> Parser GitUser) -> Value -> Parser GitUser)
-> (Object -> Parser GitUser) -> Value -> Parser GitUser
forall a b. (a -> b) -> a -> b
$ \Object
o -> Text -> Text -> UTCTime -> GitUser
GitUser
(Text -> Text -> UTCTime -> GitUser)
-> Parser Text -> Parser (Text -> UTCTime -> GitUser)
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
"name"
Parser (Text -> UTCTime -> GitUser)
-> Parser Text -> Parser (UTCTime -> GitUser)
forall a b. Parser (a -> b) -> Parser a -> Parser b
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
"email"
Parser (UTCTime -> GitUser) -> Parser UTCTime -> Parser GitUser
forall a b. Parser (a -> b) -> Parser a -> Parser b
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
"date"
instance FromJSON File where
parseJSON :: Value -> Parser File
parseJSON = String -> (Object -> Parser File) -> Value -> Parser File
forall a. String -> (Object -> Parser a) -> Value -> Parser a
withObject String
"File" ((Object -> Parser File) -> Value -> Parser File)
-> (Object -> Parser File) -> Value -> Parser File
forall a b. (a -> b) -> a -> b
$ \Object
o -> Maybe URL
-> Text
-> Maybe URL
-> Int
-> Maybe Text
-> Int
-> Maybe Text
-> Text
-> Int
-> File
File
(Maybe URL
-> Text
-> Maybe URL
-> Int
-> Maybe Text
-> Int
-> Maybe Text
-> Text
-> Int
-> File)
-> Parser (Maybe URL)
-> Parser
(Text
-> Maybe URL
-> Int
-> Maybe Text
-> Int
-> Maybe Text
-> Text
-> Int
-> File)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Key -> Parser (Maybe URL)
forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
.:? Key
"blob_url"
Parser
(Text
-> Maybe URL
-> Int
-> Maybe Text
-> Int
-> Maybe Text
-> Text
-> Int
-> File)
-> Parser Text
-> Parser
(Maybe URL
-> Int -> Maybe Text -> Int -> Maybe Text -> Text -> Int -> File)
forall a b. Parser (a -> b) -> Parser a -> Parser b
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
"status"
Parser
(Maybe URL
-> Int -> Maybe Text -> Int -> Maybe Text -> Text -> Int -> File)
-> Parser (Maybe URL)
-> Parser
(Int -> Maybe Text -> Int -> Maybe Text -> Text -> Int -> File)
forall a b. Parser (a -> b) -> Parser a -> Parser b
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
"raw_url"
Parser
(Int -> Maybe Text -> Int -> Maybe Text -> Text -> Int -> File)
-> Parser Int
-> Parser (Maybe Text -> Int -> Maybe Text -> Text -> Int -> File)
forall a b. Parser (a -> b) -> Parser a -> Parser b
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
"additions"
Parser (Maybe Text -> Int -> Maybe Text -> Text -> Int -> File)
-> Parser (Maybe Text)
-> Parser (Int -> Maybe Text -> Text -> Int -> File)
forall a b. Parser (a -> b) -> Parser a -> Parser b
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
"sha"
Parser (Int -> Maybe Text -> Text -> Int -> File)
-> Parser Int -> Parser (Maybe Text -> Text -> Int -> File)
forall a b. Parser (a -> b) -> Parser a -> Parser b
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
"changes"
Parser (Maybe Text -> Text -> Int -> File)
-> Parser (Maybe Text) -> Parser (Text -> Int -> File)
forall a b. Parser (a -> b) -> Parser a -> Parser b
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
"patch"
Parser (Text -> Int -> File) -> Parser Text -> Parser (Int -> File)
forall a b. Parser (a -> b) -> Parser a -> Parser b
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
"filename"
Parser (Int -> File) -> Parser Int -> Parser File
forall a b. Parser (a -> b) -> Parser a -> Parser b
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
"deletions"
instance ToJSON NewGitReference where
toJSON :: NewGitReference -> Value
toJSON (NewGitReference Text
r Text
s) = [Pair] -> Value
object [ Key
"ref" Key -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
forall v. ToJSON v => Key -> v -> Pair
.= Text
r, Key
"sha" Key -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
forall v. ToJSON v => Key -> v -> Pair
.= Text
s ]
instance FromJSON GitReference where
parseJSON :: Value -> Parser GitReference
parseJSON = String
-> (Object -> Parser GitReference) -> Value -> Parser GitReference
forall a. String -> (Object -> Parser a) -> Value -> Parser a
withObject String
"GitReference" ((Object -> Parser GitReference) -> Value -> Parser GitReference)
-> (Object -> Parser GitReference) -> Value -> Parser GitReference
forall a b. (a -> b) -> a -> b
$ \Object
o -> GitObject -> URL -> Name GitReference -> GitReference
GitReference
(GitObject -> URL -> Name GitReference -> GitReference)
-> Parser GitObject
-> Parser (URL -> Name GitReference -> GitReference)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Key -> Parser GitObject
forall a. FromJSON a => Object -> Key -> Parser a
.: Key
"object"
Parser (URL -> Name GitReference -> GitReference)
-> Parser URL -> Parser (Name GitReference -> GitReference)
forall a b. Parser (a -> b) -> Parser a -> Parser b
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
"url"
Parser (Name GitReference -> GitReference)
-> Parser (Name GitReference) -> Parser GitReference
forall a b. Parser (a -> b) -> Parser a -> Parser b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Key -> Parser (Name GitReference)
forall a. FromJSON a => Object -> Key -> Parser a
.: Key
"ref"
instance FromJSON GitObject where
parseJSON :: Value -> Parser GitObject
parseJSON = String -> (Object -> Parser GitObject) -> Value -> Parser GitObject
forall a. String -> (Object -> Parser a) -> Value -> Parser a
withObject String
"GitObject" ((Object -> Parser GitObject) -> Value -> Parser GitObject)
-> (Object -> Parser GitObject) -> Value -> Parser GitObject
forall a b. (a -> b) -> a -> b
$ \Object
o -> Text -> Text -> URL -> GitObject
GitObject
(Text -> Text -> URL -> GitObject)
-> Parser Text -> Parser (Text -> URL -> GitObject)
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
"type"
Parser (Text -> URL -> GitObject)
-> Parser Text -> Parser (URL -> GitObject)
forall a b. Parser (a -> b) -> Parser a -> Parser b
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 (URL -> GitObject) -> Parser URL -> Parser GitObject
forall a b. Parser (a -> b) -> Parser a -> Parser b
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
"url"
instance FromJSON Diff where
parseJSON :: Value -> Parser Diff
parseJSON = String -> (Object -> Parser Diff) -> Value -> Parser Diff
forall a. String -> (Object -> Parser a) -> Value -> Parser a
withObject String
"Diff" ((Object -> Parser Diff) -> Value -> Parser Diff)
-> (Object -> Parser Diff) -> Value -> Parser Diff
forall a b. (a -> b) -> a -> b
$ \Object
o -> Text
-> Int
-> URL
-> URL
-> Commit
-> Vector Commit
-> Int
-> URL
-> Vector File
-> Int
-> URL
-> URL
-> Diff
Diff
(Text
-> Int
-> URL
-> URL
-> Commit
-> Vector Commit
-> Int
-> URL
-> Vector File
-> Int
-> URL
-> URL
-> Diff)
-> Parser Text
-> Parser
(Int
-> URL
-> URL
-> Commit
-> Vector Commit
-> Int
-> URL
-> Vector File
-> Int
-> URL
-> URL
-> Diff)
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
"status"
Parser
(Int
-> URL
-> URL
-> Commit
-> Vector Commit
-> Int
-> URL
-> Vector File
-> Int
-> URL
-> URL
-> Diff)
-> Parser Int
-> Parser
(URL
-> URL
-> Commit
-> Vector Commit
-> Int
-> URL
-> Vector File
-> Int
-> URL
-> URL
-> Diff)
forall a b. Parser (a -> b) -> Parser a -> Parser b
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
"behind_by"
Parser
(URL
-> URL
-> Commit
-> Vector Commit
-> Int
-> URL
-> Vector File
-> Int
-> URL
-> URL
-> Diff)
-> Parser URL
-> Parser
(URL
-> Commit
-> Vector Commit
-> Int
-> URL
-> Vector File
-> Int
-> URL
-> URL
-> Diff)
forall a b. Parser (a -> b) -> Parser a -> Parser b
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
"patch_url"
Parser
(URL
-> Commit
-> Vector Commit
-> Int
-> URL
-> Vector File
-> Int
-> URL
-> URL
-> Diff)
-> Parser URL
-> Parser
(Commit
-> Vector Commit
-> Int
-> URL
-> Vector File
-> Int
-> URL
-> URL
-> Diff)
forall a b. Parser (a -> b) -> Parser a -> Parser b
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
"url"
Parser
(Commit
-> Vector Commit
-> Int
-> URL
-> Vector File
-> Int
-> URL
-> URL
-> Diff)
-> Parser Commit
-> Parser
(Vector Commit
-> Int -> URL -> Vector File -> Int -> URL -> URL -> Diff)
forall a b. Parser (a -> b) -> Parser a -> Parser b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Key -> Parser Commit
forall a. FromJSON a => Object -> Key -> Parser a
.: Key
"base_commit"
Parser
(Vector Commit
-> Int -> URL -> Vector File -> Int -> URL -> URL -> Diff)
-> Parser (Vector Commit)
-> Parser (Int -> URL -> Vector File -> Int -> URL -> URL -> Diff)
forall a b. Parser (a -> b) -> Parser a -> Parser b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Key -> Parser (Maybe (Vector Commit))
forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
.:? Key
"commits" Parser (Maybe (Vector Commit))
-> Vector Commit -> Parser (Vector Commit)
forall a. Parser (Maybe a) -> a -> Parser a
.!= Vector Commit
forall a. Vector a
V.empty
Parser (Int -> URL -> Vector File -> Int -> URL -> URL -> Diff)
-> Parser Int
-> Parser (URL -> Vector File -> Int -> URL -> URL -> Diff)
forall a b. Parser (a -> b) -> Parser a -> Parser b
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
"total_commits"
Parser (URL -> Vector File -> Int -> URL -> URL -> Diff)
-> Parser URL -> Parser (Vector File -> Int -> URL -> URL -> Diff)
forall a b. Parser (a -> b) -> Parser a -> Parser b
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
"html_url"
Parser (Vector File -> Int -> URL -> URL -> Diff)
-> Parser (Vector File) -> Parser (Int -> URL -> URL -> Diff)
forall a b. Parser (a -> b) -> Parser a -> Parser b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Key -> Parser (Maybe (Vector File))
forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
.:? Key
"files" Parser (Maybe (Vector File)) -> Vector File -> Parser (Vector File)
forall a. Parser (Maybe a) -> a -> Parser a
.!= Vector File
forall a. Vector a
V.empty
Parser (Int -> URL -> URL -> Diff)
-> Parser Int -> Parser (URL -> URL -> Diff)
forall a b. Parser (a -> b) -> Parser a -> Parser b
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
"ahead_by"
Parser (URL -> URL -> Diff) -> Parser URL -> Parser (URL -> Diff)
forall a b. Parser (a -> b) -> Parser a -> Parser b
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
"diff_url"
Parser (URL -> Diff) -> Parser URL -> Parser Diff
forall a b. Parser (a -> b) -> Parser a -> Parser b
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
"permalink_url"
instance FromJSON Blob where
parseJSON :: Value -> Parser Blob
parseJSON = String -> (Object -> Parser Blob) -> Value -> Parser Blob
forall a. String -> (Object -> Parser a) -> Value -> Parser a
withObject String
"Blob" ((Object -> Parser Blob) -> Value -> Parser Blob)
-> (Object -> Parser Blob) -> Value -> Parser Blob
forall a b. (a -> b) -> a -> b
$ \Object
o -> URL -> Text -> Text -> Name Blob -> Int -> Blob
Blob
(URL -> Text -> Text -> Name Blob -> Int -> Blob)
-> Parser URL -> Parser (Text -> Text -> Name Blob -> Int -> Blob)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Key -> Parser URL
forall a. FromJSON a => Object -> Key -> Parser a
.: Key
"url"
Parser (Text -> Text -> Name Blob -> Int -> Blob)
-> Parser Text -> Parser (Text -> Name Blob -> Int -> Blob)
forall a b. Parser (a -> b) -> Parser a -> Parser b
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
"encoding"
Parser (Text -> Name Blob -> Int -> Blob)
-> Parser Text -> Parser (Name Blob -> Int -> Blob)
forall a b. Parser (a -> b) -> Parser a -> Parser b
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
"content"
Parser (Name Blob -> Int -> Blob)
-> Parser (Name Blob) -> Parser (Int -> Blob)
forall a b. Parser (a -> b) -> Parser a -> Parser b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Key -> Parser (Name Blob)
forall a. FromJSON a => Object -> Key -> Parser a
.: Key
"sha"
Parser (Int -> Blob) -> Parser Int -> Parser Blob
forall a b. Parser (a -> b) -> Parser a -> Parser b
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
"size"
instance FromJSON Tag where
parseJSON :: Value -> Parser Tag
parseJSON = String -> (Object -> Parser Tag) -> Value -> Parser Tag
forall a. String -> (Object -> Parser a) -> Value -> Parser a
withObject String
"Tag" ((Object -> Parser Tag) -> Value -> Parser Tag)
-> (Object -> Parser Tag) -> Value -> Parser Tag
forall a b. (a -> b) -> a -> b
$ \Object
o -> Text -> URL -> URL -> BranchCommit -> Tag
Tag
(Text -> URL -> URL -> BranchCommit -> Tag)
-> Parser Text -> Parser (URL -> URL -> BranchCommit -> Tag)
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
"name"
Parser (URL -> URL -> BranchCommit -> Tag)
-> Parser URL -> Parser (URL -> BranchCommit -> Tag)
forall a b. Parser (a -> b) -> Parser a -> Parser b
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
"zipball_url"
Parser (URL -> BranchCommit -> Tag)
-> Parser URL -> Parser (BranchCommit -> Tag)
forall a b. Parser (a -> b) -> Parser a -> Parser b
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
"tarball_url"
Parser (BranchCommit -> Tag) -> Parser BranchCommit -> Parser Tag
forall a b. Parser (a -> b) -> Parser a -> Parser b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Key -> Parser BranchCommit
forall a. FromJSON a => Object -> Key -> Parser a
.: Key
"commit"
instance FromJSON Branch where
parseJSON :: Value -> Parser Branch
parseJSON = String -> (Object -> Parser Branch) -> Value -> Parser Branch
forall a. String -> (Object -> Parser a) -> Value -> Parser a
withObject String
"Branch" ((Object -> Parser Branch) -> Value -> Parser Branch)
-> (Object -> Parser Branch) -> Value -> Parser Branch
forall a b. (a -> b) -> a -> b
$ \Object
o -> Text -> BranchCommit -> Branch
Branch
(Text -> BranchCommit -> Branch)
-> Parser Text -> Parser (BranchCommit -> Branch)
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
"name"
Parser (BranchCommit -> Branch)
-> Parser BranchCommit -> Parser Branch
forall a b. Parser (a -> b) -> Parser a -> Parser b
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Key -> Parser BranchCommit
forall a. FromJSON a => Object -> Key -> Parser a
.: Key
"commit"
instance FromJSON BranchCommit where
parseJSON :: Value -> Parser BranchCommit
parseJSON = String
-> (Object -> Parser BranchCommit) -> Value -> Parser BranchCommit
forall a. String -> (Object -> Parser a) -> Value -> Parser a
withObject String
"BranchCommit" ((Object -> Parser BranchCommit) -> Value -> Parser BranchCommit)
-> (Object -> Parser BranchCommit) -> Value -> Parser BranchCommit
forall a b. (a -> b) -> a -> b
$ \Object
o -> Text -> URL -> BranchCommit
BranchCommit
(Text -> URL -> BranchCommit)
-> Parser Text -> Parser (URL -> BranchCommit)
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
"sha"
Parser (URL -> BranchCommit) -> Parser URL -> Parser BranchCommit
forall a b. Parser (a -> b) -> Parser a -> Parser b
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
"url"