#define ENABLE_OVERLOADING (MIN_VERSION_haskell_gi_overloading(1,0,0) \
&& !defined(__HADDOCK_VERSION__))
module GI.Ggit.Structs.MergeOptions
(
MergeOptions(..) ,
noMergeOptions ,
#if ENABLE_OVERLOADING
MergeOptionsCopyMethodInfo ,
#endif
mergeOptionsCopy ,
#if ENABLE_OVERLOADING
MergeOptionsFreeMethodInfo ,
#endif
mergeOptionsFree ,
#if ENABLE_OVERLOADING
MergeOptionsGetFileFavorMethodInfo ,
#endif
mergeOptionsGetFileFavor ,
#if ENABLE_OVERLOADING
MergeOptionsGetFileFlagsMethodInfo ,
#endif
mergeOptionsGetFileFlags ,
#if ENABLE_OVERLOADING
MergeOptionsGetFlagsMethodInfo ,
#endif
mergeOptionsGetFlags ,
#if ENABLE_OVERLOADING
MergeOptionsGetRenameThresholdMethodInfo,
#endif
mergeOptionsGetRenameThreshold ,
#if ENABLE_OVERLOADING
MergeOptionsGetSimilarityMetricMethodInfo,
#endif
mergeOptionsGetSimilarityMetric ,
#if ENABLE_OVERLOADING
MergeOptionsGetTargetLimitMethodInfo ,
#endif
mergeOptionsGetTargetLimit ,
mergeOptionsNew ,
#if ENABLE_OVERLOADING
MergeOptionsSetFileFavorMethodInfo ,
#endif
mergeOptionsSetFileFavor ,
#if ENABLE_OVERLOADING
MergeOptionsSetFileFlagsMethodInfo ,
#endif
mergeOptionsSetFileFlags ,
#if ENABLE_OVERLOADING
MergeOptionsSetFlagsMethodInfo ,
#endif
mergeOptionsSetFlags ,
#if ENABLE_OVERLOADING
MergeOptionsSetRenameThresholdMethodInfo,
#endif
mergeOptionsSetRenameThreshold ,
#if ENABLE_OVERLOADING
MergeOptionsSetSimilarityMetricMethodInfo,
#endif
mergeOptionsSetSimilarityMetric ,
#if ENABLE_OVERLOADING
MergeOptionsSetTargetLimitMethodInfo ,
#endif
mergeOptionsSetTargetLimit ,
) 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.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.Text as T
import qualified Data.ByteString.Char8 as B
import qualified Data.Map as Map
import qualified Foreign.Ptr as FP
import {-# SOURCE #-} qualified GI.Ggit.Enums as Ggit.Enums
import {-# SOURCE #-} qualified GI.Ggit.Flags as Ggit.Flags
import {-# SOURCE #-} qualified GI.Ggit.Structs.DiffSimilarityMetric as Ggit.DiffSimilarityMetric
newtype MergeOptions = MergeOptions (ManagedPtr MergeOptions)
foreign import ccall "ggit_merge_options_get_type" c_ggit_merge_options_get_type ::
IO GType
instance BoxedObject MergeOptions where
boxedType _ = c_ggit_merge_options_get_type
noMergeOptions :: Maybe MergeOptions
noMergeOptions = Nothing
#if ENABLE_OVERLOADING
instance O.HasAttributeList MergeOptions
type instance O.AttributeList MergeOptions = MergeOptionsAttributeList
type MergeOptionsAttributeList = ('[ ] :: [(Symbol, *)])
#endif
foreign import ccall "ggit_merge_options_new" ggit_merge_options_new ::
IO (Ptr MergeOptions)
mergeOptionsNew ::
(B.CallStack.HasCallStack, MonadIO m) =>
m MergeOptions
mergeOptionsNew = liftIO $ do
result <- ggit_merge_options_new
checkUnexpectedReturnNULL "mergeOptionsNew" result
result' <- (wrapBoxed MergeOptions) result
return result'
#if ENABLE_OVERLOADING
#endif
foreign import ccall "ggit_merge_options_copy" ggit_merge_options_copy ::
Ptr MergeOptions ->
IO (Ptr MergeOptions)
mergeOptionsCopy ::
(B.CallStack.HasCallStack, MonadIO m) =>
MergeOptions
-> m (Maybe MergeOptions)
mergeOptionsCopy mergeOptions = liftIO $ do
mergeOptions' <- unsafeManagedPtrGetPtr mergeOptions
result <- ggit_merge_options_copy mergeOptions'
maybeResult <- convertIfNonNull result $ \result' -> do
result'' <- (wrapBoxed MergeOptions) result'
return result''
touchManagedPtr mergeOptions
return maybeResult
#if ENABLE_OVERLOADING
data MergeOptionsCopyMethodInfo
instance (signature ~ (m (Maybe MergeOptions)), MonadIO m) => O.MethodInfo MergeOptionsCopyMethodInfo MergeOptions signature where
overloadedMethod _ = mergeOptionsCopy
#endif
foreign import ccall "ggit_merge_options_free" ggit_merge_options_free ::
Ptr MergeOptions ->
IO ()
mergeOptionsFree ::
(B.CallStack.HasCallStack, MonadIO m) =>
MergeOptions
-> m ()
mergeOptionsFree mergeOptions = liftIO $ do
mergeOptions' <- unsafeManagedPtrGetPtr mergeOptions
ggit_merge_options_free mergeOptions'
touchManagedPtr mergeOptions
return ()
#if ENABLE_OVERLOADING
data MergeOptionsFreeMethodInfo
instance (signature ~ (m ()), MonadIO m) => O.MethodInfo MergeOptionsFreeMethodInfo MergeOptions signature where
overloadedMethod _ = mergeOptionsFree
#endif
foreign import ccall "ggit_merge_options_get_file_favor" ggit_merge_options_get_file_favor ::
Ptr MergeOptions ->
IO CUInt
mergeOptionsGetFileFavor ::
(B.CallStack.HasCallStack, MonadIO m) =>
MergeOptions
-> m Ggit.Enums.MergeFileFavor
mergeOptionsGetFileFavor mergeOptions = liftIO $ do
mergeOptions' <- unsafeManagedPtrGetPtr mergeOptions
result <- ggit_merge_options_get_file_favor mergeOptions'
let result' = (toEnum . fromIntegral) result
touchManagedPtr mergeOptions
return result'
#if ENABLE_OVERLOADING
data MergeOptionsGetFileFavorMethodInfo
instance (signature ~ (m Ggit.Enums.MergeFileFavor), MonadIO m) => O.MethodInfo MergeOptionsGetFileFavorMethodInfo MergeOptions signature where
overloadedMethod _ = mergeOptionsGetFileFavor
#endif
foreign import ccall "ggit_merge_options_get_file_flags" ggit_merge_options_get_file_flags ::
Ptr MergeOptions ->
IO CUInt
mergeOptionsGetFileFlags ::
(B.CallStack.HasCallStack, MonadIO m) =>
MergeOptions
-> m [Ggit.Flags.MergeFileFlags]
mergeOptionsGetFileFlags mergeOptions = liftIO $ do
mergeOptions' <- unsafeManagedPtrGetPtr mergeOptions
result <- ggit_merge_options_get_file_flags mergeOptions'
let result' = wordToGFlags result
touchManagedPtr mergeOptions
return result'
#if ENABLE_OVERLOADING
data MergeOptionsGetFileFlagsMethodInfo
instance (signature ~ (m [Ggit.Flags.MergeFileFlags]), MonadIO m) => O.MethodInfo MergeOptionsGetFileFlagsMethodInfo MergeOptions signature where
overloadedMethod _ = mergeOptionsGetFileFlags
#endif
foreign import ccall "ggit_merge_options_get_flags" ggit_merge_options_get_flags ::
Ptr MergeOptions ->
IO CUInt
mergeOptionsGetFlags ::
(B.CallStack.HasCallStack, MonadIO m) =>
MergeOptions
-> m [Ggit.Flags.MergeFlags]
mergeOptionsGetFlags mergeOptions = liftIO $ do
mergeOptions' <- unsafeManagedPtrGetPtr mergeOptions
result <- ggit_merge_options_get_flags mergeOptions'
let result' = wordToGFlags result
touchManagedPtr mergeOptions
return result'
#if ENABLE_OVERLOADING
data MergeOptionsGetFlagsMethodInfo
instance (signature ~ (m [Ggit.Flags.MergeFlags]), MonadIO m) => O.MethodInfo MergeOptionsGetFlagsMethodInfo MergeOptions signature where
overloadedMethod _ = mergeOptionsGetFlags
#endif
foreign import ccall "ggit_merge_options_get_rename_threshold" ggit_merge_options_get_rename_threshold ::
Ptr MergeOptions ->
IO Word32
mergeOptionsGetRenameThreshold ::
(B.CallStack.HasCallStack, MonadIO m) =>
MergeOptions
-> m Word32
mergeOptionsGetRenameThreshold mergeOptions = liftIO $ do
mergeOptions' <- unsafeManagedPtrGetPtr mergeOptions
result <- ggit_merge_options_get_rename_threshold mergeOptions'
touchManagedPtr mergeOptions
return result
#if ENABLE_OVERLOADING
data MergeOptionsGetRenameThresholdMethodInfo
instance (signature ~ (m Word32), MonadIO m) => O.MethodInfo MergeOptionsGetRenameThresholdMethodInfo MergeOptions signature where
overloadedMethod _ = mergeOptionsGetRenameThreshold
#endif
foreign import ccall "ggit_merge_options_get_similarity_metric" ggit_merge_options_get_similarity_metric ::
Ptr MergeOptions ->
IO (Ptr Ggit.DiffSimilarityMetric.DiffSimilarityMetric)
mergeOptionsGetSimilarityMetric ::
(B.CallStack.HasCallStack, MonadIO m) =>
MergeOptions
-> m (Maybe Ggit.DiffSimilarityMetric.DiffSimilarityMetric)
mergeOptionsGetSimilarityMetric mergeOptions = liftIO $ do
mergeOptions' <- unsafeManagedPtrGetPtr mergeOptions
result <- ggit_merge_options_get_similarity_metric mergeOptions'
maybeResult <- convertIfNonNull result $ \result' -> do
result'' <- (newBoxed Ggit.DiffSimilarityMetric.DiffSimilarityMetric) result'
return result''
touchManagedPtr mergeOptions
return maybeResult
#if ENABLE_OVERLOADING
data MergeOptionsGetSimilarityMetricMethodInfo
instance (signature ~ (m (Maybe Ggit.DiffSimilarityMetric.DiffSimilarityMetric)), MonadIO m) => O.MethodInfo MergeOptionsGetSimilarityMetricMethodInfo MergeOptions signature where
overloadedMethod _ = mergeOptionsGetSimilarityMetric
#endif
foreign import ccall "ggit_merge_options_get_target_limit" ggit_merge_options_get_target_limit ::
Ptr MergeOptions ->
IO Word32
mergeOptionsGetTargetLimit ::
(B.CallStack.HasCallStack, MonadIO m) =>
MergeOptions
-> m Word32
mergeOptionsGetTargetLimit mergeOptions = liftIO $ do
mergeOptions' <- unsafeManagedPtrGetPtr mergeOptions
result <- ggit_merge_options_get_target_limit mergeOptions'
touchManagedPtr mergeOptions
return result
#if ENABLE_OVERLOADING
data MergeOptionsGetTargetLimitMethodInfo
instance (signature ~ (m Word32), MonadIO m) => O.MethodInfo MergeOptionsGetTargetLimitMethodInfo MergeOptions signature where
overloadedMethod _ = mergeOptionsGetTargetLimit
#endif
foreign import ccall "ggit_merge_options_set_file_favor" ggit_merge_options_set_file_favor ::
Ptr MergeOptions ->
CUInt ->
IO ()
mergeOptionsSetFileFavor ::
(B.CallStack.HasCallStack, MonadIO m) =>
MergeOptions
-> Ggit.Enums.MergeFileFavor
-> m ()
mergeOptionsSetFileFavor mergeOptions fileFavor = liftIO $ do
mergeOptions' <- unsafeManagedPtrGetPtr mergeOptions
let fileFavor' = (fromIntegral . fromEnum) fileFavor
ggit_merge_options_set_file_favor mergeOptions' fileFavor'
touchManagedPtr mergeOptions
return ()
#if ENABLE_OVERLOADING
data MergeOptionsSetFileFavorMethodInfo
instance (signature ~ (Ggit.Enums.MergeFileFavor -> m ()), MonadIO m) => O.MethodInfo MergeOptionsSetFileFavorMethodInfo MergeOptions signature where
overloadedMethod _ = mergeOptionsSetFileFavor
#endif
foreign import ccall "ggit_merge_options_set_file_flags" ggit_merge_options_set_file_flags ::
Ptr MergeOptions ->
CUInt ->
IO ()
mergeOptionsSetFileFlags ::
(B.CallStack.HasCallStack, MonadIO m) =>
MergeOptions
-> [Ggit.Flags.MergeFileFlags]
-> m ()
mergeOptionsSetFileFlags mergeOptions fileFlags = liftIO $ do
mergeOptions' <- unsafeManagedPtrGetPtr mergeOptions
let fileFlags' = gflagsToWord fileFlags
ggit_merge_options_set_file_flags mergeOptions' fileFlags'
touchManagedPtr mergeOptions
return ()
#if ENABLE_OVERLOADING
data MergeOptionsSetFileFlagsMethodInfo
instance (signature ~ ([Ggit.Flags.MergeFileFlags] -> m ()), MonadIO m) => O.MethodInfo MergeOptionsSetFileFlagsMethodInfo MergeOptions signature where
overloadedMethod _ = mergeOptionsSetFileFlags
#endif
foreign import ccall "ggit_merge_options_set_flags" ggit_merge_options_set_flags ::
Ptr MergeOptions ->
CUInt ->
IO ()
mergeOptionsSetFlags ::
(B.CallStack.HasCallStack, MonadIO m) =>
MergeOptions
-> [Ggit.Flags.MergeFlags]
-> m ()
mergeOptionsSetFlags mergeOptions flags = liftIO $ do
mergeOptions' <- unsafeManagedPtrGetPtr mergeOptions
let flags' = gflagsToWord flags
ggit_merge_options_set_flags mergeOptions' flags'
touchManagedPtr mergeOptions
return ()
#if ENABLE_OVERLOADING
data MergeOptionsSetFlagsMethodInfo
instance (signature ~ ([Ggit.Flags.MergeFlags] -> m ()), MonadIO m) => O.MethodInfo MergeOptionsSetFlagsMethodInfo MergeOptions signature where
overloadedMethod _ = mergeOptionsSetFlags
#endif
foreign import ccall "ggit_merge_options_set_rename_threshold" ggit_merge_options_set_rename_threshold ::
Ptr MergeOptions ->
Word32 ->
IO ()
mergeOptionsSetRenameThreshold ::
(B.CallStack.HasCallStack, MonadIO m) =>
MergeOptions
-> Word32
-> m ()
mergeOptionsSetRenameThreshold mergeOptions renameThreshold = liftIO $ do
mergeOptions' <- unsafeManagedPtrGetPtr mergeOptions
ggit_merge_options_set_rename_threshold mergeOptions' renameThreshold
touchManagedPtr mergeOptions
return ()
#if ENABLE_OVERLOADING
data MergeOptionsSetRenameThresholdMethodInfo
instance (signature ~ (Word32 -> m ()), MonadIO m) => O.MethodInfo MergeOptionsSetRenameThresholdMethodInfo MergeOptions signature where
overloadedMethod _ = mergeOptionsSetRenameThreshold
#endif
foreign import ccall "ggit_merge_options_set_similarity_metric" ggit_merge_options_set_similarity_metric ::
Ptr MergeOptions ->
Ptr Ggit.DiffSimilarityMetric.DiffSimilarityMetric ->
IO ()
mergeOptionsSetSimilarityMetric ::
(B.CallStack.HasCallStack, MonadIO m) =>
MergeOptions
-> Ggit.DiffSimilarityMetric.DiffSimilarityMetric
-> m ()
mergeOptionsSetSimilarityMetric mergeOptions metric = liftIO $ do
mergeOptions' <- unsafeManagedPtrGetPtr mergeOptions
metric' <- unsafeManagedPtrGetPtr metric
ggit_merge_options_set_similarity_metric mergeOptions' metric'
touchManagedPtr mergeOptions
touchManagedPtr metric
return ()
#if ENABLE_OVERLOADING
data MergeOptionsSetSimilarityMetricMethodInfo
instance (signature ~ (Ggit.DiffSimilarityMetric.DiffSimilarityMetric -> m ()), MonadIO m) => O.MethodInfo MergeOptionsSetSimilarityMetricMethodInfo MergeOptions signature where
overloadedMethod _ = mergeOptionsSetSimilarityMetric
#endif
foreign import ccall "ggit_merge_options_set_target_limit" ggit_merge_options_set_target_limit ::
Ptr MergeOptions ->
Word32 ->
IO ()
mergeOptionsSetTargetLimit ::
(B.CallStack.HasCallStack, MonadIO m) =>
MergeOptions
-> Word32
-> m ()
mergeOptionsSetTargetLimit mergeOptions targetLimit = liftIO $ do
mergeOptions' <- unsafeManagedPtrGetPtr mergeOptions
ggit_merge_options_set_target_limit mergeOptions' targetLimit
touchManagedPtr mergeOptions
return ()
#if ENABLE_OVERLOADING
data MergeOptionsSetTargetLimitMethodInfo
instance (signature ~ (Word32 -> m ()), MonadIO m) => O.MethodInfo MergeOptionsSetTargetLimitMethodInfo MergeOptions signature where
overloadedMethod _ = mergeOptionsSetTargetLimit
#endif
#if ENABLE_OVERLOADING
type family ResolveMergeOptionsMethod (t :: Symbol) (o :: *) :: * where
ResolveMergeOptionsMethod "copy" o = MergeOptionsCopyMethodInfo
ResolveMergeOptionsMethod "free" o = MergeOptionsFreeMethodInfo
ResolveMergeOptionsMethod "getFileFavor" o = MergeOptionsGetFileFavorMethodInfo
ResolveMergeOptionsMethod "getFileFlags" o = MergeOptionsGetFileFlagsMethodInfo
ResolveMergeOptionsMethod "getFlags" o = MergeOptionsGetFlagsMethodInfo
ResolveMergeOptionsMethod "getRenameThreshold" o = MergeOptionsGetRenameThresholdMethodInfo
ResolveMergeOptionsMethod "getSimilarityMetric" o = MergeOptionsGetSimilarityMetricMethodInfo
ResolveMergeOptionsMethod "getTargetLimit" o = MergeOptionsGetTargetLimitMethodInfo
ResolveMergeOptionsMethod "setFileFavor" o = MergeOptionsSetFileFavorMethodInfo
ResolveMergeOptionsMethod "setFileFlags" o = MergeOptionsSetFileFlagsMethodInfo
ResolveMergeOptionsMethod "setFlags" o = MergeOptionsSetFlagsMethodInfo
ResolveMergeOptionsMethod "setRenameThreshold" o = MergeOptionsSetRenameThresholdMethodInfo
ResolveMergeOptionsMethod "setSimilarityMetric" o = MergeOptionsSetSimilarityMetricMethodInfo
ResolveMergeOptionsMethod "setTargetLimit" o = MergeOptionsSetTargetLimitMethodInfo
ResolveMergeOptionsMethod l o = O.MethodResolutionFailed l o
instance (info ~ ResolveMergeOptionsMethod t MergeOptions, O.MethodInfo info MergeOptions p) => O.IsLabelProxy t (MergeOptions -> p) where
fromLabelProxy _ = O.overloadedMethod (O.MethodProxy :: O.MethodProxy info)
#if MIN_VERSION_base(4,9,0)
instance (info ~ ResolveMergeOptionsMethod t MergeOptions, O.MethodInfo info MergeOptions p) => O.IsLabel t (MergeOptions -> 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
#endif