{-# LANGUAGE TypeApplications #-}


-- | Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
-- License    : LGPL-2.1
-- Maintainer : Iñaki García Etxebarria
-- 
-- /No description available in the introspection data./

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

module GI.WebKit2WebExtension.Objects.DOMDocumentFragment
    ( 

-- * Exported types
    DOMDocumentFragment(..)                 ,
    IsDOMDocumentFragment                   ,
    toDOMDocumentFragment                   ,


 -- * Methods
-- ** Overloaded methods #method:Overloaded methods#

#if defined(ENABLE_OVERLOADING)
    ResolveDOMDocumentFragmentMethod        ,
#endif


-- ** getChildElementCount #method:getChildElementCount#

#if defined(ENABLE_OVERLOADING)
    DOMDocumentFragmentGetChildElementCountMethodInfo,
#endif
    dOMDocumentFragmentGetChildElementCount ,


-- ** getChildren #method:getChildren#

#if defined(ENABLE_OVERLOADING)
    DOMDocumentFragmentGetChildrenMethodInfo,
#endif
    dOMDocumentFragmentGetChildren          ,


-- ** getElementById #method:getElementById#

#if defined(ENABLE_OVERLOADING)
    DOMDocumentFragmentGetElementByIdMethodInfo,
#endif
    dOMDocumentFragmentGetElementById       ,


-- ** getFirstElementChild #method:getFirstElementChild#

#if defined(ENABLE_OVERLOADING)
    DOMDocumentFragmentGetFirstElementChildMethodInfo,
#endif
    dOMDocumentFragmentGetFirstElementChild ,


-- ** getLastElementChild #method:getLastElementChild#

#if defined(ENABLE_OVERLOADING)
    DOMDocumentFragmentGetLastElementChildMethodInfo,
#endif
    dOMDocumentFragmentGetLastElementChild  ,


-- ** querySelector #method:querySelector#

#if defined(ENABLE_OVERLOADING)
    DOMDocumentFragmentQuerySelectorMethodInfo,
#endif
    dOMDocumentFragmentQuerySelector        ,


-- ** querySelectorAll #method:querySelectorAll#

#if defined(ENABLE_OVERLOADING)
    DOMDocumentFragmentQuerySelectorAllMethodInfo,
#endif
    dOMDocumentFragmentQuerySelectorAll     ,




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

#if defined(ENABLE_OVERLOADING)
    DOMDocumentFragmentChildElementCountPropertyInfo,
#endif
#if defined(ENABLE_OVERLOADING)
    dOMDocumentFragmentChildElementCount    ,
#endif
    getDOMDocumentFragmentChildElementCount ,


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

#if defined(ENABLE_OVERLOADING)
    DOMDocumentFragmentChildrenPropertyInfo ,
#endif
#if defined(ENABLE_OVERLOADING)
    dOMDocumentFragmentChildren             ,
#endif
    getDOMDocumentFragmentChildren          ,


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

#if defined(ENABLE_OVERLOADING)
    DOMDocumentFragmentFirstElementChildPropertyInfo,
#endif
#if defined(ENABLE_OVERLOADING)
    dOMDocumentFragmentFirstElementChild    ,
#endif
    getDOMDocumentFragmentFirstElementChild ,


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

#if defined(ENABLE_OVERLOADING)
    DOMDocumentFragmentLastElementChildPropertyInfo,
#endif
#if defined(ENABLE_OVERLOADING)
    dOMDocumentFragmentLastElementChild     ,
#endif
    getDOMDocumentFragmentLastElementChild  ,




    ) 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.GClosure as B.GClosure
import qualified Data.GI.Base.GError as B.GError
import qualified Data.GI.Base.GVariant as B.GVariant
import qualified Data.GI.Base.GValue as B.GValue
import qualified Data.GI.Base.GParamSpec as B.GParamSpec
import qualified Data.GI.Base.CallStack as B.CallStack
import qualified Data.GI.Base.Properties as B.Properties
import qualified Data.GI.Base.Signals as B.Signals
import qualified Control.Monad.IO.Class as MIO
import qualified Data.Text as T
import qualified Data.ByteString.Char8 as B
import qualified Data.Map as Map
import qualified Foreign.Ptr as FP
import qualified GHC.OverloadedLabels as OL

import qualified GI.GObject.Objects.Object as GObject.Object
import {-# SOURCE #-} qualified GI.WebKit2WebExtension.Interfaces.DOMEventTarget as WebKit2WebExtension.DOMEventTarget
import {-# SOURCE #-} qualified GI.WebKit2WebExtension.Objects.DOMElement as WebKit2WebExtension.DOMElement
import {-# SOURCE #-} qualified GI.WebKit2WebExtension.Objects.DOMHTMLCollection as WebKit2WebExtension.DOMHTMLCollection
import {-# SOURCE #-} qualified GI.WebKit2WebExtension.Objects.DOMNode as WebKit2WebExtension.DOMNode
import {-# SOURCE #-} qualified GI.WebKit2WebExtension.Objects.DOMNodeList as WebKit2WebExtension.DOMNodeList
import {-# SOURCE #-} qualified GI.WebKit2WebExtension.Objects.DOMObject as WebKit2WebExtension.DOMObject

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

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

foreign import ccall "webkit_dom_document_fragment_get_type"
    c_webkit_dom_document_fragment_get_type :: IO B.Types.GType

instance B.Types.TypedObject DOMDocumentFragment where
    glibType :: IO GType
glibType = IO GType
c_webkit_dom_document_fragment_get_type

instance B.Types.GObject DOMDocumentFragment

-- | Convert 'DOMDocumentFragment' to and from 'Data.GI.Base.GValue.GValue' with 'Data.GI.Base.GValue.toGValue' and 'Data.GI.Base.GValue.fromGValue'.
instance B.GValue.IsGValue DOMDocumentFragment where
    toGValue :: DOMDocumentFragment -> IO GValue
toGValue DOMDocumentFragment
o = do
        GType
gtype <- IO GType
c_webkit_dom_document_fragment_get_type
        DOMDocumentFragment
-> (Ptr DOMDocumentFragment -> IO GValue) -> IO GValue
forall a c.
(HasCallStack, ManagedPtrNewtype a) =>
a -> (Ptr a -> IO c) -> IO c
B.ManagedPtr.withManagedPtr DOMDocumentFragment
o (GType
-> (GValue -> Ptr DOMDocumentFragment -> IO ())
-> Ptr DOMDocumentFragment
-> IO GValue
forall a. GType -> (GValue -> a -> IO ()) -> a -> IO GValue
B.GValue.buildGValue GType
gtype GValue -> Ptr DOMDocumentFragment -> IO ()
forall a. GObject a => GValue -> Ptr a -> IO ()
B.GValue.set_object)
        
    fromGValue :: GValue -> IO DOMDocumentFragment
fromGValue GValue
gv = do
        Ptr DOMDocumentFragment
ptr <- GValue -> IO (Ptr DOMDocumentFragment)
forall b. GObject b => GValue -> IO (Ptr b)
B.GValue.get_object GValue
gv :: IO (Ptr DOMDocumentFragment)
        (ManagedPtr DOMDocumentFragment -> DOMDocumentFragment)
-> Ptr DOMDocumentFragment -> IO DOMDocumentFragment
forall a b.
(HasCallStack, GObject a, GObject b) =>
(ManagedPtr a -> a) -> Ptr b -> IO a
B.ManagedPtr.newObject ManagedPtr DOMDocumentFragment -> DOMDocumentFragment
DOMDocumentFragment Ptr DOMDocumentFragment
ptr
        
    

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

instance O.HasParentTypes DOMDocumentFragment
type instance O.ParentTypes DOMDocumentFragment = '[WebKit2WebExtension.DOMNode.DOMNode, WebKit2WebExtension.DOMObject.DOMObject, GObject.Object.Object, WebKit2WebExtension.DOMEventTarget.DOMEventTarget]

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

#if defined(ENABLE_OVERLOADING)
type family ResolveDOMDocumentFragmentMethod (t :: Symbol) (o :: *) :: * where
    ResolveDOMDocumentFragmentMethod "addEventListener" o = WebKit2WebExtension.DOMEventTarget.DOMEventTargetAddEventListenerMethodInfo
    ResolveDOMDocumentFragmentMethod "appendChild" o = WebKit2WebExtension.DOMNode.DOMNodeAppendChildMethodInfo
    ResolveDOMDocumentFragmentMethod "bindProperty" o = GObject.Object.ObjectBindPropertyMethodInfo
    ResolveDOMDocumentFragmentMethod "bindPropertyFull" o = GObject.Object.ObjectBindPropertyFullMethodInfo
    ResolveDOMDocumentFragmentMethod "cloneNodeWithError" o = WebKit2WebExtension.DOMNode.DOMNodeCloneNodeWithErrorMethodInfo
    ResolveDOMDocumentFragmentMethod "compareDocumentPosition" o = WebKit2WebExtension.DOMNode.DOMNodeCompareDocumentPositionMethodInfo
    ResolveDOMDocumentFragmentMethod "contains" o = WebKit2WebExtension.DOMNode.DOMNodeContainsMethodInfo
    ResolveDOMDocumentFragmentMethod "dispatchEvent" o = WebKit2WebExtension.DOMEventTarget.DOMEventTargetDispatchEventMethodInfo
    ResolveDOMDocumentFragmentMethod "forceFloating" o = GObject.Object.ObjectForceFloatingMethodInfo
    ResolveDOMDocumentFragmentMethod "freezeNotify" o = GObject.Object.ObjectFreezeNotifyMethodInfo
    ResolveDOMDocumentFragmentMethod "getv" o = GObject.Object.ObjectGetvMethodInfo
    ResolveDOMDocumentFragmentMethod "hasChildNodes" o = WebKit2WebExtension.DOMNode.DOMNodeHasChildNodesMethodInfo
    ResolveDOMDocumentFragmentMethod "insertBefore" o = WebKit2WebExtension.DOMNode.DOMNodeInsertBeforeMethodInfo
    ResolveDOMDocumentFragmentMethod "isDefaultNamespace" o = WebKit2WebExtension.DOMNode.DOMNodeIsDefaultNamespaceMethodInfo
    ResolveDOMDocumentFragmentMethod "isEqualNode" o = WebKit2WebExtension.DOMNode.DOMNodeIsEqualNodeMethodInfo
    ResolveDOMDocumentFragmentMethod "isFloating" o = GObject.Object.ObjectIsFloatingMethodInfo
    ResolveDOMDocumentFragmentMethod "isSameNode" o = WebKit2WebExtension.DOMNode.DOMNodeIsSameNodeMethodInfo
    ResolveDOMDocumentFragmentMethod "isSupported" o = WebKit2WebExtension.DOMNode.DOMNodeIsSupportedMethodInfo
    ResolveDOMDocumentFragmentMethod "lookupNamespaceUri" o = WebKit2WebExtension.DOMNode.DOMNodeLookupNamespaceUriMethodInfo
    ResolveDOMDocumentFragmentMethod "lookupPrefix" o = WebKit2WebExtension.DOMNode.DOMNodeLookupPrefixMethodInfo
    ResolveDOMDocumentFragmentMethod "normalize" o = WebKit2WebExtension.DOMNode.DOMNodeNormalizeMethodInfo
    ResolveDOMDocumentFragmentMethod "notify" o = GObject.Object.ObjectNotifyMethodInfo
    ResolveDOMDocumentFragmentMethod "notifyByPspec" o = GObject.Object.ObjectNotifyByPspecMethodInfo
    ResolveDOMDocumentFragmentMethod "querySelector" o = DOMDocumentFragmentQuerySelectorMethodInfo
    ResolveDOMDocumentFragmentMethod "querySelectorAll" o = DOMDocumentFragmentQuerySelectorAllMethodInfo
    ResolveDOMDocumentFragmentMethod "ref" o = GObject.Object.ObjectRefMethodInfo
    ResolveDOMDocumentFragmentMethod "refSink" o = GObject.Object.ObjectRefSinkMethodInfo
    ResolveDOMDocumentFragmentMethod "removeChild" o = WebKit2WebExtension.DOMNode.DOMNodeRemoveChildMethodInfo
    ResolveDOMDocumentFragmentMethod "removeEventListener" o = WebKit2WebExtension.DOMEventTarget.DOMEventTargetRemoveEventListenerMethodInfo
    ResolveDOMDocumentFragmentMethod "replaceChild" o = WebKit2WebExtension.DOMNode.DOMNodeReplaceChildMethodInfo
    ResolveDOMDocumentFragmentMethod "runDispose" o = GObject.Object.ObjectRunDisposeMethodInfo
    ResolveDOMDocumentFragmentMethod "stealData" o = GObject.Object.ObjectStealDataMethodInfo
    ResolveDOMDocumentFragmentMethod "stealQdata" o = GObject.Object.ObjectStealQdataMethodInfo
    ResolveDOMDocumentFragmentMethod "thawNotify" o = GObject.Object.ObjectThawNotifyMethodInfo
    ResolveDOMDocumentFragmentMethod "unref" o = GObject.Object.ObjectUnrefMethodInfo
    ResolveDOMDocumentFragmentMethod "watchClosure" o = GObject.Object.ObjectWatchClosureMethodInfo
    ResolveDOMDocumentFragmentMethod "getBaseUri" o = WebKit2WebExtension.DOMNode.DOMNodeGetBaseUriMethodInfo
    ResolveDOMDocumentFragmentMethod "getChildElementCount" o = DOMDocumentFragmentGetChildElementCountMethodInfo
    ResolveDOMDocumentFragmentMethod "getChildNodes" o = WebKit2WebExtension.DOMNode.DOMNodeGetChildNodesMethodInfo
    ResolveDOMDocumentFragmentMethod "getChildren" o = DOMDocumentFragmentGetChildrenMethodInfo
    ResolveDOMDocumentFragmentMethod "getData" o = GObject.Object.ObjectGetDataMethodInfo
    ResolveDOMDocumentFragmentMethod "getElementById" o = DOMDocumentFragmentGetElementByIdMethodInfo
    ResolveDOMDocumentFragmentMethod "getFirstChild" o = WebKit2WebExtension.DOMNode.DOMNodeGetFirstChildMethodInfo
    ResolveDOMDocumentFragmentMethod "getFirstElementChild" o = DOMDocumentFragmentGetFirstElementChildMethodInfo
    ResolveDOMDocumentFragmentMethod "getLastChild" o = WebKit2WebExtension.DOMNode.DOMNodeGetLastChildMethodInfo
    ResolveDOMDocumentFragmentMethod "getLastElementChild" o = DOMDocumentFragmentGetLastElementChildMethodInfo
    ResolveDOMDocumentFragmentMethod "getLocalName" o = WebKit2WebExtension.DOMNode.DOMNodeGetLocalNameMethodInfo
    ResolveDOMDocumentFragmentMethod "getNamespaceUri" o = WebKit2WebExtension.DOMNode.DOMNodeGetNamespaceUriMethodInfo
    ResolveDOMDocumentFragmentMethod "getNextSibling" o = WebKit2WebExtension.DOMNode.DOMNodeGetNextSiblingMethodInfo
    ResolveDOMDocumentFragmentMethod "getNodeName" o = WebKit2WebExtension.DOMNode.DOMNodeGetNodeNameMethodInfo
    ResolveDOMDocumentFragmentMethod "getNodeType" o = WebKit2WebExtension.DOMNode.DOMNodeGetNodeTypeMethodInfo
    ResolveDOMDocumentFragmentMethod "getNodeValue" o = WebKit2WebExtension.DOMNode.DOMNodeGetNodeValueMethodInfo
    ResolveDOMDocumentFragmentMethod "getOwnerDocument" o = WebKit2WebExtension.DOMNode.DOMNodeGetOwnerDocumentMethodInfo
    ResolveDOMDocumentFragmentMethod "getParentElement" o = WebKit2WebExtension.DOMNode.DOMNodeGetParentElementMethodInfo
    ResolveDOMDocumentFragmentMethod "getParentNode" o = WebKit2WebExtension.DOMNode.DOMNodeGetParentNodeMethodInfo
    ResolveDOMDocumentFragmentMethod "getPrefix" o = WebKit2WebExtension.DOMNode.DOMNodeGetPrefixMethodInfo
    ResolveDOMDocumentFragmentMethod "getPreviousSibling" o = WebKit2WebExtension.DOMNode.DOMNodeGetPreviousSiblingMethodInfo
    ResolveDOMDocumentFragmentMethod "getProperty" o = GObject.Object.ObjectGetPropertyMethodInfo
    ResolveDOMDocumentFragmentMethod "getQdata" o = GObject.Object.ObjectGetQdataMethodInfo
    ResolveDOMDocumentFragmentMethod "getTextContent" o = WebKit2WebExtension.DOMNode.DOMNodeGetTextContentMethodInfo
    ResolveDOMDocumentFragmentMethod "setData" o = GObject.Object.ObjectSetDataMethodInfo
    ResolveDOMDocumentFragmentMethod "setDataFull" o = GObject.Object.ObjectSetDataFullMethodInfo
    ResolveDOMDocumentFragmentMethod "setNodeValue" o = WebKit2WebExtension.DOMNode.DOMNodeSetNodeValueMethodInfo
    ResolveDOMDocumentFragmentMethod "setPrefix" o = WebKit2WebExtension.DOMNode.DOMNodeSetPrefixMethodInfo
    ResolveDOMDocumentFragmentMethod "setProperty" o = GObject.Object.ObjectSetPropertyMethodInfo
    ResolveDOMDocumentFragmentMethod "setTextContent" o = WebKit2WebExtension.DOMNode.DOMNodeSetTextContentMethodInfo
    ResolveDOMDocumentFragmentMethod l o = O.MethodResolutionFailed l o

instance (info ~ ResolveDOMDocumentFragmentMethod t DOMDocumentFragment, O.MethodInfo info DOMDocumentFragment p) => OL.IsLabel t (DOMDocumentFragment -> p) where
#if MIN_VERSION_base(4,10,0)
    fromLabel = O.overloadedMethod @info
#else
    fromLabel _ = O.overloadedMethod @info
#endif

#endif

-- VVV Prop "child-element-count"
   -- Type: TBasicType TULong
   -- Flags: [PropertyReadable]
   -- Nullable: (Just False,Nothing)

-- | Get the value of the “@child-element-count@” property.
-- When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-- 
-- @
-- 'Data.GI.Base.Attributes.get' dOMDocumentFragment #childElementCount
-- @
getDOMDocumentFragmentChildElementCount :: (MonadIO m, IsDOMDocumentFragment o) => o -> m CULong
getDOMDocumentFragmentChildElementCount :: o -> m CULong
getDOMDocumentFragmentChildElementCount o
obj = IO CULong -> m CULong
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO CULong -> m CULong) -> IO CULong -> m CULong
forall a b. (a -> b) -> a -> b
$ o -> String -> IO CULong
forall a. GObject a => a -> String -> IO CULong
B.Properties.getObjectPropertyULong o
obj String
"child-element-count"

#if defined(ENABLE_OVERLOADING)
data DOMDocumentFragmentChildElementCountPropertyInfo
instance AttrInfo DOMDocumentFragmentChildElementCountPropertyInfo where
    type AttrAllowedOps DOMDocumentFragmentChildElementCountPropertyInfo = '[ 'AttrGet]
    type AttrBaseTypeConstraint DOMDocumentFragmentChildElementCountPropertyInfo = IsDOMDocumentFragment
    type AttrSetTypeConstraint DOMDocumentFragmentChildElementCountPropertyInfo = (~) ()
    type AttrTransferTypeConstraint DOMDocumentFragmentChildElementCountPropertyInfo = (~) ()
    type AttrTransferType DOMDocumentFragmentChildElementCountPropertyInfo = ()
    type AttrGetType DOMDocumentFragmentChildElementCountPropertyInfo = CULong
    type AttrLabel DOMDocumentFragmentChildElementCountPropertyInfo = "child-element-count"
    type AttrOrigin DOMDocumentFragmentChildElementCountPropertyInfo = DOMDocumentFragment
    attrGet = getDOMDocumentFragmentChildElementCount
    attrSet = undefined
    attrTransfer _ = undefined
    attrConstruct = undefined
    attrClear = undefined
#endif

-- VVV Prop "children"
   -- Type: TInterface (Name {namespace = "WebKit2WebExtension", name = "DOMHTMLCollection"})
   -- Flags: [PropertyReadable]
   -- Nullable: (Nothing,Nothing)

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

#if defined(ENABLE_OVERLOADING)
data DOMDocumentFragmentChildrenPropertyInfo
instance AttrInfo DOMDocumentFragmentChildrenPropertyInfo where
    type AttrAllowedOps DOMDocumentFragmentChildrenPropertyInfo = '[ 'AttrGet, 'AttrClear]
    type AttrBaseTypeConstraint DOMDocumentFragmentChildrenPropertyInfo = IsDOMDocumentFragment
    type AttrSetTypeConstraint DOMDocumentFragmentChildrenPropertyInfo = (~) ()
    type AttrTransferTypeConstraint DOMDocumentFragmentChildrenPropertyInfo = (~) ()
    type AttrTransferType DOMDocumentFragmentChildrenPropertyInfo = ()
    type AttrGetType DOMDocumentFragmentChildrenPropertyInfo = (Maybe WebKit2WebExtension.DOMHTMLCollection.DOMHTMLCollection)
    type AttrLabel DOMDocumentFragmentChildrenPropertyInfo = "children"
    type AttrOrigin DOMDocumentFragmentChildrenPropertyInfo = DOMDocumentFragment
    attrGet = getDOMDocumentFragmentChildren
    attrSet = undefined
    attrTransfer _ = undefined
    attrConstruct = undefined
    attrClear = undefined
#endif

-- VVV Prop "first-element-child"
   -- Type: TInterface (Name {namespace = "WebKit2WebExtension", name = "DOMElement"})
   -- Flags: [PropertyReadable]
   -- Nullable: (Just False,Nothing)

-- | Get the value of the “@first-element-child@” property.
-- When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-- 
-- @
-- 'Data.GI.Base.Attributes.get' dOMDocumentFragment #firstElementChild
-- @
getDOMDocumentFragmentFirstElementChild :: (MonadIO m, IsDOMDocumentFragment o) => o -> m WebKit2WebExtension.DOMElement.DOMElement
getDOMDocumentFragmentFirstElementChild :: o -> m DOMElement
getDOMDocumentFragmentFirstElementChild o
obj = IO DOMElement -> m DOMElement
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO DOMElement -> m DOMElement) -> IO DOMElement -> m DOMElement
forall a b. (a -> b) -> a -> b
$ Text -> IO (Maybe DOMElement) -> IO DOMElement
forall a. HasCallStack => Text -> IO (Maybe a) -> IO a
checkUnexpectedNothing Text
"getDOMDocumentFragmentFirstElementChild" (IO (Maybe DOMElement) -> IO DOMElement)
-> IO (Maybe DOMElement) -> IO DOMElement
forall a b. (a -> b) -> a -> b
$ o
-> String
-> (ManagedPtr DOMElement -> DOMElement)
-> IO (Maybe DOMElement)
forall a b.
(GObject a, GObject b) =>
a -> String -> (ManagedPtr b -> b) -> IO (Maybe b)
B.Properties.getObjectPropertyObject o
obj String
"first-element-child" ManagedPtr DOMElement -> DOMElement
WebKit2WebExtension.DOMElement.DOMElement

#if defined(ENABLE_OVERLOADING)
data DOMDocumentFragmentFirstElementChildPropertyInfo
instance AttrInfo DOMDocumentFragmentFirstElementChildPropertyInfo where
    type AttrAllowedOps DOMDocumentFragmentFirstElementChildPropertyInfo = '[ 'AttrGet, 'AttrClear]
    type AttrBaseTypeConstraint DOMDocumentFragmentFirstElementChildPropertyInfo = IsDOMDocumentFragment
    type AttrSetTypeConstraint DOMDocumentFragmentFirstElementChildPropertyInfo = (~) ()
    type AttrTransferTypeConstraint DOMDocumentFragmentFirstElementChildPropertyInfo = (~) ()
    type AttrTransferType DOMDocumentFragmentFirstElementChildPropertyInfo = ()
    type AttrGetType DOMDocumentFragmentFirstElementChildPropertyInfo = WebKit2WebExtension.DOMElement.DOMElement
    type AttrLabel DOMDocumentFragmentFirstElementChildPropertyInfo = "first-element-child"
    type AttrOrigin DOMDocumentFragmentFirstElementChildPropertyInfo = DOMDocumentFragment
    attrGet = getDOMDocumentFragmentFirstElementChild
    attrSet = undefined
    attrTransfer _ = undefined
    attrConstruct = undefined
    attrClear = undefined
#endif

-- VVV Prop "last-element-child"
   -- Type: TInterface (Name {namespace = "WebKit2WebExtension", name = "DOMElement"})
   -- Flags: [PropertyReadable]
   -- Nullable: (Just False,Nothing)

-- | Get the value of the “@last-element-child@” property.
-- When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-- 
-- @
-- 'Data.GI.Base.Attributes.get' dOMDocumentFragment #lastElementChild
-- @
getDOMDocumentFragmentLastElementChild :: (MonadIO m, IsDOMDocumentFragment o) => o -> m WebKit2WebExtension.DOMElement.DOMElement
getDOMDocumentFragmentLastElementChild :: o -> m DOMElement
getDOMDocumentFragmentLastElementChild o
obj = IO DOMElement -> m DOMElement
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO DOMElement -> m DOMElement) -> IO DOMElement -> m DOMElement
forall a b. (a -> b) -> a -> b
$ Text -> IO (Maybe DOMElement) -> IO DOMElement
forall a. HasCallStack => Text -> IO (Maybe a) -> IO a
checkUnexpectedNothing Text
"getDOMDocumentFragmentLastElementChild" (IO (Maybe DOMElement) -> IO DOMElement)
-> IO (Maybe DOMElement) -> IO DOMElement
forall a b. (a -> b) -> a -> b
$ o
-> String
-> (ManagedPtr DOMElement -> DOMElement)
-> IO (Maybe DOMElement)
forall a b.
(GObject a, GObject b) =>
a -> String -> (ManagedPtr b -> b) -> IO (Maybe b)
B.Properties.getObjectPropertyObject o
obj String
"last-element-child" ManagedPtr DOMElement -> DOMElement
WebKit2WebExtension.DOMElement.DOMElement

#if defined(ENABLE_OVERLOADING)
data DOMDocumentFragmentLastElementChildPropertyInfo
instance AttrInfo DOMDocumentFragmentLastElementChildPropertyInfo where
    type AttrAllowedOps DOMDocumentFragmentLastElementChildPropertyInfo = '[ 'AttrGet, 'AttrClear]
    type AttrBaseTypeConstraint DOMDocumentFragmentLastElementChildPropertyInfo = IsDOMDocumentFragment
    type AttrSetTypeConstraint DOMDocumentFragmentLastElementChildPropertyInfo = (~) ()
    type AttrTransferTypeConstraint DOMDocumentFragmentLastElementChildPropertyInfo = (~) ()
    type AttrTransferType DOMDocumentFragmentLastElementChildPropertyInfo = ()
    type AttrGetType DOMDocumentFragmentLastElementChildPropertyInfo = WebKit2WebExtension.DOMElement.DOMElement
    type AttrLabel DOMDocumentFragmentLastElementChildPropertyInfo = "last-element-child"
    type AttrOrigin DOMDocumentFragmentLastElementChildPropertyInfo = DOMDocumentFragment
    attrGet = getDOMDocumentFragmentLastElementChild
    attrSet = undefined
    attrTransfer _ = undefined
    attrConstruct = undefined
    attrClear = undefined
#endif

#if defined(ENABLE_OVERLOADING)
instance O.HasAttributeList DOMDocumentFragment
type instance O.AttributeList DOMDocumentFragment = DOMDocumentFragmentAttributeList
type DOMDocumentFragmentAttributeList = ('[ '("baseUri", WebKit2WebExtension.DOMNode.DOMNodeBaseUriPropertyInfo), '("childElementCount", DOMDocumentFragmentChildElementCountPropertyInfo), '("childNodes", WebKit2WebExtension.DOMNode.DOMNodeChildNodesPropertyInfo), '("children", DOMDocumentFragmentChildrenPropertyInfo), '("coreObject", WebKit2WebExtension.DOMObject.DOMObjectCoreObjectPropertyInfo), '("firstChild", WebKit2WebExtension.DOMNode.DOMNodeFirstChildPropertyInfo), '("firstElementChild", DOMDocumentFragmentFirstElementChildPropertyInfo), '("lastChild", WebKit2WebExtension.DOMNode.DOMNodeLastChildPropertyInfo), '("lastElementChild", DOMDocumentFragmentLastElementChildPropertyInfo), '("nextSibling", WebKit2WebExtension.DOMNode.DOMNodeNextSiblingPropertyInfo), '("nodeName", WebKit2WebExtension.DOMNode.DOMNodeNodeNamePropertyInfo), '("nodeType", WebKit2WebExtension.DOMNode.DOMNodeNodeTypePropertyInfo), '("nodeValue", WebKit2WebExtension.DOMNode.DOMNodeNodeValuePropertyInfo), '("ownerDocument", WebKit2WebExtension.DOMNode.DOMNodeOwnerDocumentPropertyInfo), '("parentElement", WebKit2WebExtension.DOMNode.DOMNodeParentElementPropertyInfo), '("parentNode", WebKit2WebExtension.DOMNode.DOMNodeParentNodePropertyInfo), '("previousSibling", WebKit2WebExtension.DOMNode.DOMNodePreviousSiblingPropertyInfo), '("textContent", WebKit2WebExtension.DOMNode.DOMNodeTextContentPropertyInfo)] :: [(Symbol, *)])
#endif

#if defined(ENABLE_OVERLOADING)
dOMDocumentFragmentChildElementCount :: AttrLabelProxy "childElementCount"
dOMDocumentFragmentChildElementCount = AttrLabelProxy

dOMDocumentFragmentChildren :: AttrLabelProxy "children"
dOMDocumentFragmentChildren = AttrLabelProxy

dOMDocumentFragmentFirstElementChild :: AttrLabelProxy "firstElementChild"
dOMDocumentFragmentFirstElementChild = AttrLabelProxy

dOMDocumentFragmentLastElementChild :: AttrLabelProxy "lastElementChild"
dOMDocumentFragmentLastElementChild = AttrLabelProxy

#endif

#if defined(ENABLE_OVERLOADING)
type instance O.SignalList DOMDocumentFragment = DOMDocumentFragmentSignalList
type DOMDocumentFragmentSignalList = ('[ '("notify", GObject.Object.ObjectNotifySignalInfo)] :: [(Symbol, *)])

#endif

-- method DOMDocumentFragment::get_child_element_count
-- method type : OrdinaryMethod
-- Args: [ Arg
--           { argCName = "self"
--           , argType =
--               TInterface
--                 Name
--                   { namespace = "WebKit2WebExtension"
--                   , name = "DOMDocumentFragment"
--                   }
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "A #WebKitDOMDocumentFragment"
--                 , sinceVersion = Nothing
--                 }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , transfer = TransferNothing
--           }
--       ]
-- Lengths: []
-- returnType: Just (TBasicType TULong)
-- throws : False
-- Skip return : False

foreign import ccall "webkit_dom_document_fragment_get_child_element_count" webkit_dom_document_fragment_get_child_element_count :: 
    Ptr DOMDocumentFragment ->              -- self : TInterface (Name {namespace = "WebKit2WebExtension", name = "DOMDocumentFragment"})
    IO CULong

{-# DEPRECATED dOMDocumentFragmentGetChildElementCount ["(Since version 2.22)","Use JavaScriptCore API instead"] #-}
-- | /No description available in the introspection data./
-- 
-- /Since: 2.16/
dOMDocumentFragmentGetChildElementCount ::
    (B.CallStack.HasCallStack, MonadIO m, IsDOMDocumentFragment a) =>
    a
    -- ^ /@self@/: A t'GI.WebKit2WebExtension.Objects.DOMDocumentFragment.DOMDocumentFragment'
    -> m CULong
    -- ^ __Returns:__ A @/gulong/@
dOMDocumentFragmentGetChildElementCount :: a -> m CULong
dOMDocumentFragmentGetChildElementCount a
self = IO CULong -> m CULong
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO CULong -> m CULong) -> IO CULong -> m CULong
forall a b. (a -> b) -> a -> b
$ do
    Ptr DOMDocumentFragment
self' <- a -> IO (Ptr DOMDocumentFragment)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
self
    CULong
result <- Ptr DOMDocumentFragment -> IO CULong
webkit_dom_document_fragment_get_child_element_count Ptr DOMDocumentFragment
self'
    a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
self
    CULong -> IO CULong
forall (m :: * -> *) a. Monad m => a -> m a
return CULong
result

#if defined(ENABLE_OVERLOADING)
data DOMDocumentFragmentGetChildElementCountMethodInfo
instance (signature ~ (m CULong), MonadIO m, IsDOMDocumentFragment a) => O.MethodInfo DOMDocumentFragmentGetChildElementCountMethodInfo a signature where
    overloadedMethod = dOMDocumentFragmentGetChildElementCount

#endif

-- method DOMDocumentFragment::get_children
-- method type : OrdinaryMethod
-- Args: [ Arg
--           { argCName = "self"
--           , argType =
--               TInterface
--                 Name
--                   { namespace = "WebKit2WebExtension"
--                   , name = "DOMDocumentFragment"
--                   }
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "A #WebKitDOMDocumentFragment"
--                 , sinceVersion = Nothing
--                 }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , transfer = TransferNothing
--           }
--       ]
-- Lengths: []
-- returnType: Just
--               (TInterface
--                  Name
--                    { namespace = "WebKit2WebExtension" , name = "DOMHTMLCollection" })
-- throws : False
-- Skip return : False

foreign import ccall "webkit_dom_document_fragment_get_children" webkit_dom_document_fragment_get_children :: 
    Ptr DOMDocumentFragment ->              -- self : TInterface (Name {namespace = "WebKit2WebExtension", name = "DOMDocumentFragment"})
    IO (Ptr WebKit2WebExtension.DOMHTMLCollection.DOMHTMLCollection)

{-# DEPRECATED dOMDocumentFragmentGetChildren ["(Since version 2.22)","Use JavaScriptCore API instead"] #-}
-- | /No description available in the introspection data./
-- 
-- /Since: 2.16/
dOMDocumentFragmentGetChildren ::
    (B.CallStack.HasCallStack, MonadIO m, IsDOMDocumentFragment a) =>
    a
    -- ^ /@self@/: A t'GI.WebKit2WebExtension.Objects.DOMDocumentFragment.DOMDocumentFragment'
    -> m WebKit2WebExtension.DOMHTMLCollection.DOMHTMLCollection
    -- ^ __Returns:__ A t'GI.WebKit2WebExtension.Objects.DOMHTMLCollection.DOMHTMLCollection'
dOMDocumentFragmentGetChildren :: a -> m DOMHTMLCollection
dOMDocumentFragmentGetChildren a
self = IO DOMHTMLCollection -> m DOMHTMLCollection
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO DOMHTMLCollection -> m DOMHTMLCollection)
-> IO DOMHTMLCollection -> m DOMHTMLCollection
forall a b. (a -> b) -> a -> b
$ do
    Ptr DOMDocumentFragment
self' <- a -> IO (Ptr DOMDocumentFragment)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
self
    Ptr DOMHTMLCollection
result <- Ptr DOMDocumentFragment -> IO (Ptr DOMHTMLCollection)
webkit_dom_document_fragment_get_children Ptr DOMDocumentFragment
self'
    Text -> Ptr DOMHTMLCollection -> IO ()
forall a. HasCallStack => Text -> Ptr a -> IO ()
checkUnexpectedReturnNULL Text
"dOMDocumentFragmentGetChildren" Ptr DOMHTMLCollection
result
    DOMHTMLCollection
result' <- ((ManagedPtr DOMHTMLCollection -> DOMHTMLCollection)
-> Ptr DOMHTMLCollection -> IO DOMHTMLCollection
forall a b.
(HasCallStack, GObject a, GObject b) =>
(ManagedPtr a -> a) -> Ptr b -> IO a
wrapObject ManagedPtr DOMHTMLCollection -> DOMHTMLCollection
WebKit2WebExtension.DOMHTMLCollection.DOMHTMLCollection) Ptr DOMHTMLCollection
result
    a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
