gitlab-haskell-1.0.0.5: A Haskell library for the GitLab web API
Copyright(c) Rob Stewart Heriot-Watt University 2019
LicenseBSD3
Maintainerrobstewart57@gmail.com
Stabilitystable
Safe HaskellSafe-Inferred
LanguageHaskell2010

GitLab.Types

Description

 
Synopsis

Documentation

type GitLab a = GitLabT IO a Source #

Utility type which uses IO as underlying monad

newtype GitLabT m a Source #

The monad in which the GitLab operations can be run. Contains the GitLabState to run the requests with.

Run it with runGitLab

Constructors

GitLabT (ReaderT GitLabState m a) 

Instances

Instances details
MonadTrans GitLabT Source # 
Instance details

Defined in GitLab.Types

Methods

lift :: Monad m => m a -> GitLabT m a #

Monad m => MonadReader GitLabState (GitLabT m) Source # 
Instance details

Defined in GitLab.Types

Methods

ask :: GitLabT m GitLabState #

local :: (GitLabState -> GitLabState) -> GitLabT m a -> GitLabT m a #

reader :: (GitLabState -> a) -> GitLabT m a #

MonadFail m => MonadFail (GitLabT m) Source # 
Instance details

Defined in GitLab.Types

Methods

fail :: String -> GitLabT m a #

MonadIO m => MonadIO (GitLabT m) Source # 
Instance details

Defined in GitLab.Types

Methods

liftIO :: IO a -> GitLabT m a #

Applicative m => Applicative (GitLabT m) Source # 
Instance details

Defined in GitLab.Types

Methods

pure :: a -> GitLabT m a #

(<*>) :: GitLabT m (a -> b) -> GitLabT m a -> GitLabT m b #

liftA2 :: (a -> b -> c) -> GitLabT m a -> GitLabT m b -> GitLabT m c #

(*>) :: GitLabT m a -> GitLabT m b -> GitLabT m b #

(<*) :: GitLabT m a -> GitLabT m b -> GitLabT m a #

Functor m => Functor (GitLabT m) Source # 
Instance details

Defined in GitLab.Types

Methods

fmap :: (a -> b) -> GitLabT m a -> GitLabT m b #

(<$) :: a -> GitLabT m b -> GitLabT m a #

Monad m => Monad (GitLabT m) Source # 
Instance details

Defined in GitLab.Types

Methods

(>>=) :: GitLabT m a -> (a -> GitLabT m b) -> GitLabT m b #

(>>) :: GitLabT m a -> GitLabT m b -> GitLabT m b #

return :: a -> GitLabT m a #

data GitLabState Source #

state used by GitLab actions, used internally.

Instances

Instances details
Monad m => MonadReader GitLabState (GitLabT m) Source # 
Instance details

Defined in GitLab.Types

Methods

ask :: GitLabT m GitLabState #

local :: (GitLabState -> GitLabState) -> GitLabT m a -> GitLabT m a #

reader :: (GitLabState -> a) -> GitLabT m a #

data GitLabServerConfig Source #

configuration data specific to a GitLab server.

Constructors

GitLabServerConfig 

Fields

defaultGitLabServer :: GitLabServerConfig Source #

default settings, the url and token values will need to be overwritten.

data ArchiveFormat Source #

archive format for file archives of repositories. See getFileArchive in Repositories.

Constructors

TarGz

".tar.gz"

TarBz2

".tar.bz2"

Tbz

".tbz"

Tbz2

".tbz2"

Tb2

".tb2"

Bz2

".bz2"

Tar

".tar"

Zip

".zip"

Instances

Instances details
Show ArchiveFormat Source # 
Instance details

Defined in GitLab.Types

data AccessLevel Source #

Instances

Instances details
Show AccessLevel Source # 
Instance details

Defined in GitLab.Types

Eq AccessLevel Source # 
Instance details

Defined in GitLab.Types

data SearchIn Source #

Where to filter a search within

Instances

Instances details
Show SearchIn Source # 
Instance details

Defined in GitLab.Types

data Scope Source #

Scope of search results

Constructors

CreatedByMe 
AssignedToMe 
All 

Instances

Instances details
Show Scope Source # 
Instance details

Defined in GitLab.Types

Methods

showsPrec :: Int -> Scope -> ShowS #

