libgit-0.3.1: Simple Git Wrapper

Safe HaskellNone
LanguageHaskell98

Lib.Git.Type

Synopsis

Documentation

runGit :: Config -> GitCtx t -> IO t #

Run a git context from a config and returns the result

gitExec :: String -> [String] -> [(String, String)] -> GitCtx (Either GitFailure String) #

internal function to execute a git command

gitError :: GitFailure -> String -> b #

internal function to call on failure to make a friendly error message

data GitCtx a #

Instances

Monad GitCtx # 

Methods

(>>=) :: GitCtx a -> (a -> GitCtx b) -> GitCtx b #

(>>) :: GitCtx a -> GitCtx b -> GitCtx b #

return :: a -> GitCtx a #

fail :: String -> GitCtx a #

Functor GitCtx # 

Methods

fmap :: (a -> b) -> GitCtx a -> GitCtx b #

(<$) :: a -> GitCtx b -> GitCtx a #

Applicative GitCtx # 

Methods

pure :: a -> GitCtx a #

(<*>) :: GitCtx (a -> b) -> GitCtx a -> GitCtx b #

(*>) :: GitCtx a -> GitCtx b -> GitCtx b #

(<*) :: GitCtx a -> GitCtx b -> GitCtx a #

MonadIO GitCtx # 

Methods

liftIO :: IO a -> GitCtx a #

MonadReader Config GitCtx # 

Methods

ask :: GitCtx Config #

local :: (Config -> Config) -> GitCtx a -> GitCtx a #

reader :: (Config -> a) -> GitCtx a #

data Object #

Tagged ID of all possible types

Instances

data Config #

Represent a repository

Constructors

Config 

Fields

Instances

data Commitent #

Commit entity representation

data Person #

Commit object author/commiter representation

Constructors

Person 

Instances

type ID = String #

any ID (git SHA1 string)

type CommitID = ID #

a commit ID

type BlobID = ID #

a blob ID

type TreeID = ID #

a tree ID

type TagID = ID #

a tag ID

toID :: String -> ID #