{-# LANGUAGE ImplicitParams, RankNTypes, TypeApplications #-}
#if (MIN_VERSION_haskell_gi_overloading(1,0,0) && !defined(__HADDOCK_VERSION__))
#define ENABLE_OVERLOADING
#endif
module GI.GtkSource.Objects.Completion
    ( 
    Completion(..)                          ,
    IsCompletion                            ,
    toCompletion                            ,
 
#if defined(ENABLE_OVERLOADING)
    ResolveCompletionMethod                 ,
#endif
#if defined(ENABLE_OVERLOADING)
    CompletionAddProviderMethodInfo         ,
#endif
    completionAddProvider                   ,
#if defined(ENABLE_OVERLOADING)
    CompletionBlockInteractiveMethodInfo    ,
#endif
    completionBlockInteractive              ,
    completionFuzzyHighlight                ,
    completionFuzzyMatch                    ,
#if defined(ENABLE_OVERLOADING)
    CompletionGetBufferMethodInfo           ,
#endif
    completionGetBuffer                     ,
#if defined(ENABLE_OVERLOADING)
    CompletionGetPageSizeMethodInfo         ,
#endif
    completionGetPageSize                   ,
#if defined(ENABLE_OVERLOADING)
    CompletionGetViewMethodInfo             ,
#endif
    completionGetView                       ,
#if defined(ENABLE_OVERLOADING)
    CompletionHideMethodInfo                ,
#endif
    completionHide                          ,
#if defined(ENABLE_OVERLOADING)
    CompletionRemoveProviderMethodInfo      ,
#endif
    completionRemoveProvider                ,
#if defined(ENABLE_OVERLOADING)
    CompletionSetPageSizeMethodInfo         ,
#endif
    completionSetPageSize                   ,
#if defined(ENABLE_OVERLOADING)
    CompletionShowMethodInfo                ,
#endif
    completionShow                          ,
#if defined(ENABLE_OVERLOADING)
    CompletionUnblockInteractiveMethodInfo  ,
#endif
    completionUnblockInteractive            ,
 
#if defined(ENABLE_OVERLOADING)
    CompletionBufferPropertyInfo            ,
#endif
#if defined(ENABLE_OVERLOADING)
    completionBuffer                        ,
#endif
    getCompletionBuffer                     ,
#if defined(ENABLE_OVERLOADING)
    CompletionPageSizePropertyInfo          ,
#endif
#if defined(ENABLE_OVERLOADING)
    completionPageSize                      ,
#endif
    constructCompletionPageSize             ,
    getCompletionPageSize                   ,
    setCompletionPageSize                   ,
#if defined(ENABLE_OVERLOADING)
    CompletionRememberInfoVisibilityPropertyInfo,
#endif
#if defined(ENABLE_OVERLOADING)
    completionRememberInfoVisibility        ,
#endif
    constructCompletionRememberInfoVisibility,
    getCompletionRememberInfoVisibility     ,
    setCompletionRememberInfoVisibility     ,
#if defined(ENABLE_OVERLOADING)
    CompletionSelectOnShowPropertyInfo      ,
#endif
#if defined(ENABLE_OVERLOADING)
    completionSelectOnShow                  ,
#endif
    constructCompletionSelectOnShow         ,
    getCompletionSelectOnShow               ,
    setCompletionSelectOnShow               ,
#if defined(ENABLE_OVERLOADING)
    CompletionShowIconsPropertyInfo         ,
#endif
#if defined(ENABLE_OVERLOADING)
    completionShowIcons                     ,
#endif
    constructCompletionShowIcons            ,
    getCompletionShowIcons                  ,
    setCompletionShowIcons                  ,
#if defined(ENABLE_OVERLOADING)
    CompletionViewPropertyInfo              ,
#endif
#if defined(ENABLE_OVERLOADING)
    completionView                          ,
#endif
    constructCompletionView                 ,
    getCompletionView                       ,
 
    CompletionHideCallback                  ,
#if defined(ENABLE_OVERLOADING)
    CompletionHideSignalInfo                ,
#endif
    afterCompletionHide                     ,
    onCompletionHide                        ,
    CompletionProviderAddedCallback         ,
#if defined(ENABLE_OVERLOADING)
    CompletionProviderAddedSignalInfo       ,
#endif
    afterCompletionProviderAdded            ,
    onCompletionProviderAdded               ,
    CompletionProviderRemovedCallback       ,
#if defined(ENABLE_OVERLOADING)
    CompletionProviderRemovedSignalInfo     ,
#endif
    afterCompletionProviderRemoved          ,
    onCompletionProviderRemoved             ,
    CompletionShowCallback                  ,
#if defined(ENABLE_OVERLOADING)
    CompletionShowSignalInfo                ,
#endif
    afterCompletionShow                     ,
    onCompletionShow                        ,
    ) 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.BasicTypes as B.Types
import qualified Data.GI.Base.ManagedPtr as B.ManagedPtr
import qualified Data.GI.Base.GArray as B.GArray
import qualified Data.GI.Base.GClosure as B.GClosure
import qualified Data.GI.Base.GError as B.GError
import qualified Data.GI.Base.GHashTable as B.GHT
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 Control.Monad.IO.Class as MIO
import qualified Data.Coerce as Coerce
import qualified Data.Text as T
import qualified Data.Kind as DK
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 qualified GHC.Records as R
import qualified GI.GObject.Objects.Object as GObject.Object
import qualified GI.Gtk.Objects.TextView as Gtk.TextView
import {-# SOURCE #-} qualified GI.GtkSource.Interfaces.CompletionProvider as GtkSource.CompletionProvider
import {-# SOURCE #-} qualified GI.GtkSource.Objects.Buffer as GtkSource.Buffer
import {-# SOURCE #-} qualified GI.GtkSource.Objects.View as GtkSource.View
import qualified GI.Pango.Structs.AttrList as Pango.AttrList
newtype Completion = Completion (SP.ManagedPtr Completion)
    deriving (Completion -> Completion -> Bool
(Completion -> Completion -> Bool)
-> (Completion -> Completion -> Bool) -> Eq Completion
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: Completion -> Completion -> Bool
== :: Completion -> Completion -> Bool
$c/= :: Completion -> Completion -> Bool
/= :: Completion -> Completion -> Bool
Eq)
instance SP.ManagedPtrNewtype Completion where
    toManagedPtr :: Completion -> ManagedPtr Completion
toManagedPtr (Completion ManagedPtr Completion
p) = ManagedPtr Completion
p
foreign import ccall "gtk_source_completion_get_type"
    c_gtk_source_completion_get_type :: IO B.Types.GType
instance B.Types.TypedObject Completion where
    glibType :: IO GType
glibType = IO GType
c_gtk_source_completion_get_type
instance B.Types.GObject Completion
class (SP.GObject o, O.IsDescendantOf Completion o) => IsCompletion o
instance (SP.GObject o, O.IsDescendantOf Completion o) => IsCompletion o
instance O.HasParentTypes Completion
type instance O.ParentTypes Completion = '[GObject.Object.Object]
toCompletion :: (MIO.MonadIO m, IsCompletion o) => o -> m Completion
toCompletion :: forall (m :: * -> *) o.
(MonadIO m, IsCompletion o) =>
o -> m Completion
toCompletion = IO Completion -> m Completion
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO Completion -> m Completion)
-> (o -> IO Completion) -> o -> m Completion
forall b c a. (b -> c) -> (a -> b) -> a -> c
. (ManagedPtr Completion -> Completion) -> o -> IO Completion
forall o o'.
(HasCallStack, ManagedPtrNewtype o, TypedObject o,
 ManagedPtrNewtype o', TypedObject o') =>
(ManagedPtr o' -> o') -> o -> IO o'
B.ManagedPtr.unsafeCastTo ManagedPtr Completion -> Completion
Completion
instance B.GValue.IsGValue (Maybe Completion) where
    gvalueGType_ :: IO GType
gvalueGType_ = IO GType
c_gtk_source_completion_get_type
    gvalueSet_ :: Ptr GValue -> Maybe Completion -> IO ()
gvalueSet_ Ptr GValue
gv Maybe Completion
P.Nothing = Ptr GValue -> Ptr Completion -> IO ()
forall a. GObject a => Ptr GValue -> Ptr a -> IO ()
B.GValue.set_object Ptr GValue
gv (Ptr Completion
forall a. Ptr a
FP.nullPtr :: FP.Ptr Completion)
    gvalueSet_ Ptr GValue
gv (P.Just Completion
obj) = Completion -> (Ptr Completion -> IO ()) -> IO ()
forall a c.
(HasCallStack, ManagedPtrNewtype a) =>
a -> (Ptr a -> IO c) -> IO c
B.ManagedPtr.withManagedPtr Completion
obj (Ptr GValue -> Ptr Completion -> IO ()
forall a. GObject a => Ptr GValue -> Ptr a -> IO ()
B.GValue.set_object Ptr GValue
gv)
    gvalueGet_ :: Ptr GValue -> IO (Maybe Completion)
gvalueGet_ Ptr GValue
gv = do
        Ptr Completion
ptr <- Ptr GValue -> IO (Ptr Completion)
forall a. GObject a => Ptr GValue -> IO (Ptr a)
B.GValue.get_object Ptr GValue
gv :: IO (FP.Ptr Completion)
        if Ptr Completion
ptr Ptr Completion -> Ptr Completion -> Bool
forall a. Eq a => a -> a -> Bool
/= Ptr Completion
forall a. Ptr a
FP.nullPtr
        then Completion -> Maybe Completion
forall a. a -> Maybe a
P.Just (Completion -> Maybe Completion)
-> IO Completion -> IO (Maybe Completion)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (ManagedPtr Completion -> Completion)
-> Ptr Completion -> IO Completion
forall a b.
(HasCallStack, GObject a, GObject b) =>
(ManagedPtr a -> a) -> Ptr b -> IO a
B.ManagedPtr.newObject ManagedPtr Completion -> Completion
Completion Ptr Completion
ptr
        else Maybe Completion -> IO (Maybe Completion)
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return Maybe Completion
forall a. Maybe a
P.Nothing
        
    
#if defined(ENABLE_OVERLOADING)
type family ResolveCompletionMethod (t :: Symbol) (o :: DK.Type) :: DK.Type where
    ResolveCompletionMethod "addProvider" o = CompletionAddProviderMethodInfo
    ResolveCompletionMethod "bindProperty" o = GObject.Object.ObjectBindPropertyMethodInfo
    ResolveCompletionMethod "bindPropertyFull" o = GObject.Object.ObjectBindPropertyFullMethodInfo
    ResolveCompletionMethod "blockInteractive" o = CompletionBlockInteractiveMethodInfo
    ResolveCompletionMethod "forceFloating" o = GObject.Object.ObjectForceFloatingMethodInfo
    ResolveCompletionMethod "freezeNotify" o = GObject.Object.ObjectFreezeNotifyMethodInfo
    ResolveCompletionMethod "getv" o = GObject.Object.ObjectGetvMethodInfo
    ResolveCompletionMethod "hide" o = CompletionHideMethodInfo
    ResolveCompletionMethod "isFloating" o = GObject.Object.ObjectIsFloatingMethodInfo
    ResolveCompletionMethod "notify" o = GObject.Object.ObjectNotifyMethodInfo
    ResolveCompletionMethod "notifyByPspec" o = GObject.Object.ObjectNotifyByPspecMethodInfo
    ResolveCompletionMethod "ref" o = GObject.Object.ObjectRefMethodInfo
    ResolveCompletionMethod "refSink" o = GObject.Object.ObjectRefSinkMethodInfo
    ResolveCompletionMethod "removeProvider" o = CompletionRemoveProviderMethodInfo
    ResolveCompletionMethod "runDispose" o = GObject.Object.ObjectRunDisposeMethodInfo
    ResolveCompletionMethod "show" o = CompletionShowMethodInfo
    ResolveCompletionMethod "stealData" o = GObject.Object.ObjectStealDataMethodInfo
    ResolveCompletionMethod "stealQdata" o = GObject.Object.ObjectStealQdataMethodInfo
    ResolveCompletionMethod "thawNotify" o = GObject.Object.ObjectThawNotifyMethodInfo
    ResolveCompletionMethod "unblockInteractive" o = CompletionUnblockInteractiveMethodInfo
    ResolveCompletionMethod "unref" o = GObject.Object.ObjectUnrefMethodInfo
    ResolveCompletionMethod "watchClosure" o = GObject.Object.ObjectWatchClosureMethodInfo
    ResolveCompletionMethod "getBuffer" o = CompletionGetBufferMethodInfo
    ResolveCompletionMethod "getData" o = GObject.Object.ObjectGetDataMethodInfo
    ResolveCompletionMethod "getPageSize" o = CompletionGetPageSizeMethodInfo
    ResolveCompletionMethod "getProperty" o = GObject.Object.ObjectGetPropertyMethodInfo
    ResolveCompletionMethod "getQdata" o = GObject.Object.ObjectGetQdataMethodInfo
    ResolveCompletionMethod "getView" o = CompletionGetViewMethodInfo
    ResolveCompletionMethod "setData" o = GObject.Object.ObjectSetDataMethodInfo
    ResolveCompletionMethod "setDataFull" o = GObject.Object.ObjectSetDataFullMethodInfo
    ResolveCompletionMethod "setPageSize" o = CompletionSetPageSizeMethodInfo
    ResolveCompletionMethod "setProperty" o = GObject.Object.ObjectSetPropertyMethodInfo
    ResolveCompletionMethod l o = O.MethodResolutionFailed l o
instance (info ~ ResolveCompletionMethod t Completion, O.OverloadedMethod info Completion p) => OL.IsLabel t (Completion -> p) where
#if MIN_VERSION_base(4,10,0)
    fromLabel = O.overloadedMethod @info
#else
    fromLabel _ = O.overloadedMethod @info
#endif
#if MIN_VERSION_base(4,13,0)
instance (info ~ ResolveCompletionMethod t Completion, O.OverloadedMethod info Completion p, R.HasField t Completion p) => R.HasField t Completion p where
    getField = O.overloadedMethod @info
#endif
instance (info ~ ResolveCompletionMethod t Completion, O.OverloadedMethodInfo info Completion) => OL.IsLabel t (O.MethodProxy info Completion) where
#if MIN_VERSION_base(4,10,0)
    fromLabel = O.MethodProxy
#else
    fromLabel _ = O.MethodProxy
#endif
#endif
type CompletionHideCallback =
    IO ()
type C_CompletionHideCallback =
    Ptr Completion ->                       
    Ptr () ->                               
    IO ()
foreign import ccall "wrapper"
    mk_CompletionHideCallback :: C_CompletionHideCallback -> IO (FunPtr C_CompletionHideCallback)
wrap_CompletionHideCallback :: 
    GObject a => (a -> CompletionHideCallback) ->
    C_CompletionHideCallback
wrap_CompletionHideCallback :: forall a. GObject a => (a -> IO ()) -> C_CompletionHideCallback
wrap_CompletionHideCallback a -> IO ()
gi'cb Ptr Completion
gi'selfPtr Ptr ()
_ = do
    Ptr Completion -> (Completion -> IO ()) -> IO ()
forall o b.
(HasCallStack, GObject o) =>
Ptr o -> (o -> IO b) -> IO b
B.ManagedPtr.withNewObject Ptr Completion
gi'selfPtr ((Completion -> IO ()) -> IO ()) -> (Completion -> IO ()) -> IO ()
forall a b. (a -> b) -> a -> b
$ \Completion
gi'self -> a -> IO ()
gi'cb (Completion -> a
forall a b. Coercible a b => a -> b
Coerce.coerce Completion
gi'self) 
onCompletionHide :: (IsCompletion a, MonadIO m) => a -> ((?self :: a) => CompletionHideCallback) -> m SignalHandlerId
onCompletionHide :: forall a (m :: * -> *).
(IsCompletion a, MonadIO m) =>
a -> ((?self::a) => IO ()) -> m SignalHandlerId
onCompletionHide a
obj (?self::a) => IO ()
cb = IO SignalHandlerId -> m SignalHandlerId
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO SignalHandlerId -> m SignalHandlerId)
-> IO SignalHandlerId -> m SignalHandlerId
forall a b. (a -> b) -> a -> b
$ do
    let wrapped :: a -> IO ()
wrapped a
self = let ?self = a
?self::a
self in IO ()
(?self::a) => IO ()
cb
    let wrapped' :: C_CompletionHideCallback
wrapped' = (a -> IO ()) -> C_CompletionHideCallback
forall a. GObject a => (a -> IO ()) -> C_CompletionHideCallback
wrap_CompletionHideCallback a -> IO ()
wrapped
    FunPtr C_CompletionHideCallback
wrapped'' <- C_CompletionHideCallback -> IO (FunPtr C_CompletionHideCallback)
mk_CompletionHideCallback C_CompletionHideCallback
wrapped'
    a
-> Text
-> FunPtr C_CompletionHideCallback
-> SignalConnectMode
-> Maybe Text
-> IO SignalHandlerId
forall o a.
GObject o =>
o
-> Text
-> FunPtr a
-> SignalConnectMode
-> Maybe Text
-> IO SignalHandlerId
connectSignalFunPtr a
obj Text
"hide" FunPtr C_CompletionHideCallback
wrapped'' SignalConnectMode
SignalConnectBefore Maybe Text
forall a. Maybe a
Nothing
afterCompletionHide :: (IsCompletion a, MonadIO m) => a -> ((?self :: a) => CompletionHideCallback) -> m SignalHandlerId
afterCompletionHide :: forall a (m :: * -> *).
(IsCompletion a, MonadIO m) =>
a -> ((?self::a) => IO ()) -> m SignalHandlerId
afterCompletionHide a
obj (?self::a) => IO ()
cb = IO SignalHandlerId -> m SignalHandlerId
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO SignalHandlerId -> m SignalHandlerId)
-> IO SignalHandlerId -> m SignalHandlerId
forall a b. (a -> b) -> a -> b
$ do
    let wrapped :: a -> IO ()
wrapped a
self = let ?self = a
?self::a
self in IO ()
(?self::a) => IO ()
cb
    let wrapped' :: C_CompletionHideCallback
wrapped' = (a -> IO ()) -> C_CompletionHideCallback
forall a. GObject a => (a -> IO ()) -> C_CompletionHideCallback
wrap_CompletionHideCallback a -> IO ()
wrapped
    FunPtr C_CompletionHideCallback
wrapped'' <- C_CompletionHideCallback -> IO (FunPtr C_CompletionHideCallback)
mk_CompletionHideCallback C_CompletionHideCallback
wrapped'
    a
-> Text
-> FunPtr C_CompletionHideCallback
-> SignalConnectMode
-> Maybe Text
-> IO SignalHandlerId
forall o a.
GObject o =>
o
-> Text
-> FunPtr a
-> SignalConnectMode
-> Maybe Text
-> IO SignalHandlerId
connectSignalFunPtr a
obj Text
"hide" FunPtr C_CompletionHideCallback
wrapped'' SignalConnectMode
SignalConnectAfter Maybe Text
forall a. Maybe a
Nothing
#if defined(ENABLE_OVERLOADING)
data CompletionHideSignalInfo
instance SignalInfo CompletionHideSignalInfo where
    type HaskellCallbackType CompletionHideSignalInfo = CompletionHideCallback
    connectSignal obj cb connectMode detail = do
        let cb' = wrap_CompletionHideCallback cb
        cb'' <- mk_CompletionHideCallback cb'
        connectSignalFunPtr obj "hide" cb'' connectMode detail
    dbgSignalInfo = P.Just (O.ResolvedSymbolInfo {
        O.resolvedSymbolName = "GI.GtkSource.Objects.Completion::hide"
        , O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-gtksource-5.0.0/docs/GI-GtkSource-Objects-Completion.html#g:signal:hide"})
#endif
type CompletionProviderAddedCallback =
    GtkSource.CompletionProvider.CompletionProvider
    
    -> IO ()
type C_CompletionProviderAddedCallback =
    Ptr Completion ->                       
    Ptr GtkSource.CompletionProvider.CompletionProvider ->
    Ptr () ->                               
    IO ()
foreign import ccall "wrapper"
    mk_CompletionProviderAddedCallback :: C_CompletionProviderAddedCallback -> IO (FunPtr C_CompletionProviderAddedCallback)
wrap_CompletionProviderAddedCallback :: 
    GObject a => (a -> CompletionProviderAddedCallback) ->
    C_CompletionProviderAddedCallback
wrap_CompletionProviderAddedCallback :: forall a.
GObject a =>
(a -> CompletionProviderAddedCallback)
-> C_CompletionProviderAddedCallback
wrap_CompletionProviderAddedCallback a -> CompletionProviderAddedCallback
gi'cb Ptr Completion
gi'selfPtr Ptr CompletionProvider
provider Ptr ()
_ = do
    CompletionProvider
provider' <- ((ManagedPtr CompletionProvider -> CompletionProvider)
-> Ptr CompletionProvider -> IO CompletionProvider
forall a b.
(HasCallStack, GObject a, GObject b) =>
(ManagedPtr a -> a) -> Ptr b -> IO a
newObject ManagedPtr CompletionProvider -> CompletionProvider
GtkSource.CompletionProvider.CompletionProvider) Ptr CompletionProvider
provider
    Ptr Completion -> (Completion -> IO ()) -> IO ()
forall o b.
(HasCallStack, GObject o) =>
Ptr o -> (o -> IO b) -> IO b
B.ManagedPtr.withNewObject Ptr Completion
gi'selfPtr ((Completion -> IO ()) -> IO ()) -> (Completion -> IO ()) -> IO ()
forall a b. (a -> b) -> a -> b
$ \Completion
gi'self -> a -> CompletionProviderAddedCallback
gi'cb (Completion -> a
forall a b. Coercible a b => a -> b
Coerce.coerce Completion
gi'self)  CompletionProvider
provider'
onCompletionProviderAdded :: (IsCompletion a, MonadIO m) => a -> ((?self :: a) => CompletionProviderAddedCallback) -> m SignalHandlerId
onCompletionProviderAdded :: forall a (m :: * -> *).
(IsCompletion a, MonadIO m) =>
a
-> ((?self::a) => CompletionProviderAddedCallback)
-> m SignalHandlerId
onCompletionProviderAdded a
obj (?self::a) => CompletionProviderAddedCallback
cb = IO SignalHandlerId -> m SignalHandlerId
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO SignalHandlerId -> m SignalHandlerId)
-> IO SignalHandlerId -> m SignalHandlerId
forall a b. (a -> b) -> a -> b
$ do
    let wrapped :: a -> CompletionProviderAddedCallback
wrapped a
self = let ?self = a
?self::a
self in (?self::a) => CompletionProviderAddedCallback
CompletionProviderAddedCallback
cb
    let wrapped' :: C_CompletionProviderAddedCallback
wrapped' = (a -> CompletionProviderAddedCallback)
-> C_CompletionProviderAddedCallback
forall a.
GObject a =>
(a -> CompletionProviderAddedCallback)
-> C_CompletionProviderAddedCallback
wrap_CompletionProviderAddedCallback a -> CompletionProviderAddedCallback
wrapped
    FunPtr C_CompletionProviderAddedCallback
wrapped'' <- C_CompletionProviderAddedCallback
-> IO (FunPtr C_CompletionProviderAddedCallback)
mk_CompletionProviderAddedCallback C_CompletionProviderAddedCallback
wrapped'
    a
-> Text
-> FunPtr C_CompletionProviderAddedCallback
-> SignalConnectMode
-> Maybe Text
-> IO SignalHandlerId
forall o a.
GObject o =>
o
-> Text
-> FunPtr a
-> SignalConnectMode
-> Maybe Text
-> IO SignalHandlerId
connectSignalFunPtr a
obj Text
"provider-added" FunPtr C_CompletionProviderAddedCallback
wrapped'' SignalConnectMode
SignalConnectBefore Maybe Text
forall a. Maybe a
Nothing
afterCompletionProviderAdded :: (IsCompletion a, MonadIO m) => a -> ((?self :: a) => CompletionProviderAddedCallback) -> m SignalHandlerId
afterCompletionProviderAdded :: forall a (m :: * -> *).
(IsCompletion a, MonadIO m) =>
a
-> ((?self::a) => CompletionProviderAddedCallback)
-> m SignalHandlerId
afterCompletionProviderAdded a
obj (?self::a) => CompletionProviderAddedCallback
cb = IO SignalHandlerId -> m SignalHandlerId
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO SignalHandlerId -> m SignalHandlerId)
-> IO SignalHandlerId -> m SignalHandlerId
forall a b. (a -> b) -> a -> b
$ do
    let wrapped :: a -> CompletionProviderAddedCallback
