{-# LANGUAGE TypeApplications #-}


-- | Copyright  : Will Thompson and Iñaki García Etxebarria
-- License    : LGPL-2.1
-- Maintainer : Iñaki García Etxebarria
-- 
-- Widget for single cell of completion proposal.
-- 
-- The @GtkSourceCompletionCell@ widget provides a container to display various
-- types of information with the completion display.
-- 
-- Each proposal may consist of multiple cells depending on the complexity of
-- the proposal. For example, programming language proposals may contain a cell
-- for the \"left-hand-side\" of an operation along with the \"typed-text\" for a
-- function name and \"parameters\". They may also optionally set an icon to
-- signify the kind of result.
-- 
-- A [iface/@completionProvider@/] should implement the
-- [vfunc/@completionProvider@/.display] virtual function to control
-- how to convert data from their [iface/@completionProposal@/] to content for
-- the @GtkSourceCompletionCell@.

#if (MIN_VERSION_haskell_gi_overloading(1,0,0) && !defined(__HADDOCK_VERSION__))
#define ENABLE_OVERLOADING
#endif

module GI.GtkSource.Objects.CompletionCell
    ( 

-- * Exported types
    CompletionCell(..)                      ,
    IsCompletionCell                        ,
    toCompletionCell                        ,


 -- * Methods
-- | 
-- 
--  === __Click to display all available methods, including inherited ones__
-- ==== Methods
-- [actionSetEnabled]("GI.Gtk.Objects.Widget#g:method:actionSetEnabled"), [activate]("GI.Gtk.Objects.Widget#g:method:activate"), [activateAction]("GI.Gtk.Objects.Widget#g:method:activateAction"), [activateDefault]("GI.Gtk.Objects.Widget#g:method:activateDefault"), [addController]("GI.Gtk.Objects.Widget#g:method:addController"), [addCssClass]("GI.Gtk.Objects.Widget#g:method:addCssClass"), [addMnemonicLabel]("GI.Gtk.Objects.Widget#g:method:addMnemonicLabel"), [addTickCallback]("GI.Gtk.Objects.Widget#g:method:addTickCallback"), [allocate]("GI.Gtk.Objects.Widget#g:method:allocate"), [bindProperty]("GI.GObject.Objects.Object#g:method:bindProperty"), [bindPropertyFull]("GI.GObject.Objects.Object#g:method:bindPropertyFull"), [childFocus]("GI.Gtk.Objects.Widget#g:method:childFocus"), [computeBounds]("GI.Gtk.Objects.Widget#g:method:computeBounds"), [computeExpand]("GI.Gtk.Objects.Widget#g:method:computeExpand"), [computePoint]("GI.Gtk.Objects.Widget#g:method:computePoint"), [computeTransform]("GI.Gtk.Objects.Widget#g:method:computeTransform"), [contains]("GI.Gtk.Objects.Widget#g:method:contains"), [createPangoContext]("GI.Gtk.Objects.Widget#g:method:createPangoContext"), [createPangoLayout]("GI.Gtk.Objects.Widget#g:method:createPangoLayout"), [disposeTemplate]("GI.Gtk.Objects.Widget#g:method:disposeTemplate"), [dragCheckThreshold]("GI.Gtk.Objects.Widget#g:method:dragCheckThreshold"), [errorBell]("GI.Gtk.Objects.Widget#g:method:errorBell"), [forceFloating]("GI.GObject.Objects.Object#g:method:forceFloating"), [freezeNotify]("GI.GObject.Objects.Object#g:method:freezeNotify"), [getv]("GI.GObject.Objects.Object#g:method:getv"), [grabFocus]("GI.Gtk.Objects.Widget#g:method:grabFocus"), [hasCssClass]("GI.Gtk.Objects.Widget#g:method:hasCssClass"), [hasDefault]("GI.Gtk.Objects.Widget#g:method:hasDefault"), [hasFocus]("GI.Gtk.Objects.Widget#g:method:hasFocus"), [hasVisibleFocus]("GI.Gtk.Objects.Widget#g:method:hasVisibleFocus"), [hide]("GI.Gtk.Objects.Widget#g:method:hide"), [inDestruction]("GI.Gtk.Objects.Widget#g:method:inDestruction"), [initTemplate]("GI.Gtk.Objects.Widget#g:method:initTemplate"), [insertActionGroup]("GI.Gtk.Objects.Widget#g:method:insertActionGroup"), [insertAfter]("GI.Gtk.Objects.Widget#g:method:insertAfter"), [insertBefore]("GI.Gtk.Objects.Widget#g:method:insertBefore"), [isAncestor]("GI.Gtk.Objects.Widget#g:method:isAncestor"), [isDrawable]("GI.Gtk.Objects.Widget#g:method:isDrawable"), [isFloating]("GI.GObject.Objects.Object#g:method:isFloating"), [isFocus]("GI.Gtk.Objects.Widget#g:method:isFocus"), [isSensitive]("GI.Gtk.Objects.Widget#g:method:isSensitive"), [isVisible]("GI.Gtk.Objects.Widget#g:method:isVisible"), [keynavFailed]("GI.Gtk.Objects.Widget#g:method:keynavFailed"), [listMnemonicLabels]("GI.Gtk.Objects.Widget#g:method:listMnemonicLabels"), [map]("GI.Gtk.Objects.Widget#g:method:map"), [measure]("GI.Gtk.Objects.Widget#g:method:measure"), [mnemonicActivate]("GI.Gtk.Objects.Widget#g:method:mnemonicActivate"), [notify]("GI.GObject.Objects.Object#g:method:notify"), [notifyByPspec]("GI.GObject.Objects.Object#g:method:notifyByPspec"), [observeChildren]("GI.Gtk.Objects.Widget#g:method:observeChildren"), [observeControllers]("GI.Gtk.Objects.Widget#g:method:observeControllers"), [pick]("GI.Gtk.Objects.Widget#g:method:pick"), [queueAllocate]("GI.Gtk.Objects.Widget#g:method:queueAllocate"), [queueDraw]("GI.Gtk.Objects.Widget#g:method:queueDraw"), [queueResize]("GI.Gtk.Objects.Widget#g:method:queueResize"), [realize]("GI.Gtk.Objects.Widget#g:method:realize"), [ref]("GI.GObject.Objects.Object#g:method:ref"), [refSink]("GI.GObject.Objects.Object#g:method:refSink"), [removeController]("GI.Gtk.Objects.Widget#g:method:removeController"), [removeCssClass]("GI.Gtk.Objects.Widget#g:method:removeCssClass"), [removeMnemonicLabel]("GI.Gtk.Objects.Widget#g:method:removeMnemonicLabel"), [removeTickCallback]("GI.Gtk.Objects.Widget#g:method:removeTickCallback"), [resetProperty]("GI.Gtk.Interfaces.Accessible#g:method:resetProperty"), [resetRelation]("GI.Gtk.Interfaces.Accessible#g:method:resetRelation"), [resetState]("GI.Gtk.Interfaces.Accessible#g:method:resetState"), [runDispose]("GI.GObject.Objects.Object#g:method:runDispose"), [shouldLayout]("GI.Gtk.Objects.Widget#g:method:shouldLayout"), [show]("GI.Gtk.Objects.Widget#g:method:show"), [sizeAllocate]("GI.Gtk.Objects.Widget#g:method:sizeAllocate"), [snapshotChild]("GI.Gtk.Objects.Widget#g:method:snapshotChild"), [stealData]("GI.GObject.Objects.Object#g:method:stealData"), [stealQdata]("GI.GObject.Objects.Object#g:method:stealQdata"), [thawNotify]("GI.GObject.Objects.Object#g:method:thawNotify"), [translateCoordinates]("GI.Gtk.Objects.Widget#g:method:translateCoordinates"), [triggerTooltipQuery]("GI.Gtk.Objects.Widget#g:method:triggerTooltipQuery"), [unmap]("GI.Gtk.Objects.Widget#g:method:unmap"), [unparent]("GI.Gtk.Objects.Widget#g:method:unparent"), [unrealize]("GI.Gtk.Objects.Widget#g:method:unrealize"), [unref]("GI.GObject.Objects.Object#g:method:unref"), [unsetStateFlags]("GI.Gtk.Objects.Widget#g:method:unsetStateFlags"), [updateNextAccessibleSibling]("GI.Gtk.Interfaces.Accessible#g:method:updateNextAccessibleSibling"), [updateProperty]("GI.Gtk.Interfaces.Accessible#g:method:updateProperty"), [updateRelation]("GI.Gtk.Interfaces.Accessible#g:method:updateRelation"), [updateState]("GI.Gtk.Interfaces.Accessible#g:method:updateState"), [watchClosure]("GI.GObject.Objects.Object#g:method:watchClosure").
-- 
-- ==== Getters
-- [getAccessibleParent]("GI.Gtk.Interfaces.Accessible#g:method:getAccessibleParent"), [getAccessibleRole]("GI.Gtk.Interfaces.Accessible#g:method:getAccessibleRole"), [getAllocatedBaseline]("GI.Gtk.Objects.Widget#g:method:getAllocatedBaseline"), [getAllocatedHeight]("GI.Gtk.Objects.Widget#g:method:getAllocatedHeight"), [getAllocatedWidth]("GI.Gtk.Objects.Widget#g:method:getAllocatedWidth"), [getAllocation]("GI.Gtk.Objects.Widget#g:method:getAllocation"), [getAncestor]("GI.Gtk.Objects.Widget#g:method:getAncestor"), [getAtContext]("GI.Gtk.Interfaces.Accessible#g:method:getAtContext"), [getBounds]("GI.Gtk.Interfaces.Accessible#g:method:getBounds"), [getBuildableId]("GI.Gtk.Interfaces.Buildable#g:method:getBuildableId"), [getCanFocus]("GI.Gtk.Objects.Widget#g:method:getCanFocus"), [getCanTarget]("GI.Gtk.Objects.Widget#g:method:getCanTarget"), [getChildVisible]("GI.Gtk.Objects.Widget#g:method:getChildVisible"), [getClipboard]("GI.Gtk.Objects.Widget#g:method:getClipboard"), [getColor]("GI.Gtk.Objects.Widget#g:method:getColor"), [getColumn]("GI.GtkSource.Objects.CompletionCell#g:method:getColumn"), [getCssClasses]("GI.Gtk.Objects.Widget#g:method:getCssClasses"), [getCssName]("GI.Gtk.Objects.Widget#g:method:getCssName"), [getCursor]("GI.Gtk.Objects.Widget#g:method:getCursor"), [getData]("GI.GObject.Objects.Object#g:method:getData"), [getDirection]("GI.Gtk.Objects.Widget#g:method:getDirection"), [getDisplay]("GI.Gtk.Objects.Widget#g:method:getDisplay"), [getFirstAccessibleChild]("GI.Gtk.Interfaces.Accessible#g:method:getFirstAccessibleChild"), [getFirstChild]("GI.Gtk.Objects.Widget#g:method:getFirstChild"), [getFocusChild]("GI.Gtk.Objects.Widget#g:method:getFocusChild"), [getFocusOnClick]("GI.Gtk.Objects.Widget#g:method:getFocusOnClick"), [getFocusable]("GI.Gtk.Objects.Widget#g:method:getFocusable"), [getFontMap]("GI.Gtk.Objects.Widget#g:method:getFontMap"), [getFontOptions]("GI.Gtk.Objects.Widget#g:method:getFontOptions"), [getFrameClock]("GI.Gtk.Objects.Widget#g:method:getFrameClock"), [getHalign]("GI.Gtk.Objects.Widget#g:method:getHalign"), [getHasTooltip]("GI.Gtk.Objects.Widget#g:method:getHasTooltip"), [getHeight]("GI.Gtk.Objects.Widget#g:method:getHeight"), [getHexpand]("GI.Gtk.Objects.Widget#g:method:getHexpand"), [getHexpandSet]("GI.Gtk.Objects.Widget#g:method:getHexpandSet"), [getLastChild]("GI.Gtk.Objects.Widget#g:method:getLastChild"), [getLayoutManager]("GI.Gtk.Objects.Widget#g:method:getLayoutManager"), [getMapped]("GI.Gtk.Objects.Widget#g:method:getMapped"), [getMarginBottom]("GI.Gtk.Objects.Widget#g:method:getMarginBottom"), [getMarginEnd]("GI.Gtk.Objects.Widget#g:method:getMarginEnd"), [getMarginStart]("GI.Gtk.Objects.Widget#g:method:getMarginStart"), [getMarginTop]("GI.Gtk.Objects.Widget#g:method:getMarginTop"), [getName]("GI.Gtk.Objects.Widget#g:method:getName"), [getNative]("GI.Gtk.Objects.Widget#g:method:getNative"), [getNextAccessibleSibling]("GI.Gtk.Interfaces.Accessible#g:method:getNextAccessibleSibling"), [getNextSibling]("GI.Gtk.Objects.Widget#g:method:getNextSibling"), [getOpacity]("GI.Gtk.Objects.Widget#g:method:getOpacity"), [getOverflow]("GI.Gtk.Objects.Widget#g:method:getOverflow"), [getPangoContext]("GI.Gtk.Objects.Widget#g:method:getPangoContext"), [getParent]("GI.Gtk.Objects.Widget#g:method:getParent"), [getPlatformState]("GI.Gtk.Interfaces.Accessible#g:method:getPlatformState"), [getPreferredSize]("GI.Gtk.Objects.Widget#g:method:getPreferredSize"), [getPrevSibling]("GI.Gtk.Objects.Widget#g:method:getPrevSibling"), [getPrimaryClipboard]("GI.Gtk.Objects.Widget#g:method:getPrimaryClipboard"), [getProperty]("GI.GObject.Objects.Object#g:method:getProperty"), [getQdata]("GI.GObject.Objects.Object#g:method:getQdata"), [getRealized]("GI.Gtk.Objects.Widget#g:method:getRealized"), [getReceivesDefault]("GI.Gtk.Objects.Widget#g:method:getReceivesDefault"), [getRequestMode]("GI.Gtk.Objects.Widget#g:method:getRequestMode"), [getRoot]("GI.Gtk.Objects.Widget#g:method:getRoot"), [getScaleFactor]("GI.Gtk.Objects.Widget#g:method:getScaleFactor"), [getSensitive]("GI.Gtk.Objects.Widget#g:method:getSensitive"), [getSettings]("GI.Gtk.Objects.Widget#g:method:getSettings"), [getSize]("GI.Gtk.Objects.Widget#g:method:getSize"), [getSizeRequest]("GI.Gtk.Objects.Widget#g:method:getSizeRequest"), [getStateFlags]("GI.Gtk.Objects.Widget#g:method:getStateFlags"), [getStyleContext]("GI.Gtk.Objects.Widget#g:method:getStyleContext"), [getTemplateChild]("GI.Gtk.Objects.Widget#g:method:getTemplateChild"), [getTooltipMarkup]("GI.Gtk.Objects.Widget#g:method:getTooltipMarkup"), [getTooltipText]("GI.Gtk.Objects.Widget#g:method:getTooltipText"), [getValign]("GI.Gtk.Objects.Widget#g:method:getValign"), [getVexpand]("GI.Gtk.Objects.Widget#g:method:getVexpand"), [getVexpandSet]("GI.Gtk.Objects.Widget#g:method:getVexpandSet"), [getVisible]("GI.Gtk.Objects.Widget#g:method:getVisible"), [getWidget]("GI.GtkSource.Objects.CompletionCell#g:method:getWidget"), [getWidth]("GI.Gtk.Objects.Widget#g:method:getWidth").
-- 
-- ==== Setters
-- [setAccessibleParent]("GI.Gtk.Interfaces.Accessible#g:method:setAccessibleParent"), [setCanFocus]("GI.Gtk.Objects.Widget#g:method:setCanFocus"), [setCanTarget]("GI.Gtk.Objects.Widget#g:method:setCanTarget"), [setChildVisible]("GI.Gtk.Objects.Widget#g:method:setChildVisible"), [setCssClasses]("GI.Gtk.Objects.Widget#g:method:setCssClasses"), [setCursor]("GI.Gtk.Objects.Widget#g:method:setCursor"), [setCursorFromName]("GI.Gtk.Objects.Widget#g:method:setCursorFromName"), [setData]("GI.GObject.Objects.Object#g:method:setData"), [setDataFull]("GI.GObject.Objects.Object#g:method:setDataFull"), [setDirection]("GI.Gtk.Objects.Widget#g:method:setDirection"), [setFocusChild]("GI.Gtk.Objects.Widget#g:method:setFocusChild"), [setFocusOnClick]("GI.Gtk.Objects.Widget#g:method:setFocusOnClick"), [setFocusable]("GI.Gtk.Objects.Widget#g:method:setFocusable"), [setFontMap]("GI.Gtk.Objects.Widget#g:method:setFontMap"), [setFontOptions]("GI.Gtk.Objects.Widget#g:method:setFontOptions"), [setGicon]("GI.GtkSource.Objects.CompletionCell#g:method:setGicon"), [setHalign]("GI.Gtk.Objects.Widget#g:method:setHalign"), [setHasTooltip]("GI.Gtk.Objects.Widget#g:method:setHasTooltip"), [setHexpand]("GI.Gtk.Objects.Widget#g:method:setHexpand"), [setHexpandSet]("GI.Gtk.Objects.Widget#g:method:setHexpandSet"), [setIconName]("GI.GtkSource.Objects.CompletionCell#g:method:setIconName"), [setLayoutManager]("GI.Gtk.Objects.Widget#g:method:setLayoutManager"), [setMarginBottom]("GI.Gtk.Objects.Widget#g:method:setMarginBottom"), [setMarginEnd]("GI.Gtk.Objects.Widget#g:method:setMarginEnd"), [setMarginStart]("GI.Gtk.Objects.Widget#g:method:setMarginStart"), [setMarginTop]("GI.Gtk.Objects.Widget#g:method:setMarginTop"), [setMarkup]("GI.GtkSource.Objects.CompletionCell#g:method:setMarkup"), [setName]("GI.Gtk.Objects.Widget#g:method:setName"), [setOpacity]("GI.Gtk.Objects.Widget#g:method:setOpacity"), [setOverflow]("GI.Gtk.Objects.Widget#g:method:setOverflow"), [setPaintable]("GI.GtkSource.Objects.CompletionCell#g:method:setPaintable"), [setParent]("GI.Gtk.Objects.Widget#g:method:setParent"), [setProperty]("GI.GObject.Objects.Object#g:method:setProperty"), [setReceivesDefault]("GI.Gtk.Objects.Widget#g:method:setReceivesDefault"), [setSensitive]("GI.Gtk.Objects.Widget#g:method:setSensitive"), [setSizeRequest]("GI.Gtk.Objects.Widget#g:method:setSizeRequest"), [setStateFlags]("GI.Gtk.Objects.Widget#g:method:setStateFlags"), [setText]("GI.GtkSource.Objects.CompletionCell#g:method:setText"), [setTextWithAttributes]("GI.GtkSource.Objects.CompletionCell#g:method:setTextWithAttributes"), [setTooltipMarkup]("GI.Gtk.Objects.Widget#g:method:setTooltipMarkup"), [setTooltipText]("GI.Gtk.Objects.Widget#g:method:setTooltipText"), [setValign]("GI.Gtk.Objects.Widget#g:method:setValign"), [setVexpand]("GI.Gtk.Objects.Widget#g:method:setVexpand"), [setVexpandSet]("GI.Gtk.Objects.Widget#g:method:setVexpandSet"), [setVisible]("GI.Gtk.Objects.Widget#g:method:setVisible"), [setWidget]("GI.GtkSource.Objects.CompletionCell#g:method:setWidget").

#if defined(ENABLE_OVERLOADING)
    ResolveCompletionCellMethod             ,
#endif

-- ** getColumn #method:getColumn#

#if defined(ENABLE_OVERLOADING)
    CompletionCellGetColumnMethodInfo       ,
#endif
    completionCellGetColumn                 ,


-- ** getWidget #method:getWidget#

#if defined(ENABLE_OVERLOADING)
    CompletionCellGetWidgetMethodInfo       ,
#endif
    completionCellGetWidget                 ,


-- ** setGicon #method:setGicon#

#if defined(ENABLE_OVERLOADING)
    CompletionCellSetGiconMethodInfo        ,
#endif
    completionCellSetGicon                  ,


-- ** setIconName #method:setIconName#

#if defined(ENABLE_OVERLOADING)
    CompletionCellSetIconNameMethodInfo     ,
#endif
    completionCellSetIconName               ,


-- ** setMarkup #method:setMarkup#

#if defined(ENABLE_OVERLOADING)
    CompletionCellSetMarkupMethodInfo       ,
#endif
    completionCellSetMarkup                 ,


-- ** setPaintable #method:setPaintable#

#if defined(ENABLE_OVERLOADING)
    CompletionCellSetPaintableMethodInfo    ,
#endif
    completionCellSetPaintable              ,


-- ** setText #method:setText#

#if defined(ENABLE_OVERLOADING)
    CompletionCellSetTextMethodInfo         ,
#endif
    completionCellSetText                   ,


-- ** setTextWithAttributes #method:setTextWithAttributes#

#if defined(ENABLE_OVERLOADING)
    CompletionCellSetTextWithAttributesMethodInfo,
#endif
    completionCellSetTextWithAttributes     ,


-- ** setWidget #method:setWidget#

#if defined(ENABLE_OVERLOADING)
    CompletionCellSetWidgetMethodInfo       ,
#endif
    completionCellSetWidget                 ,




 -- * Properties


-- ** column #attr:column#
-- | /No description available in the introspection data./

#if defined(ENABLE_OVERLOADING)
    CompletionCellColumnPropertyInfo        ,
#endif
#if defined(ENABLE_OVERLOADING)
    completionCellColumn                    ,
#endif
    constructCompletionCellColumn           ,
    getCompletionCellColumn                 ,


-- ** markup #attr:markup#
-- | /No description available in the introspection data./

#if defined(ENABLE_OVERLOADING)
    CompletionCellMarkupPropertyInfo        ,
#endif
#if defined(ENABLE_OVERLOADING)
    completionCellMarkup                    ,
#endif
    constructCompletionCellMarkup           ,
    getCompletionCellMarkup                 ,
    setCompletionCellMarkup                 ,


-- ** paintable #attr:paintable#
-- | /No description available in the introspection data./

#if defined(ENABLE_OVERLOADING)
    CompletionCellPaintablePropertyInfo     ,
#endif
#if defined(ENABLE_OVERLOADING)
    completionCellPaintable                 ,
#endif
    constructCompletionCellPaintable        ,
    getCompletionCellPaintable              ,
    setCompletionCellPaintable              ,


-- ** text #attr:text#
-- | /No description available in the introspection data./

#if defined(ENABLE_OVERLOADING)
    CompletionCellTextPropertyInfo          ,
#endif
    clearCompletionCellText                 ,
#if defined(ENABLE_OVERLOADING)
    completionCellText                      ,
#endif
    constructCompletionCellText             ,
    getCompletionCellText                   ,
    setCompletionCellText                   ,


-- ** widget #attr:widget#
-- | /No description available in the introspection data./

#if defined(ENABLE_OVERLOADING)
    CompletionCellWidgetPropertyInfo        ,
#endif
#if defined(ENABLE_OVERLOADING)
    completionCellWidget                    ,
#endif
    constructCompletionCellWidget           ,
    getCompletionCellWidget                 ,
    setCompletionCellWidget                 ,




    ) 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.Gdk.Interfaces.Paintable as Gdk.Paintable
import qualified GI.Gio.Interfaces.Icon as Gio.Icon
import qualified GI.Gtk.Interfaces.Accessible as Gtk.Accessible
import qualified GI.Gtk.Interfaces.Buildable as Gtk.Buildable
import qualified GI.Gtk.Interfaces.ConstraintTarget as Gtk.ConstraintTarget
import qualified GI.Gtk.Objects.Widget as Gtk.Widget
import {-# SOURCE #-} qualified GI.GtkSource.Enums as GtkSource.Enums
import qualified GI.Pango.Structs.AttrList as Pango.AttrList

-- | Memory-managed wrapper type.
newtype CompletionCell = CompletionCell (SP.ManagedPtr CompletionCell)
    deriving (CompletionCell -> CompletionCell -> Bool
(CompletionCell -> CompletionCell -> Bool)
-> (CompletionCell -> CompletionCell -> Bool) -> Eq CompletionCell
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: CompletionCell -> CompletionCell -> Bool
== :: CompletionCell -> CompletionCell -> Bool
$c/= :: CompletionCell -> CompletionCell -> Bool
/= :: CompletionCell -> CompletionCell -> Bool
Eq)

instance SP.ManagedPtrNewtype CompletionCell where
    toManagedPtr :: CompletionCell -> ManagedPtr CompletionCell
toManagedPtr (CompletionCell ManagedPtr CompletionCell
p) = ManagedPtr CompletionCell
p

foreign import ccall "gtk_source_completion_cell_get_type"
    c_gtk_source_completion_cell_get_type :: IO B.Types.GType

instance B.Types.TypedObject CompletionCell where
    glibType :: IO GType
glibType = IO GType
c_gtk_source_completion_cell_get_type

instance B.Types.GObject CompletionCell

-- | Type class for types which can be safely cast to `CompletionCell`, for instance with `toCompletionCell`.
class (SP.GObject o, O.IsDescendantOf CompletionCell o) => IsCompletionCell o
instance (SP.GObject o, O.IsDescendantOf CompletionCell o) => IsCompletionCell o

instance O.HasParentTypes CompletionCell
type instance O.ParentTypes CompletionCell = '[Gtk.Widget.Widget, GObject.Object.Object, Gtk.Accessible.Accessible, Gtk.Buildable.Buildable, Gtk.ConstraintTarget.ConstraintTarget]

-- | Cast to `CompletionCell`, for types for which this is known to be safe. For general casts, use `Data.GI.Base.ManagedPtr.castTo`.
toCompletionCell :: (MIO.MonadIO m, IsCompletionCell o) => o -> m CompletionCell
toCompletionCell :: forall (m :: * -> *) o.
(MonadIO m, IsCompletionCell o) =>
o -> m CompletionCell
toCompletionCell = IO CompletionCell -> m CompletionCell
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO CompletionCell -> m CompletionCell)
-> (o -> IO CompletionCell) -> o -> m CompletionCell
forall b c a. (b -> c) -> (a -> b) -> a -> c
. (ManagedPtr CompletionCell -> CompletionCell)
-> o -> IO CompletionCell
forall o o'.
(HasCallStack, ManagedPtrNewtype o, TypedObject o,
 ManagedPtrNewtype o', TypedObject o') =>
(ManagedPtr o' -> o') -> o -> IO o'
B.ManagedPtr.unsafeCastTo ManagedPtr CompletionCell -> CompletionCell
CompletionCell

-- | Convert 'CompletionCell' to and from 'Data.GI.Base.GValue.GValue'. See 'Data.GI.Base.GValue.toGValue' and 'Data.GI.Base.GValue.fromGValue'.
instance B.GValue.IsGValue (Maybe CompletionCell) where
    gvalueGType_ :: IO GType
gvalueGType_ = IO GType
c_gtk_source_completion_cell_get_type
    gvalueSet_ :: Ptr GValue -> Maybe CompletionCell -> IO ()
gvalueSet_ Ptr GValue
gv Maybe CompletionCell
P.Nothing = Ptr GValue -> Ptr CompletionCell -> IO ()
forall a. GObject a => Ptr GValue -> Ptr a -> IO ()
B.GValue.set_object Ptr GValue
gv (Ptr CompletionCell
forall a. Ptr a
FP.nullPtr :: FP.Ptr CompletionCell)
    gvalueSet_ Ptr GValue
gv (P.Just CompletionCell
obj) = CompletionCell -> (Ptr CompletionCell -> IO ()) -> IO ()
forall a c.
(HasCallStack, ManagedPtrNewtype a) =>
a -> (Ptr a -> IO c) -> IO c
B.ManagedPtr.withManagedPtr CompletionCell
obj (Ptr GValue -> Ptr CompletionCell -> IO ()
forall a. GObject a => Ptr GValue -> Ptr a -> IO ()
B.GValue.set_object Ptr GValue
gv)
    gvalueGet_ :: Ptr GValue -> IO (Maybe CompletionCell)
gvalueGet_ Ptr GValue
gv = do
        Ptr CompletionCell
ptr <- Ptr GValue -> IO (Ptr CompletionCell)
forall a. GObject a => Ptr GValue -> IO (Ptr a)
B.GValue.get_object Ptr GValue
gv :: IO (FP.Ptr CompletionCell)
        if Ptr CompletionCell
ptr Ptr CompletionCell -> Ptr CompletionCell -> Bool
forall a. Eq a => a -> a -> Bool
/= Ptr CompletionCell
forall a. Ptr a
FP.nullPtr
        then CompletionCell -> Maybe CompletionCell
forall a. a -> Maybe a
P.Just (CompletionCell -> Maybe CompletionCell)
-> IO CompletionCell -> IO (Maybe CompletionCell)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (ManagedPtr CompletionCell -> CompletionCell)
-> Ptr CompletionCell -> IO CompletionCell
forall a b.
(HasCallStack, GObject a, GObject b) =>
(ManagedPtr a -> a) -> Ptr b -> IO a
B.ManagedPtr.newObject ManagedPtr CompletionCell -> CompletionCell
CompletionCell Ptr CompletionCell
ptr
        else Maybe CompletionCell -> IO (Maybe CompletionCell)
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return Maybe CompletionCell
forall a. Maybe a
P.Nothing
        
    

#if defined(ENABLE_OVERLOADING)
type family ResolveCompletionCellMethod (t :: Symbol) (o :: DK.Type) :: DK.Type where
    ResolveCompletionCellMethod "actionSetEnabled" o = Gtk.Widget.WidgetActionSetEnabledMethodInfo
    ResolveCompletionCellMethod "activate" o = Gtk.Widget.WidgetActivateMethodInfo
    ResolveCompletionCellMethod "activateAction" o = Gtk.Widget.WidgetActivateActionMethodInfo
    ResolveCompletionCellMethod "activateDefault" o = Gtk.Widget.WidgetActivateDefaultMethodInfo
    ResolveCompletionCellMethod "addController" o = Gtk.Widget.WidgetAddControllerMethodInfo
    ResolveCompletionCellMethod "addCssClass" o = Gtk.Widget.WidgetAddCssClassMethodInfo
    ResolveCompletionCellMethod "addMnemonicLabel" o = Gtk.Widget.WidgetAddMnemonicLabelMethodInfo
    ResolveCompletionCellMethod "addTickCallback" o = Gtk.Widget.WidgetAddTickCallbackMethodInfo
    ResolveCompletionCellMethod "allocate" o = Gtk.Widget.WidgetAllocateMethodInfo
    ResolveCompletionCellMethod "bindProperty" o = GObject.Object.ObjectBindPropertyMethodInfo
    ResolveCompletionCellMethod "bindPropertyFull" o = GObject.Object.ObjectBindPropertyFullMethodInfo
    ResolveCompletionCellMethod "childFocus" o = Gtk.Widget.WidgetChildFocusMethodInfo
    ResolveCompletionCellMethod "computeBounds" o = Gtk.Widget.WidgetComputeBoundsMethodInfo
    ResolveCompletionCellMethod "computeExpand" o = Gtk.Widget.WidgetComputeExpandMethodInfo
    ResolveCompletionCellMethod "computePoint" o = Gtk.Widget.WidgetComputePointMethodInfo
    ResolveCompletionCellMethod "computeTransform" o = Gtk.Widget.WidgetComputeTransformMethodInfo
    ResolveCompletionCellMethod "contains" o = Gtk.Widget.WidgetContainsMethodInfo
    ResolveCompletionCellMethod "createPangoContext" o = Gtk.Widget.WidgetCreatePangoContextMethodInfo
    ResolveCompletionCellMethod "createPangoLayout" o = Gtk.Widget.WidgetCreatePangoLayoutMethodInfo
    ResolveCompletionCellMethod "disposeTemplate" o = Gtk.Widget.WidgetDisposeTemplateMethodInfo
    ResolveCompletionCellMethod "dragCheckThreshold" o = Gtk.Widget.WidgetDragCheckThresholdMethodInfo
    ResolveCompletionCellMethod "errorBell" o = Gtk.Widget.WidgetErrorBellMethodInfo
    ResolveCompletionCellMethod "forceFloating" o = GObject.Object.ObjectForceFloatingMethodInfo
    ResolveCompletionCellMethod "freezeNotify" o = GObject.Object.ObjectFreezeNotifyMethodInfo
    ResolveCompletionCellMethod "getv" o = GObject.Object.ObjectGetvMethodInfo
    ResolveCompletionCellMethod "grabFocus" o = Gtk.Widget.WidgetGrabFocusMethodInfo
    ResolveCompletionCellMethod "hasCssClass" o = Gtk.Widget.WidgetHasCssClassMethodInfo
    ResolveCompletionCellMethod "hasDefault" o = Gtk.Widget.WidgetHasDefaultMethodInfo
    ResolveCompletionCellMethod "hasFocus" o = Gtk.Widget.WidgetHasFocusMethodInfo
    ResolveCompletionCellMethod "hasVisibleFocus" o = Gtk.Widget.WidgetHasVisibleFocusMethodInfo
    ResolveCompletionCellMethod "hide" o = Gtk.Widget.WidgetHideMethodInfo
    ResolveCompletionCellMethod "inDestruction" o = Gtk.Widget.WidgetInDestructionMethodInfo
    ResolveCompletionCellMethod "initTemplate" o = Gtk.Widget.WidgetInitTemplateMethodInfo
    ResolveCompletionCellMethod "insertActionGroup" o = Gtk.Widget.WidgetInsertActionGroupMethodInfo
    ResolveCompletionCellMethod "insertAfter" o = Gtk.Widget.WidgetInsertAfterMethodInfo
    ResolveCompletionCellMethod "insertBefore" o = Gtk.Widget.WidgetInsertBeforeMethodInfo
    ResolveCompletionCellMethod "isAncestor" o = Gtk.Widget.WidgetIsAncestorMethodInfo
    ResolveCompletionCellMethod "isDrawable" o = Gtk.Widget.WidgetIsDrawableMethodInfo
    ResolveCompletionCellMethod "isFloating" o = GObject.Object.ObjectIsFloatingMethodInfo
    ResolveCompletionCellMethod "isFocus" o = Gtk.Widget.WidgetIsFocusMethodInfo
    ResolveCompletionCellMethod "isSensitive" o = Gtk.Widget.WidgetIsSensitiveMethodInfo
    ResolveCompletionCellMethod "isVisible" o = Gtk.Widget.WidgetIsVisibleMethodInfo
    ResolveCompletionCellMethod "keynavFailed" o = Gtk.Widget.WidgetKeynavFailedMethodInfo
    ResolveCompletionCellMethod "listMnemonicLabels" o = Gtk.Widget.WidgetListMnemonicLabelsMethodInfo
    ResolveCompletionCellMethod "map" o = Gtk.Widget.WidgetMapMethodInfo
    ResolveCompletionCellMethod "measure" o = Gtk.Widget.WidgetMeasureMethodInfo
    ResolveCompletionCellMethod "mnemonicActivate" o = Gtk.Widget.WidgetMnemonicActivateMethodInfo
    ResolveCompletionCellMethod "notify" o = GObject.Object.ObjectNotifyMethodInfo
    ResolveCompletionCellMethod "notifyByPspec" o = GObject.Object.ObjectNotifyByPspecMethodInfo
    ResolveCompletionCellMethod "observeChildren" o = Gtk.Widget.WidgetObserveChildrenMethodInfo
    ResolveCompletionCellMethod "observeControllers" o = Gtk.Widget.WidgetObserveControllersMethodInfo
    ResolveCompletionCellMethod "pick" o = Gtk.Widget.WidgetPickMethodInfo
    ResolveCompletionCellMethod "queueAllocate" o = Gtk.Widget.WidgetQueueAllocateMethodInfo
    ResolveCompletionCellMethod "queueDraw" o = Gtk.Widget.WidgetQueueDrawMethodInfo
    ResolveCompletionCellMethod "queueResize" o = Gtk.Widget.WidgetQueueResizeMethodInfo
    ResolveCompletionCellMethod "realize" o = Gtk.Widget.WidgetRealizeMethodInfo
    ResolveCompletionCellMethod "ref" o = GObject.Object.ObjectRefMethodInfo
    ResolveCompletionCellMethod "refSink" o = GObject.Object.ObjectRefSinkMethodInfo
    ResolveCompletionCellMethod "removeController" o = Gtk.Widget.WidgetRemoveControllerMethodInfo
    ResolveCompletionCellMethod "removeCssClass" o = Gtk.Widget.WidgetRemoveCssClassMethodInfo
    ResolveCompletionCellMethod "removeMnemonicLabel" o = Gtk.Widget.WidgetRemoveMnemonicLabelMethodInfo
    ResolveCompletionCellMethod "removeTickCallback" o = Gtk.Widget.WidgetRemoveTickCallbackMethodInfo
    ResolveCompletionCellMethod "resetProperty" o = Gtk.Accessible.AccessibleResetPropertyMethodInfo
    ResolveCompletionCellMethod "resetRelation" o = Gtk.Accessible.AccessibleResetRelationMethodInfo
    ResolveCompletionCellMethod "resetState" o = Gtk.Accessible.AccessibleResetStateMethodInfo
    ResolveCompletionCellMethod "runDispose" o = GObject.Object.ObjectRunDisposeMethodInfo
    ResolveCompletionCellMethod "shouldLayout" o = Gtk.Widget.WidgetShouldLayoutMethodInfo
    ResolveCompletionCellMethod "show" o = Gtk.Widget.WidgetShowMethodInfo
    ResolveCompletionCellMethod "sizeAllocate" o = Gtk.Widget.WidgetSizeAllocateMethodInfo
    ResolveCompletionCellMethod "snapshotChild" o = Gtk.Widget.WidgetSnapshotChildMethodInfo
    ResolveCompletionCellMethod "stealData" o = GObject.Object.ObjectStealDataMethodInfo
    ResolveCompletionCellMethod "stealQdata" o = GObject.Object.ObjectStealQdataMethodInfo
    ResolveCompletionCellMethod "thawNotify" o = GObject.Object.ObjectThawNotifyMethodInfo
    ResolveCompletionCellMethod "translateCoordinates" o = Gtk.Widget.WidgetTranslateCoordinatesMethodInfo
    ResolveCompletionCellMethod "triggerTooltipQuery" o = Gtk.Widget.WidgetTriggerTooltipQueryMethodInfo
    ResolveCompletionCellMethod "unmap" o = Gtk.Widget.WidgetUnmapMethodInfo
    ResolveCompletionCellMethod "unparent" o = Gtk.Widget.WidgetUnparentMethodInfo
    ResolveCompletionCellMethod "unrealize" o = Gtk.Widget.WidgetUnrealizeMethodInfo
    ResolveCompletionCellMethod "unref" o = GObject.Object.ObjectUnrefMethodInfo
    ResolveCompletionCellMethod "unsetStateFlags" o = Gtk.Widget.WidgetUnsetStateFlagsMethodInfo
    ResolveCompletionCellMethod "updateNextAccessibleSibling" o = Gtk.Accessible.AccessibleUpdateNextAccessibleSiblingMethodInfo
    ResolveCompletionCellMethod "updateProperty" o = Gtk.Accessible.AccessibleUpdatePropertyMethodInfo
    ResolveCompletionCellMethod "updateRelation" o = Gtk.Accessible.AccessibleUpdateRelationMethodInfo
    ResolveCompletionCellMethod "updateState" o = Gtk.Accessible.AccessibleUpdateStateMethodInfo
    ResolveCompletionCellMethod "watchClosure" o = GObject.Object.ObjectWatchClosureMethodInfo
    ResolveCompletionCellMethod "getAccessibleParent" o = Gtk.Accessible.AccessibleGetAccessibleParentMethodInfo
    ResolveCompletionCellMethod "getAccessibleRole" o = Gtk.Accessible.AccessibleGetAccessibleRoleMethodInfo
    ResolveCompletionCellMethod "getAllocatedBaseline" o = Gtk.Widget.WidgetGetAllocatedBaselineMethodInfo
    ResolveCompletionCellMethod "getAllocatedHeight" o = Gtk.Widget.WidgetGetAllocatedHeightMethodInfo
    ResolveCompletionCellMethod "getAllocatedWidth" o = Gtk.Widget.WidgetGetAllocatedWidthMethodInfo
    ResolveCompletionCellMethod "getAllocation" o = Gtk.Widget.WidgetGetAllocationMethodInfo
    ResolveCompletionCellMethod "getAncestor" o = Gtk.Widget.WidgetGetAncestorMethodInfo
    ResolveCompletionCellMethod "getAtContext" o = Gtk.Accessible.AccessibleGetAtContextMethodInfo
    ResolveCompletionCellMethod "getBounds" o = Gtk.Accessible.AccessibleGetBoundsMethodInfo
    ResolveCompletionCellMethod "getBuildableId" o = Gtk.Buildable.BuildableGetBuildableIdMethodInfo
    ResolveCompletionCellMethod "getCanFocus" o = Gtk.Widget.WidgetGetCanFocusMethodInfo
    ResolveCompletionCellMethod "getCanTarget" o = Gtk.Widget.WidgetGetCanTargetMethodInfo
    ResolveCompletionCellMethod "getChildVisible" o = Gtk.Widget.WidgetGetChildVisibleMethodInfo
    ResolveCompletionCellMethod "getClipboard" o = Gtk.Widget.WidgetGetClipboardMethodInfo
    ResolveCompletionCellMethod "getColor" o = Gtk.Widget.WidgetGetColorMethodInfo
    ResolveCompletionCellMethod "getColumn" o = CompletionCellGetColumnMethodInfo
    ResolveCompletionCellMethod "getCssClasses" o = Gtk.Widget.WidgetGetCssClassesMethodInfo
    ResolveCompletionCellMethod "getCssName" o = Gtk.Widget.WidgetGetCssNameMethodInfo
    ResolveCompletionCellMethod "getCursor" o = Gtk.Widget.WidgetGetCursorMethodInfo
    ResolveCompletionCellMethod "getData" o = GObject.Object.ObjectGetDataMethodInfo
    ResolveCompletionCellMethod "getDirection" o = Gtk.Widget.WidgetGetDirectionMethodInfo
    ResolveCompletionCellMethod "getDisplay" o = Gtk.Widget.WidgetGetDisplayMethodInfo
    ResolveCompletionCellMethod "getFirstAccessibleChild" o = Gtk.Accessible.AccessibleGetFirstAccessibleChildMethodInfo
    ResolveCompletionCellMethod "getFirstChild" o = Gtk.Widget.WidgetGetFirstChildMethodInfo
    ResolveCompletionCellMethod "getFocusChild" o = Gtk.Widget.WidgetGetFocusChildMethodInfo
    ResolveCompletionCellMethod "getFocusOnClick" o = Gtk.Widget.WidgetGetFocusOnClickMethodInfo
    ResolveCompletionCellMethod "getFocusable" o = Gtk.Widget.WidgetGetFocusableMethodInfo
    ResolveCompletionCellMethod "getFontMap" o = Gtk.Widget.WidgetGetFontMapMethodInfo
    ResolveCompletionCellMethod "getFontOptions" o = Gtk.Widget.WidgetGetFontOptionsMethodInfo
    ResolveCompletionCellMethod "getFrameClock" o = Gtk.Widget.WidgetGetFrameClockMethodInfo
    ResolveCompletionCellMethod "getHalign" o = Gtk.Widget.WidgetGetHalignMethodInfo
    ResolveCompletionCellMethod "getHasTooltip" o = Gtk.Widget.WidgetGetHasTooltipMethodInfo
    ResolveCompletionCellMethod "getHeight" o = Gtk.Widget.WidgetGetHeightMethodInfo
    ResolveCompletionCellMethod "getHexpand" o = Gtk.Widget.WidgetGetHexpandMethodInfo
    ResolveCompletionCellMethod "getHexpandSet" o = Gtk.Widget.WidgetGetHexpandSetMethodInfo
    ResolveCompletionCellMethod "getLastChild" o = Gtk.Widget.WidgetGetLastChildMethodInfo
    ResolveCompletionCellMethod "getLayoutManager" o = Gtk.Widget.WidgetGetLayoutManagerMethodInfo
    ResolveCompletionCellMethod "getMapped" o = Gtk.Widget.WidgetGetMappedMethodInfo
    ResolveCompletionCellMethod "getMarginBottom" o = Gtk.Widget.WidgetGetMarginBottomMethodInfo
    ResolveCompletionCellMethod "getMarginEnd" o = Gtk.Widget.WidgetGetMarginEndMethodInfo
    ResolveCompletionCellMethod "getMarginStart" o = Gtk.Widget.WidgetGetMarginStartMethodInfo
    ResolveCompletionCellMethod "getMarginTop" o = Gtk.Widget.WidgetGetMarginTopMethodInfo
    ResolveCompletionCellMethod "getName" o = Gtk.Widget.WidgetGetNameMethodInfo
    ResolveCompletionCellMethod "getNative" o = Gtk.Widget.WidgetGetNativeMethodInfo
    ResolveCompletionCellMethod "getNextAccessibleSibling" o = Gtk.Accessible.AccessibleGetNextAccessibleSiblingMethodInfo
    ResolveCompletionCellMethod "getNextSibling" o = Gtk.Widget.WidgetGetNextSiblingMethodInfo
    ResolveCompletionCellMethod "getOpacity" o = Gtk.Widget.WidgetGetOpacityMethodInfo
    ResolveCompletionCellMethod "getOverflow" o = Gtk.Widget.WidgetGetOverflowMethodInfo
    ResolveCompletionCellMethod "getPangoContext" o = Gtk.Widget.WidgetGetPangoContextMethodInfo
    ResolveCompletionCellMethod "getParent" o = Gtk.Widget.WidgetGetParentMethodInfo
    ResolveCompletionCellMethod "getPlatformState" o = Gtk.Accessible.AccessibleGetPlatformStateMethodInfo
    ResolveCompletionCellMethod "getPreferredSize" o = Gtk.Widget.WidgetGetPreferredSizeMethodInfo
    ResolveCompletionCellMethod "getPrevSibling" o = Gtk.Widget.WidgetGetPrevSiblingMethodInfo
    ResolveCompletionCellMethod "getPrimaryClipboard" o = Gtk.Widget.WidgetGetPrimaryClipboardMethodInfo
    ResolveCompletionCellMethod "getProperty" o = GObject.Object.ObjectGetPropertyMethodInfo
    ResolveCompletionCellMethod "getQdata" o = GObject.Object.ObjectGetQdataMethodInfo
    ResolveCompletionCellMethod "getRealized" o = Gtk.Widget.WidgetGetRealizedMethodInfo
    ResolveCompletionCellMethod "getReceivesDefault" o = Gtk.Widget.WidgetGetReceivesDefaultMethodInfo
    ResolveCompletionCellMethod "getRequestMode" o = Gtk.Widget.WidgetGetRequestModeMethodInfo
    ResolveCompletionCellMethod "getRoot" o = Gtk.Widget.WidgetGetRootMethodInfo
    ResolveCompletionCellMethod "getScaleFactor" o = Gtk.Widget.WidgetGetScaleFactorMethodInfo
    ResolveCompletionCellMethod "getSensitive" o = Gtk.Widget.WidgetGetSensitiveMethodInfo
    ResolveCompletionCellMethod "getSettings" o = Gtk.Widget.WidgetGetSettingsMethodInfo
    ResolveCompletionCellMethod "getSize" o = Gtk.Widget.WidgetGetSizeMethodInfo
    ResolveCompletionCellMethod "getSizeRequest" o = Gtk.Widget.WidgetGetSizeRequestMethodInfo
    ResolveCompletionCellMethod "getStateFlags" o = Gtk.Widget.WidgetGetStateFlagsMethodInfo
    ResolveCompletionCellMethod "getStyleContext" o = Gtk.Widget.WidgetGetStyleContextMethodInfo
    ResolveCompletionCellMethod "getTemplateChild" o = Gtk.Widget.WidgetGetTemplateChildMethodInfo
    ResolveCompletionCellMethod "getTooltipMarkup" o = Gtk.Widget.WidgetGetTooltipMarkupMethodInfo
    ResolveCompletionCellMethod "getTooltipText" o = Gtk.Widget.WidgetGetTooltipTextMethodInfo
    ResolveCompletionCellMethod "getValign" o = Gtk.Widget.WidgetGetValignMethodInfo
    ResolveCompletionCellMethod "getVexpand" o = Gtk.Widget.WidgetGetVexpandMethodInfo
    ResolveCompletionCellMethod "getVexpandSet" o = Gtk.Widget.WidgetGetVexpandSetMethodInfo
    ResolveCompletionCellMethod "getVisible" o = Gtk.Widget.WidgetGetVisibleMethodInfo
    ResolveCompletionCellMethod "getWidget" o = CompletionCellGetWidgetMethodInfo
    ResolveCompletionCellMethod "getWidth" o = Gtk.Widget.WidgetGetWidthMethodInfo
    ResolveCompletionCellMethod "setAccessibleParent" o = Gtk.Accessible.AccessibleSetAccessibleParentMethodInfo
    ResolveCompletionCellMethod "setCanFocus" o = Gtk.Widget.WidgetSetCanFocusMethodInfo
    ResolveCompletionCellMethod "setCanTarget" o = Gtk.Widget.WidgetSetCanTargetMethodInfo
    ResolveCompletionCellMethod "setChildVisible" o = Gtk.Widget.WidgetSetChildVisibleMethodInfo
    ResolveCompletionCellMethod "setCssClasses" o = Gtk.Widget.WidgetSetCssClassesMethodInfo
    ResolveCompletionCellMethod "setCursor" o = Gtk.Widget.WidgetSetCursorMethodInfo
    ResolveCompletionCellMethod "setCursorFromName" o = Gtk.Widget.WidgetSetCursorFromNameMethodInfo
    ResolveCompletionCellMethod "setData" o = GObject.Object.ObjectSetDataMethodInfo
    ResolveCompletionCellMethod "setDataFull" o = GObject.Object.ObjectSetDataFullMethodInfo
    ResolveCompletionCellMethod "setDirection" o = Gtk.Widget.WidgetSetDirectionMethodInfo
    ResolveCompletionCellMethod "setFocusChild" o = Gtk.Widget.WidgetSetFocusChildMethodInfo
    ResolveCompletionCellMethod "setFocusOnClick" o = Gtk.Widget.WidgetSetFocusOnClickMethodInfo
    ResolveCompletionCellMethod "setFocusable" o = Gtk.Widget.WidgetSetFocusableMethodInfo
    ResolveCompletionCellMethod "setFontMap" o = Gtk.Widget.WidgetSetFontMapMethodInfo
    ResolveCompletionCellMethod "setFontOptions" o = Gtk.Widget.WidgetSetFontOptionsMethodInfo
    ResolveCompletionCellMethod "setGicon" o = CompletionCellSetGiconMethodInfo
    ResolveCompletionCellMethod "setHalign" o = Gtk.Widget.WidgetSetHalignMethodInfo
    ResolveCompletionCellMethod "setHasTooltip" o = Gtk.Widget.WidgetSetHasTooltipMethodInfo
    ResolveCompletionCellMethod "setHexpand" o = Gtk.Widget.WidgetSetHexpandMethodInfo
    ResolveCompletionCellMethod "setHexpandSet" o = Gtk.Widget.WidgetSetHexpandSetMethodInfo
    ResolveCompletionCellMethod "setIconName" o = CompletionCellSetIconNameMethodInfo
    ResolveCompletionCellMethod "setLayoutManager" o = Gtk.Widget.WidgetSetLayoutManagerMethodInfo
    ResolveCompletionCellMethod "setMarginBottom" o = Gtk.Widget.WidgetSetMarginBottomMethodInfo
    ResolveCompletionCellMethod "setMarginEnd" o = Gtk.Widget.WidgetSetMarginEndMethodInfo
    ResolveCompletionCellMethod "setMarginStart" o = Gtk.Widget.WidgetSetMarginStartMethodInfo
    ResolveCompletionCellMethod "setMarginTop" o = Gtk.Widget.WidgetSetMarginTopMethodInfo
    ResolveCompletionCellMethod "setMarkup" o = CompletionCellSetMarkupMethodInfo
    ResolveCompletionCellMethod "setName" o = Gtk.Widget.WidgetSetNameMethodInfo
    ResolveCompletionCellMethod "setOpacity" o = Gtk.Widget.WidgetSetOpacityMethodInfo
    ResolveCompletionCellMethod "setOverflow" o = Gtk.Widget.WidgetSetOverflowMethodInfo
    ResolveCompletionCellMethod "setPaintable" o = CompletionCellSetPaintableMethodInfo
    ResolveCompletionCellMethod "setParent" o = Gtk.Widget.WidgetSetParentMethodInfo
    ResolveCompletionCellMethod "setProperty" o = GObject.Object.ObjectSetPropertyMethodInfo
    ResolveCompletionCellMethod "setReceivesDefault" o = Gtk.Widget.WidgetSetReceivesDefaultMethodInfo
    ResolveCompletionCellMethod "setSensitive" o = Gtk.Widget.WidgetSetSensitiveMethodInfo
    ResolveCompletionCellMethod "setSizeRequest" o = Gtk.Widget.WidgetSetSizeRequestMethodInfo
    ResolveCompletionCellMethod "setStateFlags" o = Gtk.Widget.WidgetSetStateFlagsMethodInfo
    ResolveCompletionCellMethod "setText" o = CompletionCellSetTextMethodInfo
    ResolveCompletionCellMethod "setTextWithAttributes" o = CompletionCellSetTextWithAttributesMethodInfo
    ResolveCompletionCellMethod "setTooltipMarkup" o = Gtk.Widget.WidgetSetTooltipMarkupMethodInfo
    ResolveCompletionCellMethod "setTooltipText" o = Gtk.Widget.WidgetSetTooltipTextMethodInfo
    ResolveCompletionCellMethod "setValign" o = Gtk.Widget.WidgetSetValignMethodInfo
    ResolveCompletionCellMethod "setVexpand" o = Gtk.Widget.WidgetSetVexpandMethodInfo
    ResolveCompletionCellMethod "setVexpandSet" o = Gtk.Widget.WidgetSetVexpandSetMethodInfo
    ResolveCompletionCellMethod "setVisible" o = Gtk.Widget.WidgetSetVisibleMethodInfo
    ResolveCompletionCellMethod "setWidget" o = CompletionCellSetWidgetMethodInfo
    ResolveCompletionCellMethod l o = O.MethodResolutionFailed l o

instance (info ~ ResolveCompletionCellMethod t CompletionCell, O.OverloadedMethod info CompletionCell p) => OL.IsLabel t (CompletionCell -> 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 ~ ResolveCompletionCellMethod t CompletionCell, O.OverloadedMethod info CompletionCell p, R.HasField t CompletionCell p) => R.HasField t CompletionCell p where
    getField = O.overloadedMethod @info

#endif

instance (info ~ ResolveCompletionCellMethod t CompletionCell, O.OverloadedMethodInfo info CompletionCell) => OL.IsLabel t (O.MethodProxy info CompletionCell) where
#if MIN_VERSION_base(4,10,0)
    fromLabel = O.MethodProxy
#else
    fromLabel _ = O.MethodProxy
#endif

#endif

-- VVV Prop "column"
   -- Type: TInterface (Name {namespace = "GtkSource", name = "CompletionColumn"})
   -- Flags: [PropertyReadable,PropertyWritable,PropertyConstructOnly]
   -- Nullable: (Just False,Nothing)

-- | Get the value of the “@column@” property.
-- When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-- 
-- @
-- 'Data.GI.Base.Attributes.get' completionCell #column
-- @
getCompletionCellColumn :: (MonadIO m, IsCompletionCell o) => o -> m GtkSource.Enums.CompletionColumn
getCompletionCellColumn :: forall (m :: * -> *) o.
(MonadIO m, IsCompletionCell o) =>
o -> m CompletionColumn
getCompletionCellColumn o
obj = IO CompletionColumn -> m CompletionColumn
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO CompletionColumn -> m CompletionColumn)
-> IO CompletionColumn -> m CompletionColumn
forall a b. (a -> b) -> a -> b
$ o -> String -> IO CompletionColumn
forall a b. (GObject a, Enum b, BoxedEnum b) => a -> String -> IO b
B.Properties.getObjectPropertyEnum o
obj String
"column"