show :: Scope -> String #

showList :: [Scope] -> ShowS #

data SortBy Source #

Sort objects in ascending or descending order

Constructors

Ascending 
Descending 

Instances

Instances details
Show SortBy Source # 
Instance details

Defined in GitLab.Types

data OrderBy Source #

Ordering search results

Instances

Instances details
Show OrderBy Source # 
Instance details

Defined in GitLab.Types

data Identity Source #

identity

Instances

Instances details
FromJSON Identity Source # 
Instance details

Defined in GitLab.Types

ToJSON Identity Source # 
Instance details

Defined in GitLab.Types

Show Identity Source # 
Instance details

Defined in GitLab.Types

Eq Identity Source # 
Instance details

Defined in GitLab.Types

data Links Source #

links.

Instances

data Owner Source #

owners.

Instances

Instances details
FromJSON Owner Source # 
Instance details

Defined in GitLab.Types

ToJSON Owner Source # 
Instance details

Defined in GitLab.Types

Show Owner Source # 
Instance details

Defined in GitLab.Types

Methods

showsPrec :: Int -> Owner -> ShowS #

show :: Owner -> String #

showList :: [Owner] -> ShowS #

Eq Owner Source # 
Instance details

Defined in GitLab.Types

Methods

(==) :: Owner -> Owner -> Bool #

(/=) :: Owner -> Owner -> Bool #

type ProjectId = Int Source #

alias for project id

data Project Source #

projects.

Constructors

Project 

Fields

Instances

Instances details
FromJSON Project Source # 
Instance details

Defined in GitLab.Types

ToJSON Project Source # 
Instance details

Defined in GitLab.Types

Show Project Source # 
Instance details

Defined in GitLab.Types

Eq Project Source # 
Instance details

Defined in GitLab.Types

Methods

(==) :: Project -> Project -> Bool #

(/=) :: Project -> Project -> Bool #

data User Source #

registered users.

Instances

Instances details
FromJSON User Source # 
Instance details

Defined in GitLab.Types

ToJSON User Source # 
Instance details

Defined in GitLab.Types

Show User Source # 
Instance details

Defined in GitLab.Types

Methods

showsPrec :: Int -> User -> ShowS #

show :: User -> String #

showList :: [User] -> ShowS #

Eq User Source # 
Instance details

Defined in GitLab.Types

Methods

(==) :: User -> User -> Bool #

(/=) :: User -> User -> Bool #

type IssueId = Int Source #

alias for issue id

data Issue Source #

project issues.

Instances

Instances details
FromJSON Issue Source # 
Instance details

Defined in GitLab.Types

ToJSON Issue Source # 
Instance details

Defined in GitLab.Types

Show Issue Source # 
Instance details

Defined in GitLab.Types

Methods

showsPrec :: Int -> Issue -> ShowS #

show :: Issue -> String #

showList :: [Issue] -> ShowS #

Eq Issue Source # 
Instance details

Defined in GitLab.Types

Methods

(==) :: Issue -> Issue -> Bool #

(/=) :: Issue -> Issue -> Bool #

data Epic Source #

GitLab epic.

Constructors

Epic 

Instances

Instances details
FromJSON Epic Source # 
Instance details

Defined in GitLab.Types

ToJSON Epic Source # 
Instance details

Defined in GitLab.Types

Show Epic Source # 
Instance details

Defined in GitLab.Types

Methods

showsPrec :: Int -> Epic -> ShowS #

show :: Epic -> String #

showList :: [Epic] -> ShowS #

Eq Epic Source # 
Instance details

Defined in GitLab.Types

Methods

(==) :: Epic -> Epic -> Bool #

(/=) :: Epic -> Epic -> Bool #

data Pipeline Source #

project pipelines

Instances

Instances details
FromJSON Pipeline Source # 
Instance details

Defined in GitLab.Types

ToJSON Pipeline Source # 
Instance details

Defined in GitLab.Types

Show Pipeline Source # 
Instance details

Defined in GitLab.Types

Eq Pipeline Source # 
Instance details

Defined in GitLab.Types

data Tag Source #

tags.

Instances

Instances details
FromJSON Tag Source # 
Instance details

Defined in GitLab.Types

ToJSON Tag Source # 
Instance details

Defined in GitLab.Types

Show Tag Source # 
Instance details