wrapped a
self = let ?self = a
?self::a
self in (?self::a) => CompletionProviderAddedCallback
CompletionProviderAddedCallback
cb
    let wrapped' :: C_CompletionProviderAddedCallback
wrapped' = (a -> CompletionProviderAddedCallback)
-> C_CompletionProviderAddedCallback
forall a.
GObject a =>
(a -> CompletionProviderAddedCallback)
-> C_CompletionProviderAddedCallback
wrap_CompletionProviderAddedCallback a -> CompletionProviderAddedCallback
wrapped
    FunPtr C_CompletionProviderAddedCallback
wrapped'' <- C_CompletionProviderAddedCallback
-> IO (FunPtr C_CompletionProviderAddedCallback)
mk_CompletionProviderAddedCallback C_CompletionProviderAddedCallback
wrapped'
    a
-> Text
-> FunPtr C_CompletionProviderAddedCallback
-> SignalConnectMode
-> Maybe Text
-> IO SignalHandlerId
forall o a.
GObject o =>
o
-> Text
-> FunPtr a
-> SignalConnectMode
-> Maybe Text
-> IO SignalHandlerId
connectSignalFunPtr a
obj Text
"provider-added" FunPtr C_CompletionProviderAddedCallback
wrapped'' SignalConnectMode
SignalConnectAfter Maybe Text
forall a. Maybe a
Nothing
#if defined(ENABLE_OVERLOADING)
data CompletionProviderAddedSignalInfo
instance SignalInfo CompletionProviderAddedSignalInfo where
    type HaskellCallbackType CompletionProviderAddedSignalInfo = CompletionProviderAddedCallback
    connectSignal obj cb connectMode detail = do
        let cb' = wrap_CompletionProviderAddedCallback cb
        cb'' <- mk_CompletionProviderAddedCallback cb'
        connectSignalFunPtr obj "provider-added" cb'' connectMode detail
    dbgSignalInfo = P.Just (O.ResolvedSymbolInfo {
        O.resolvedSymbolName = "GI.GtkSource.Objects.Completion::provider-added"
        , O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-gtksource-5.0.0/docs/GI-GtkSource-Objects-Completion.html#g:signal:providerAdded"})
#endif
type CompletionProviderRemovedCallback =
    GtkSource.CompletionProvider.CompletionProvider
    
    -> IO ()
type C_CompletionProviderRemovedCallback =
    Ptr Completion ->                       
    Ptr GtkSource.CompletionProvider.CompletionProvider ->
    Ptr () ->                               
    IO ()
foreign import ccall "wrapper"
    mk_CompletionProviderRemovedCallback :: C_CompletionProviderRemovedCallback -> IO (FunPtr C_CompletionProviderRemovedCallback)
wrap_CompletionProviderRemovedCallback :: 
    GObject a => (a -> CompletionProviderRemovedCallback) ->
    C_CompletionProviderRemovedCallback
wrap_CompletionProviderRemovedCallback :: forall a.
GObject a =>
(a -> CompletionProviderAddedCallback)
-> C_CompletionProviderAddedCallback
wrap_CompletionProviderRemovedCallback a -> CompletionProviderAddedCallback
gi'cb Ptr Completion
gi'selfPtr Ptr CompletionProvider
provider Ptr ()
_ = do
    CompletionProvider
provider' <- ((ManagedPtr CompletionProvider -> CompletionProvider)
-> Ptr CompletionProvider -> IO CompletionProvider
forall a b.
(HasCallStack, GObject a, GObject b) =>
(ManagedPtr a -> a) -> Ptr b -> IO a
newObject ManagedPtr CompletionProvider -> CompletionProvider
GtkSource.CompletionProvider.CompletionProvider) Ptr CompletionProvider
provider
    Ptr Completion -> (Completion -> IO ()) -> IO ()
forall o b.
(HasCallStack, GObject o) =>
Ptr o -> (o -> IO b) -> IO b
B.ManagedPtr.withNewObject Ptr Completion
gi'selfPtr ((Completion -> IO ()) -> IO ()) -> (Completion -> IO ()) -> IO ()
forall a b. (a -> b) -> a -> b
$ \Completion
gi'self -> a -> CompletionProviderAddedCallback
gi'cb (Completion -> a
forall a b. Coercible a b => a -> b
Coerce.coerce Completion
gi'self)  CompletionProvider
provider'
onCompletionProviderRemoved :: (IsCompletion a, MonadIO m) => a -> ((?self :: a) => CompletionProviderRemovedCallback) -> m SignalHandlerId
onCompletionProviderRemoved :: forall a (m :: * -> *).
(IsCompletion a, MonadIO m) =>
a
-> ((?self::a) => CompletionProviderAddedCallback)
-> m SignalHandlerId
onCompletionProviderRemoved a
obj (?self::a) => CompletionProviderAddedCallback
cb = IO SignalHandlerId -> m SignalHandlerId
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO SignalHandlerId -> m SignalHandlerId)
-> IO SignalHandlerId -> m SignalHandlerId
forall a b. (a -> b) -> a -> b
$ do
    let wrapped :: a -> CompletionProviderAddedCallback
