{-# LANGUAGE TypeApplications #-}
#if (MIN_VERSION_haskell_gi_overloading(1,0,0) && !defined(__HADDOCK_VERSION__))
#define ENABLE_OVERLOADING
#endif
module GI.Ggit.Structs.IndexEntriesResolveUndo
(
IndexEntriesResolveUndo(..) ,
noIndexEntriesResolveUndo ,
#if defined(ENABLE_OVERLOADING)
ResolveIndexEntriesResolveUndoMethod ,
#endif
#if defined(ENABLE_OVERLOADING)
IndexEntriesResolveUndoGetMethodInfo ,
#endif
indexEntriesResolveUndoGet ,
#if defined(ENABLE_OVERLOADING)
IndexEntriesResolveUndoGetByFileMethodInfo,
#endif
indexEntriesResolveUndoGetByFile ,
#if defined(ENABLE_OVERLOADING)
IndexEntriesResolveUndoRefMethodInfo ,
#endif
indexEntriesResolveUndoRef ,
#if defined(ENABLE_OVERLOADING)
IndexEntriesResolveUndoSizeMethodInfo ,
#endif
indexEntriesResolveUndoSize ,
#if defined(ENABLE_OVERLOADING)
IndexEntriesResolveUndoUnrefMethodInfo ,
#endif
indexEntriesResolveUndoUnref ,
) 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.GI.Base.Signals as B.Signals
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.Structs.IndexEntryResolveUndo as Ggit.IndexEntryResolveUndo
import qualified GI.Gio.Interfaces.File as Gio.File
newtype IndexEntriesResolveUndo = IndexEntriesResolveUndo (ManagedPtr IndexEntriesResolveUndo)
deriving (Eq)
foreign import ccall "ggit_index_entries_resolve_undo_get_type" c_ggit_index_entries_resolve_undo_get_type ::
IO GType
instance BoxedObject IndexEntriesResolveUndo where
boxedType _ = c_ggit_index_entries_resolve_undo_get_type
instance B.GValue.IsGValue IndexEntriesResolveUndo where
toGValue o = do
gtype <- c_ggit_index_entries_resolve_undo_get_type
B.ManagedPtr.withManagedPtr o (B.GValue.buildGValue gtype B.GValue.set_boxed)
fromGValue gv = do
ptr <- B.GValue.get_boxed gv :: IO (Ptr IndexEntriesResolveUndo)
B.ManagedPtr.newBoxed IndexEntriesResolveUndo ptr
noIndexEntriesResolveUndo :: Maybe IndexEntriesResolveUndo
noIndexEntriesResolveUndo = Nothing
#if defined(ENABLE_OVERLOADING)
instance O.HasAttributeList IndexEntriesResolveUndo
type instance O.AttributeList IndexEntriesResolveUndo = IndexEntriesResolveUndoAttributeList
type IndexEntriesResolveUndoAttributeList = ('[ ] :: [(Symbol, *)])
#endif
foreign import ccall "ggit_index_entries_resolve_undo_get" ggit_index_entries_resolve_undo_get ::
Ptr IndexEntriesResolveUndo ->
Word32 ->
IO (Ptr Ggit.IndexEntryResolveUndo.IndexEntryResolveUndo)
indexEntriesResolveUndoGet ::
(B.CallStack.HasCallStack, MonadIO m) =>
IndexEntriesResolveUndo
-> Word32
-> m (Maybe Ggit.IndexEntryResolveUndo.IndexEntryResolveUndo)
indexEntriesResolveUndoGet entries idx = liftIO $ do
entries' <- unsafeManagedPtrGetPtr entries
result <- ggit_index_entries_resolve_undo_get entries' idx
maybeResult <- convertIfNonNull result $ \result' -> do
result'' <- (wrapBoxed Ggit.IndexEntryResolveUndo.IndexEntryResolveUndo) result'
return result''
touchManagedPtr entries
return maybeResult
#if defined(ENABLE_OVERLOADING)
data IndexEntriesResolveUndoGetMethodInfo
instance (signature ~ (Word32 -> m (Maybe Ggit.IndexEntryResolveUndo.IndexEntryResolveUndo)), MonadIO m) => O.MethodInfo IndexEntriesResolveUndoGetMethodInfo IndexEntriesResolveUndo signature where
overloadedMethod = indexEntriesResolveUndoGet
#endif
foreign import ccall "ggit_index_entries_resolve_undo_get_by_file" ggit_index_entries_resolve_undo_get_by_file ::
Ptr IndexEntriesResolveUndo ->
Ptr Gio.File.File ->
IO (Ptr Ggit.IndexEntryResolveUndo.IndexEntryResolveUndo)
indexEntriesResolveUndoGetByFile ::
(B.CallStack.HasCallStack, MonadIO m, Gio.File.IsFile a) =>
IndexEntriesResolveUndo
-> a
-> m (Maybe Ggit.IndexEntryResolveUndo.IndexEntryResolveUndo)
indexEntriesResolveUndoGetByFile entries file = liftIO $ do
entries' <- unsafeManagedPtrGetPtr entries
file' <- unsafeManagedPtrCastPtr file
result <- ggit_index_entries_resolve_undo_get_by_file entries' file'
maybeResult <- convertIfNonNull result $ \result' -> do
result'' <- (wrapBoxed Ggit.IndexEntryResolveUndo.IndexEntryResolveUndo) result'
return result''
touchManagedPtr entries
touchManagedPtr file
return maybeResult
#if defined(ENABLE_OVERLOADING)
data IndexEntriesResolveUndoGetByFileMethodInfo
instance (signature ~ (a -> m (Maybe Ggit.IndexEntryResolveUndo.IndexEntryResolveUndo)), MonadIO m, Gio.File.IsFile a) => O.MethodInfo IndexEntriesResolveUndoGetByFileMethodInfo IndexEntriesResolveUndo signature where
overloadedMethod = indexEntriesResolveUndoGetByFile
#endif
foreign import ccall "ggit_index_entries_resolve_undo_ref" ggit_index_entries_resolve_undo_ref ::
Ptr IndexEntriesResolveUndo ->
IO (Ptr IndexEntriesResolveUndo)
indexEntriesResolveUndoRef ::
(B.CallStack.HasCallStack, MonadIO m) =>
IndexEntriesResolveUndo
-> m (Maybe IndexEntriesResolveUndo)
indexEntriesResolveUndoRef entries = liftIO $ do
entries' <- unsafeManagedPtrGetPtr entries
result <- ggit_index_entries_resolve_undo_ref entries'
maybeResult <- convertIfNonNull result $ \result' -> do
result'' <- (newBoxed IndexEntriesResolveUndo) result'
return result''
touchManagedPtr entries
return maybeResult
#if defined(ENABLE_OVERLOADING)
data IndexEntriesResolveUndoRefMethodInfo
instance (signature ~ (m (Maybe IndexEntriesResolveUndo)), MonadIO m) => O.MethodInfo IndexEntriesResolveUndoRefMethodInfo IndexEntriesResolveUndo signature where
overloadedMethod = indexEntriesResolveUndoRef
#endif
foreign import ccall "ggit_index_entries_resolve_undo_size" ggit_index_entries_resolve_undo_size ::
Ptr IndexEntriesResolveUndo ->
IO Word32
indexEntriesResolveUndoSize ::
(B.CallStack.HasCallStack, MonadIO m) =>
IndexEntriesResolveUndo
-> m Word32
indexEntriesResolveUndoSize entries = liftIO $ do
entries' <- unsafeManagedPtrGetPtr entries
result <- ggit_index_entries_resolve_undo_size entries'
touchManagedPtr entries
return result
#if defined(ENABLE_OVERLOADING)
data IndexEntriesResolveUndoSizeMethodInfo
instance (signature ~ (m Word32), MonadIO m) => O.MethodInfo IndexEntriesResolveUndoSizeMethodInfo IndexEntriesResolveUndo signature where
overloadedMethod = indexEntriesResolveUndoSize
#endif
foreign import ccall "ggit_index_entries_resolve_undo_unref" ggit_index_entries_resolve_undo_unref ::
Ptr IndexEntriesResolveUndo ->
IO ()
indexEntriesResolveUndoUnref ::
(B.CallStack.HasCallStack, MonadIO m) =>
IndexEntriesResolveUndo
-> m ()
indexEntriesResolveUndoUnref entries = liftIO $ do
entries' <- unsafeManagedPtrGetPtr entries
ggit_index_entries_resolve_undo_unref entries'
touchManagedPtr entries
return ()
#if defined(ENABLE_OVERLOADING)
data IndexEntriesResolveUndoUnrefMethodInfo
instance (signature ~ (m ()), MonadIO m) => O.MethodInfo IndexEntriesResolveUndoUnrefMethodInfo IndexEntriesResolveUndo signature where
overloadedMethod = indexEntriesResolveUndoUnref
#endif
#if defined(ENABLE_OVERLOADING)
type family ResolveIndexEntriesResolveUndoMethod (t :: Symbol) (o :: *) :: * where
ResolveIndexEntriesResolveUndoMethod "get" o = IndexEntriesResolveUndoGetMethodInfo
ResolveIndexEntriesResolveUndoMethod "ref" o = IndexEntriesResolveUndoRefMethodInfo
ResolveIndexEntriesResolveUndoMethod "size" o = IndexEntriesResolveUndoSizeMethodInfo
ResolveIndexEntriesResolveUndoMethod "unref" o = IndexEntriesResolveUndoUnrefMethodInfo
ResolveIndexEntriesResolveUndoMethod "getByFile" o = IndexEntriesResolveUndoGetByFileMethodInfo
ResolveIndexEntriesResolveUndoMethod l o = O.MethodResolutionFailed l o
instance (info ~ ResolveIndexEntriesResolveUndoMethod t IndexEntriesResolveUndo, O.MethodInfo info IndexEntriesResolveUndo p) => OL.IsLabel t (IndexEntriesResolveUndo -> p) where
#if MIN_VERSION_base(4,10,0)
fromLabel = O.overloadedMethod @info
#else
fromLabel _ = O.overloadedMethod @info
#endif
#endif