Safe Haskell | None |
---|---|
Language | Haskell98 |
Git.Libgit2
Contents
Description
Interface for opening and creating repositories. Repository objects are immutable, and serve only to refer to the given repository. Any data associated with the repository — such as the list of branches — is queried as needed.
Documentation
type MonadLg (m :: Type -> Type) = (Applicative m, MonadExcept m, MonadUnliftIO m) Source #
Constructors
LgRepo | |
Fields |
Instances
lgRepoPath :: LgRepo -> FilePath Source #
addTracingBackend :: LgRepo -> IO () Source #
checkResult :: (Eq a, Num a, MonadExcept m) => a -> Text -> m () Source #
lgBuildPackIndex :: MonadUnliftIO m => FilePath -> ByteString -> m (Text, FilePath, FilePath) Source #
lgFactory :: forall (m :: Type -> Type). (MonadIO m, MonadMask m) => RepositoryFactory (ReaderT LgRepo m) m LgRepo Source #
lgForEachObject :: Ptr C'git_odb -> (Ptr C'git_oid -> Ptr () -> IO CInt) -> Ptr () -> IO CInt Source #
lgBuildPackFile :: forall (m :: Type -> Type). MonadLg m => FilePath -> [Either CommitOid TreeOid] -> ReaderT LgRepo m FilePath Source #
lgReadFromPack :: (MonadIO m, MonadExcept m) => Ptr C'git_odb -> SHA -> Bool -> m (Maybe (C'git_otype, CSize, ByteString)) Source #
lgOpenPackFile :: (MonadExcept m, MonadUnliftIO m) => FilePath -> m (Ptr C'git_odb) Source #
lgClosePackFile :: (MonadIO m, MonadExcept m) => Ptr C'git_odb -> m () Source #
lgWithPackFile :: (MonadExcept m, MonadUnliftIO m) => FilePath -> (Ptr C'git_odb -> m a) -> m a Source #
lgDiffContentsWithTree :: forall (m :: Type -> Type). MonadLg m => Source (ReaderT LgRepo m) (Either TreeFilePath (Either SHA ByteString)) -> Tree -> Producer (ReaderT LgRepo m) ByteString Source #
openLgRepository :: (MonadIO m, MonadMask m) => RepositoryOptions -> m LgRepo Source #
Orphan instances
(Applicative m, MonadExcept m, MonadUnliftIO m, HasLgRepo m) => MonadGit LgRepo m Source # | |||||||||||||
Associated Types
Methods facts :: m RepositoryFacts # parseOid :: Text -> m (Oid LgRepo) # getRepository :: m LgRepo # closeRepository :: m () # deleteRepository :: m () # createReference :: RefName -> RefTarget LgRepo -> m () # lookupReference :: RefName -> m (Maybe (RefTarget LgRepo)) # updateReference :: RefName -> RefTarget LgRepo -> m () # deleteReference :: RefName -> m () # sourceReferences :: ConduitT i RefName m () # lookupObject :: Oid LgRepo -> m (Object LgRepo m) # existsObject :: Oid LgRepo -> m Bool # sourceObjects :: Maybe (CommitOid LgRepo) -> CommitOid LgRepo -> Bool -> ConduitT i (ObjectOid LgRepo) m () # lookupCommit :: CommitOid LgRepo -> m (Commit LgRepo) # lookupTree :: TreeOid LgRepo -> m (Tree LgRepo) # lookupBlob :: BlobOid LgRepo -> m (Blob LgRepo m) # lookupTag :: TagOid LgRepo -> m (Tag LgRepo) # readIndex :: TreeT LgRepo m () # writeIndex :: TreeT LgRepo m () # newTreeBuilder :: Maybe (Tree LgRepo) -> m (TreeBuilder LgRepo m) # treeOid :: Tree LgRepo -> m (TreeOid LgRepo) # treeEntry :: Tree LgRepo -> TreeFilePath -> m (Maybe (TreeEntry LgRepo)) # sourceTreeEntries :: Tree LgRepo -> ConduitT i (TreeFilePath, TreeEntry LgRepo) m () # diffContentsWithTree :: ConduitT () (Either TreeFilePath ByteString) m () -> Tree LgRepo -> ConduitT i ByteString m () # hashContents :: BlobContents m -> m (BlobOid LgRepo) # createBlob :: BlobContents m -> m (BlobOid LgRepo) # createCommit :: [CommitOid LgRepo] -> TreeOid LgRepo -> Signature -> Signature -> CommitMessage -> Maybe RefName -> m (Commit LgRepo) # createTag :: CommitOid LgRepo -> Signature -> CommitMessage -> Text -> m (Tag LgRepo) # |