wrapped a
self = let ?self = a
?self::a
self in (?self::a) => CompletionProviderAddedCallback
CompletionProviderAddedCallback
cb
    let wrapped' :: C_CompletionProviderAddedCallback
wrapped' = (a -> CompletionProviderAddedCallback)
-> C_CompletionProviderAddedCallback
forall a.
GObject a =>
(a -> CompletionProviderAddedCallback)
-> C_CompletionProviderAddedCallback
wrap_CompletionProviderRemovedCallback a -> CompletionProviderAddedCallback
wrapped
    FunPtr C_CompletionProviderAddedCallback
wrapped'' <- C_CompletionProviderAddedCallback
-> IO (FunPtr C_CompletionProviderAddedCallback)
mk_CompletionProviderRemovedCallback C_CompletionProviderAddedCallback
wrapped'
    a
-> Text
-> FunPtr C_CompletionProviderAddedCallback
-> SignalConnectMode
-> Maybe Text
-> IO SignalHandlerId
forall o a.
GObject o =>
o
-> Text
-> FunPtr a
-> SignalConnectMode
-> Maybe Text
-> IO SignalHandlerId
connectSignalFunPtr a
obj Text
"provider-removed" FunPtr C_CompletionProviderAddedCallback
wrapped'' SignalConnectMode
SignalConnectBefore Maybe Text
forall a. Maybe a
Nothing
afterCompletionProviderRemoved :: (IsCompletion a, MonadIO m) => a -> ((?self :: a) => CompletionProviderRemovedCallback) -> m SignalHandlerId
afterCompletionProviderRemoved :: forall a (m :: * -> *).
(IsCompletion a, MonadIO m) =>
a
-> ((?self::a) => CompletionProviderAddedCallback)
-> m SignalHandlerId
afterCompletionProviderRemoved a
obj (?self::a) => CompletionProviderAddedCallback
cb = IO SignalHandlerId -> m SignalHandlerId
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO SignalHandlerId -> m SignalHandlerId)
-> IO SignalHandlerId -> m SignalHandlerId
forall a b. (a -> b) -> a -> b
$ do
    let wrapped :: a -> CompletionProviderAddedCallback