self
    DOMHTMLCollection -> IO DOMHTMLCollection
forall (m :: * -> *) a. Monad m => a -> m a
return DOMHTMLCollection
result'

#if defined(ENABLE_OVERLOADING)
data DOMDocumentFragmentGetChildrenMethodInfo
instance (signature ~ (m WebKit2WebExtension.DOMHTMLCollection.DOMHTMLCollection), MonadIO m, IsDOMDocumentFragment a) => O.MethodInfo DOMDocumentFragmentGetChildrenMethodInfo a signature where
    overloadedMethod = dOMDocumentFragmentGetChildren

#endif

-- method DOMDocumentFragment::get_element_by_id
-- method type : OrdinaryMethod
-- Args: [ Arg
--           { argCName = "self"
--           , argType =
--               TInterface
--                 Name
--                   { namespace = "WebKit2WebExtension"
--                   , name = "DOMDocumentFragment"
--                   }
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "A #WebKitDOMDocumentFragment"
--                 , sinceVersion = Nothing
--                 }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , transfer = TransferNothing
--           }
--       , Arg
--           { argCName = "elementId"
--           , argType = TBasicType TUTF8
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "A #gchar" , sinceVersion = Nothing }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , transfer = TransferNothing
--           }
--       ]
-- Lengths: []
-- returnType: Just
--               (TInterface
--                  Name { namespace = "WebKit2WebExtension" , name = "DOMElement" })
-- throws : False
-- Skip return : False