Defined in GitLab.Types

Methods

showsPrec :: Int -> Tag -> ShowS #

show :: Tag -> String #

showList :: [Tag] -> ShowS #

Eq Tag Source # 
Instance details

Defined in GitLab.Types

Methods

(==) :: Tag -> Tag -> Bool #

(/=) :: Tag -> Tag -> Bool #

data Release Source #

Release associated with a tag

Instances

Instances details
FromJSON Release Source # 
Instance details

Defined in GitLab.Types

ToJSON Release Source # 
Instance details

Defined in GitLab.Types

Show Release Source # 
Instance details

Defined in GitLab.Types

Eq Release Source # 
Instance details

Defined in GitLab.Types

Methods

(==) :: Release -> Release -> Bool #

(/=) :: Release -> Release -> Bool #

data Diff Source #

diff between two commits.

Instances

Instances details
FromJSON Diff Source # 
Instance details

Defined in GitLab.Types

ToJSON Diff Source # 
Instance details

Defined in GitLab.Types

Show Diff Source # 
Instance details

Defined in GitLab.Types

Methods

showsPrec :: Int -> Diff -> ShowS #

show :: Diff -> String #

showList :: [Diff] -> ShowS #

Eq Diff Source # 
Instance details

Defined in GitLab.Types

Methods

(==) :: Diff -> Diff -> Bool #

(/=) :: Diff -> Diff -> Bool #

data Artifact Source #

artifacts.

Instances

Instances details
FromJSON Artifact Source # 
Instance details

Defined in GitLab.Types

ToJSON Artifact Source # 
Instance details

Defined in GitLab.Types

Show Artifact Source # 
Instance details

Defined in GitLab.Types

Eq Artifact Source # 
Instance details

Defined in GitLab.Types

data Group Source #

groups.

Instances

Instances details
FromJSON Group Source # 
Instance details

Defined in GitLab.Types

ToJSON Group Source # 
Instance details

Defined in GitLab.Types

Show Group Source # 
Instance details

Defined in GitLab.Types

Methods

showsPrec :: Int -> Group -> ShowS #

show :: Group -> String #

showList :: [Group] -> ShowS #

Eq Group Source # 
Instance details

Defined in GitLab.Types

Methods

(==) :: Group -> Group -> Bool #

(/=) :: Group -> Group -> Bool #

data Branch Source #

code branches.

Instances

Instances details
FromJSON Branch Source # 
Instance details

Defined in GitLab.Types

ToJSON Branch Source # 
Instance details

Defined in GitLab.Types

Show Branch Source # 
Instance details

Defined in GitLab.Types

Eq Branch Source # 
Instance details

Defined in GitLab.Types

Methods

(==) :: Branch -> Branch -> Bool #

(/=) :: Branch -> Branch -> Bool #

data MergeRequest Source #

project merge requests.

Constructors

MergeRequest 

Fields

data Todo Source #

TODOs.

Instances

Instances details
FromJSON Todo Source # 
Instance details

Defined in GitLab.Types

ToJSON Todo Source # 
Instance details

Defined in GitLab.Types

Show Todo Source # 
Instance details

Defined in GitLab.Types

Methods

showsPrec :: Int -> Todo -> ShowS #

show :: Todo -> String #

showList :: [Todo] -> ShowS #

Eq Todo Source # 
Instance details

Defined in GitLab.Types

Methods

(==) :: Todo -> Todo -> Bool #

(/=) :: Todo -> Todo -> Bool #

data TodoTarget Source #

TODO targets.

Instances

Instances details
ToJSON TodoTarget Source # 
Instance details

Defined in GitLab.Types

Show TodoTarget Source # 
Instance details

Defined in GitLab.Types

Eq TodoTarget Source # 
Instance details

Defined in GitLab.Types

data TodoType Source #

Type of a TODO.

Instances

Instances details
Show TodoType Source # 
Instance details

Defined in GitLab.Types

data TodoState Source #

TODO states.

Constructors

TSPending 
TSDone 

Instances

Instances details
FromJSON TodoState Source # 
Instance details

Defined in GitLab.Types

ToJSON TodoState Source # 
Instance details

Defined in GitLab.Types

Show TodoState Source # 
Instance details

Defined in GitLab.Types

Eq TodoState Source # 
Instance details