wrapped a
self = let ?self = a
?self::a
self in (?self::a) => CompletionProviderAddedCallback
CompletionProviderAddedCallback
cb
    let wrapped' :: C_CompletionProviderAddedCallback
wrapped' = (a -> CompletionProviderAddedCallback)
-> C_CompletionProviderAddedCallback
forall a.
GObject a =>
(a -> CompletionProviderAddedCallback)
-> C_CompletionProviderAddedCallback
wrap_CompletionProviderRemovedCallback a -> CompletionProviderAddedCallback
wrapped
    FunPtr C_CompletionProviderAddedCallback
wrapped'' <- C_CompletionProviderAddedCallback
-> IO (FunPtr C_CompletionProviderAddedCallback)
mk_CompletionProviderRemovedCallback C_CompletionProviderAddedCallback
wrapped'
    a
-> Text
-> FunPtr C_CompletionProviderAddedCallback
-> SignalConnectMode
-> Maybe Text
-> IO SignalHandlerId
forall o a.
GObject o =>
o
-> Text
-> FunPtr a
-> SignalConnectMode
-> Maybe Text
-> IO SignalHandlerId
connectSignalFunPtr a
obj Text
"provider-removed" FunPtr C_CompletionProviderAddedCallback
wrapped'' SignalConnectMode
SignalConnectAfter Maybe Text
forall a. Maybe a
Nothing
#if defined(ENABLE_OVERLOADING)
data CompletionProviderRemovedSignalInfo
instance SignalInfo CompletionProviderRemovedSignalInfo where
    type HaskellCallbackType CompletionProviderRemovedSignalInfo = CompletionProviderRemovedCallback
    connectSignal obj cb connectMode detail = do
        let cb' = wrap_CompletionProviderRemovedCallback cb
        cb'' <- mk_CompletionProviderRemovedCallback cb'
        connectSignalFunPtr obj "provider-removed" cb'' connectMode detail
    dbgSignalInfo = P.Just (O.ResolvedSymbolInfo {
        O.resolvedSymbolName = "GI.GtkSource.Objects.Completion::provider-removed"
        , O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-gtksource-5.0.0/docs/GI-GtkSource-Objects-Completion.html#g:signal:providerRemoved"})
#endif
type CompletionShowCallback =
    IO ()
type C_CompletionShowCallback =
    Ptr Completion ->                       
    Ptr () ->                               
    IO ()
foreign import ccall "wrapper"
    mk_CompletionShowCallback :: C_CompletionShowCallback -> IO (FunPtr C_CompletionShowCallback)
wrap_CompletionShowCallback :: 
    GObject a => (a -> CompletionShowCallback) ->
    C_CompletionShowCallback
wrap_CompletionShowCallback :: forall a. GObject a => (a -> IO ()) -> C_CompletionHideCallback
wrap_CompletionShowCallback a -> IO ()
gi'cb Ptr Completion
gi'selfPtr Ptr ()
_ = do
    Ptr Completion -> (Completion -> IO ()) -> IO ()
forall o b.
(HasCallStack, GObject o) =>
Ptr o -> (o -> IO b) -> IO b
B.ManagedPtr.withNewObject Ptr Completion
gi'selfPtr ((Completion -> IO ()) -> IO ()) -> (Completion -> IO ()) -> IO ()
forall a b. (a -> b) -> a -> b
$ \Completion
gi'self -> a -> IO ()
gi'cb (Completion -> a
forall a b. Coercible a b => a -> b
Coerce.coerce Completion
gi'self) 
onCompletionShow :: (IsCompletion a, MonadIO m) => a -> ((?self :: a) => CompletionShowCallback) -> m SignalHandlerId
onCompletionShow :: forall a (m :: * -> *).
(IsCompletion a, MonadIO m) =>
a -> ((?self::a) => IO ()) -> m SignalHandlerId
onCompletionShow a
obj (?self::a) => IO ()
cb = IO SignalHandlerId -> m SignalHandlerId
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO SignalHandlerId -> m SignalHandlerId)
-> IO SignalHandlerId -> m SignalHandlerId
forall a b. (a -> b) -> a -> b
$ do
    let wrapped :: a -> IO ()
wrapped a
self = let ?self = a
?self::a
self in IO ()
(?self::a) => IO ()
cb
    let wrapped' :: C_CompletionHideCallback
wrapped' = (a -> IO ()) -> C_CompletionHideCallback
forall a. GObject a => (a -> IO ()) -> C_CompletionHideCallback
wrap_CompletionShowCallback a -> IO ()
wrapped
    FunPtr C_CompletionHideCallback
wrapped'' <- C_CompletionHideCallback -> IO (FunPtr C_CompletionHideCallback)
mk_CompletionShowCallback C_CompletionHideCallback
wrapped'
    a
-> Text
-> FunPtr C_CompletionHideCallback
-> SignalConnectMode
-> Maybe Text
-> IO SignalHandlerId
forall o a.
GObject o =>
o
-> Text
-> FunPtr a
-> SignalConnectMode
-> Maybe Text
-> IO SignalHandlerId
connectSignalFunPtr a
obj Text
"show" FunPtr C_CompletionHideCallback
wrapped'' SignalConnectMode
SignalConnectBefore Maybe Text
forall a. Maybe a
Nothing
afterCompletionShow :: (IsCompletion a, MonadIO m) => a -> ((?self :: a) => CompletionShowCallback) -> m SignalHandlerId
afterCompletionShow :: forall a (m :: * -> *).
(IsCompletion a, MonadIO m) =>
a -> ((?self::a) => IO ()) -> m SignalHandlerId
afterCompletionShow a
obj (?self::a) => IO ()
cb = IO SignalHandlerId -> m SignalHandlerId
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO SignalHandlerId -> m SignalHandlerId)
-> IO SignalHandlerId -> m SignalHandlerId
forall a b. (a -> b) -> a -> b
$ do
    let wrapped :: a -> IO ()
wrapped a
self = let ?self = a
?self::a
self in IO ()
(?self::a) => IO ()
cb
    let wrapped' :: C_CompletionHideCallback
wrapped' = (a -> IO ()) -> C_CompletionHideCallback
forall a. GObject a => (a -> IO ()) -> C_CompletionHideCallback
wrap_CompletionShowCallback a -> IO ()
wrapped
    FunPtr C_CompletionHideCallback
wrapped'' <- C_CompletionHideCallback -> IO (FunPtr C_CompletionHideCallback)
mk_CompletionShowCallback C_CompletionHideCallback
wrapped'
    a
-> Text
-> FunPtr C_CompletionHideCallback
-> SignalConnectMode
-> Maybe Text
-> IO SignalHandlerId
forall o a.
GObject o =>
o
-> Text
-> FunPtr a
-> SignalConnectMode
-> Maybe Text
-> IO SignalHandlerId
connectSignalFunPtr a
obj Text
"show" FunPtr C_CompletionHideCallback
wrapped'' SignalConnectMode
SignalConnectAfter Maybe Text
forall a. Maybe a
Nothing
#if defined(ENABLE_OVERLOADING)
data CompletionShowSignalInfo
instance SignalInfo CompletionShowSignalInfo where
    type HaskellCallbackType CompletionShowSignalInfo = CompletionShowCallback
    connectSignal obj cb connectMode detail = do
        let cb' = wrap_CompletionShowCallback cb
        cb'' <- mk_CompletionShowCallback cb'
        connectSignalFunPtr obj "show" cb'' connectMode detail
    dbgSignalInfo = P.Just (O.ResolvedSymbolInfo {
        O.resolvedSymbolName = "GI.GtkSource.Objects.Completion::show"
        , O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-gtksource-5.0.0/docs/GI-GtkSource-Objects-Completion.html#g:signal:show"})
#endif
   
   
   
getCompletionBuffer :: (MonadIO m, IsCompletion o) => o -> m (Maybe Gtk.TextView.TextView)
getCompletionBuffer :: forall (m :: * -> *) o.
(MonadIO m, IsCompletion o) =>
o -> m (Maybe TextView)
getCompletionBuffer o
obj = IO (Maybe TextView) -> m (Maybe TextView)
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO (Maybe TextView) -> m (Maybe TextView))
-> IO (Maybe TextView) -> m (Maybe TextView)
forall a b. (a -> b) -> a -> b
$ o
-> String
-> (ManagedPtr TextView -> TextView)
-> IO (Maybe TextView)
forall a b.
(GObject a, GObject b) =>
a -> String -> (ManagedPtr b -> b) -> IO (Maybe b)
B.Properties.getObjectPropertyObject o
obj String
"buffer" ManagedPtr TextView -> TextView
Gtk.TextView.TextView
#if defined(ENABLE_OVERLOADING)
data CompletionBufferPropertyInfo
instance AttrInfo CompletionBufferPropertyInfo where
    type AttrAllowedOps CompletionBufferPropertyInfo = '[ 'AttrGet, 'AttrClear]
    type AttrBaseTypeConstraint CompletionBufferPropertyInfo = IsCompletion
    type AttrSetTypeConstraint CompletionBufferPropertyInfo = (~) ()
    type AttrTransferTypeConstraint CompletionBufferPropertyInfo = (~) ()
    type AttrTransferType CompletionBufferPropertyInfo = ()
    type AttrGetType CompletionBufferPropertyInfo = (Maybe Gtk.TextView.TextView)
    type AttrLabel CompletionBufferPropertyInfo = "buffer"
    type AttrOrigin CompletionBufferPropertyInfo = Completion
    attrGet = getCompletionBuffer
    attrSet = undefined
    attrTransfer _ = undefined
    attrConstruct = undefined
    attrClear = undefined
    dbgAttrInfo = P.Just (O.ResolvedSymbolInfo {
        O.resolvedSymbolName = "GI.GtkSource.Objects.Completion.buffer"
        , O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-gtksource-5.0.0/docs/GI-GtkSource-Objects-Completion.html#g:attr:buffer"
        })
#endif
   
   
   
getCompletionPageSize :: (MonadIO m, IsCompletion o) => o -> m Word32
getCompletionPageSize :: forall (m :: * -> *) o.
(MonadIO m, IsCompletion o) =>
o -> m Word32
getCompletionPageSize o
obj = IO Word32 -> m Word32
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO Word32 -> m Word32) -> IO Word32 -> m Word32
forall a b. (a -> b) -> a -> b
$ o -> String -> IO Word32
forall a. GObject a => a -> String -> IO Word32
B.Properties.getObjectPropertyUInt32 o
obj String
"page-size"
setCompletionPageSize :: (MonadIO m, IsCompletion o) => o -> Word32 -> m ()
setCompletionPageSize :: forall (m :: * -> *) o.
(MonadIO m, IsCompletion o) =>
o -> Word32 -> m ()
setCompletionPageSize o
obj Word32
val = IO () -> m ()
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ do
    o -> String -> Word32 -> IO ()