foreign import ccall "webkit_dom_document_fragment_get_element_by_id" webkit_dom_document_fragment_get_element_by_id :: 
    Ptr DOMDocumentFragment ->              -- self : TInterface (Name {namespace = "WebKit2WebExtension", name = "DOMDocumentFragment"})
    CString ->                              -- elementId : TBasicType TUTF8
    IO (Ptr WebKit2WebExtension.DOMElement.DOMElement)

{-# DEPRECATED dOMDocumentFragmentGetElementById ["(Since version 2.22)","Use JavaScriptCore API instead"] #-}
-- | /No description available in the introspection data./
-- 
-- /Since: 2.16/
dOMDocumentFragmentGetElementById ::
    (B.CallStack.HasCallStack, MonadIO m, IsDOMDocumentFragment a) =>
    a
    -- ^ /@self@/: A t'GI.WebKit2WebExtension.Objects.DOMDocumentFragment.DOMDocumentFragment'
    -> T.Text
    -- ^ /@elementId@/: A @/gchar/@
    -> m WebKit2WebExtension.DOMElement.DOMElement
    -- ^ __Returns:__ A t'GI.WebKit2WebExtension.Objects.DOMElement.DOMElement'
dOMDocumentFragmentGetElementById :: a -> Text -> m DOMElement
dOMDocumentFragmentGetElementById a
self Text
elementId = IO DOMElement -> m DOMElement
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO DOMElement -> m DOMElement) -> IO DOMElement -> m DOMElement
forall a b. (a -> b) -> a -> b
$ do
    Ptr DOMDocumentFragment