Defined in GitLab.Types

data Version Source #

version of the GitLab instance.

Constructors

Version 

Instances

Instances details
FromJSON Version Source # 
Instance details

Defined in GitLab.Types

ToJSON Version Source # 
Instance details

Defined in GitLab.Types

Show Version Source # 
Instance details

Defined in GitLab.Types

Eq Version Source # 
Instance details

Defined in GitLab.Types

Methods

(==) :: Version -> Version -> Bool #

(/=) :: Version -> Version -> Bool #

type URL = Text Source #

URL is a synonym for Text.

data CommitNote Source #

Note attached to a commit.

newtype IssueStats Source #

Issue statistics

data IssueCounts Source #

A count of all, open and closed issues against a project

data Visibility Source #

Project visibility.

Constructors

Public 
Private 
Internal 

Instances

Instances details
FromJSON Visibility Source # 
Instance details

Defined in GitLab.Types

Show Visibility Source # 
Instance details

Defined in GitLab.Types

Eq Visibility Source # 
Instance details

Defined in GitLab.Types

data TestCase Source #

Test case associated with a testsuite

Instances

Instances details
FromJSON TestCase Source # 
Instance details

Defined in GitLab.Types

ToJSON TestCase Source # 
Instance details

Defined in GitLab.Types

Show TestCase Source # 
Instance details

Defined in GitLab.Types

Eq TestCase Source # 
Instance details

Defined in GitLab.Types

data Change Source #

Change between commits.

Instances

Instances details
FromJSON Change Source # 
Instance details

Defined in GitLab.Types

ToJSON Change Source # 
Instance details

Defined in GitLab.Types

Show Change Source # 
Instance details

Defined in GitLab.Types

Eq Change Source # 
Instance details

Defined in GitLab.Types

Methods

(==) :: Change -> Change -> Bool #

(/=) :: Change -> Change -> Bool #

data DiffRefs Source #

diff references.

Instances

Instances details
FromJSON DiffRefs Source # 
Instance details

Defined in GitLab.Types

ToJSON DiffRefs Source # 
Instance details

Defined in GitLab.Types

Show DiffRefs Source # 
Instance details

Defined in GitLab.Types

Eq DiffRefs Source # 
Instance details

Defined in GitLab.Types

data License Source #

Licenses.

Instances

Instances details
FromJSON License Source # 
Instance details

Defined in GitLab.Types

ToJSON License Source # 
Instance details

Defined in GitLab.Types

Show License Source # 
Instance details

Defined in GitLab.Types

Eq License Source # 
Instance details

Defined in GitLab.Types

Methods

(==) :: License -> License -> Bool #

(/=) :: License -> License -> Bool #

data Starrer Source #

User who is the starrer of a project.

Instances

Instances details
FromJSON Starrer Source # 
Instance details

Defined in GitLab.Types

ToJSON Starrer Source # 
Instance details

Defined in GitLab.Types

Show Starrer Source # 
Instance details

Defined in GitLab.Types

Eq Starrer Source # 
Instance details

Defined in GitLab.Types

Methods

(==) :: Starrer -> Starrer -> Bool #

(/=) :: Starrer -> Starrer -> Bool #

data Email Source #

Email information.

Instances

Instances details
FromJSON Email Source # 
Instance details

Defined in GitLab.Types

ToJSON Email Source # 
Instance details

Defined in GitLab.Types

Show Email Source # 
Instance details

Defined in GitLab.Types

Methods

showsPrec :: Int -> Email -> ShowS #

show :: Email -> String #

showList :: [Email] -> ShowS #

Eq Email Source # 
Instance details

Defined in GitLab.Types

Methods

(==) :: Email -> Email -> Bool #

(/=) :: Email -> Email -> Bool #

data Key Source #

SSH key information.

Instances

Instances details
FromJSON Key Source # 
Instance details

Defined in GitLab.Types

ToJSON Key Source # 
Instance details

Defined in GitLab.Types

Show Key Source # 
Instance details

Defined in GitLab.Types

Methods

showsPrec :: Int -> Key -> ShowS #

show :: Key -> String #

showList :: [Key] -> ShowS #

Eq Key Source # 
Instance details

Defined in GitLab.Types

Methods

(==) :: Key -> Key -> Bool #

(/=) :: Key -> Key -> Bool #