forall a. GObject a => a -> String -> Word32 -> IO ()
B.Properties.setObjectPropertyUInt32 o
obj String
"page-size" Word32
val
constructCompletionPageSize :: (IsCompletion o, MIO.MonadIO m) => Word32 -> m (GValueConstruct o)
constructCompletionPageSize :: forall o (m :: * -> *).
(IsCompletion o, MonadIO m) =>
Word32 -> m (GValueConstruct o)
constructCompletionPageSize Word32
val = IO (GValueConstruct o) -> m (GValueConstruct o)
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO (GValueConstruct o) -> m (GValueConstruct o))
-> IO (GValueConstruct o) -> m (GValueConstruct o)
forall a b. (a -> b) -> a -> b
$ do
    IO (GValueConstruct o) -> IO (GValueConstruct o)
forall a. IO a -> IO a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO (GValueConstruct o) -> IO (GValueConstruct o))
-> IO (GValueConstruct o) -> IO (GValueConstruct o)
forall a b. (a -> b) -> a -> b
$ String -> Word32 -> IO (GValueConstruct o)
forall o. String -> Word32 -> IO (GValueConstruct o)
B.Properties.constructObjectPropertyUInt32 String
"page-size" Word32
val
#if defined(ENABLE_OVERLOADING)
data CompletionPageSizePropertyInfo
instance AttrInfo CompletionPageSizePropertyInfo where
    type AttrAllowedOps CompletionPageSizePropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
    type AttrBaseTypeConstraint CompletionPageSizePropertyInfo = IsCompletion
    type AttrSetTypeConstraint CompletionPageSizePropertyInfo = (~) Word32
    type AttrTransferTypeConstraint CompletionPageSizePropertyInfo = (~) Word32
    type AttrTransferType CompletionPageSizePropertyInfo = Word32
    type AttrGetType CompletionPageSizePropertyInfo = Word32
    type AttrLabel CompletionPageSizePropertyInfo = "page-size"
    type AttrOrigin CompletionPageSizePropertyInfo = Completion
    attrGet = getCompletionPageSize
    attrSet = setCompletionPageSize
    attrTransfer _ v = do
        return v
    attrConstruct = constructCompletionPageSize
    attrClear = undefined
    dbgAttrInfo = P.Just (O.ResolvedSymbolInfo {
        O.resolvedSymbolName = "GI.GtkSource.Objects.Completion.pageSize"
        , O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-gtksource-5.0.0/docs/GI-GtkSource-Objects-Completion.html#g:attr:pageSize"
        })
#endif
   
   
   
getCompletionRememberInfoVisibility :: (MonadIO m, IsCompletion o) => o -> m Bool
getCompletionRememberInfoVisibility :: forall (m :: * -> *) o. (MonadIO m, IsCompletion o) => o -> m Bool
getCompletionRememberInfoVisibility o
obj = IO Bool -> m Bool
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO Bool -> m Bool) -> IO Bool -> m Bool
forall a b. (a -> b) -> a -> b
$ o -> String -> IO Bool
forall a. GObject a => a -> String -> IO Bool
B.Properties.getObjectPropertyBool o
obj String
"remember-info-visibility"
setCompletionRememberInfoVisibility :: (MonadIO m, IsCompletion o) => o -> Bool -> m ()
setCompletionRememberInfoVisibility :: forall (m :: * -> *) o.
(MonadIO m, IsCompletion o) =>
o -> Bool -> m ()
setCompletionRememberInfoVisibility o
obj Bool
val = IO () -> m ()
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ do
    o -> String -> Bool -> IO ()
forall a. GObject a => a -> String -> Bool -> IO ()
B.Properties.setObjectPropertyBool o
obj String
"remember-info-visibility" Bool
val
constructCompletionRememberInfoVisibility :: (IsCompletion o, MIO.MonadIO m) => Bool -> m (GValueConstruct o)
constructCompletionRememberInfoVisibility :: forall o (m :: * -> *).
(IsCompletion o, MonadIO m) =>
Bool -> m (GValueConstruct o)
constructCompletionRememberInfoVisibility Bool
val = IO (GValueConstruct o) -> m (GValueConstruct o)
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO (GValueConstruct o) -> m (GValueConstruct o))
-> IO (GValueConstruct o) -> m (GValueConstruct o)
forall a b. (a -> b) -> a -> b
$ do
    IO (GValueConstruct o) -> IO (GValueConstruct o)
forall a. IO a -> IO a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO (GValueConstruct o) -> IO (GValueConstruct o))
-> IO (GValueConstruct o) -> IO (GValueConstruct o)
forall a b. (a -> b) -> a -> b
$ String -> Bool -> IO (GValueConstruct o)
forall o. String -> Bool -> IO (GValueConstruct o)
B.Properties.constructObjectPropertyBool String
"remember-info-visibility" Bool
val
#if defined(ENABLE_OVERLOADING)
data CompletionRememberInfoVisibilityPropertyInfo
instance AttrInfo CompletionRememberInfoVisibilityPropertyInfo where
    type AttrAllowedOps CompletionRememberInfoVisibilityPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
    type AttrBaseTypeConstraint CompletionRememberInfoVisibilityPropertyInfo = IsCompletion
    type AttrSetTypeConstraint CompletionRememberInfoVisibilityPropertyInfo = (~) Bool
    type AttrTransferTypeConstraint CompletionRememberInfoVisibilityPropertyInfo = (~) Bool
    type AttrTransferType CompletionRememberInfoVisibilityPropertyInfo = Bool
    type AttrGetType CompletionRememberInfoVisibilityPropertyInfo = Bool
    type AttrLabel CompletionRememberInfoVisibilityPropertyInfo = "remember-info-visibility"
    type AttrOrigin CompletionRememberInfoVisibilityPropertyInfo = Completion
    attrGet = getCompletionRememberInfoVisibility
    attrSet = setCompletionRememberInfoVisibility
    attrTransfer _ v = do
        return v
    attrConstruct = constructCompletionRememberInfoVisibility
    attrClear = undefined
    dbgAttrInfo = P.Just (O.ResolvedSymbolInfo {
        O.resolvedSymbolName = "GI.GtkSource.Objects.Completion.rememberInfoVisibility"
        , O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-gtksource-5.0.0/docs/GI-GtkSource-Objects-Completion.html#g:attr:rememberInfoVisibility"
        })
#endif
   
   
   
getCompletionSelectOnShow :: (MonadIO m, IsCompletion o) => o -> m Bool
getCompletionSelectOnShow :: forall (m :: * -> *) o. (MonadIO m, IsCompletion o) => o -> m Bool
getCompletionSelectOnShow o
obj = IO Bool -> m Bool
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO Bool -> m Bool) -> IO Bool -> m Bool
forall a b. (a -> b) -> a -> b
$ o -> String -> IO Bool
forall a. GObject a => a -> String -> IO Bool
B.Properties.getObjectPropertyBool o
obj String
"select-on-show"
setCompletionSelectOnShow :: (MonadIO m, IsCompletion o) => o -> Bool -> m ()
setCompletionSelectOnShow :: forall (m :: * -> *) o.
(MonadIO m, IsCompletion o) =>
o -> Bool -> m ()
setCompletionSelectOnShow o
obj Bool
val = IO () -> m ()
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ do
    o -> String -> Bool -> IO ()
forall a. GObject a => a -> String -> Bool -> IO ()
B.Properties.setObjectPropertyBool o
obj String
"select-on-show" Bool
val
constructCompletionSelectOnShow :: (IsCompletion o, MIO.MonadIO m) => Bool -> m (GValueConstruct o)
constructCompletionSelectOnShow :: forall o (m :: * -> *).
(IsCompletion o, MonadIO m) =>
Bool -> m (GValueConstruct o)
constructCompletionSelectOnShow Bool
val = IO (GValueConstruct o) -> m (GValueConstruct o)
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO (GValueConstruct o) -> m (GValueConstruct o))
-> IO (GValueConstruct o) -> m (GValueConstruct o)
forall a b. (a -> b) -> a -> b
$ do
    IO (GValueConstruct o) -> IO (GValueConstruct o)