self' <- a -> IO (Ptr DOMDocumentFragment)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
self
    CString
elementId' <- Text -> IO CString
textToCString Text
elementId
    Ptr DOMElement
result <- Ptr DOMDocumentFragment -> CString -> IO (Ptr DOMElement)
webkit_dom_document_fragment_get_element_by_id Ptr DOMDocumentFragment
self' CString
elementId'
    Text -> Ptr DOMElement -> IO ()
forall a. HasCallStack => Text -> Ptr a -> IO ()
checkUnexpectedReturnNULL Text
"dOMDocumentFragmentGetElementById" Ptr DOMElement
result
    DOMElement
result' <- ((ManagedPtr DOMElement -> DOMElement)
-> Ptr DOMElement -> IO DOMElement
forall a b.
(HasCallStack, GObject a, GObject b) =>
(ManagedPtr a -> a) -> Ptr b -> IO a
newObject ManagedPtr DOMElement -> DOMElement
WebKit2WebExtension.DOMElement.DOMElement) Ptr DOMElement
result
    a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
self
    CString -> IO ()
forall a. Ptr a -> IO ()
freeMem CString
elementId'
    DOMElement -> IO DOMElement
forall (m :: * -> *) a. Monad m => a -> m a
return DOMElement
result'

#if defined(ENABLE_OVERLOADING)
data DOMDocumentFragmentGetElementByIdMethodInfo
instance (signature ~ (T.Text -> m WebKit2WebExtension.DOMElement.DOMElement), MonadIO m, IsDOMDocumentFragment a) => O.MethodInfo DOMDocumentFragmentGetElementByIdMethodInfo a signature where
    overloadedMethod = dOMDocumentFragmentGetElementById

