-- Hoogle documentation, generated by Haddock -- See Hoogle, http://www.haskell.org/hoogle/ -- | Libgit2 backend for gitlib -- -- Libgit2 (http://libgit2.github.com) backend for -- gitlib. @package gitlib-libgit2 @version 3.1.0 module Git.Libgit2.Types data LgRepo LgRepo :: RepositoryOptions -> ForeignPtr C'git_repository -> IORef (Maybe GitException) -> LgRepo repoOptions :: LgRepo -> RepositoryOptions repoObj :: LgRepo -> ForeignPtr C'git_repository repoExcTrap :: LgRepo -> IORef (Maybe GitException) lgRepoPath :: LgRepo -> FilePath type BlobOid = BlobOid LgRepo type TreeOid = TreeOid LgRepo type CommitOid = CommitOid LgRepo type Tree = Tree LgRepo type TreeEntry = TreeEntry LgRepo type Commit = Commit LgRepo type Tag = Tag LgRepo type Object = Object LgRepo type ObjectOid = ObjectOid LgRepo type RefTarget = RefTarget LgRepo type TreeBuilder = TreeBuilder LgRepo type Options = Options LgRepo type MonadExcept m = (MonadThrow m, MonadCatch m, MonadMask m) type MonadLg m = (Applicative m, MonadExcept m, MonadIO m, MonadBaseControl IO m, MonadLogger m) module Git.Libgit2.Backend odbBackendAdd :: LgRepo -> Ptr C'git_odb_backend -> Int -> IO (Either String LgRepo) type F'git_odb_backend_read_callback = Ptr (Ptr ()) -> Ptr CSize -> Ptr C'git_otype -> Ptr C'git_odb_backend -> Ptr C'git_oid -> IO CInt type F'git_odb_backend_read_prefix_callback = Ptr C'git_oid -> Ptr (Ptr ()) -> Ptr CSize -> Ptr C'git_otype -> Ptr C'git_odb_backend -> Ptr C'git_oid -> CSize -> IO CInt type F'git_odb_backend_readstream_callback = Ptr (Ptr C'git_odb_stream) -> Ptr C'git_odb_backend -> Ptr C'git_oid -> IO CInt type F'git_odb_backend_read_header_callback = Ptr CSize -> Ptr C'git_otype -> Ptr C'git_odb_backend -> Ptr C'git_oid -> IO CInt type F'git_odb_backend_write_callback = Ptr C'git_oid -> Ptr C'git_odb_backend -> Ptr () -> CSize -> C'git_otype -> IO CInt type F'git_odb_backend_writestream_callback = Ptr (Ptr C'git_odb_stream) -> Ptr C'git_odb_backend -> CSize -> C'git_otype -> IO CInt type F'git_odb_backend_exists_callback = Ptr C'git_odb_backend -> Ptr C'git_oid -> CInt -> IO CInt type F'git_odb_backend_refresh_callback = Ptr C'git_odb_backend -> IO CInt type F'git_odb_backend_foreach_callback = Ptr C'git_odb_backend -> C'git_odb_foreach_cb -> Ptr () -> IO CInt type F'git_odb_backend_writepack_callback = Ptr (Ptr C'git_odb_writepack) -> Ptr C'git_odb_backend -> C'git_transfer_progress_callback -> Ptr () -> IO CInt type F'git_odb_backend_free_callback = Ptr C'git_odb_backend -> IO () type F'git_odb_writepack_add_callback = Ptr C'git_odb_writepack -> Ptr () -> CSize -> Ptr C'git_transfer_progress -> IO CInt type F'git_odb_writepack_commit_callback = Ptr C'git_odb_writepack -> Ptr C'git_transfer_progress -> IO CInt type F'git_odb_writepack_free_callback = Ptr C'git_odb_writepack -> IO () module Git.Libgit2.Trace data TraceBackend TraceBackend :: C'git_odb_backend -> Ptr C'git_odb_backend -> TraceBackend traceParent :: TraceBackend -> C'git_odb_backend traceNext :: TraceBackend -> Ptr C'git_odb_backend oidToStr :: Ptr C'git_oid -> Int -> IO String traceBackendReadCallback :: F'git_odb_backend_read_callback traceBackendReadPrefixCallback :: F'git_odb_backend_read_prefix_callback traceBackendReadHeaderCallback :: F'git_odb_backend_read_header_callback traceBackendWriteCallback :: F'git_odb_backend_write_callback traceBackendExistsCallback :: F'git_odb_backend_exists_callback traceBackendFreeCallback :: F'git_odb_backend_free_callback traceBackendFreeCallbackPtr :: FunPtr F'git_odb_backend_free_callback traceBackend :: Ptr C'git_odb_backend -> IO (Ptr C'git_odb_backend) instance Storable TraceBackend module Git.Libgit2.Internal addTracingBackend :: LgRepo -> IO () coidPtrToOid :: Ptr C'git_oid -> IO (ForeignPtr C'git_oid) lookupObject' :: (MonadGit LgRepo m, MonadBaseControl IO m) => ForeignPtr C'git_oid -> Int -> (Ptr (Ptr a) -> Ptr C'git_repository -> Ptr C'git_oid -> IO CInt) -> (Ptr (Ptr a) -> Ptr C'git_repository -> Ptr C'git_oid -> CSize -> IO CInt) -> (ForeignPtr C'git_oid -> ForeignPtr a -> Ptr a -> m b) -> m b peekGitTime :: Ptr C'git_time -> IO ZonedTime packGitTime :: ZonedTime -> C'git_time packSignature :: Converter -> Ptr C'git_signature -> IO Signature withSignature :: Converter -> Signature -> (Ptr C'git_signature -> IO a) -> IO a oidToStr :: Ptr C'git_oid -> Int -> IO String -- | 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. module Git.Libgit2 type MonadLg m = (Applicative m, MonadExcept m, MonadIO m, MonadBaseControl IO m, MonadLogger m) data LgRepo LgRepo :: RepositoryOptions -> ForeignPtr C'git_repository -> IORef (Maybe GitException) -> LgRepo repoOptions :: LgRepo -> RepositoryOptions repoObj :: LgRepo -> ForeignPtr C'git_repository repoExcTrap :: LgRepo -> IORef (Maybe GitException) type BlobOid = BlobOid LgRepo type Commit = Commit LgRepo type CommitOid = CommitOid LgRepo data OidPtr OidPtr :: ForeignPtr C'git_oid -> Int -> OidPtr getOid :: OidPtr -> ForeignPtr C'git_oid getOidLen :: OidPtr -> Int mkOid :: ForeignPtr C'git_oid -> OidPtr type Tree = Tree LgRepo type TreeOid = TreeOid LgRepo lgRepoPath :: LgRepo -> FilePath addTracingBackend :: LgRepo -> IO () checkResult :: (Eq a, Num a, MonadExcept m) => a -> Text -> m () lgBuildPackIndex :: (MonadIO m, MonadBaseControl IO m, MonadLogger m) => FilePath -> ByteString -> m (Text, FilePath, FilePath) lgFactory :: MonadIO m => RepositoryFactory (ReaderT LgRepo (NoLoggingT m)) m LgRepo lgFactoryLogger :: (MonadIO m, MonadLogger m) => RepositoryFactory (ReaderT LgRepo m) m LgRepo lgForEachObject :: Ptr C'git_odb -> (Ptr C'git_oid -> Ptr () -> IO CInt) -> Ptr () -> IO CInt lgExcTrap :: MonadLg m => ReaderT LgRepo m (IORef (Maybe GitException)) lgBuildPackFile :: MonadLg m => FilePath -> [Either CommitOid TreeOid] -> ReaderT LgRepo m FilePath lgReadFromPack :: (MonadBaseControl IO m, MonadIO m, MonadLogger m, MonadExcept m) => Ptr C'git_odb -> SHA -> Bool -> m (Maybe (C'git_otype, CSize, ByteString)) lgOpenPackFile :: (MonadBaseControl IO m, MonadIO m, MonadLogger m, MonadExcept m) => FilePath -> m (Ptr C'git_odb) lgClosePackFile :: (MonadBaseControl IO m, MonadIO m, MonadLogger m, MonadExcept m) => Ptr C'git_odb -> m () lgWithPackFile :: (MonadBaseControl IO m, MonadIO m, MonadLogger m, MonadExcept m) => FilePath -> (Ptr C'git_odb -> m a) -> m a lgCopyPackFile :: MonadLg m => FilePath -> ReaderT LgRepo m () lgDiffContentsWithTree :: MonadLg m => Source (ReaderT LgRepo m) (Either TreeFilePath (Either SHA ByteString)) -> Tree -> Producer (ReaderT LgRepo m) ByteString lgWrap :: MonadLg m => ReaderT LgRepo m a -> ReaderT LgRepo m a oidToSha :: Ptr C'git_oid -> IO SHA shaToCOid :: SHA -> IO (ForeignPtr C'git_oid) shaToOid :: SHA -> IO OidPtr openLgRepository :: MonadIO m => RepositoryOptions -> m LgRepo runLgRepository :: LgRepo -> ReaderT LgRepo m a -> m a lgDebug :: MonadLogger m => String -> m () lgWarn :: MonadLogger m => String -> m () instance Show ListFlags instance Eq ListFlags instance (Applicative m, MonadExcept m, MonadBaseControl IO m, MonadIO m, MonadLogger m) => MonadGit LgRepo (ReaderT LgRepo m) instance Eq OidPtr instance Ord OidPtr instance Show OidPtr instance IsOid OidPtr