forall a. IO a -> IO a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO (GValueConstruct o) -> IO (GValueConstruct o))
-> IO (GValueConstruct o) -> IO (GValueConstruct o)
forall a b. (a -> b) -> a -> b
$ String -> Bool -> IO (GValueConstruct o)
forall o. String -> Bool -> IO (GValueConstruct o)
B.Properties.constructObjectPropertyBool String
"select-on-show" Bool
val
#if defined(ENABLE_OVERLOADING)
data CompletionSelectOnShowPropertyInfo
instance AttrInfo CompletionSelectOnShowPropertyInfo where
    type AttrAllowedOps CompletionSelectOnShowPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
    type AttrBaseTypeConstraint CompletionSelectOnShowPropertyInfo = IsCompletion
    type AttrSetTypeConstraint CompletionSelectOnShowPropertyInfo = (~) Bool
    type AttrTransferTypeConstraint CompletionSelectOnShowPropertyInfo = (~) Bool
    type AttrTransferType CompletionSelectOnShowPropertyInfo = Bool
    type AttrGetType CompletionSelectOnShowPropertyInfo = Bool
    type AttrLabel CompletionSelectOnShowPropertyInfo = "select-on-show"
    type AttrOrigin CompletionSelectOnShowPropertyInfo = Completion
    attrGet = getCompletionSelectOnShow
    attrSet = setCompletionSelectOnShow
    attrTransfer _ v = do
        return v
    attrConstruct = constructCompletionSelectOnShow
    attrClear = undefined
    dbgAttrInfo = P.Just (O.ResolvedSymbolInfo {
        O.resolvedSymbolName = "GI.GtkSource.Objects.Completion.selectOnShow"
        , O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-gtksource-5.0.0/docs/GI-GtkSource-Objects-Completion.html#g:attr:selectOnShow"
        })
#endif
   
   
   
getCompletionShowIcons :: (MonadIO m, IsCompletion o) => o -> m Bool
getCompletionShowIcons :: forall (m :: * -> *) o. (MonadIO m, IsCompletion o) => o -> m Bool
getCompletionShowIcons o
obj = IO Bool -> m Bool
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO Bool -> m Bool) -> IO Bool -> m Bool
forall a b. (a -> b) -> a -> b
$ o -> String -> IO Bool
forall a. GObject a => a -> String -> IO Bool
B.Properties.getObjectPropertyBool o
obj String
"show-icons"
setCompletionShowIcons :: (MonadIO m, IsCompletion o) => o -> Bool -> m ()
setCompletionShowIcons :: forall (m :: * -> *) o.
(MonadIO m, IsCompletion o) =>
o -> Bool -> m ()
setCompletionShowIcons o
obj Bool
val = IO () -> m ()
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ do
    o -> String -> Bool -> IO ()
forall a. GObject a => a -> String -> Bool -> IO ()
B.Properties.setObjectPropertyBool o
obj String
"show-icons" Bool
val
constructCompletionShowIcons :: (IsCompletion o, MIO.MonadIO m) => Bool -> m (GValueConstruct o)
constructCompletionShowIcons :: forall o (m :: * -> *).
(IsCompletion o, MonadIO m) =>
Bool -> m (GValueConstruct o)
constructCompletionShowIcons Bool
val = IO (GValueConstruct o) -> m (GValueConstruct o)
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO (GValueConstruct o) -> m (GValueConstruct o))
-> IO (GValueConstruct o) -> m (GValueConstruct o)
forall a b. (a -> b) -> a -> b
$ do
    IO (GValueConstruct o) -> IO (GValueConstruct o)
forall a. IO a -> IO a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO (GValueConstruct o) -> IO (GValueConstruct o))
-> IO (GValueConstruct o) -> IO (GValueConstruct o)
forall a b. (a -> b) -> a -> b
$ String -> Bool -> IO (GValueConstruct o)
forall o. String -> Bool -> IO (GValueConstruct o)
B.Properties.constructObjectPropertyBool String
"show-icons" Bool
val
#if defined(ENABLE_OVERLOADING)
data CompletionShowIconsPropertyInfo
instance AttrInfo CompletionShowIconsPropertyInfo where
    type AttrAllowedOps CompletionShowIconsPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
    type AttrBaseTypeConstraint CompletionShowIconsPropertyInfo = IsCompletion
    type AttrSetTypeConstraint CompletionShowIconsPropertyInfo = (~) Bool
    type AttrTransferTypeConstraint CompletionShowIconsPropertyInfo = (~) Bool
    type AttrTransferType CompletionShowIconsPropertyInfo = Bool
    type AttrGetType CompletionShowIconsPropertyInfo = Bool
    type AttrLabel CompletionShowIconsPropertyInfo = "show-icons"
    type AttrOrigin CompletionShowIconsPropertyInfo = Completion
    attrGet = getCompletionShowIcons
    attrSet = setCompletionShowIcons
    attrTransfer _ v = do
        return v
    attrConstruct = constructCompletionShowIcons
    attrClear = undefined
    dbgAttrInfo = P.Just (O.ResolvedSymbolInfo {
        O.resolvedSymbolName = "GI.GtkSource.Objects.Completion.showIcons"
        , O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-gtksource-5.0.0/docs/GI-GtkSource-Objects-Completion.html#g:attr:showIcons"
        })
#endif
   
   
   
getCompletionView :: (MonadIO m, IsCompletion o) => o -> m GtkSource.View.View
getCompletionView :: forall (m :: * -> *) o. (MonadIO m, IsCompletion o) => o -> m View
getCompletionView o
obj = IO View -> m View
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO View -> m View) -> IO View -> m View
forall a b. (a -> b) -> a -> b
$ Text -> IO (Maybe View) -> IO View
forall a. HasCallStack => Text -> IO (Maybe a) -> IO a
checkUnexpectedNothing Text
"getCompletionView" (IO (Maybe View) -> IO View) -> IO (Maybe View) -> IO View
forall a b. (a -> b) -> a -> b
$ o -> String -> (ManagedPtr View -> View) -> IO (Maybe View)
forall a b.
(GObject a, GObject b) =>
a -> String -> (ManagedPtr b -> b) -> IO (Maybe b)
B.Properties.getObjectPropertyObject o
obj String
"view" ManagedPtr View -> View
GtkSource.View.View
constructCompletionView :: (IsCompletion o, MIO.MonadIO m, GtkSource.View.IsView a) => a -> m (GValueConstruct o)
constructCompletionView :: forall o (m :: * -> *) a.
(IsCompletion o, MonadIO m, IsView a) =>
a -> m (GValueConstruct o)
constructCompletionView a
val = IO (GValueConstruct o) -> m (GValueConstruct o)
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO (GValueConstruct o) -> m (GValueConstruct o))
-> IO (GValueConstruct o) -> m (GValueConstruct o)
forall a b. (a -> b) -> a -> b
$ do
    IO (GValueConstruct o) -> IO (GValueConstruct o)
forall a. IO a -> IO a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO (GValueConstruct o) -> IO (GValueConstruct o))
-> IO (GValueConstruct o) -> IO (GValueConstruct o)
forall a b. (a -> b) -> a -> b
$ String -> Maybe a -> IO (GValueConstruct o)
forall a o.
GObject a =>
String -> Maybe a -> IO (GValueConstruct o)
B.Properties.constructObjectPropertyObject String
"view" (a -> Maybe a
forall a. a -> Maybe a
P.Just a
val)
#if defined(ENABLE_OVERLOADING)
data CompletionViewPropertyInfo
instance AttrInfo CompletionViewPropertyInfo where
    type AttrAllowedOps CompletionViewPropertyInfo = '[ 'AttrConstruct, 'AttrGet, 'AttrClear]
    type AttrBaseTypeConstraint CompletionViewPropertyInfo = IsCompletion
    type AttrSetTypeConstraint CompletionViewPropertyInfo = GtkSource.View.IsView
    type AttrTransferTypeConstraint CompletionViewPropertyInfo = GtkSource.View.IsView
    type AttrTransferType CompletionViewPropertyInfo = GtkSource.View.View
    type AttrGetType CompletionViewPropertyInfo = GtkSource.View.View
    type AttrLabel CompletionViewPropertyInfo = "view"
    type AttrOrigin CompletionViewPropertyInfo = Completion
    attrGet = getCompletionView
    attrSet = undefined
    attrTransfer _ v = do
        unsafeCastTo GtkSource.View.View v
    attrConstruct = constructCompletionView
    attrClear = undefined
    dbgAttrInfo = P.Just (O.ResolvedSymbolInfo {
        O.resolvedSymbolName = "GI.GtkSource.Objects.Completion.view"
        , O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-gtksource-5.0.0/docs/GI-GtkSource-Objects-Completion.html#g:attr:view"
        })
#endif
#if defined(ENABLE_OVERLOADING)
instance O.HasAttributeList Completion
type instance O.AttributeList Completion = CompletionAttributeList
type CompletionAttributeList = ('[ '("buffer", CompletionBufferPropertyInfo), '("pageSize", CompletionPageSizePropertyInfo), '("rememberInfoVisibility", CompletionRememberInfoVisibilityPropertyInfo), '("selectOnShow", CompletionSelectOnShowPropertyInfo), '("showIcons", CompletionShowIconsPropertyInfo), '("view", CompletionViewPropertyInfo)] :: [(Symbol, DK.Type)])
#endif
#if defined(ENABLE_OVERLOADING)
completionBuffer :: AttrLabelProxy "buffer"
completionBuffer = AttrLabelProxy
completionPageSize :: AttrLabelProxy "pageSize"
completionPageSize = AttrLabelProxy
completionRememberInfoVisibility :: AttrLabelProxy "rememberInfoVisibility"
completionRememberInfoVisibility = AttrLabelProxy
completionSelectOnShow :: AttrLabelProxy "selectOnShow"
completionSelectOnShow = AttrLabelProxy
completionShowIcons :: AttrLabelProxy "showIcons"
completionShowIcons = AttrLabelProxy
completionView :: AttrLabelProxy "view"
completionView = AttrLabelProxy
#endif
#if defined(ENABLE_OVERLOADING)
type instance O.SignalList Completion = CompletionSignalList
type CompletionSignalList = ('[ '("hide", CompletionHideSignalInfo), '("notify", GObject.Object.ObjectNotifySignalInfo), '("providerAdded", CompletionProviderAddedSignalInfo), '("providerRemoved", CompletionProviderRemovedSignalInfo), '("show", CompletionShowSignalInfo)] :: [(Symbol, DK.Type)])
#endif
foreign import ccall "gtk_source_completion_add_provider" gtk_source_completion_add_provider :: 
    Ptr Completion ->                       
    Ptr GtkSource.CompletionProvider.CompletionProvider -> 
    IO ()