#endif

-- method DOMDocumentFragment::get_first_element_child
-- method type : OrdinaryMethod
-- Args: [ Arg
--           { argCName = "self"
--           , argType =
--               TInterface
--                 Name
--                   { namespace = "WebKit2WebExtension"
--                   , name = "DOMDocumentFragment"
--                   }
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "A #WebKitDOMDocumentFragment"
--                 , sinceVersion = Nothing
--                 }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , transfer = TransferNothing
--           }
--       ]
-- Lengths: []
-- returnType: Just
--               (TInterface
--                  Name { namespace = "WebKit2WebExtension" , name = "DOMElement" })
-- throws : False
-- Skip return : False

foreign import ccall "webkit_dom_document_fragment_get_first_element_child" webkit_dom_document_fragment_get_first_element_child :: 
    Ptr DOMDocumentFragment ->              -- self : TInterface (Name {namespace = "WebKit2WebExtension", name = "DOMDocumentFragment"})
    IO (Ptr WebKit2WebExtension.DOMElement.DOMElement)

{-# DEPRECATED dOMDocumentFragmentGetFirstElementChild ["(Since version 2.22)","Use JavaScriptCore API instead"] #-}
-- | /No description available in the introspection data./
-- 
-- /Since: 2.16/
dOMDocumentFragmentGetFirstElementChild ::
    (B.CallStack.HasCallStack, MonadIO m, IsDOMDocumentFragment a) =>
    a
    -- ^ /@self@/: A t'GI.WebKit2WebExtension.Objects.DOMDocumentFragment.DOMDocumentFragment'
    -> m WebKit2WebExtension.DOMElement.DOMElement
    -- ^ __Returns:__ A t'GI.WebKit2WebExtension.Objects.DOMElement.DOMElement'
dOMDocumentFragmentGetFirstElementChild :: a -> m DOMElement
dOMDocumentFragmentGetFirstElementChild a
self = IO DOMElement -> m DOMElement
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO DOMElement -> m DOMElement) -> IO DOMElement -> m DOMElement
forall a b. (a -> b) -> a -> b
$ do
    Ptr DOMDocumentFragment