-- | Construct a `GValueConstruct` with valid value for the “@column@” property. This is rarely needed directly, but it is used by `Data.GI.Base.Constructible.new`.
constructCompletionCellColumn :: (IsCompletionCell o, MIO.MonadIO m) => GtkSource.Enums.CompletionColumn -> m (GValueConstruct o)
constructCompletionCellColumn :: forall o (m :: * -> *).
(IsCompletionCell o, MonadIO m) =>
CompletionColumn -> m (GValueConstruct o)
constructCompletionCellColumn CompletionColumn
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 -> CompletionColumn -> IO (GValueConstruct o)
forall a o.
(Enum a, BoxedEnum a) =>
String -> a -> IO (GValueConstruct o)
B.Properties.constructObjectPropertyEnum String
"column" CompletionColumn
val

#if defined(ENABLE_OVERLOADING)
data CompletionCellColumnPropertyInfo
instance AttrInfo CompletionCellColumnPropertyInfo where
    type AttrAllowedOps CompletionCellColumnPropertyInfo = '[ 'AttrConstruct, 'AttrGet]
    type AttrBaseTypeConstraint CompletionCellColumnPropertyInfo = IsCompletionCell
    type AttrSetTypeConstraint CompletionCellColumnPropertyInfo = (~) GtkSource.Enums.CompletionColumn
    type AttrTransferTypeConstraint CompletionCellColumnPropertyInfo = (~) GtkSource.Enums.CompletionColumn
    type AttrTransferType CompletionCellColumnPropertyInfo = GtkSource.Enums.CompletionColumn
    type AttrGetType CompletionCellColumnPropertyInfo = GtkSource.Enums.CompletionColumn
    type AttrLabel CompletionCellColumnPropertyInfo = "column"
    type AttrOrigin CompletionCellColumnPropertyInfo = CompletionCell
    attrGet = getCompletionCellColumn
    attrSet = undefined
    attrTransfer _ v = do
        return v
    attrConstruct = constructCompletionCellColumn
    attrClear = undefined
    dbgAttrInfo = P.Just (O.ResolvedSymbolInfo {
        O.resolvedSymbolName = "GI.GtkSource.Objects.CompletionCell.column"
        , O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-gtksource-5.0.0/docs/GI-GtkSource-Objects-CompletionCell.html#g:attr:column"
        })