completionAddProvider ::
    (B.CallStack.HasCallStack, MonadIO m, IsCompletion a, GtkSource.CompletionProvider.IsCompletionProvider b) =>
    a
    
    -> b
    
    -> m ()
completionAddProvider :: forall (m :: * -> *) a b.
(HasCallStack, MonadIO m, IsCompletion a,
 IsCompletionProvider b) =>
a -> b -> m ()
completionAddProvider a
self b
provider = IO () -> m ()
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ do
    Ptr Completion
self' <- a -> IO (Ptr Completion)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
self
    Ptr CompletionProvider
provider' <- b -> IO (Ptr CompletionProvider)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr b
provider
    Ptr Completion -> Ptr CompletionProvider -> IO ()
gtk_source_completion_add_provider Ptr Completion
self' Ptr CompletionProvider
provider'
    a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
self
    b -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr b
provider
    () -> IO ()
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return ()
#if defined(ENABLE_OVERLOADING)
data CompletionAddProviderMethodInfo
instance (signature ~ (b -> m ()), MonadIO m, IsCompletion a, GtkSource.CompletionProvider.IsCompletionProvider b) => O.OverloadedMethod CompletionAddProviderMethodInfo a signature where
    overloadedMethod = completionAddProvider
instance O.OverloadedMethodInfo CompletionAddProviderMethodInfo a where
    overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
        O.resolvedSymbolName = "GI.GtkSource.Objects.Completion.completionAddProvider",
        O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-gtksource-5.0.0/docs/GI-GtkSource-Objects-Completion.html#v:completionAddProvider"
        })
#endif
foreign import ccall "gtk_source_completion_block_interactive" gtk_source_completion_block_interactive :: 
    Ptr Completion ->                       
    IO ()
completionBlockInteractive ::
    (B.CallStack.HasCallStack, MonadIO m, IsCompletion a) =>
    a
    -> m ()
completionBlockInteractive :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsCompletion a) =>
a -> m ()
completionBlockInteractive a
self = IO () -> m ()
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ do
    Ptr Completion
self' <- a -> IO (Ptr Completion)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
self
    Ptr Completion -> IO ()
gtk_source_completion_block_interactive Ptr Completion
self'
    a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
self
    () -> IO ()
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return ()
#if defined(ENABLE_OVERLOADING)
data CompletionBlockInteractiveMethodInfo
instance (signature ~ (m ()), MonadIO m, IsCompletion a) => O.OverloadedMethod CompletionBlockInteractiveMethodInfo a signature where
    overloadedMethod = completionBlockInteractive
instance O.OverloadedMethodInfo CompletionBlockInteractiveMethodInfo a where
    overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
        O.resolvedSymbolName = "GI.GtkSource.Objects.Completion.completionBlockInteractive",
        O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-gtksource-5.0.0/docs/GI-GtkSource-Objects-Completion.html#v:completionBlockInteractive"
        })
#endif
foreign import ccall "gtk_source_completion_get_buffer" gtk_source_completion_get_buffer :: 
    Ptr Completion ->                       
    IO (Ptr GtkSource.Buffer.Buffer)
completionGetBuffer ::
    (B.CallStack.HasCallStack, MonadIO m, IsCompletion a) =>
    a
    
    -> m GtkSource.Buffer.Buffer
    
completionGetBuffer :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsCompletion a) =>
a -> m Buffer
completionGetBuffer a
self = IO Buffer -> m Buffer
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO Buffer -> m Buffer) -> IO Buffer -> m Buffer
forall a b. (a -> b) -> a -> b
$ do
    Ptr Completion
self' <- a -> IO (Ptr Completion)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
self
    Ptr Buffer
result <- Ptr Completion -> IO (Ptr Buffer)
gtk_source_completion_get_buffer Ptr Completion
self'
    Text -> Ptr Buffer -> IO ()
forall a. HasCallStack => Text -> Ptr a -> IO ()
checkUnexpectedReturnNULL Text
"completionGetBuffer" Ptr Buffer
result
    Buffer
result' <- ((ManagedPtr Buffer -> Buffer) -> Ptr Buffer -> IO Buffer
forall a b.
(HasCallStack, GObject a, GObject b) =>
(ManagedPtr a -> a) -> Ptr b -> IO a
newObject ManagedPtr Buffer -> Buffer
GtkSource.Buffer.Buffer) Ptr Buffer
result
    a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
self
    Buffer -> IO Buffer
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return Buffer
result'
#if defined(ENABLE_OVERLOADING)
data CompletionGetBufferMethodInfo
instance (signature ~ (m GtkSource.Buffer.Buffer), MonadIO m, IsCompletion a) => O.OverloadedMethod CompletionGetBufferMethodInfo a signature where
    overloadedMethod = completionGetBuffer
instance O.OverloadedMethodInfo CompletionGetBufferMethodInfo a where
    overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
        O.resolvedSymbolName = "GI.GtkSource.Objects.Completion.completionGetBuffer",
        O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-gtksource-5.0.0/docs/GI-GtkSource-Objects-Completion.html#v:completionGetBuffer"
        })
#endif
foreign import ccall "gtk_source_completion_get_page_size" gtk_source_completion_get_page_size :: 
    Ptr Completion ->                       
    IO Word32
completionGetPageSize ::
    (B.CallStack.HasCallStack, MonadIO m, IsCompletion a) =>
    a
    -> m Word32
completionGetPageSize :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsCompletion a) =>
a -> m Word32
completionGetPageSize a
self = IO Word32 -> m Word32
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO Word32 -> m Word32) -> IO Word32 -> m Word32
forall a b. (a -> b) -> a -> b
$ do
    Ptr Completion
self' <- a -> IO (Ptr Completion)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
self
    Word32
result <- Ptr Completion -> IO Word32
gtk_source_completion_get_page_size Ptr Completion
self'
    a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
self
    Word32 -> IO Word32
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return Word32
result
#if defined(ENABLE_OVERLOADING)
data CompletionGetPageSizeMethodInfo
instance (signature ~ (m Word32), MonadIO m, IsCompletion a) => O.OverloadedMethod CompletionGetPageSizeMethodInfo a signature where
    overloadedMethod = completionGetPageSize
instance O.OverloadedMethodInfo CompletionGetPageSizeMethodInfo a where
    overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
        O.resolvedSymbolName = "GI.GtkSource.Objects.Completion.completionGetPageSize",
        O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-gtksource-5.0.0/docs/GI-GtkSource-Objects-Completion.html#v:completionGetPageSize"
        })
#endif
foreign import ccall "gtk_source_completion_get_view" gtk_source_completion_get_view :: 
    Ptr Completion ->                       
    IO (Ptr GtkSource.View.View)
completionGetView ::
    (B.CallStack.HasCallStack, MonadIO m, IsCompletion a) =>
    a
    
    -> m GtkSource.View.View
    
completionGetView :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsCompletion a) =>
a -> m View
completionGetView a
self = IO View -> m View
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO View -> m View) -> IO View -> m View
forall a b. (a -> b) -> a -> b
$ do
    Ptr Completion
self' <- a -> IO (Ptr Completion)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
self
    Ptr View
result <- Ptr Completion -> IO (Ptr View)
gtk_source_completion_get_view Ptr Completion
self'
    Text -> Ptr View -> IO ()
forall a. HasCallStack => Text -> Ptr a -> IO ()
checkUnexpectedReturnNULL Text
"completionGetView" Ptr View
result
    View
result' <- ((ManagedPtr View -> View) -> Ptr View -> IO View
forall a b.
(HasCallStack, GObject a, GObject b) =>
(ManagedPtr a -> a) -> Ptr b -> IO a
newObject ManagedPtr View -> View
GtkSource.View.View) Ptr View
result
    a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
self
    View -> IO View
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return View
result'
#if defined(ENABLE_OVERLOADING)
data CompletionGetViewMethodInfo
instance (signature ~ (m GtkSource.View.View), MonadIO m, IsCompletion a) => O.OverloadedMethod CompletionGetViewMethodInfo a signature where
    overloadedMethod = completionGetView
instance O.OverloadedMethodInfo CompletionGetViewMethodInfo a where
    overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
        O.resolvedSymbolName = "GI.GtkSource.Objects.Completion.completionGetView",
        O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-gtksource-5.0.0/docs/GI-GtkSource-Objects-Completion.html#v:completionGetView"
        })
#endif
foreign import ccall "gtk_source_completion_hide" gtk_source_completion_hide :: 
    Ptr Completion ->                       
    IO ()
completionHide ::
    (B.CallStack.HasCallStack, MonadIO m, IsCompletion a) =>
    a
    
    -> m ()
completionHide :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsCompletion a) =>
a -> m ()
completionHide a
self = IO () -> m ()
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ do
    Ptr Completion
self' <- a -> IO (Ptr Completion)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
self
    Ptr Completion -> IO ()
gtk_source_completion_hide Ptr Completion
self'
    a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
self
    () -> IO ()
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return ()
#if defined(ENABLE_OVERLOADING)
data CompletionHideMethodInfo
instance (signature ~ (m ()), MonadIO m, IsCompletion a) => O.OverloadedMethod CompletionHideMethodInfo a signature where
    overloadedMethod = completionHide
instance O.OverloadedMethodInfo CompletionHideMethodInfo a where
    overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
        O.resolvedSymbolName = "GI.GtkSource.Objects.Completion.completionHide",
        O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-gtksource-5.0.0/docs/GI-GtkSource-Objects-Completion.html#v:completionHide"
        })
#endif
foreign import ccall "gtk_source_completion_remove_provider" gtk_source_completion_remove_provider :: 
    Ptr Completion ->                       
    Ptr GtkSource.CompletionProvider.CompletionProvider -> 
    IO ()
completionRemoveProvider ::
    (B.CallStack.HasCallStack, MonadIO m, IsCompletion a, GtkSource.CompletionProvider.IsCompletionProvider b) =>
    a
    
    -> b
    
    -> m ()