self' <- a -> IO (Ptr DOMDocumentFragment)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
self
    Ptr DOMElement
result <- Ptr DOMDocumentFragment -> IO (Ptr DOMElement)
webkit_dom_document_fragment_get_first_element_child Ptr DOMDocumentFragment
self'
    Text -> Ptr DOMElement -> IO ()
forall a. HasCallStack => Text -> Ptr a -> IO ()
checkUnexpectedReturnNULL Text
"dOMDocumentFragmentGetFirstElementChild" Ptr DOMElement
result
    DOMElement
result' <- ((ManagedPtr DOMElement -> DOMElement)
-> Ptr DOMElement -> IO DOMElement
forall a b.
(HasCallStack, GObject a, GObject b) =>
(ManagedPtr a -> a) -> Ptr b -> IO a
newObject ManagedPtr DOMElement -> DOMElement
WebKit2WebExtension.DOMElement.DOMElement) Ptr DOMElement
result
    a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
self
    DOMElement -> IO DOMElement
forall (m :: * -> *) a. Monad m => a -> m a
return DOMElement
result'

#if defined(ENABLE_OVERLOADING)
data DOMDocumentFragmentGetFirstElementChildMethodInfo
instance (signature ~ (m WebKit2WebExtension.DOMElement.DOMElement), MonadIO m, IsDOMDocumentFragment a) => O.MethodInfo DOMDocumentFragmentGetFirstElementChildMethodInfo a signature where
    overloadedMethod = dOMDocumentFragmentGetFirstElementChild

