{-# LINE 1 "Bindings/Libgit2/Repository.hsc" #-}

{-# LINE 2 "Bindings/Libgit2/Repository.hsc" #-}

{-# LINE 3 "Bindings/Libgit2/Repository.hsc" #-}

{-# LINE 4 "Bindings/Libgit2/Repository.hsc" #-}
module Bindings.Libgit2.Repository where
import Foreign.Ptr (Ptr,FunPtr,plusPtr)
import Foreign.Ptr (wordPtrToPtr,castPtrToFunPtr)
import Foreign.Storable
import Foreign.C.Types
import Foreign.C.String (CString,CStringLen,CWString,CWStringLen)
import Foreign.Marshal.Alloc (alloca)
import Foreign.Marshal.Array (peekArray,pokeArray)
import Data.Int
import Data.Word

{-# LINE 6 "Bindings/Libgit2/Repository.hsc" #-}

import Bindings.Libgit2.Common
import Bindings.Libgit2.Types
import Bindings.Libgit2.Oid
foreign import ccall "git_repository_open" c'git_repository_open
  :: Ptr (Ptr C'git_repository) -> CString -> IO (CInt)
foreign import ccall "&git_repository_open" p'git_repository_open
  :: FunPtr (Ptr (Ptr C'git_repository) -> CString -> IO (CInt))

{-# LINE 11 "Bindings/Libgit2/Repository.hsc" #-}
foreign import ccall "git_repository_open2" c'git_repository_open2
  :: Ptr (Ptr C'git_repository) -> CString -> CString -> CString -> CString -> IO (CInt)
foreign import ccall "&git_repository_open2" p'git_repository_open2
  :: FunPtr (Ptr (Ptr C'git_repository) -> CString -> CString -> CString -> CString -> IO (CInt))

{-# LINE 12 "Bindings/Libgit2/Repository.hsc" #-}
foreign import ccall "git_repository_open3" c'git_repository_open3
  :: Ptr (Ptr C'git_repository) -> CString -> Ptr C'git_odb -> CString -> CString -> IO (CInt)
foreign import ccall "&git_repository_open3" p'git_repository_open3
  :: FunPtr (Ptr (Ptr C'git_repository) -> CString -> Ptr C'git_odb -> CString -> CString -> IO (CInt))

{-# LINE 13 "Bindings/Libgit2/Repository.hsc" #-}
foreign import ccall "git_repository_database" c'git_repository_database
  :: Ptr C'git_repository -> IO (Ptr C'git_odb)
foreign import ccall "&git_repository_database" p'git_repository_database
  :: FunPtr (Ptr C'git_repository -> IO (Ptr C'git_odb))

{-# LINE 14 "Bindings/Libgit2/Repository.hsc" #-}
foreign import ccall "git_repository_index" c'git_repository_index
  :: Ptr (Ptr C'git_index) -> Ptr C'git_repository -> IO (CInt)
foreign import ccall "&git_repository_index" p'git_repository_index
  :: FunPtr (Ptr (Ptr C'git_index) -> Ptr C'git_repository -> IO (CInt))

{-# LINE 15 "Bindings/Libgit2/Repository.hsc" #-}
foreign import ccall "git_repository_free" c'git_repository_free
  :: Ptr C'git_repository -> IO ()
foreign import ccall "&git_repository_free" p'git_repository_free
  :: FunPtr (Ptr C'git_repository -> IO ())

{-# LINE 16 "Bindings/Libgit2/Repository.hsc" #-}
foreign import ccall "git_repository_gc" c'git_repository_gc
  :: Ptr C'git_repository -> IO (CInt)
foreign import ccall "&git_repository_gc" p'git_repository_gc
  :: FunPtr (Ptr C'git_repository -> IO (CInt))

{-# LINE 17 "Bindings/Libgit2/Repository.hsc" #-}
foreign import ccall "git_repository_init" c'git_repository_init
  :: Ptr (Ptr C'git_repository) -> CString -> CUInt -> IO (CInt)
foreign import ccall "&git_repository_init" p'git_repository_init
  :: FunPtr (Ptr (Ptr C'git_repository) -> CString -> CUInt -> IO (CInt))

{-# LINE 18 "Bindings/Libgit2/Repository.hsc" #-}