#endif

-- VVV Prop "markup"
   -- Type: TBasicType TUTF8
   -- Flags: [PropertyReadable,PropertyWritable]
   -- Nullable: (Nothing,Just False)

-- | Get the value of the “@markup@” property.
-- When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-- 
-- @
-- 'Data.GI.Base.Attributes.get' completionCell #markup
-- @
getCompletionCellMarkup :: (MonadIO m, IsCompletionCell o) => o -> m (Maybe T.Text)
getCompletionCellMarkup :: forall (m :: * -> *) o.
(MonadIO m, IsCompletionCell o) =>
o -> m (Maybe Text)
getCompletionCellMarkup o
obj = IO (Maybe Text) -> m (Maybe Text)
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO (Maybe Text) -> m (Maybe Text))
-> IO (Maybe Text) -> m (Maybe Text)
forall a b. (a -> b) -> a -> b
$ o -> String -> IO (Maybe Text)
forall a. GObject a => a -> String -> IO (Maybe Text)
B.Properties.getObjectPropertyString o
obj String
"markup"

-- | Set the value of the “@markup@” property.
-- When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-- 
-- @
-- 'Data.GI.Base.Attributes.set' completionCell [ #markup 'Data.GI.Base.Attributes.:=' value ]
-- @
setCompletionCellMarkup :: (MonadIO m, IsCompletionCell o) => o -> T.Text -> m ()
setCompletionCellMarkup :: forall (m :: * -> *) o.
(MonadIO m, IsCompletionCell o) =>
o -> Text -> m ()
setCompletionCellMarkup o
obj Text
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 -> Maybe Text -> IO ()
forall a. GObject a => a -> String -> Maybe Text -> IO ()
B.Properties.setObjectPropertyString o
obj String
"markup" (Text -> Maybe Text
forall a. a -> Maybe a
Just Text
val)

-- | Construct a `GValueConstruct` with valid value for the “@markup@” property. This is rarely needed directly, but it is used by `Data.GI.Base.Constructible.new`.
constructCompletionCellMarkup :: (IsCompletionCell o, MIO.MonadIO m) => T.Text -> m (GValueConstruct o)
constructCompletionCellMarkup :: forall o (m :: * -> *).
(IsCompletionCell o, MonadIO m) =>
Text -> m (GValueConstruct o)
constructCompletionCellMarkup Text
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 Text -> IO (GValueConstruct o)
forall o. String -> Maybe Text -> IO (GValueConstruct o)
B.Properties.constructObjectPropertyString String
"markup" (Text -> Maybe Text
forall a. a -> Maybe a
P.Just Text
val)

#if defined(ENABLE_OVERLOADING)
data CompletionCellMarkupPropertyInfo
instance AttrInfo CompletionCellMarkupPropertyInfo where
    type AttrAllowedOps CompletionCellMarkupPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
    type AttrBaseTypeConstraint CompletionCellMarkupPropertyInfo = IsCompletionCell
    type AttrSetTypeConstraint CompletionCellMarkupPropertyInfo = (~) T.Text
    type AttrTransferTypeConstraint CompletionCellMarkupPropertyInfo = (~) T.Text
    type AttrTransferType CompletionCellMarkupPropertyInfo = T.Text
    type AttrGetType CompletionCellMarkupPropertyInfo = (Maybe T.Text)
    type AttrLabel CompletionCellMarkupPropertyInfo = "markup"
    type AttrOrigin CompletionCellMarkupPropertyInfo = CompletionCell
    attrGet = getCompletionCellMarkup
    attrSet = setCompletionCellMarkup
    attrTransfer _ v = do
        return v
    attrConstruct = constructCompletionCellMarkup
    attrClear = undefined
    dbgAttrInfo = P.Just (O.ResolvedSymbolInfo {
        O.resolvedSymbolName = "GI.GtkSource.Objects.CompletionCell.markup"
        , O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-gtksource-5.0.0/docs/GI-GtkSource-Objects-CompletionCell.html#g:attr:markup"
        })
#endif

-- VVV Prop "paintable"
   -- Type: TInterface (Name {namespace = "Gdk", name = "Paintable"})
   -- Flags: [PropertyReadable,PropertyWritable]
   -- Nullable: (Nothing,Just False)

-- | Get the value of the “@paintable@” property.
-- When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-- 
-- @
-- 'Data.GI.Base.Attributes.get' completionCell #paintable
-- @
getCompletionCellPaintable :: (MonadIO m, IsCompletionCell o) => o -> m (Maybe Gdk.Paintable.Paintable)
getCompletionCellPaintable :: forall (m :: * -> *) o.
(MonadIO m, IsCompletionCell o) =>
o -> m (Maybe Paintable)
getCompletionCellPaintable o
obj = IO (Maybe Paintable) -> m (Maybe Paintable)
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO (Maybe Paintable) -> m (Maybe Paintable))
-> IO (Maybe Paintable) -> m (Maybe Paintable)
forall a b. (a -> b) -> a -> b
$ o
-> String
-> (ManagedPtr Paintable -> Paintable)
-> IO (Maybe Paintable)
forall a b.
(GObject a, GObject b) =>
a -> String -> (ManagedPtr b -> b) -> IO (Maybe b)
B.Properties.getObjectPropertyObject o
obj String
"paintable" ManagedPtr Paintable -> Paintable
Gdk.Paintable.Paintable