#endif

-- method DOMDocumentFragment::get_last_element_child
-- method type : OrdinaryMethod
-- Args: [ Arg
--           { argCName = "self"
--           , argType =
--               TInterface
--                 Name
--                   { namespace = "WebKit2WebExtension"
--                   , name = "DOMDocumentFragment"
--                   }
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "A #WebKitDOMDocumentFragment"
--                 , sinceVersion = Nothing
--                 }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , transfer = TransferNothing
--           }
--       ]
-- Lengths: []
-- returnType: Just
--               (TInterface
--                  Name { namespace = "WebKit2WebExtension" , name = "DOMElement" })
-- throws : False
-- Skip return : False

foreign import ccall "webkit_dom_document_fragment_get_last_element_child" webkit_dom_document_fragment_get_last_element_child :: 
    Ptr DOMDocumentFragment ->              -- self : TInterface (Name {namespace = "WebKit2WebExtension", name = "DOMDocumentFragment"})
    IO (Ptr WebKit2WebExtension.DOMElement.DOMElement)

{-# DEPRECATED dOMDocumentFragmentGetLastElementChild ["(Since version 2.22)","Use JavaScriptCore API instead"] #-}
-- | /No description available in the introspection data./
-- 
-- /Since: 2.16/
dOMDocumentFragmentGetLastElementChild ::
    (B.CallStack.HasCallStack, MonadIO m, IsDOMDocumentFragment a) =>
    a
    -- ^ /@self@/: A t'GI.WebKit2WebExtension.Objects.DOMDocumentFragment.DOMDocumentFragment'
    -> m WebKit2WebExtension.DOMElement.DOMElement
    -- ^ __Returns:__ A t'GI.WebKit2WebExtension.Objects.DOMElement.DOMElement'
dOMDocumentFragmentGetLastElementChild :: a -> m DOMElement
dOMDocumentFragmentGetLastElementChild a
self = IO DOMElement -> m DOMElement
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO DOMElement -> m DOMElement) -> IO DOMElement -> m DOMElement
forall a b. (a -> b) -> a -> b
$ do
    Ptr DOMDocumentFragment
self' <- a -> IO (Ptr DOMDocumentFragment)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
self
    Ptr DOMElement
result <- Ptr DOMDocumentFragment -> IO (Ptr DOMElement)
webkit_dom_document_fragment_get_last_element_child Ptr DOMDocumentFragment
self'
    Text -> Ptr DOMElement -> IO ()
forall a. HasCallStack => Text -> Ptr a -> IO ()
checkUnexpectedReturnNULL Text
"dOMDocumentFragmentGetLastElementChild" Ptr DOMElement
result
    DOMElement
result' <- ((ManagedPtr DOMElement -> DOMElement)
-> Ptr DOMElement -> IO DOMElement
forall a b.
(HasCallStack, GObject a, GObject b) =>
(ManagedPtr a -> a) -> Ptr b -> IO a
newObject ManagedPtr DOMElement -> DOMElement
WebKit2WebExtension.DOMElement.DOMElement) Ptr DOMElement
result
    a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
self
    DOMElement -> IO DOMElement
forall (m :: * -> *) a. Monad m => a -> m a
return DOMElement
result'

#if defined(ENABLE_OVERLOADING)
data DOMDocumentFragmentGetLastElementChildMethodInfo
instance (signature ~ (m WebKit2WebExtension.DOMElement.DOMElement), MonadIO m, IsDOMDocumentFragment a) => O.MethodInfo DOMDocumentFragmentGetLastElementChildMethodInfo a signature where
    overloadedMethod = dOMDocumentFragmentGetLastElementChild

#endif

-- method DOMDocumentFragment::query_selector
-- method type : OrdinaryMethod
-- Args: [ Arg
--           { argCName = "self"
--           , argType =
--               TInterface
--                 Name
--                   { namespace = "WebKit2WebExtension"
--                   , name = "DOMDocumentFragment"
--                   }
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "A #WebKitDOMDocumentFragment"
--                 , sinceVersion = Nothing
--                 }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , transfer = TransferNothing
--           }
--       , Arg
--           { argCName = "selectors"
--           , argType = TBasicType TUTF8
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "A #gchar" , sinceVersion = Nothing }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , transfer = TransferNothing
--           }
--       ]
-- Lengths: []
-- returnType: Just
--               (TInterface
--                  Name { namespace = "WebKit2WebExtension" , name = "DOMElement" })
-- throws : True
-- Skip return : False

foreign import ccall "webkit_dom_document_fragment_query_selector" webkit_dom_document_fragment_query_selector :: 
    Ptr DOMDocumentFragment ->              -- self : TInterface (Name {namespace = "WebKit2WebExtension", name = "DOMDocumentFragment"})
    CString ->                              -- selectors : TBasicType TUTF8
    Ptr (Ptr GError) ->                     -- error
    IO (Ptr WebKit2WebExtension.DOMElement.DOMElement)

{-# DEPRECATED dOMDocumentFragmentQuerySelector ["(Since version 2.22)","Use JavaScriptCore API instead"] #-}
-- | /No description available in the introspection data./
-- 
-- /Since: 2.16/
dOMDocumentFragmentQuerySelector ::
    (B.CallStack.HasCallStack, MonadIO m, IsDOMDocumentFragment a) =>
    a
    -- ^ /@self@/: A t'GI.WebKit2WebExtension.Objects.DOMDocumentFragment.DOMDocumentFragment'
    -> T.Text
    -- ^ /@selectors@/: A @/gchar/@
    -> m WebKit2WebExtension.DOMElement.DOMElement
    -- ^ __Returns:__ A t'GI.WebKit2WebExtension.Objects.DOMElement.DOMElement' /(Can throw 'Data.GI.Base.GError.GError')/
dOMDocumentFragmentQuerySelector :: a -> Text -> m DOMElement
dOMDocumentFragmentQuerySelector a
self Text
selectors = IO DOMElement -> m DOMElement
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO DOMElement -> m DOMElement) -> IO DOMElement -> m DOMElement
forall a b. (a -> b) -> a -> b
$ do
    Ptr DOMDocumentFragment
self' <- a -> IO (Ptr DOMDocumentFragment)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
self
    CString
selectors' <- Text -> IO CString
textToCString Text
selectors
    IO DOMElement -> IO () -> IO DOMElement