completionRemoveProvider :: forall (m :: * -> *) a b.
(HasCallStack, MonadIO m, IsCompletion a,
 IsCompletionProvider b) =>
a -> b -> m ()
completionRemoveProvider a
self b
provider = IO () -> m ()
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ do
    Ptr Completion
self' <- a -> IO (Ptr Completion)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
self
    Ptr CompletionProvider
provider' <- b -> IO (Ptr CompletionProvider)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr b
provider
    Ptr Completion -> Ptr CompletionProvider -> IO ()
gtk_source_completion_remove_provider Ptr Completion
self' Ptr CompletionProvider
provider'
    a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
self
    b -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr b
provider
    () -> IO ()
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return ()
#if defined(ENABLE_OVERLOADING)
data CompletionRemoveProviderMethodInfo
instance (signature ~ (b -> m ()), MonadIO m, IsCompletion a, GtkSource.CompletionProvider.IsCompletionProvider b) => O.OverloadedMethod CompletionRemoveProviderMethodInfo a signature where
    overloadedMethod = completionRemoveProvider
instance O.OverloadedMethodInfo CompletionRemoveProviderMethodInfo a where
    overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
        O.resolvedSymbolName = "GI.GtkSource.Objects.Completion.completionRemoveProvider",
        O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-gtksource-5.0.0/docs/GI-GtkSource-Objects-Completion.html#v:completionRemoveProvider"
        })
#endif
foreign import ccall "gtk_source_completion_set_page_size" gtk_source_completion_set_page_size :: 
    Ptr Completion ->                       
    Word32 ->                               
    IO ()
completionSetPageSize ::
    (B.CallStack.HasCallStack, MonadIO m, IsCompletion a) =>
    a
    -> Word32
    -> m ()
completionSetPageSize :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsCompletion a) =>
a -> Word32 -> m ()
completionSetPageSize a
self Word32
pageSize = IO () -> m ()
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ do
    Ptr Completion
self' <- a -> IO (Ptr Completion)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
self
    Ptr Completion -> Word32 -> IO ()
gtk_source_completion_set_page_size Ptr Completion
self' Word32
pageSize
    a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
self
    () -> IO ()
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return ()
#if defined(ENABLE_OVERLOADING)
data CompletionSetPageSizeMethodInfo
instance (signature ~ (Word32 -> m ()), MonadIO m, IsCompletion a) => O.OverloadedMethod CompletionSetPageSizeMethodInfo a signature where
    overloadedMethod = completionSetPageSize
instance O.OverloadedMethodInfo CompletionSetPageSizeMethodInfo a where
    overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
        O.resolvedSymbolName = "GI.GtkSource.Objects.Completion.completionSetPageSize",
        O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-gtksource-5.0.0/docs/GI-GtkSource-Objects-Completion.html#v:completionSetPageSize"
        })
#endif
foreign import ccall "gtk_source_completion_show" gtk_source_completion_show :: 
    Ptr Completion ->                       
    IO ()
completionShow ::
    (B.CallStack.HasCallStack, MonadIO m, IsCompletion a) =>
    a
    
    -> m ()
completionShow :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsCompletion a) =>
a -> m ()
completionShow a
self = IO () -> m ()
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ do
    Ptr Completion
self' <- a -> IO (Ptr Completion)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
self
    Ptr Completion -> IO ()
gtk_source_completion_show Ptr Completion
self'
    a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
self
    () -> IO ()
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return ()
#if defined(ENABLE_OVERLOADING)
data CompletionShowMethodInfo
instance (signature ~ (m ()), MonadIO m, IsCompletion a) => O.OverloadedMethod CompletionShowMethodInfo a signature where
    overloadedMethod = completionShow
instance O.OverloadedMethodInfo CompletionShowMethodInfo a where
    overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
        O.resolvedSymbolName = "GI.GtkSource.Objects.Completion.completionShow",
        O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-gtksource-5.0.0/docs/GI-GtkSource-Objects-Completion.html#v:completionShow"
        })
#endif
foreign import ccall "gtk_source_completion_unblock_interactive" gtk_source_completion_unblock_interactive :: 
    Ptr Completion ->                       
    IO ()
completionUnblockInteractive ::
    (B.CallStack.HasCallStack, MonadIO m, IsCompletion a) =>
    a
    -> m ()
completionUnblockInteractive :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsCompletion a) =>
a -> m ()
completionUnblockInteractive a
self = IO () -> m ()
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ do
    Ptr Completion
self' <- a -> IO (Ptr Completion)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
self
    Ptr Completion -> IO ()
gtk_source_completion_unblock_interactive Ptr Completion
self'
    a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
self
    () -> IO ()
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return ()
#if defined(ENABLE_OVERLOADING)
data CompletionUnblockInteractiveMethodInfo
instance (signature ~ (m ()), MonadIO m, IsCompletion a) => O.OverloadedMethod CompletionUnblockInteractiveMethodInfo a signature where
    overloadedMethod = completionUnblockInteractive
instance O.OverloadedMethodInfo CompletionUnblockInteractiveMethodInfo a where
    overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
        O.resolvedSymbolName = "GI.GtkSource.Objects.Completion.completionUnblockInteractive",
        O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-gtksource-5.0.0/docs/GI-GtkSource-Objects-Completion.html#v:completionUnblockInteractive"
        })
#endif
foreign import ccall "gtk_source_completion_fuzzy_highlight" gtk_source_completion_fuzzy_highlight :: 
    CString ->                              
    CString ->                              
    IO (Ptr Pango.AttrList.AttrList)
completionFuzzyHighlight ::
    (B.CallStack.HasCallStack, MonadIO m) =>
    T.Text
    
    -> T.Text
    
    -> m (Maybe Pango.AttrList.AttrList)
    
completionFuzzyHighlight :: forall (m :: * -> *).
(HasCallStack, MonadIO m) =>
Text -> Text -> m (Maybe AttrList)
completionFuzzyHighlight Text
haystack Text
casefoldQuery = IO (Maybe AttrList) -> m (Maybe AttrList)
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO (Maybe AttrList) -> m (Maybe AttrList))
-> IO (Maybe AttrList) -> m (Maybe AttrList)
forall a b. (a -> b) -> a -> b
$ do
    CString
haystack' <- Text -> IO CString
textToCString Text
haystack
    CString
casefoldQuery' <- Text -> IO CString
textToCString Text
casefoldQuery
    Ptr AttrList
result <- CString -> CString -> IO (Ptr AttrList)
gtk_source_completion_fuzzy_highlight CString
haystack' CString
casefoldQuery'
    Maybe AttrList
maybeResult <- Ptr AttrList
-> (Ptr AttrList -> IO AttrList) -> IO (Maybe AttrList)
forall a b. Ptr a -> (Ptr a -> IO b) -> IO (Maybe b)
convertIfNonNull Ptr AttrList
result ((Ptr AttrList -> IO AttrList) -> IO (Maybe AttrList))
-> (Ptr AttrList -> IO AttrList) -> IO (Maybe AttrList)
forall a b. (a -> b) -> a -> b
$ \Ptr AttrList
result' -> do
        AttrList
result'' <- ((ManagedPtr AttrList -> AttrList) -> Ptr AttrList -> IO AttrList
forall a.
(HasCallStack, GBoxed a) =>
(ManagedPtr a -> a) -> Ptr a -> IO a
wrapBoxed ManagedPtr AttrList -> AttrList
Pango.AttrList.AttrList) Ptr AttrList
result'
        AttrList -> IO AttrList
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return AttrList
result''
    CString -> IO ()
forall a. Ptr a -> IO ()
freeMem CString
haystack'
    CString -> IO ()
forall a. Ptr a -> IO ()
freeMem CString
casefoldQuery'
    Maybe AttrList -> IO (Maybe AttrList)
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return Maybe AttrList
maybeResult
#if defined(ENABLE_OVERLOADING)
#endif
foreign import ccall "gtk_source_completion_fuzzy_match" gtk_source_completion_fuzzy_match :: 
    CString ->                              
    CString ->                              
    Ptr Word32 ->                           
    IO CInt
completionFuzzyMatch ::
    (B.CallStack.HasCallStack, MonadIO m) =>
    Maybe (T.Text)
    
    -> T.Text
    
    -> m ((Bool, Word32))
    
completionFuzzyMatch :: forall (m :: * -> *).
(HasCallStack, MonadIO m) =>
Maybe Text -> Text -> m (Bool, Word32)
completionFuzzyMatch Maybe Text
haystack Text
casefoldNeedle = IO (Bool, Word32) -> m (Bool, Word32)
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO (Bool, Word32) -> m (Bool, Word32))
-> IO (Bool, Word32) -> m (Bool, Word32)
forall a b. (a -> b) -> a -> b
$ do
    CString
maybeHaystack <- case Maybe Text
haystack of
        Maybe Text
Nothing -> CString -> IO CString
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return CString
forall a. Ptr a
nullPtr
        Just Text
jHaystack -> do
            CString
jHaystack' <- Text -> IO CString
textToCString Text
jHaystack
            CString -> IO CString
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return CString
jHaystack'
    CString
casefoldNeedle' <- Text -> IO CString
textToCString Text
casefoldNeedle
    Ptr Word32
priority <- IO (Ptr Word32)
forall a. Storable a => IO (Ptr a)
allocMem :: IO (Ptr Word32)
    CInt
result <- CString -> CString -> Ptr Word32 -> IO CInt
gtk_source_completion_fuzzy_match CString
maybeHaystack CString
casefoldNeedle' Ptr Word32
priority
    let result' :: Bool
result' = (CInt -> CInt -> Bool
forall a. Eq a => a -> a -> Bool
/= CInt
0) CInt
result
    Word32
priority' <- Ptr Word32 -> IO Word32
forall a. Storable a => Ptr a -> IO a
peek Ptr Word32
priority
    CString -> IO ()
forall a. Ptr a -> IO ()
freeMem CString
maybeHaystack
    CString -> IO ()
forall a. Ptr a -> IO ()
freeMem CString
casefoldNeedle'
    Ptr Word32 -> IO ()
forall a. Ptr a -> IO ()
freeMem Ptr Word32
priority
    (Bool, Word32) -> IO (Bool, Word32)
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return (Bool
result', Word32
priority')
#if defined(ENABLE_OVERLOADING)
#endif