#define ENABLE_OVERLOADING (MIN_VERSION_haskell_gi_overloading(1,0,0) \
&& !defined(__HADDOCK_VERSION__))
module GI.Ggit.Structs.DiffBinaryFile
(
DiffBinaryFile(..) ,
noDiffBinaryFile ,
#if ENABLE_OVERLOADING
DiffBinaryFileGetBinaryTypeMethodInfo ,
#endif
diffBinaryFileGetBinaryType ,
#if ENABLE_OVERLOADING
DiffBinaryFileGetDataMethodInfo ,
#endif
diffBinaryFileGetData ,
#if ENABLE_OVERLOADING
DiffBinaryFileGetInflatedSizeMethodInfo ,
#endif
diffBinaryFileGetInflatedSize ,
#if ENABLE_OVERLOADING
DiffBinaryFileRefMethodInfo ,
#endif
diffBinaryFileRef ,
#if ENABLE_OVERLOADING
DiffBinaryFileUnrefMethodInfo ,
#endif
diffBinaryFileUnref ,
) where
import Data.GI.Base.ShortPrelude
import qualified Data.GI.Base.ShortPrelude as SP
import qualified Data.GI.Base.Overloading as O
import qualified Prelude as P
import qualified Data.GI.Base.Attributes as GI.Attributes
import qualified Data.GI.Base.ManagedPtr as B.ManagedPtr
import qualified Data.GI.Base.GClosure as B.GClosure
import qualified Data.GI.Base.GError as B.GError
import qualified Data.GI.Base.GVariant as B.GVariant
import qualified Data.GI.Base.GValue as B.GValue
import qualified Data.GI.Base.GParamSpec as B.GParamSpec
import qualified Data.GI.Base.CallStack as B.CallStack
import qualified Data.GI.Base.Properties as B.Properties
import qualified Data.Text as T
import qualified Data.ByteString.Char8 as B
import qualified Data.Map as Map
import qualified Foreign.Ptr as FP
import qualified GHC.OverloadedLabels as OL
import {-# SOURCE #-} qualified GI.Ggit.Enums as Ggit.Enums
newtype DiffBinaryFile = DiffBinaryFile (ManagedPtr DiffBinaryFile)
foreign import ccall "ggit_diff_binary_file_get_type" c_ggit_diff_binary_file_get_type ::
IO GType
instance BoxedObject DiffBinaryFile where
boxedType _ = c_ggit_diff_binary_file_get_type
noDiffBinaryFile :: Maybe DiffBinaryFile
noDiffBinaryFile = Nothing
#if ENABLE_OVERLOADING
instance O.HasAttributeList DiffBinaryFile
type instance O.AttributeList DiffBinaryFile = DiffBinaryFileAttributeList
type DiffBinaryFileAttributeList = ('[ ] :: [(Symbol, *)])
#endif
foreign import ccall "ggit_diff_binary_file_get_binary_type" ggit_diff_binary_file_get_binary_type ::
Ptr DiffBinaryFile ->
IO CUInt
diffBinaryFileGetBinaryType ::
(B.CallStack.HasCallStack, MonadIO m) =>
DiffBinaryFile
-> m Ggit.Enums.DiffBinaryType
diffBinaryFileGetBinaryType file = liftIO $ do
file' <- unsafeManagedPtrGetPtr file
result <- ggit_diff_binary_file_get_binary_type file'
let result' = (toEnum . fromIntegral) result
touchManagedPtr file
return result'
#if ENABLE_OVERLOADING
data DiffBinaryFileGetBinaryTypeMethodInfo
instance (signature ~ (m Ggit.Enums.DiffBinaryType), MonadIO m) => O.MethodInfo DiffBinaryFileGetBinaryTypeMethodInfo DiffBinaryFile signature where
overloadedMethod _ = diffBinaryFileGetBinaryType
#endif
foreign import ccall "ggit_diff_binary_file_get_data" ggit_diff_binary_file_get_data ::
Ptr DiffBinaryFile ->
Word64 ->
IO Word8
diffBinaryFileGetData ::
(B.CallStack.HasCallStack, MonadIO m) =>
DiffBinaryFile
-> Word64
-> m Word8
diffBinaryFileGetData file size = liftIO $ do
file' <- unsafeManagedPtrGetPtr file
result <- ggit_diff_binary_file_get_data file' size
touchManagedPtr file
return result
#if ENABLE_OVERLOADING
data DiffBinaryFileGetDataMethodInfo
instance (signature ~ (Word64 -> m Word8), MonadIO m) => O.MethodInfo DiffBinaryFileGetDataMethodInfo DiffBinaryFile signature where
overloadedMethod _ = diffBinaryFileGetData
#endif
foreign import ccall "ggit_diff_binary_file_get_inflated_size" ggit_diff_binary_file_get_inflated_size ::
Ptr DiffBinaryFile ->
IO Word64
diffBinaryFileGetInflatedSize ::
(B.CallStack.HasCallStack, MonadIO m) =>
DiffBinaryFile
-> m Word64
diffBinaryFileGetInflatedSize file = liftIO $ do
file' <- unsafeManagedPtrGetPtr file
result <- ggit_diff_binary_file_get_inflated_size file'
touchManagedPtr file
return result
#if ENABLE_OVERLOADING
data DiffBinaryFileGetInflatedSizeMethodInfo
instance (signature ~ (m Word64), MonadIO m) => O.MethodInfo DiffBinaryFileGetInflatedSizeMethodInfo DiffBinaryFile signature where
overloadedMethod _ = diffBinaryFileGetInflatedSize
#endif
foreign import ccall "ggit_diff_binary_file_ref" ggit_diff_binary_file_ref ::
Ptr DiffBinaryFile ->
IO (Ptr DiffBinaryFile)
diffBinaryFileRef ::
(B.CallStack.HasCallStack, MonadIO m) =>
DiffBinaryFile
-> m DiffBinaryFile
diffBinaryFileRef file = liftIO $ do
file' <- unsafeManagedPtrGetPtr file
result <- ggit_diff_binary_file_ref file'
checkUnexpectedReturnNULL "diffBinaryFileRef" result
result' <- (wrapBoxed DiffBinaryFile) result
touchManagedPtr file
return result'
#if ENABLE_OVERLOADING
data DiffBinaryFileRefMethodInfo
instance (signature ~ (m DiffBinaryFile), MonadIO m) => O.MethodInfo DiffBinaryFileRefMethodInfo DiffBinaryFile signature where
overloadedMethod _ = diffBinaryFileRef
#endif
foreign import ccall "ggit_diff_binary_file_unref" ggit_diff_binary_file_unref ::
Ptr DiffBinaryFile ->
IO ()
diffBinaryFileUnref ::
(B.CallStack.HasCallStack, MonadIO m) =>
DiffBinaryFile
-> m ()
diffBinaryFileUnref file = liftIO $ do
file' <- unsafeManagedPtrGetPtr file
ggit_diff_binary_file_unref file'
touchManagedPtr file
return ()
#if ENABLE_OVERLOADING
data DiffBinaryFileUnrefMethodInfo
instance (signature ~ (m ()), MonadIO m) => O.MethodInfo DiffBinaryFileUnrefMethodInfo DiffBinaryFile signature where
overloadedMethod _ = diffBinaryFileUnref
#endif
#if ENABLE_OVERLOADING
type family ResolveDiffBinaryFileMethod (t :: Symbol) (o :: *) :: * where
ResolveDiffBinaryFileMethod "ref" o = DiffBinaryFileRefMethodInfo
ResolveDiffBinaryFileMethod "unref" o = DiffBinaryFileUnrefMethodInfo
ResolveDiffBinaryFileMethod "getBinaryType" o = DiffBinaryFileGetBinaryTypeMethodInfo
ResolveDiffBinaryFileMethod "getData" o = DiffBinaryFileGetDataMethodInfo
ResolveDiffBinaryFileMethod "getInflatedSize" o = DiffBinaryFileGetInflatedSizeMethodInfo
ResolveDiffBinaryFileMethod l o = O.MethodResolutionFailed l o
instance (info ~ ResolveDiffBinaryFileMethod t DiffBinaryFile, O.MethodInfo info DiffBinaryFile p) => OL.IsLabel t (DiffBinaryFile -> p) where
#if MIN_VERSION_base(4,10,0)
fromLabel = O.overloadedMethod (O.MethodProxy :: O.MethodProxy info)
#else
fromLabel _ = O.overloadedMethod (O.MethodProxy :: O.MethodProxy info)
#endif
#endif