-- | Set the value of the “@paintable@” property.
-- When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-- 
-- @
-- 'Data.GI.Base.Attributes.set' completionCell [ #paintable 'Data.GI.Base.Attributes.:=' value ]
-- @
setCompletionCellPaintable :: (MonadIO m, IsCompletionCell o, Gdk.Paintable.IsPaintable a) => o -> a -> m ()
setCompletionCellPaintable :: forall (m :: * -> *) o a.
(MonadIO m, IsCompletionCell o, IsPaintable a) =>
o -> a -> m ()
setCompletionCellPaintable o
obj a
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 -> Maybe a -> IO ()
forall a b.
(GObject a, GObject b) =>
a -> String -> Maybe b -> IO ()
B.Properties.setObjectPropertyObject o
obj String
"paintable" (a -> Maybe a
forall a. a -> Maybe a
Just a
val)

-- | Construct a `GValueConstruct` with valid value for the “@paintable@” property. This is rarely needed directly, but it is used by `Data.GI.Base.Constructible.new`.
constructCompletionCellPaintable :: (IsCompletionCell o, MIO.MonadIO m, Gdk.Paintable.IsPaintable a) => a -> m (GValueConstruct o)
constructCompletionCellPaintable :: forall o (m :: * -> *) a.
(IsCompletionCell o, MonadIO m, IsPaintable a) =>
a -> m (GValueConstruct o)
constructCompletionCellPaintable 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
"paintable" (a -> Maybe a
forall a. a -> Maybe a
P.Just a
val)

#if defined(ENABLE_OVERLOADING)
data CompletionCellPaintablePropertyInfo
instance AttrInfo CompletionCellPaintablePropertyInfo where
    type AttrAllowedOps CompletionCellPaintablePropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
    type AttrBaseTypeConstraint CompletionCellPaintablePropertyInfo = IsCompletionCell
    type AttrSetTypeConstraint CompletionCellPaintablePropertyInfo = Gdk.Paintable.IsPaintable
    type AttrTransferTypeConstraint CompletionCellPaintablePropertyInfo = Gdk.Paintable.IsPaintable
    type AttrTransferType CompletionCellPaintablePropertyInfo = Gdk.Paintable.Paintable
    type AttrGetType CompletionCellPaintablePropertyInfo = (Maybe Gdk.Paintable.Paintable)
    type AttrLabel CompletionCellPaintablePropertyInfo = "paintable"
    type AttrOrigin CompletionCellPaintablePropertyInfo = CompletionCell
    attrGet = getCompletionCellPaintable
    attrSet = setCompletionCellPaintable
    attrTransfer _ v = do
        unsafeCastTo Gdk.Paintable.Paintable v
    attrConstruct = constructCompletionCellPaintable
    attrClear = undefined
    dbgAttrInfo = P.Just (O.ResolvedSymbolInfo {
        O.resolvedSymbolName = "GI.GtkSource.Objects.CompletionCell.paintable"
        , O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-gtksource-5.0.0/docs/GI-GtkSource-Objects-CompletionCell.html#g:attr:paintable"
        })
#endif

-- VVV Prop "text"
   -- Type: TBasicType TUTF8
   -- Flags: [PropertyReadable,PropertyWritable]
   -- Nullable: (Nothing,Just True)

-- | Get the value of the “@text@” property.
-- When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-- 
-- @
-- 'Data.GI.Base.Attributes.get' completionCell #text
-- @
getCompletionCellText :: (MonadIO m, IsCompletionCell o) => o -> m (Maybe T.Text)
getCompletionCellText :: forall (m :: * -> *) o.
(MonadIO m, IsCompletionCell o) =>
o -> m (Maybe Text)
getCompletionCellText o
obj = IO (Maybe Text) -> m (Maybe Text)
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO (Maybe Text) -> m (Maybe Text))
-> IO (Maybe Text) -> m (Maybe Text)
forall a b. (a -> b) -> a -> b
$ o -> String -> IO (Maybe Text)
forall a. GObject a => a -> String -> IO (Maybe Text)
B.Properties.getObjectPropertyString o
obj String
"text"