forall a b. IO a -> IO b -> IO a
onException (do
        Ptr DOMElement
result <- (Ptr (Ptr GError) -> IO (Ptr DOMElement)) -> IO (Ptr DOMElement)
forall a. (Ptr (Ptr GError) -> IO a) -> IO a
propagateGError ((Ptr (Ptr GError) -> IO (Ptr DOMElement)) -> IO (Ptr DOMElement))
-> (Ptr (Ptr GError) -> IO (Ptr DOMElement)) -> IO (Ptr DOMElement)
forall a b. (a -> b) -> a -> b
$ Ptr DOMDocumentFragment
-> CString -> Ptr (Ptr GError) -> IO (Ptr DOMElement)
webkit_dom_document_fragment_query_selector Ptr DOMDocumentFragment
self' CString
selectors'
        Text -> Ptr DOMElement -> IO ()
forall a. HasCallStack => Text -> Ptr a -> IO ()
checkUnexpectedReturnNULL Text
"dOMDocumentFragmentQuerySelector" Ptr DOMElement
result
        DOMElement
result' <- ((ManagedPtr DOMElement -> DOMElement)
-> Ptr DOMElement -> IO DOMElement
forall a b.
(HasCallStack, GObject a, GObject b) =>
(ManagedPtr a -> a) -> Ptr b -> IO a
newObject ManagedPtr DOMElement -> DOMElement
WebKit2WebExtension.DOMElement.DOMElement) Ptr DOMElement
result
        a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
self
        CString -> IO ()
forall a. Ptr a -> IO ()
freeMem CString
selectors'
        DOMElement -> IO DOMElement
forall (m :: * -> *) a. Monad m => a -> m a
return DOMElement
result'
     ) (do
        CString -> IO ()
forall a. Ptr a -> IO ()
freeMem CString
selectors'
     )

#if defined(ENABLE_OVERLOADING)
data DOMDocumentFragmentQuerySelectorMethodInfo
instance (signature ~ (T.Text -> m WebKit2WebExtension.DOMElement.DOMElement), MonadIO m, IsDOMDocumentFragment a) => O.MethodInfo DOMDocumentFragmentQuerySelectorMethodInfo a signature where
    overloadedMethod = dOMDocumentFragmentQuerySelector

#endif

-- method DOMDocumentFragment::query_selector_all
-- method type : OrdinaryMethod
-- Args: [ Arg
--           { argCName = "self"
--           , argType =
--               TInterface
--                 Name
--                   { namespace = "WebKit2WebExtension"
--                   , name = "DOMDocumentFragment"
--                   }
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "A #WebKitDOMDocumentFragment"
--                 , sinceVersion = Nothing
--                 }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , transfer = TransferNothing
--           }
--       , Arg
--           { argCName = "selectors"
--           , argType = TBasicType TUTF8
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "A #gchar" , sinceVersion = Nothing }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , transfer = TransferNothing
--           }
--       ]
-- Lengths: []
-- returnType: Just
--               (TInterface
--                  Name { namespace = "WebKit2WebExtension" , name = "DOMNodeList" })
-- throws : True
-- Skip return : False

foreign import ccall "webkit_dom_document_fragment_query_selector_all" webkit_dom_document_fragment_query_selector_all :: 
    Ptr DOMDocumentFragment ->              -- self : TInterface (Name {namespace = "WebKit2WebExtension", name = "DOMDocumentFragment"})
    CString ->                              -- selectors : TBasicType TUTF8
    Ptr (Ptr GError) ->                     -- error
    IO (Ptr WebKit2WebExtension.DOMNodeList.DOMNodeList)

{-# DEPRECATED dOMDocumentFragmentQuerySelectorAll ["(Since version 2.22)","Use JavaScriptCore API instead"] #-}
-- | /No description available in the introspection data./
-- 
-- /Since: 2.16/
dOMDocumentFragmentQuerySelectorAll ::
    (B.CallStack.HasCallStack, MonadIO m, IsDOMDocumentFragment a) =>
    a
    -- ^ /@self@/: A t'GI.WebKit2WebExtension.Objects.DOMDocumentFragment.DOMDocumentFragment'
    -> T.Text
    -- ^ /@selectors@/: A @/gchar/@
    -> m WebKit2WebExtension.DOMNodeList.DOMNodeList
    -- ^ __Returns:__ A t'GI.WebKit2WebExtension.Objects.DOMNodeList.DOMNodeList' /(Can throw 'Data.GI.Base.GError.GError')/
dOMDocumentFragmentQuerySelectorAll :: a -> Text -> m DOMNodeList
dOMDocumentFragmentQuerySelectorAll a
self Text
selectors = IO DOMNodeList -> m DOMNodeList
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO DOMNodeList -> m DOMNodeList)
-> IO DOMNodeList -> m DOMNodeList
forall a b. (a -> b) -> a -> b
$ do
    Ptr DOMDocumentFragment
self' <- a -> IO (Ptr DOMDocumentFragment)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
self
    CString
selectors' <- Text -> IO CString
textToCString Text
selectors
    IO DOMNodeList -> IO () -> IO DOMNodeList
forall a b. IO a -> IO b -> IO a
onException (do
        Ptr DOMNodeList
result <- (Ptr (Ptr GError) -> IO (Ptr DOMNodeList)) -> IO (Ptr DOMNodeList)
forall a. (Ptr (Ptr GError) -> IO a) -> IO a
propagateGError ((Ptr (Ptr GError) -> IO (Ptr DOMNodeList))
 -> IO (Ptr DOMNodeList))
-> (Ptr (Ptr GError) -> IO (Ptr DOMNodeList))
-> IO (Ptr DOMNodeList)
forall a b. (a -> b) -> a -> b
$ Ptr DOMDocumentFragment
-> CString -> Ptr (Ptr GError) -> IO (Ptr DOMNodeList)
webkit_dom_document_fragment_query_selector_all Ptr DOMDocumentFragment
self' CString
selectors'
        Text -> Ptr DOMNodeList -> IO ()
forall a. HasCallStack => Text -> Ptr a -> IO ()
checkUnexpectedReturnNULL Text
"dOMDocumentFragmentQuerySelectorAll" Ptr DOMNodeList
result
        DOMNodeList
result' <- ((ManagedPtr DOMNodeList -> DOMNodeList)
-> Ptr DOMNodeList -> IO DOMNodeList
forall a b.
(HasCallStack, GObject a, GObject b) =>
(ManagedPtr a -> a) -> Ptr b -> IO a
wrapObject ManagedPtr DOMNodeList -> DOMNodeList
WebKit2WebExtension.DOMNodeList.DOMNodeList) Ptr DOMNodeList
result
        a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
self
        CString -> IO ()
forall a. Ptr a -> IO ()
freeMem CString
selectors'
        DOMNodeList -> IO DOMNodeList
forall (m :: * -> *) a. Monad m => a -> m a
return DOMNodeList
result'
     ) (do
        CString -> IO ()
forall a. Ptr a -> IO ()
freeMem CString
selectors'
     )

#if defined(ENABLE_OVERLOADING)
data DOMDocumentFragmentQuerySelectorAllMethodInfo
instance (signature ~ (T.Text -> m WebKit2WebExtension.DOMNodeList.DOMNodeList), MonadIO m, IsDOMDocumentFragment a) => O.MethodInfo DOMDocumentFragmentQuerySelectorAllMethodInfo a signature where
    overloadedMethod = dOMDocumentFragmentQuerySelectorAll

#endif