-- | Set the value of the “@text@” property.
-- When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-- 
-- @
-- 'Data.GI.Base.Attributes.set' completionCell [ #text 'Data.GI.Base.Attributes.:=' value ]
-- @
setCompletionCellText :: (MonadIO m, IsCompletionCell o) => o -> T.Text -> m ()
setCompletionCellText :: forall (m :: * -> *) o.
(MonadIO m, IsCompletionCell o) =>
o -> Text -> m ()
setCompletionCellText o
obj Text
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 -> Maybe Text -> IO ()
forall a. GObject a => a -> String -> Maybe Text -> IO ()
B.Properties.setObjectPropertyString o
obj String
"text" (Text -> Maybe Text
forall a. a -> Maybe a
Just Text
val)

-- | Construct a `GValueConstruct` with valid value for the “@text@” property. This is rarely needed directly, but it is used by `Data.GI.Base.Constructible.new`.
constructCompletionCellText :: (IsCompletionCell o, MIO.MonadIO m) => T.Text -> m (GValueConstruct o)
constructCompletionCellText :: forall o (m :: * -> *).
(IsCompletionCell o, MonadIO m) =>
Text -> m (GValueConstruct o)
constructCompletionCellText Text
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 Text -> IO (GValueConstruct o)
forall o. String -> Maybe Text -> IO (GValueConstruct o)
B.Properties.constructObjectPropertyString String
"text" (Text -> Maybe Text
forall a. a -> Maybe a
P.Just Text
val)

-- | Set the value of the “@text@” property to `Nothing`.
-- When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-- 
-- @
-- 'Data.GI.Base.Attributes.clear' #text
-- @
clearCompletionCellText :: (MonadIO m, IsCompletionCell o) => o -> m ()
clearCompletionCellText :: forall (m :: * -> *) o.
(MonadIO m, IsCompletionCell o) =>
o -> m ()
clearCompletionCellText o
obj = 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
$ o -> String -> Maybe Text -> IO ()
forall a. GObject a => a -> String -> Maybe Text -> IO ()
B.Properties.setObjectPropertyString o
obj String
"text" (Maybe Text
forall a. Maybe a
Nothing :: Maybe T.Text)

#if defined(ENABLE_OVERLOADING)
data CompletionCellTextPropertyInfo
instance AttrInfo CompletionCellTextPropertyInfo where
    type AttrAllowedOps CompletionCellTextPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet, 'AttrClear]
    type AttrBaseTypeConstraint CompletionCellTextPropertyInfo = IsCompletionCell
    type AttrSetTypeConstraint CompletionCellTextPropertyInfo = (~) T.Text
    type AttrTransferTypeConstraint CompletionCellTextPropertyInfo = (~) T.Text
    type AttrTransferType CompletionCellTextPropertyInfo = T.Text
    type AttrGetType CompletionCellTextPropertyInfo = (Maybe T.Text)
    type AttrLabel CompletionCellTextPropertyInfo = "text"
    type AttrOrigin CompletionCellTextPropertyInfo = CompletionCell
    attrGet = getCompletionCellText
    attrSet = setCompletionCellText
    attrTransfer _ v = do
        return v
    attrConstruct = constructCompletionCellText
    attrClear = clearCompletionCellText
    dbgAttrInfo = P.Just (O.ResolvedSymbolInfo {
        O.resolvedSymbolName = "GI.GtkSource.Objects.CompletionCell.text"
        , O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-gtksource-5.0.0/docs/GI-GtkSource-Objects-CompletionCell.html#g:attr:text"
        })
#endif

-- VVV Prop "widget"
   -- Type: TInterface (Name {namespace = "Gtk", name = "Widget"})
   -- Flags: [PropertyReadable,PropertyWritable]
   -- Nullable: (Just True,Just False)

-- | Get the value of the “@widget@” property.
-- When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-- 
-- @
-- 'Data.GI.Base.Attributes.get' completionCell #widget
-- @
getCompletionCellWidget :: (MonadIO m, IsCompletionCell o) => o -> m (Maybe Gtk.Widget.Widget)
getCompletionCellWidget :: forall (m :: * -> *) o.
(MonadIO m, IsCompletionCell o) =>
o -> m (Maybe Widget)
getCompletionCellWidget o
obj = IO (Maybe Widget) -> m (Maybe Widget)
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO (Maybe Widget) -> m (Maybe Widget))
-> IO (Maybe Widget) -> m (Maybe Widget)
forall a b. (a -> b) -> a -> b
$ o -> String -> (ManagedPtr Widget -> Widget) -> IO (Maybe Widget)
forall a b.
(GObject a, GObject b) =>
a -> String -> (ManagedPtr b -> b) -> IO (Maybe b)
B.Properties.getObjectPropertyObject o
obj String
"widget" ManagedPtr Widget -> Widget
Gtk.Widget.Widget

-- | Set the value of the “@widget@” property.
-- When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-- 
-- @
-- 'Data.GI.Base.Attributes.set' completionCell [ #widget 'Data.GI.Base.Attributes.:=' value ]
-- @
setCompletionCellWidget :: (MonadIO m, IsCompletionCell o, Gtk.Widget.IsWidget a) => o -> a -> m ()
setCompletionCellWidget :: forall (m :: * -> *) o a.
(MonadIO m, IsCompletionCell o, IsWidget a) =>
o -> a -> m ()
setCompletionCellWidget o
obj a
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 -> Maybe a -> IO ()
forall a b.
(GObject a, GObject b) =>
a -> String -> Maybe b -> IO ()
B.Properties.setObjectPropertyObject o
obj String
"widget" (a -> Maybe a
forall a. a -> Maybe a
Just a
val)

-- | Construct a `GValueConstruct` with valid value for the “@widget@” property. This is rarely needed directly, but it is used by `Data.GI.Base.Constructible.new`.
constructCompletionCellWidget :: (IsCompletionCell o, MIO.MonadIO m, Gtk.Widget.IsWidget a) => a -> m (GValueConstruct o)
constructCompletionCellWidget :: forall o (m :: * -> *) a.
(IsCompletionCell o, MonadIO m, IsWidget a) =>
a -> m (GValueConstruct o)
constructCompletionCellWidget 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
"widget" (a -> Maybe a
forall a. a -> Maybe a
P.Just a
val)

#if defined(ENABLE_OVERLOADING)
data CompletionCellWidgetPropertyInfo
instance AttrInfo CompletionCellWidgetPropertyInfo where
    type AttrAllowedOps CompletionCellWidgetPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
    type AttrBaseTypeConstraint CompletionCellWidgetPropertyInfo = IsCompletionCell
    type AttrSetTypeConstraint CompletionCellWidgetPropertyInfo = Gtk.Widget.IsWidget
    type AttrTransferTypeConstraint CompletionCellWidgetPropertyInfo = Gtk.Widget.IsWidget
    type AttrTransferType CompletionCellWidgetPropertyInfo = Gtk.Widget.Widget
    type AttrGetType CompletionCellWidgetPropertyInfo = (Maybe Gtk.Widget.Widget)
    type AttrLabel CompletionCellWidgetPropertyInfo = "widget"
    type AttrOrigin CompletionCellWidgetPropertyInfo = CompletionCell
    attrGet = getCompletionCellWidget
    attrSet = setCompletionCellWidget
    attrTransfer _ v = do
        unsafeCastTo Gtk.Widget.Widget v
    attrConstruct = constructCompletionCellWidget
    attrClear = undefined
    dbgAttrInfo = P.Just (O.ResolvedSymbolInfo {
        O.resolvedSymbolName = "GI.GtkSource.Objects.CompletionCell.widget"
        , O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-gtksource-5.0.0/docs/GI-GtkSource-Objects-CompletionCell.html#g:attr:widget"
        })
#endif

#if defined(ENABLE_OVERLOADING)
instance O.HasAttributeList CompletionCell
type instance O.AttributeList CompletionCell = CompletionCellAttributeList
type CompletionCellAttributeList = ('[ '("accessibleRole", Gtk.Accessible.AccessibleAccessibleRolePropertyInfo), '("canFocus", Gtk.Widget.WidgetCanFocusPropertyInfo), '("canTarget", Gtk.Widget.WidgetCanTargetPropertyInfo), '("column", CompletionCellColumnPropertyInfo), '("cssClasses", Gtk.Widget.WidgetCssClassesPropertyInfo), '("cssName", Gtk.Widget.WidgetCssNamePropertyInfo), '("cursor", Gtk.Widget.WidgetCursorPropertyInfo), '("focusOnClick", Gtk.Widget.WidgetFocusOnClickPropertyInfo), '("focusable", Gtk.Widget.WidgetFocusablePropertyInfo), '("halign", Gtk.Widget.WidgetHalignPropertyInfo), '("hasDefault", Gtk.Widget.WidgetHasDefaultPropertyInfo), '("hasFocus", Gtk.Widget.WidgetHasFocusPropertyInfo), '("hasTooltip", Gtk.Widget.WidgetHasTooltipPropertyInfo), '("heightRequest", Gtk.Widget.WidgetHeightRequestPropertyInfo), '("hexpand", Gtk.Widget.WidgetHexpandPropertyInfo), '("hexpandSet", Gtk.Widget.WidgetHexpandSetPropertyInfo), '("layoutManager", Gtk.Widget.WidgetLayoutManagerPropertyInfo), '("marginBottom", Gtk.Widget.WidgetMarginBottomPropertyInfo), '("marginEnd", Gtk.Widget.WidgetMarginEndPropertyInfo), '("marginStart", Gtk.Widget.WidgetMarginStartPropertyInfo), '("marginTop", Gtk.Widget.WidgetMarginTopPropertyInfo), '("markup", CompletionCellMarkupPropertyInfo), '("name", Gtk.Widget.WidgetNamePropertyInfo), '("opacity", Gtk.Widget.WidgetOpacityPropertyInfo), '("overflow", Gtk.Widget.WidgetOverflowPropertyInfo), '("paintable", CompletionCellPaintablePropertyInfo), '("parent", Gtk.Widget.WidgetParentPropertyInfo), '("receivesDefault", Gtk.Widget.WidgetReceivesDefaultPropertyInfo), '("root", Gtk.Widget.WidgetRootPropertyInfo), '("scaleFactor", Gtk.Widget.WidgetScaleFactorPropertyInfo), '("sensitive", Gtk.Widget.WidgetSensitivePropertyInfo), '("text", CompletionCellTextPropertyInfo), '("tooltipMarkup", Gtk.Widget.WidgetTooltipMarkupPropertyInfo), '("tooltipText", Gtk.Widget.WidgetTooltipTextPropertyInfo), '("valign", Gtk.Widget.WidgetValignPropertyInfo), '("vexpand", Gtk.Widget.WidgetVexpandPropertyInfo), '("vexpandSet", Gtk.Widget.WidgetVexpandSetPropertyInfo), '("visible", Gtk.Widget.WidgetVisiblePropertyInfo), '("widget", CompletionCellWidgetPropertyInfo), '("widthRequest", Gtk.Widget.WidgetWidthRequestPropertyInfo)] :: [(Symbol, DK.Type)])
#endif

#if defined(ENABLE_OVERLOADING)
completionCellColumn :: AttrLabelProxy "column"
completionCellColumn = AttrLabelProxy

completionCellMarkup :: AttrLabelProxy "markup"
completionCellMarkup = AttrLabelProxy

completionCellPaintable :: AttrLabelProxy "paintable"
completionCellPaintable = AttrLabelProxy

completionCellText :: AttrLabelProxy "text"
completionCellText = AttrLabelProxy

completionCellWidget :: AttrLabelProxy "widget"
completionCellWidget = AttrLabelProxy

#endif

#if defined(ENABLE_OVERLOADING)
type instance O.SignalList CompletionCell = CompletionCellSignalList
type CompletionCellSignalList = ('[ '("destroy", Gtk.Widget.WidgetDestroySignalInfo), '("directionChanged", Gtk.Widget.WidgetDirectionChangedSignalInfo), '("hide", Gtk.Widget.WidgetHideSignalInfo), '("keynavFailed", Gtk.Widget.WidgetKeynavFailedSignalInfo), '("map", Gtk.Widget.WidgetMapSignalInfo), '("mnemonicActivate", Gtk.Widget.WidgetMnemonicActivateSignalInfo), '("moveFocus", Gtk.Widget.WidgetMoveFocusSignalInfo), '("notify", GObject.Object.ObjectNotifySignalInfo), '("queryTooltip", Gtk.Widget.WidgetQueryTooltipSignalInfo), '("realize", Gtk.Widget.WidgetRealizeSignalInfo), '("show", Gtk.Widget.WidgetShowSignalInfo), '("stateFlagsChanged", Gtk.Widget.WidgetStateFlagsChangedSignalInfo), '("unmap", Gtk.Widget.WidgetUnmapSignalInfo), '("unrealize", Gtk.Widget.WidgetUnrealizeSignalInfo)] :: [(Symbol, DK.Type)])

#endif

-- method CompletionCell::get_column
-- method type : OrdinaryMethod
-- Args: [ Arg
--           { argCName = "self"
--           , argType =
--               TInterface
--                 Name { namespace = "GtkSource" , name = "CompletionCell" }
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation { rawDocText = Nothing , sinceVersion = Nothing }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , argCallbackUserData = False
--           , transfer = TransferNothing
--           }
--       ]
-- Lengths: []
-- returnType: Just
--               (TInterface
--                  Name { namespace = "GtkSource" , name = "CompletionColumn" })
-- throws : False
-- Skip return : False

foreign import ccall "gtk_source_completion_cell_get_column" gtk_source_completion_cell_get_column :: 
    Ptr CompletionCell ->                   -- self : TInterface (Name {namespace = "GtkSource", name = "CompletionCell"})
    IO CUInt

-- | /No description available in the introspection data./
completionCellGetColumn ::
    (B.CallStack.HasCallStack, MonadIO m, IsCompletionCell a) =>
    a
    -> m GtkSource.Enums.CompletionColumn
completionCellGetColumn :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsCompletionCell a) =>
a -> m CompletionColumn
completionCellGetColumn a
self = IO CompletionColumn -> m CompletionColumn
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO CompletionColumn -> m CompletionColumn)
-> IO CompletionColumn -> m CompletionColumn
forall a b. (a -> b) -> a -> b
$ do
    Ptr CompletionCell
self' <- a -> IO (Ptr CompletionCell)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
self
    CUInt
result <- Ptr CompletionCell -> IO CUInt
gtk_source_completion_cell_get_column Ptr CompletionCell
self'
    let result' :: CompletionColumn
result' = (Int -> CompletionColumn
forall a. Enum a => Int -> a
toEnum (Int -> CompletionColumn)
-> (CUInt -> Int) -> CUInt -> CompletionColumn
forall b c a. (b -> c) -> (a -> b) -> a -> c
. CUInt -> Int
forall a b. (Integral a, Num b) => a -> b
fromIntegral) CUInt
result
    a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
self
    CompletionColumn -> IO CompletionColumn
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return CompletionColumn
result'

#if defined(ENABLE_OVERLOADING)
data CompletionCellGetColumnMethodInfo
instance (signature ~ (m GtkSource.Enums.CompletionColumn), MonadIO m, IsCompletionCell a) => O.OverloadedMethod CompletionCellGetColumnMethodInfo a signature where
    overloadedMethod = completionCellGetColumn

instance O.OverloadedMethodInfo CompletionCellGetColumnMethodInfo a where
    overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
        O.resolvedSymbolName = "GI.GtkSource.Objects.CompletionCell.completionCellGetColumn",
        O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-gtksource-5.0.0/docs/GI-GtkSource-Objects-CompletionCell.html#v:completionCellGetColumn"
        })


#endif

-- method CompletionCell::get_widget
-- method type : OrdinaryMethod
-- Args: [ Arg
--           { argCName = "self"
--           , argType =
--               TInterface
--                 Name { namespace = "GtkSource" , name = "CompletionCell" }
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "a #GtkSourceCompletionCell"
--                 , sinceVersion = Nothing
--                 }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , argCallbackUserData = False
--           , transfer = TransferNothing
--           }
--       ]
-- Lengths: []
-- returnType: Just (TInterface Name { namespace = "Gtk" , name = "Widget" })
-- throws : False
-- Skip return : False

foreign import ccall "gtk_source_completion_cell_get_widget" gtk_source_completion_cell_get_widget :: 
    Ptr CompletionCell ->                   -- self : TInterface (Name {namespace = "GtkSource", name = "CompletionCell"})
    IO (Ptr Gtk.Widget.Widget)

-- | Gets the child t'GI.Gtk.Objects.Widget.Widget', if any.
completionCellGetWidget ::
    (B.CallStack.HasCallStack, MonadIO m, IsCompletionCell a) =>
    a
    -- ^ /@self@/: a t'GI.GtkSource.Objects.CompletionCell.CompletionCell'
    -> m (Maybe Gtk.Widget.Widget)
    -- ^ __Returns:__ a t'GI.Gtk.Objects.Widget.Widget' or 'P.Nothing'
completionCellGetWidget :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsCompletionCell a) =>
a -> m (Maybe Widget)
completionCellGetWidget a
self = IO (Maybe Widget) -> m (Maybe Widget)
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO (Maybe Widget) -> m (Maybe Widget))
-> IO (Maybe Widget) -> m (Maybe Widget)
forall a b. (a -> b) -> a -> b
$ do
    Ptr CompletionCell
self' <- a -> IO (Ptr CompletionCell)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
self
    Ptr Widget
result <- Ptr CompletionCell -> IO (Ptr Widget)
gtk_source_completion_cell_get_widget Ptr CompletionCell
self'
    Maybe Widget
maybeResult <- Ptr Widget -> (Ptr Widget -> IO Widget) -> IO (Maybe Widget)
forall a b. Ptr a -> (Ptr a -> IO b) -> IO (Maybe b)
convertIfNonNull Ptr Widget
result ((Ptr Widget -> IO Widget) -> IO (Maybe Widget))
-> (Ptr Widget -> IO Widget) -> IO (Maybe Widget)
forall a b. (a -> b) -> a -> b
$ \Ptr Widget
result' -> do
        Widget
result'' <- ((ManagedPtr Widget -> Widget) -> Ptr Widget -> IO Widget
forall a b.
(HasCallStack, GObject a, GObject b) =>
(ManagedPtr a -> a) -> Ptr b -> IO a
newObject ManagedPtr Widget -> Widget
Gtk.Widget.Widget) Ptr Widget
result'
        Widget -> IO Widget
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return Widget
result''
    a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
self
    Maybe Widget -> IO (Maybe Widget)
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return Maybe Widget
maybeResult

#if defined(ENABLE_OVERLOADING)
data CompletionCellGetWidgetMethodInfo
instance (signature ~ (m (Maybe Gtk.Widget.Widget)), MonadIO m, IsCompletionCell a) => O.OverloadedMethod CompletionCellGetWidgetMethodInfo a signature where
    overloadedMethod = completionCellGetWidget

instance O.OverloadedMethodInfo CompletionCellGetWidgetMethodInfo a where
    overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
        O.resolvedSymbolName = "GI.GtkSource.Objects.CompletionCell.completionCellGetWidget",
        O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-gtksource-5.0.0/docs/GI-GtkSource-Objects-CompletionCell.html#v:completionCellGetWidget"
        })


#endif

-- method CompletionCell::set_gicon
-- method type : OrdinaryMethod
-- Args: [ Arg
--           { argCName = "self"
--           , argType =
--               TInterface
--                 Name { namespace = "GtkSource" , name = "CompletionCell" }
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation { rawDocText = Nothing , sinceVersion = Nothing }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , argCallbackUserData = False
--           , transfer = TransferNothing
--           }
--       , Arg
--           { argCName = "gicon"
--           , argType = TInterface Name { namespace = "Gio" , name = "Icon" }
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation { rawDocText = Nothing , sinceVersion = Nothing }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , argCallbackUserData = False
--           , transfer = TransferNothing
--           }
--       ]
-- Lengths: []
-- returnType: Nothing
-- throws : False
-- Skip return : False

foreign import ccall "gtk_source_completion_cell_set_gicon" gtk_source_completion_cell_set_gicon :: 
    Ptr CompletionCell ->                   -- self : TInterface (Name {namespace = "GtkSource", name = "CompletionCell"})
    Ptr Gio.Icon.Icon ->                    -- gicon : TInterface (Name {namespace = "Gio", name = "Icon"})
    IO ()

-- | /No description available in the introspection data./
completionCellSetGicon ::
    (B.CallStack.HasCallStack, MonadIO m, IsCompletionCell a, Gio.Icon.IsIcon b) =>
    a
    -> b
    -> m ()
completionCellSetGicon :: forall (m :: * -> *) a b.
(HasCallStack, MonadIO m, IsCompletionCell a, IsIcon b) =>
a -> b -> m ()
completionCellSetGicon a
self b
gicon = 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 CompletionCell
self' <- a -> IO (Ptr CompletionCell)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
self
    Ptr Icon
gicon' <- b -> IO (Ptr Icon)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr b
gicon
    Ptr CompletionCell -> Ptr Icon -> IO ()
gtk_source_completion_cell_set_gicon Ptr CompletionCell
self' Ptr Icon
gicon'
    a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
self
    b -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr b
gicon
    () -> IO ()
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return ()

#if defined(ENABLE_OVERLOADING)
data CompletionCellSetGiconMethodInfo
instance (signature ~ (b -> m ()), MonadIO m, IsCompletionCell a, Gio.Icon.IsIcon b) => O.OverloadedMethod CompletionCellSetGiconMethodInfo a signature where
    overloadedMethod = completionCellSetGicon

instance O.OverloadedMethodInfo CompletionCellSetGiconMethodInfo a where
    overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
        O.resolvedSymbolName = "GI.GtkSource.Objects.CompletionCell.completionCellSetGicon",
        O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-gtksource-5.0.0/docs/GI-GtkSource-Objects-CompletionCell.html#v:completionCellSetGicon"
        })


#endif

-- method CompletionCell::set_icon_name
-- method type : OrdinaryMethod
-- Args: [ Arg
--           { argCName = "self"
--           , argType =
--               TInterface
--                 Name { namespace = "GtkSource" , name = "CompletionCell" }
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation { rawDocText = Nothing , sinceVersion = Nothing }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , argCallbackUserData = False
--           , transfer = TransferNothing
--           }
--       , Arg
--           { argCName = "icon_name"
--           , argType = TBasicType TUTF8
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation { rawDocText = Nothing , sinceVersion = Nothing }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , argCallbackUserData = False
--           , transfer = TransferNothing
--           }
--       ]
-- Lengths: []
-- returnType: Nothing
-- throws : False
-- Skip return : False

foreign import ccall "gtk_source_completion_cell_set_icon_name" gtk_source_completion_cell_set_icon_name :: 
    Ptr CompletionCell ->                   -- self : TInterface (Name {namespace = "GtkSource", name = "CompletionCell"})
    CString ->                              -- icon_name : TBasicType TUTF8
    IO ()

-- | /No description available in the introspection data./
completionCellSetIconName ::
    (B.CallStack.HasCallStack, MonadIO m, IsCompletionCell a) =>
    a
    -> T.Text
    -> m ()
completionCellSetIconName :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsCompletionCell a) =>
a -> Text -> m ()
completionCellSetIconName a
self Text
iconName = 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 CompletionCell
self' <- a -> IO (Ptr CompletionCell)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
self
    CString
iconName' <- Text -> IO CString
textToCString Text
iconName
    Ptr CompletionCell -> CString -> IO ()
gtk_source_completion_cell_set_icon_name Ptr CompletionCell
self' CString
iconName'
    a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
self
    CString -> IO ()
forall a. Ptr a -> IO ()
freeMem CString
iconName'
    () -> IO ()
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return ()

#if defined(ENABLE_OVERLOADING)
data CompletionCellSetIconNameMethodInfo
instance (signature ~ (T.Text -> m ()), MonadIO m, IsCompletionCell a) => O.OverloadedMethod CompletionCellSetIconNameMethodInfo a signature where
    overloadedMethod = completionCellSetIconName

instance O.OverloadedMethodInfo CompletionCellSetIconNameMethodInfo a where
    overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
        O.resolvedSymbolName = "GI.GtkSource.Objects.CompletionCell.completionCellSetIconName",
        O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-gtksource-5.0.0/docs/GI-GtkSource-Objects-CompletionCell.html#v:completionCellSetIconName"
        })


#endif

-- method CompletionCell::set_markup
-- method type : OrdinaryMethod
-- Args: [ Arg
--           { argCName = "self"
--           , argType =
--               TInterface
--                 Name { namespace = "GtkSource" , name = "CompletionCell" }
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation { rawDocText = Nothing , sinceVersion = Nothing }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , argCallbackUserData = False
--           , transfer = TransferNothing
--           }
--       , Arg
--           { argCName = "markup"
--           , argType = TBasicType TUTF8
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation { rawDocText = Nothing , sinceVersion = Nothing }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , argCallbackUserData = False
--           , transfer = TransferNothing
--           }
--       ]
-- Lengths: []
-- returnType: Nothing
-- throws : False
-- Skip return : False

foreign import ccall "gtk_source_completion_cell_set_markup" gtk_source_completion_cell_set_markup :: 
    Ptr CompletionCell ->                   -- self : TInterface (Name {namespace = "GtkSource", name = "CompletionCell"})
    CString ->                              -- markup : TBasicType TUTF8
    IO ()

-- | /No description available in the introspection data./
completionCellSetMarkup ::
    (B.CallStack.HasCallStack, MonadIO m, IsCompletionCell a) =>
    a
    -> T.Text
    -> m ()
completionCellSetMarkup :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsCompletionCell a) =>
a -> Text -> m ()
completionCellSetMarkup a
self Text
markup = 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 CompletionCell
self' <- a -> IO (Ptr CompletionCell)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
self
    CString
markup' <- Text -> IO CString
textToCString Text
markup
    Ptr CompletionCell -> CString -> IO ()
gtk_source_completion_cell_set_markup Ptr CompletionCell
self' CString
markup'
    a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
self
    CString -> IO ()
forall a. Ptr a -> IO ()
freeMem CString
markup'
    () -> IO ()
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return ()

#if defined(ENABLE_OVERLOADING)
data CompletionCellSetMarkupMethodInfo
instance (signature ~ (T.Text -> m ()), MonadIO m, IsCompletionCell a) => O.OverloadedMethod CompletionCellSetMarkupMethodInfo a signature where
    overloadedMethod = completionCellSetMarkup

instance O.OverloadedMethodInfo CompletionCellSetMarkupMethodInfo a where
    overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
        O.resolvedSymbolName = "GI.GtkSource.Objects.CompletionCell.completionCellSetMarkup",
        O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-gtksource-5.0.0/docs/GI-GtkSource-Objects-CompletionCell.html#v:completionCellSetMarkup"
        })


#endif

-- method CompletionCell::set_paintable
-- method type : OrdinaryMethod
-- Args: [ Arg
--           { argCName = "self"
--           , argType =
--               TInterface
--                 Name { namespace = "GtkSource" , name = "CompletionCell" }
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation { rawDocText = Nothing , sinceVersion = Nothing }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , argCallbackUserData = False
--           , transfer = TransferNothing
--           }
--       , Arg
--           { argCName = "paintable"
--           , argType =
--               TInterface Name { namespace = "Gdk" , name = "Paintable" }
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation { rawDocText = Nothing , sinceVersion = Nothing }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , argCallbackUserData = False
--           , transfer = TransferNothing
--           }
--       ]
-- Lengths: []
-- returnType: Nothing
-- throws : False
-- Skip return : False

foreign import ccall "gtk_source_completion_cell_set_paintable" gtk_source_completion_cell_set_paintable :: 
    Ptr CompletionCell ->                   -- self : TInterface (Name {namespace = "GtkSource", name = "CompletionCell"})
    Ptr Gdk.Paintable.Paintable ->          -- paintable : TInterface (Name {namespace = "Gdk", name = "Paintable"})
    IO ()

-- | /No description available in the introspection data./
completionCellSetPaintable ::
    (B.CallStack.HasCallStack, MonadIO m, IsCompletionCell a, Gdk.Paintable.IsPaintable b) =>
    a
    -> b
    -> m ()
completionCellSetPaintable :: forall (m :: * -> *) a b.
(HasCallStack, MonadIO m, IsCompletionCell a, IsPaintable b) =>
a -> b -> m ()
completionCellSetPaintable a
self b
paintable = 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 CompletionCell
self' <- a -> IO (Ptr CompletionCell)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
self
    Ptr Paintable
paintable' <- b -> IO (Ptr Paintable)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr b
paintable
    Ptr CompletionCell -> Ptr Paintable -> IO ()
gtk_source_completion_cell_set_paintable Ptr CompletionCell
self' Ptr Paintable
paintable'
    a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
self
    b -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr b
paintable
    () -> IO ()
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return ()

#if defined(ENABLE_OVERLOADING)
data CompletionCellSetPaintableMethodInfo
instance (signature ~ (b -> m ()), MonadIO m, IsCompletionCell a, Gdk.Paintable.IsPaintable b) => O.OverloadedMethod CompletionCellSetPaintableMethodInfo a signature where
    overloadedMethod = completionCellSetPaintable

instance O.OverloadedMethodInfo CompletionCellSetPaintableMethodInfo a where
    overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
        O.resolvedSymbolName = "GI.GtkSource.Objects.CompletionCell.completionCellSetPaintable",
        O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-gtksource-5.0.0/docs/GI-GtkSource-Objects-CompletionCell.html#v:completionCellSetPaintable"
        })


#endif

-- method CompletionCell::set_text
-- method type : OrdinaryMethod
-- Args: [ Arg
--           { argCName = "self"
--           , argType =
--               TInterface
--                 Name { namespace = "GtkSource" , name = "CompletionCell" }
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "a #GtkSourceCompletionCell"
--                 , sinceVersion = Nothing
--                 }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , argCallbackUserData = False
--           , transfer = TransferNothing
--           }
--       , Arg
--           { argCName = "text"
--           , argType = TBasicType TUTF8
--           , direction = DirectionIn
--           , mayBeNull = True
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "the text to set or %NULL"
--                 , sinceVersion = Nothing
--                 }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , argCallbackUserData = False
--           , transfer = TransferNothing
--           }
--       ]
-- Lengths: []
-- returnType: Nothing
-- throws : False
-- Skip return : False

foreign import ccall "gtk_source_completion_cell_set_text" gtk_source_completion_cell_set_text :: 
    Ptr CompletionCell ->                   -- self : TInterface (Name {namespace = "GtkSource", name = "CompletionCell"})
    CString ->                              -- text : TBasicType TUTF8
    IO ()

-- | Sets the text for the column cell. Use 'P.Nothing' to unset.
completionCellSetText ::
    (B.CallStack.HasCallStack, MonadIO m, IsCompletionCell a) =>
    a
    -- ^ /@self@/: a t'GI.GtkSource.Objects.CompletionCell.CompletionCell'
    -> Maybe (T.Text)
    -- ^ /@text@/: the text to set or 'P.Nothing'
    -> m ()
completionCellSetText :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsCompletionCell a) =>
a -> Maybe Text -> m ()
completionCellSetText a
self Maybe Text
text = 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 CompletionCell
self' <- a -> IO (Ptr CompletionCell)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
self
    CString
maybeText <- case Maybe Text
text 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
jText -> do
            CString
jText' <- Text -> IO CString
textToCString Text
jText
            CString -> IO CString
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return CString
jText'
    Ptr CompletionCell -> CString -> IO ()
gtk_source_completion_cell_set_text Ptr CompletionCell
self' CString
maybeText
    a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
self
    CString -> IO ()
forall a. Ptr a -> IO ()
freeMem CString
maybeText
    () -> IO ()
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return ()

#if defined(ENABLE_OVERLOADING)
data CompletionCellSetTextMethodInfo
instance (signature ~ (Maybe (T.Text) -> m ()), MonadIO m, IsCompletionCell a) => O.OverloadedMethod CompletionCellSetTextMethodInfo a signature where
    overloadedMethod = completionCellSetText

instance O.OverloadedMethodInfo CompletionCellSetTextMethodInfo a where
    overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
        O.resolvedSymbolName = "GI.GtkSource.Objects.CompletionCell.completionCellSetText",
        O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-gtksource-5.0.0/docs/GI-GtkSource-Objects-CompletionCell.html#v:completionCellSetText"
        })


#endif

-- method CompletionCell::set_text_with_attributes
-- method type : OrdinaryMethod
-- Args: [ Arg
--           { argCName = "self"
--           , argType =
--               TInterface
--                 Name { namespace = "GtkSource" , name = "CompletionCell" }
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation { rawDocText = Nothing , sinceVersion = Nothing }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , argCallbackUserData = False
--           , transfer = TransferNothing
--           }
--       , Arg
--           { argCName = "text"
--           , argType = TBasicType TUTF8
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation { rawDocText = Nothing , sinceVersion = Nothing }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , argCallbackUserData = False
--           , transfer = TransferNothing
--           }
--       , Arg
--           { argCName = "attrs"
--           , argType =
--               TInterface Name { namespace = "Pango" , name = "AttrList" }
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation { rawDocText = Nothing , sinceVersion = Nothing }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , argCallbackUserData = False
--           , transfer = TransferNothing
--           }
--       ]
-- Lengths: []
-- returnType: Nothing
-- throws : False
-- Skip return : False

foreign import ccall "gtk_source_completion_cell_set_text_with_attributes" gtk_source_completion_cell_set_text_with_attributes :: 
    Ptr CompletionCell ->                   -- self : TInterface (Name {namespace = "GtkSource", name = "CompletionCell"})
    CString ->                              -- text : TBasicType TUTF8
    Ptr Pango.AttrList.AttrList ->          -- attrs : TInterface (Name {namespace = "Pango", name = "AttrList"})
    IO ()

-- | /No description available in the introspection data./
completionCellSetTextWithAttributes ::
    (B.CallStack.HasCallStack, MonadIO m, IsCompletionCell a) =>
    a
    -> T.Text
    -> Pango.AttrList.AttrList
    -> m ()
completionCellSetTextWithAttributes :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsCompletionCell a) =>
a -> Text -> AttrList -> m ()
completionCellSetTextWithAttributes a
self Text
text AttrList
attrs = 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 CompletionCell
self' <- a -> IO (Ptr CompletionCell)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
self
    CString
text' <- Text -> IO CString
textToCString Text
text
    Ptr AttrList
attrs' <- AttrList -> IO (Ptr AttrList)
forall a. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr a)
unsafeManagedPtrGetPtr AttrList
attrs
    Ptr CompletionCell -> CString -> Ptr AttrList -> IO ()
gtk_source_completion_cell_set_text_with_attributes Ptr CompletionCell
self' CString
text' Ptr AttrList
attrs'
    a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
self
    AttrList -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr AttrList
attrs
    CString -> IO ()
forall a. Ptr a -> IO ()
freeMem CString
text'
    () -> IO ()
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return ()

#if defined(ENABLE_OVERLOADING)
data CompletionCellSetTextWithAttributesMethodInfo
instance (signature ~ (T.Text -> Pango.AttrList.AttrList -> m ()), MonadIO m, IsCompletionCell a) => O.OverloadedMethod CompletionCellSetTextWithAttributesMethodInfo a signature where
    overloadedMethod = completionCellSetTextWithAttributes

instance O.OverloadedMethodInfo CompletionCellSetTextWithAttributesMethodInfo a where
    overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
        O.resolvedSymbolName = "GI.GtkSource.Objects.CompletionCell.completionCellSetTextWithAttributes",
        O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-gtksource-5.0.0/docs/GI-GtkSource-Objects-CompletionCell.html#v:completionCellSetTextWithAttributes"
        })


#endif

-- method CompletionCell::set_widget
-- method type : OrdinaryMethod
-- Args: [ Arg
--           { argCName = "self"
--           , argType =
--               TInterface
--                 Name { namespace = "GtkSource" , name = "CompletionCell" }
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation { rawDocText = Nothing , sinceVersion = Nothing }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , argCallbackUserData = False
--           , transfer = TransferNothing
--           }
--       , Arg
--           { argCName = "child"
--           , argType = TInterface Name { namespace = "Gtk" , name = "Widget" }
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation { rawDocText = Nothing , sinceVersion = Nothing }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , argCallbackUserData = False
--           , transfer = TransferNothing
--           }
--       ]
-- Lengths: []
-- returnType: Nothing
-- throws : False
-- Skip return : False

foreign import ccall "gtk_source_completion_cell_set_widget" gtk_source_completion_cell_set_widget :: 
    Ptr CompletionCell ->                   -- self : TInterface (Name {namespace = "GtkSource", name = "CompletionCell"})
    Ptr Gtk.Widget.Widget ->                -- child : TInterface (Name {namespace = "Gtk", name = "Widget"})
    IO ()

-- | /No description available in the introspection data./
completionCellSetWidget ::
    (B.CallStack.HasCallStack, MonadIO m, IsCompletionCell a, Gtk.Widget.IsWidget b) =>
    a
    -> b
    -> m ()
completionCellSetWidget :: forall (m :: * -> *) a b.
(HasCallStack, MonadIO m, IsCompletionCell a, IsWidget b) =>
a -> b -> m ()
completionCellSetWidget a
self b
child = 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 CompletionCell
self' <- a -> IO (Ptr CompletionCell)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
self
    Ptr Widget
child' <- b -> IO (Ptr Widget)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr b
child
    Ptr CompletionCell -> Ptr Widget -> IO ()
gtk_source_completion_cell_set_widget Ptr CompletionCell
self' Ptr Widget
child'
    a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
self
    b -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr b
child
    () -> IO ()
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return ()

#if defined(ENABLE_OVERLOADING)
data CompletionCellSetWidgetMethodInfo
instance (signature ~ (b -> m ()), MonadIO m, IsCompletionCell a, Gtk.Widget.IsWidget b) => O.OverloadedMethod CompletionCellSetWidgetMethodInfo a signature where
    overloadedMethod = completionCellSetWidget

instance O.OverloadedMethodInfo CompletionCellSetWidgetMethodInfo a where
    overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
        O.resolvedSymbolName = "GI.GtkSource.Objects.CompletionCell.completionCellSetWidget",
        O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-gtksource-5.0.0/docs/GI-GtkSource-Objects-CompletionCell.html#v:completionCellSetWidget"
        })


#endif